From a2447fe0f6c678a511f2682db6fd773371faab0c Mon Sep 17 00:00:00 2001 From: CrazyMax <1951866+crazy-max@users.noreply.github.com> Date: Mon, 29 Jun 2026 14:56:24 +0200 Subject: [PATCH] preserve names in esbuild bundle Signed-off-by: CrazyMax <1951866+crazy-max@users.noreply.github.com> --- dist/index.cjs | 324 ++++++++++++++++++++++----------------------- dist/index.cjs.map | 4 +- package.json | 2 +- 3 files changed, 165 insertions(+), 165 deletions(-) diff --git a/dist/index.cjs b/dist/index.cjs index 14c9ede..1b13540 100644 --- a/dist/index.cjs +++ b/dist/index.cjs @@ -1,140 +1,140 @@ -var YMe=Object.create;var B0=Object.defineProperty;var WMe=Object.getOwnPropertyDescriptor;var jMe=Object.getOwnPropertyNames;var JMe=Object.getPrototypeOf,KMe=Object.prototype.hasOwnProperty;var C=(t,e)=>()=>(t&&(e=t(t=0)),e);var w=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),Zr=(t,e)=>{for(var r in e)B0(t,r,{get:e[r],enumerable:!0})},Z9=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of jMe(e))!KMe.call(t,s)&&s!==r&&B0(t,s,{get:()=>e[s],enumerable:!(n=WMe(e,s))||n.enumerable});return t};var Q=(t,e,r)=>(r=t!=null?YMe(JMe(t)):{},Z9(e||!t||!t.__esModule?B0(r,"default",{value:t,enumerable:!0}):r,t)),Y=t=>Z9(B0({},"__esModule",{value:!0}),t);var cK=w(nA=>{"use strict";var fFt=require("net"),tFe=require("tls"),iO=require("http"),oK=require("https"),rFe=require("events"),AFt=require("assert"),nFe=require("util");nA.httpOverHttp=sFe;nA.httpsOverHttp=oFe;nA.httpOverHttps=iFe;nA.httpsOverHttps=aFe;function sFe(t){var e=new Nl(t);return e.request=iO.request,e}function oFe(t){var e=new Nl(t);return e.request=iO.request,e.createSocket=iK,e.defaultPort=443,e}function iFe(t){var e=new Nl(t);return e.request=oK.request,e}function aFe(t){var e=new Nl(t);return e.request=oK.request,e.createSocket=iK,e.defaultPort=443,e}function Nl(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||iO.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",function(n,s,o,i){for(var a=aK(s,o,i),c=0,l=e.requests.length;c=this.maxSockets){o.requests.push(i);return}o.createSocket(i,function(a){a.on("free",c),a.on("close",l),a.on("agentRemove",l),e.onSocket(a);function c(){o.emit("free",a,i)}function l(u){o.removeSocket(a),a.removeListener("free",c),a.removeListener("close",l),a.removeListener("agentRemove",l)}})};Nl.prototype.createSocket=function(e,r){var n=this,s={};n.sockets.push(s);var o=aO({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(o.localAddress=e.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Gu("making CONNECT request");var i=n.request(o);i.useChunkedEncodingByDefault=!1,i.once("response",a),i.once("upgrade",c),i.once("connect",l),i.once("error",u),i.end();function a(d){d.upgrade=!0}function c(d,p,m){process.nextTick(function(){l(d,p,m)})}function l(d,p,m){if(i.removeAllListeners(),p.removeAllListeners(),d.statusCode!==200){Gu("tunneling socket could not be established, statusCode=%d",d.statusCode),p.destroy();var h=new Error("tunneling socket could not be established, statusCode="+d.statusCode);h.code="ECONNRESET",e.request.emit("error",h),n.removeSocket(s);return}if(m.length>0){Gu("got illegal response body from proxy"),p.destroy();var h=new Error("got illegal response body from proxy");h.code="ECONNRESET",e.request.emit("error",h),n.removeSocket(s);return}return Gu("tunneling connection has established"),n.sockets[n.sockets.indexOf(s)]=p,r(p)}function u(d){i.removeAllListeners(),Gu(`tunneling socket could not be established, cause=%s -`,d.message,d.stack);var p=new Error("tunneling socket could not be established, cause="+d.message);p.code="ECONNRESET",e.request.emit("error",p),n.removeSocket(s)}};Nl.prototype.removeSocket=function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(s){n.request.onSocket(s)})}};function iK(t,e){var r=this;Nl.prototype.createSocket.call(r,t,function(n){var s=t.request.getHeader("host"),o=aO({},r.options,{socket:n,servername:s?s.replace(/:.*$/,""):t.host}),i=tFe.connect(0,o);r.sockets[r.sockets.indexOf(n)]=i,e(i)})}function aK(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}function aO(t){for(var e=1,r=arguments.length;e{lK.exports=cK()});var Xt=w((yFt,uK)=>{uK.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 wt=w((EFt,kK)=>{"use strict";var dK=Symbol.for("undici.error.UND_ERR"),Zt=class extends Error{constructor(e){super(e),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](e){return e&&e[dK]===!0}[dK]=!0},pK=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),cO=class extends Zt{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[pK]===!0}[pK]=!0},mK=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),lO=class extends Zt{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[mK]===!0}[mK]=!0},fK=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),uO=class extends Zt{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[fK]===!0}[fK]=!0},AK=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),dO=class extends Zt{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[AK]===!0}[AK]=!0},hK=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),pO=class extends Zt{constructor(e,r,n,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=r,this.statusCode=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[hK]===!0}[hK]=!0},gK=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),mO=class extends Zt{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[gK]===!0}[gK]=!0},yK=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),fO=class extends Zt{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[yK]===!0}[yK]=!0},EK=Symbol.for("undici.error.UND_ERR_ABORT"),T0=class extends Zt{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[EK]===!0}[EK]=!0},CK=Symbol.for("undici.error.UND_ERR_ABORTED"),AO=class extends T0{constructor(e){super(e),this.name="AbortError",this.message=e||"Request aborted",this.code="UND_ERR_ABORTED"}static[Symbol.hasInstance](e){return e&&e[CK]===!0}[CK]=!0},IK=Symbol.for("undici.error.UND_ERR_INFO"),hO=class extends Zt{constructor(e){super(e),this.name="InformationalError",this.message=e||"Request information",this.code="UND_ERR_INFO"}static[Symbol.hasInstance](e){return e&&e[IK]===!0}[IK]=!0},xK=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),gO=class extends Zt{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[xK]===!0}[xK]=!0},wK=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),yO=class extends Zt{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[wK]===!0}[wK]=!0},bK=Symbol.for("undici.error.UND_ERR_DESTROYED"),EO=class extends Zt{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[bK]===!0}[bK]=!0},SK=Symbol.for("undici.error.UND_ERR_CLOSED"),CO=class extends Zt{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[SK]===!0}[SK]=!0},BK=Symbol.for("undici.error.UND_ERR_SOCKET"),IO=class extends Zt{constructor(e,r){super(e),this.name="SocketError",this.message=e||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}static[Symbol.hasInstance](e){return e&&e[BK]===!0}[BK]=!0},RK=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),xO=class extends Zt{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[RK]===!0}[RK]=!0},NK=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),wO=class extends Zt{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[NK]===!0}[NK]=!0},TK=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),bO=class extends Error{constructor(e,r,n){super(e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[TK]===!0}[TK]=!0},PK=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),SO=class extends Zt{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[PK]===!0}[PK]=!0},vK=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),BO=class extends Zt{constructor(e,r,{headers:n,data:s}){super(e),this.name="RequestRetryError",this.message=e||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=s,this.headers=n}static[Symbol.hasInstance](e){return e&&e[vK]===!0}[vK]=!0},_K=Symbol.for("undici.error.UND_ERR_RESPONSE"),RO=class extends Zt{constructor(e,r,{headers:n,data:s}){super(e),this.name="ResponseError",this.message=e||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=s,this.headers=n}static[Symbol.hasInstance](e){return e&&e[_K]===!0}[_K]=!0},QK=Symbol.for("undici.error.UND_ERR_PRX_TLS"),NO=class extends Zt{constructor(e,r,n){super(r,{cause:e,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=e}static[Symbol.hasInstance](e){return e&&e[QK]===!0}[QK]=!0},DK=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),TO=class extends Zt{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[DK]===!0}get[DK](){return!0}};kK.exports={AbortError:T0,HTTPParserError:bO,UndiciError:Zt,HeadersTimeoutError:lO,HeadersOverflowError:uO,BodyTimeoutError:dO,RequestContentLengthMismatchError:gO,ConnectTimeoutError:cO,ResponseStatusCodeError:pO,InvalidArgumentError:mO,InvalidReturnValueError:fO,RequestAbortedError:AO,ClientDestroyedError:EO,ClientClosedError:CO,InformationalError:hO,SocketError:IO,NotSupportedError:xO,ResponseContentLengthMismatchError:yO,BalancedPoolMissingUpstreamError:wO,ResponseExceededMaxSizeError:SO,RequestRetryError:BO,ResponseError:RO,SecureProxyConnectionError:NO,MessageSizeExceededError:TO}});var v0=w((CFt,LK)=>{"use strict";var P0={},PO=["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{"use strict";var{wellknownHeaderNames:OK,headerNameLowerCasedRecord:cFe}=v0(),vO=class t{value=null;left=null;middle=null;right=null;code;constructor(e,r,n){if(n===void 0||n>=e.length)throw new TypeError("Unreachable");if((this.code=e.charCodeAt(n))>127)throw new TypeError("key must be ascii string");e.length!==++n?this.middle=new t(e,r,n):this.value=r}add(e,r){let n=e.length;if(n===0)throw new TypeError("Unreachable");let s=0,o=this;for(;;){let i=e.charCodeAt(s);if(i>127)throw new TypeError("key must be ascii string");if(o.code===i)if(n===++s){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new t(e,r,s);break}else if(o.code=65&&(o|=32);s!==null;){if(o===s.code){if(r===++n)return s;s=s.middle;break}s=s.code{"use strict";var Vy=require("node:assert"),{kDestroyed:$K,kBodyUsed:sA,kListeners:_O,kBody:qK}=Xt(),{IncomingMessage:lFe}=require("node:http"),k0=require("node:stream"),uFe=require("node:net"),{Blob:dFe}=require("node:buffer"),pFe=require("node:util"),{stringify:mFe}=require("node:querystring"),{EventEmitter:fFe}=require("node:events"),{InvalidArgumentError:mn}=wt(),{headerNameLowerCasedRecord:AFe}=v0(),{tree:GK}=UK(),[hFe,gFe]=process.versions.node.split(".").map(t=>Number(t)),D0=class{constructor(e){this[qK]=e,this[sA]=!1}async*[Symbol.asyncIterator](){Vy(!this[sA],"disturbed"),this[sA]=!0,yield*this[qK]}};function yFe(t){return L0(t)?(WK(t)===0&&t.on("data",function(){Vy(!1)}),typeof t.readableDidRead!="boolean"&&(t[sA]=!1,fFe.prototype.on.call(t,"data",function(){this[sA]=!0})),t):t&&typeof t.pipeTo=="function"?new D0(t):t&&typeof t!="string"&&!ArrayBuffer.isView(t)&&YK(t)?new D0(t):t}function EFe(){}function L0(t){return t&&typeof t=="object"&&typeof t.pipe=="function"&&typeof t.on=="function"}function HK(t){if(t===null)return!1;if(t instanceof dFe)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")}}function CFe(t,e){if(t.includes("?")||t.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=mFe(e);return r&&(t+="?"+r),t}function zK(t){let e=parseInt(t,10);return e===Number(t)&&e>=0&&e<=65535}function Q0(t){return t!=null&&t[0]==="h"&&t[1]==="t"&&t[2]==="t"&&t[3]==="p"&&(t[4]===":"||t[4]==="s"&&t[5]===":")}function VK(t){if(typeof t=="string"){if(t=new URL(t),!Q0(t.origin||t.protocol))throw new mn("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}if(!t||typeof t!="object")throw new mn("Invalid URL: The URL argument must be a non-null object.");if(!(t instanceof URL)){if(t.port!=null&&t.port!==""&&zK(t.port)===!1)throw new mn("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 mn("Invalid URL path: the path must be a string or null/undefined.");if(t.pathname!=null&&typeof t.pathname!="string")throw new mn("Invalid URL pathname: the pathname must be a string or null/undefined.");if(t.hostname!=null&&typeof t.hostname!="string")throw new mn("Invalid URL hostname: the hostname must be a string or null/undefined.");if(t.origin!=null&&typeof t.origin!="string")throw new mn("Invalid URL origin: the origin must be a string or null/undefined.");if(!Q0(t.origin||t.protocol))throw new mn("Invalid URL protocol: the URL must start with `http:` or `https:`.");let e=t.port!=null?t.port:t.protocol==="https:"?443:80,r=t.origin!=null?t.origin:`${t.protocol||""}//${t.hostname||""}:${e}`,n=t.path!=null?t.path:`${t.pathname||""}${t.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!Q0(t.origin||t.protocol))throw new mn("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}function IFe(t){if(t=VK(t),t.pathname!=="/"||t.search||t.hash)throw new mn("invalid url");return t}function xFe(t){if(t[0]==="["){let r=t.indexOf("]");return Vy(r!==-1),t.substring(1,r)}let e=t.indexOf(":");return e===-1?t:t.substring(0,e)}function wFe(t){if(!t)return null;Vy(typeof t=="string");let e=xFe(t);return uFe.isIP(e)?"":e}function bFe(t){return JSON.parse(JSON.stringify(t))}function SFe(t){return t!=null&&typeof t[Symbol.asyncIterator]=="function"}function YK(t){return t!=null&&(typeof t[Symbol.iterator]=="function"||typeof t[Symbol.asyncIterator]=="function")}function WK(t){if(t==null)return 0;if(L0(t)){let e=t._readableState;return e&&e.objectMode===!1&&e.ended===!0&&Number.isFinite(e.length)?e.length:null}else{if(HK(t))return t.size!=null?t.size:null;if(KK(t))return t.byteLength}return null}function jK(t){return t&&!!(t.destroyed||t[$K]||k0.isDestroyed?.(t))}function BFe(t,e){t==null||!L0(t)||jK(t)||(typeof t.destroy=="function"?(Object.getPrototypeOf(t).constructor===lFe&&(t.socket=null),t.destroy(e)):e&&queueMicrotask(()=>{t.emit("error",e)}),t.destroyed!==!0&&(t[$K]=!0))}var RFe=/timeout=(\d+)/;function NFe(t){let e=t.toString().match(RFe);return e?parseInt(e[1],10)*1e3:null}function JK(t){return typeof t=="string"?AFe[t]??t.toLowerCase():GK.lookup(t)??t.toString("latin1").toLowerCase()}function TFe(t){return GK.lookup(t)??t.toString("latin1").toLowerCase()}function PFe(t,e){e===void 0&&(e={});for(let r=0;ri.toString("utf8")):o.toString("utf8")}}return"content-length"in e&&"content-disposition"in e&&(e["content-disposition"]=Buffer.from(e["content-disposition"]).toString("latin1")),e}function vFe(t){let e=t.length,r=new Array(e),n=!1,s=-1,o,i,a=0;for(let c=0;c{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(s)?s:Buffer.from(s);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await e.return()},type:"bytes"})}function MFe(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"}function FFe(t,e){return"addEventListener"in t?(t.addEventListener("abort",e,{once:!0}),()=>t.removeEventListener("abort",e)):(t.addListener("abort",e),()=>t.removeListener("abort",e))}var UFe=typeof String.prototype.toWellFormed=="function",qFe=typeof String.prototype.isWellFormed=="function";function XK(t){return UFe?`${t}`.toWellFormed():pFe.toUSVString(t)}function $Fe(t){return qFe?`${t}`.isWellFormed():XK(t)===`${t}`}function ZK(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}}function GFe(t){if(t.length===0)return!1;for(let e=0;e{"use strict";var Pt=require("node:diagnostics_channel"),kO=require("node:util"),O0=kO.debuglog("undici"),DO=kO.debuglog("fetch"),kp=kO.debuglog("websocket"),nX=!1,JFe={beforeConnect:Pt.channel("undici:client:beforeConnect"),connected:Pt.channel("undici:client:connected"),connectError:Pt.channel("undici:client:connectError"),sendHeaders:Pt.channel("undici:client:sendHeaders"),create:Pt.channel("undici:request:create"),bodySent:Pt.channel("undici:request:bodySent"),headers:Pt.channel("undici:request:headers"),trailers:Pt.channel("undici:request:trailers"),error:Pt.channel("undici:request:error"),open:Pt.channel("undici:websocket:open"),close:Pt.channel("undici:websocket:close"),socketError:Pt.channel("undici:websocket:socket_error"),ping:Pt.channel("undici:websocket:ping"),pong:Pt.channel("undici:websocket:pong")};if(O0.enabled||DO.enabled){let t=DO.enabled?DO:O0;Pt.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connecting to %s using %s%s",`${o}${s?`:${s}`:""}`,n,r)}),Pt.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connected to %s using %s%s",`${o}${s?`:${s}`:""}`,n,r)}),Pt.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o},error:i}=e;t("connection to %s using %s%s errored - %s",`${o}${s?`:${s}`:""}`,n,r,i.message)}),Pt.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("sending request to %s %s/%s",r,s,n)}),Pt.channel("undici:request:headers").subscribe(e=>{let{request:{method:r,path:n,origin:s},response:{statusCode:o}}=e;t("received response to %s %s/%s - HTTP %d",r,s,n,o)}),Pt.channel("undici:request:trailers").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("trailers received from %s %s/%s",r,s,n)}),Pt.channel("undici:request:error").subscribe(e=>{let{request:{method:r,path:n,origin:s},error:o}=e;t("request to %s %s/%s errored - %s",r,s,n,o.message)}),nX=!0}if(kp.enabled){if(!nX){let t=O0.enabled?O0:kp;Pt.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connecting to %s%s using %s%s",o,s?`:${s}`:"",n,r)}),Pt.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connected to %s%s using %s%s",o,s?`:${s}`:"",n,r)}),Pt.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o},error:i}=e;t("connection to %s%s using %s%s errored - %s",o,s?`:${s}`:"",n,r,i.message)}),Pt.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("sending request to %s %s/%s",r,s,n)})}Pt.channel("undici:websocket:open").subscribe(t=>{let{address:{address:e,port:r}}=t;kp("connection opened %s%s",e,r?`:${r}`:"")}),Pt.channel("undici:websocket:close").subscribe(t=>{let{websocket:e,code:r,reason:n}=t;kp("closed connection to %s - %s %s",e.url,r,n)}),Pt.channel("undici:websocket:socket_error").subscribe(t=>{kp("connection errored - %s",t.message)}),Pt.channel("undici:websocket:ping").subscribe(t=>{kp("ping received")}),Pt.channel("undici:websocket:pong").subscribe(t=>{kp("pong received")})}sX.exports={channels:JFe}});var cX=w((bFt,aX)=>{"use strict";var{InvalidArgumentError:$t,NotSupportedError:KFe}=wt(),Tl=require("node:assert"),{isValidHTTPToken:iX,isValidHeaderValue:LO,isStream:XFe,destroy:ZFe,isBuffer:e1e,isFormDataLike:t1e,isIterable:r1e,isBlobLike:n1e,buildURL:s1e,validateHandler:o1e,getServerName:i1e,normalizedMethodRecords:a1e}=lt(),{channels:Fa}=oA(),{headerNameLowerCasedRecord:oX}=v0(),c1e=/[^\u0021-\u00ff]/,ei=Symbol("handler"),OO=class{constructor(e,{path:r,method:n,body:s,headers:o,query:i,idempotent:a,blocking:c,upgrade:l,headersTimeout:u,bodyTimeout:d,reset:p,throwOnError:m,expectContinue:h,servername:y},I){if(typeof r!="string")throw new $t("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new $t("path must be an absolute URL or start with a slash");if(c1e.test(r))throw new $t("invalid request path");if(typeof n!="string")throw new $t("method must be a string");if(a1e[n]===void 0&&!iX(n))throw new $t("invalid request method");if(l&&typeof l!="string")throw new $t("upgrade must be a string");if(l&&!LO(l))throw new $t("invalid upgrade header");if(u!=null&&(!Number.isFinite(u)||u<0))throw new $t("invalid headersTimeout");if(d!=null&&(!Number.isFinite(d)||d<0))throw new $t("invalid bodyTimeout");if(p!=null&&typeof p!="boolean")throw new $t("invalid reset");if(h!=null&&typeof h!="boolean")throw new $t("invalid expectContinue");if(this.headersTimeout=u,this.bodyTimeout=d,this.throwOnError=m===!0,this.method=n,this.abort=null,s==null)this.body=null;else if(XFe(s)){this.body=s;let x=this.body._readableState;(!x||!x.autoDestroy)&&(this.endHandler=function(){ZFe(this)},this.body.on("end",this.endHandler)),this.errorHandler=b=>{this.abort?this.abort(b):this.error=b},this.body.on("error",this.errorHandler)}else if(e1e(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(t1e(s)||r1e(s)||n1e(s))this.body=s;else throw new $t("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=l||null,this.path=i?s1e(r,i):r,this.origin=e,this.idempotent=a??(n==="HEAD"||n==="GET"),this.blocking=c??!1,this.reset=p??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=h??!1,Array.isArray(o)){if(o.length%2!==0)throw new $t("headers array must be even");for(let x=0;x{"use strict";var l1e=require("node:events"),F0=class extends l1e{dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...e){let r=Array.isArray(e[0])?e[0]:e,n=this.dispatch.bind(this);for(let s of r)if(s!=null){if(typeof s!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof s}`);if(n=s(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new MO(this,n)}},MO=class extends F0{#e=null;#t=null;constructor(e,r){super(),this.#e=e,this.#t=r}dispatch(...e){this.#t(...e)}close(...e){return this.#e.close(...e)}destroy(...e){return this.#e.destroy(...e)}};lX.exports=F0});var lA=w((BFt,uX)=>{"use strict";var u1e=Yy(),{ClientDestroyedError:FO,ClientClosedError:d1e,InvalidArgumentError:iA}=wt(),{kDestroy:p1e,kClose:m1e,kClosed:Wy,kDestroyed:aA,kDispatch:UO,kInterceptors:Lp}=Xt(),Pl=Symbol("onDestroyed"),cA=Symbol("onClosed"),U0=Symbol("Intercepted Dispatch"),qO=class extends u1e{constructor(){super(),this[aA]=!1,this[Pl]=null,this[Wy]=!1,this[cA]=[]}get destroyed(){return this[aA]}get closed(){return this[Wy]}get interceptors(){return this[Lp]}set interceptors(e){if(e){for(let r=e.length-1;r>=0;r--)if(typeof this[Lp][r]!="function")throw new iA("interceptor must be an function")}this[Lp]=e}close(e){if(e===void 0)return new Promise((n,s)=>{this.close((o,i)=>o?s(o):n(i))});if(typeof e!="function")throw new iA("invalid callback");if(this[aA]){queueMicrotask(()=>e(new FO,null));return}if(this[Wy]){this[cA]?this[cA].push(e):queueMicrotask(()=>e(null,null));return}this[Wy]=!0,this[cA].push(e);let r=()=>{let n=this[cA];this[cA]=null;for(let s=0;sthis.destroy()).then(()=>{queueMicrotask(r)})}destroy(e,r){if(typeof e=="function"&&(r=e,e=null),r===void 0)return new Promise((s,o)=>{this.destroy(e,(i,a)=>i?o(i):s(a))});if(typeof r!="function")throw new iA("invalid callback");if(this[aA]){this[Pl]?this[Pl].push(r):queueMicrotask(()=>r(null,null));return}e||(e=new FO),this[aA]=!0,this[Pl]=this[Pl]||[],this[Pl].push(r);let n=()=>{let s=this[Pl];this[Pl]=null;for(let o=0;o{queueMicrotask(n)})}[U0](e,r){if(!this[Lp]||this[Lp].length===0)return this[U0]=this[UO],this[UO](e,r);let n=this[UO].bind(this);for(let s=this[Lp].length-1;s>=0;s--)n=this[Lp][s](n);return this[U0]=n,n(e,r)}dispatch(e,r){if(!r||typeof r!="object")throw new iA("handler must be an object");try{if(!e||typeof e!="object")throw new iA("opts must be an object.");if(this[aA]||this[Pl])throw new FO;if(this[Wy])throw new d1e;return this[U0](e,r)}catch(n){if(typeof r.onError!="function")throw new iA("invalid onError method");return r.onError(n),!1}}};uX.exports=qO});var WO=w((RFt,fX)=>{"use strict";var uA=0,$O=1e3,GO=($O>>1)-1,vl,HO=Symbol("kFastTimer"),_l=[],zO=-2,VO=-1,pX=0,dX=1;function YO(){uA+=GO;let t=0,e=_l.length;for(;t=r._idleStart+r._idleTimeout&&(r._state=VO,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===VO?(r._state=zO,--e!==0&&(_l[t]=_l[e])):++t}_l.length=e,_l.length!==0&&mX()}function mX(){vl?vl.refresh():(clearTimeout(vl),vl=setTimeout(YO,GO),vl.unref&&vl.unref())}var q0=class{[HO]=!0;_state=zO;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,r,n){this._onTimeout=e,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===zO&&_l.push(this),(!vl||_l.length===1)&&mX(),this._state=pX}clear(){this._state=VO,this._idleStart=-1}};fX.exports={setTimeout(t,e,r){return e<=$O?setTimeout(t,e,r):new q0(t,e,r)},clearTimeout(t){t[HO]?t.clear():clearTimeout(t)},setFastTimeout(t,e,r){return new q0(t,e,r)},clearFastTimeout(t){t.clear()},now(){return uA},tick(t=0){uA+=t-$O+1,YO(),YO()},reset(){uA=0,_l.length=0,clearTimeout(vl),vl=null},kFastTimer:HO}});var jy=w((PFt,EX)=>{"use strict";var f1e=require("node:net"),AX=require("node:assert"),yX=lt(),{InvalidArgumentError:A1e,ConnectTimeoutError:h1e}=wt(),$0=WO();function hX(){}var jO,JO;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?JO=class{constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(e,r)}}};function g1e({allowH2:t,maxCachedSessions:e,socketPath:r,timeout:n,session:s,...o}){if(e!=null&&(!Number.isInteger(e)||e<0))throw new A1e("maxCachedSessions must be a positive integer or zero");let i={path:r,...o},a=new JO(e??100);return n=n??1e4,t=t??!1,function({hostname:l,host:u,protocol:d,port:p,servername:m,localAddress:h,httpSocket:y},I){let x;if(d==="https:"){jO||(jO=require("node:tls")),m=m||i.servername||yX.getServerName(u)||null;let T=m||l;AX(T);let _=s||a.get(T)||null;p=p||443,x=jO.connect({highWaterMark:16384,...i,servername:m,session:_,localAddress:h,ALPNProtocols:t?["http/1.1","h2"]:["http/1.1"],socket:y,port:p,host:l}),x.on("session",function(U){a.set(T,U)})}else AX(!y,"httpSocket can only be sent on TLS update"),p=p||80,x=f1e.connect({highWaterMark:64*1024,...i,localAddress:h,port:p,host:l});if(i.keepAlive==null||i.keepAlive){let T=i.keepAliveInitialDelay===void 0?6e4:i.keepAliveInitialDelay;x.setKeepAlive(!0,T)}let b=y1e(new WeakRef(x),{timeout:n,hostname:l,port:p});return x.setNoDelay(!0).once(d==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(b),I){let T=I;I=null,T(null,this)}}).on("error",function(T){if(queueMicrotask(b),I){let _=I;I=null,_(T)}}),x}}var y1e=process.platform==="win32"?(t,e)=>{if(!e.timeout)return hX;let r=null,n=null,s=$0.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>gX(t.deref(),e))})},e.timeout);return()=>{$0.clearFastTimeout(s),clearImmediate(r),clearImmediate(n)}}:(t,e)=>{if(!e.timeout)return hX;let r=null,n=$0.setFastTimeout(()=>{r=setImmediate(()=>{gX(t.deref(),e)})},e.timeout);return()=>{$0.clearFastTimeout(n),clearImmediate(r)}};function gX(t,e){if(t==null)return;let r="Connect Timeout Error";Array.isArray(t.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${t.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${e.hostname}:${e.port},`,r+=` timeout: ${e.timeout}ms)`,yX.destroy(t,new h1e(r))}EX.exports=g1e});var CX=w(G0=>{"use strict";Object.defineProperty(G0,"__esModule",{value:!0});G0.enumToMap=void 0;function E1e(t){let e={};return Object.keys(t).forEach(r=>{let n=t[r];typeof n=="number"&&(e[r]=n)}),e}G0.enumToMap=E1e});var IX=w(W=>{"use strict";Object.defineProperty(W,"__esModule",{value:!0});W.SPECIAL_HEADERS=W.HEADER_STATE=W.MINOR=W.MAJOR=W.CONNECTION_TOKEN_CHARS=W.HEADER_CHARS=W.TOKEN=W.STRICT_TOKEN=W.HEX=W.URL_CHAR=W.STRICT_URL_CHAR=W.USERINFO_CHARS=W.MARK=W.ALPHANUM=W.NUM=W.HEX_MAP=W.NUM_MAP=W.ALPHA=W.FINISH=W.H_METHOD_MAP=W.METHOD_MAP=W.METHODS_RTSP=W.METHODS_ICE=W.METHODS_HTTP=W.METHODS=W.LENIENT_FLAGS=W.FLAGS=W.TYPE=W.ERROR=void 0;var C1e=CX(),I1e;(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"})(I1e=W.ERROR||(W.ERROR={}));var x1e;(function(t){t[t.BOTH=0]="BOTH",t[t.REQUEST=1]="REQUEST",t[t.RESPONSE=2]="RESPONSE"})(x1e=W.TYPE||(W.TYPE={}));var w1e;(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"})(w1e=W.FLAGS||(W.FLAGS={}));var b1e;(function(t){t[t.HEADERS=1]="HEADERS",t[t.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",t[t.KEEP_ALIVE=4]="KEEP_ALIVE"})(b1e=W.LENIENT_FLAGS||(W.LENIENT_FLAGS={}));var ve;(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"})(ve=W.METHODS||(W.METHODS={}));W.METHODS_HTTP=[ve.DELETE,ve.GET,ve.HEAD,ve.POST,ve.PUT,ve.CONNECT,ve.OPTIONS,ve.TRACE,ve.COPY,ve.LOCK,ve.MKCOL,ve.MOVE,ve.PROPFIND,ve.PROPPATCH,ve.SEARCH,ve.UNLOCK,ve.BIND,ve.REBIND,ve.UNBIND,ve.ACL,ve.REPORT,ve.MKACTIVITY,ve.CHECKOUT,ve.MERGE,ve["M-SEARCH"],ve.NOTIFY,ve.SUBSCRIBE,ve.UNSUBSCRIBE,ve.PATCH,ve.PURGE,ve.MKCALENDAR,ve.LINK,ve.UNLINK,ve.PRI,ve.SOURCE];W.METHODS_ICE=[ve.SOURCE];W.METHODS_RTSP=[ve.OPTIONS,ve.DESCRIBE,ve.ANNOUNCE,ve.SETUP,ve.PLAY,ve.PAUSE,ve.TEARDOWN,ve.GET_PARAMETER,ve.SET_PARAMETER,ve.REDIRECT,ve.RECORD,ve.FLUSH,ve.GET,ve.POST];W.METHOD_MAP=C1e.enumToMap(ve);W.H_METHOD_MAP={};Object.keys(W.METHOD_MAP).forEach(t=>{/^H/.test(t)&&(W.H_METHOD_MAP[t]=W.METHOD_MAP[t])});var S1e;(function(t){t[t.SAFE=0]="SAFE",t[t.SAFE_WITH_CB=1]="SAFE_WITH_CB",t[t.UNSAFE=2]="UNSAFE"})(S1e=W.FINISH||(W.FINISH={}));W.ALPHA=[];for(let t=65;t<=90;t++)W.ALPHA.push(String.fromCharCode(t)),W.ALPHA.push(String.fromCharCode(t+32));W.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};W.HEX_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15};W.NUM=["0","1","2","3","4","5","6","7","8","9"];W.ALPHANUM=W.ALPHA.concat(W.NUM);W.MARK=["-","_",".","!","~","*","'","(",")"];W.USERINFO_CHARS=W.ALPHANUM.concat(W.MARK).concat(["%",";",":","&","=","+","$",","]);W.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(W.ALPHANUM);W.URL_CHAR=W.STRICT_URL_CHAR.concat([" ","\f"]);for(let t=128;t<=255;t++)W.URL_CHAR.push(t);W.HEX=W.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);W.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(W.ALPHANUM);W.TOKEN=W.STRICT_TOKEN.concat([" "]);W.HEADER_CHARS=[" "];for(let t=32;t<=255;t++)t!==127&&W.HEADER_CHARS.push(t);W.CONNECTION_TOKEN_CHARS=W.HEADER_CHARS.filter(t=>t!==44);W.MAJOR=W.NUM_MAP;W.MINOR=W.MAJOR;var dA;(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"})(dA=W.HEADER_STATE||(W.HEADER_STATE={}));W.SPECIAL_HEADERS={connection:dA.CONNECTION,"content-length":dA.CONTENT_LENGTH,"proxy-connection":dA.CONNECTION,"transfer-encoding":dA.TRANSFER_ENCODING,upgrade:dA.UPGRADE}});var KO=w((QFt,xX)=>{"use strict";var{Buffer:B1e}=require("node:buffer");xX.exports=B1e.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 bX=w((DFt,wX)=>{"use strict";var{Buffer:R1e}=require("node:buffer");wX.exports=R1e.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 Jy=w((kFt,_X)=>{"use strict";var SX=["GET","HEAD","POST"],N1e=new Set(SX),T1e=[101,204,205,304],BX=[301,302,303,307,308],P1e=new Set(BX),RX=["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"],v1e=new Set(RX),NX=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],_1e=new Set(NX),Q1e=["follow","manual","error"],TX=["GET","HEAD","OPTIONS","TRACE"],D1e=new Set(TX),k1e=["navigate","same-origin","no-cors","cors"],L1e=["omit","same-origin","include"],O1e=["default","no-store","reload","no-cache","force-cache","only-if-cached"],M1e=["content-encoding","content-language","content-location","content-type","content-length"],F1e=["half"],PX=["CONNECT","TRACE","TRACK"],U1e=new Set(PX),vX=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],q1e=new Set(vX);_X.exports={subresource:vX,forbiddenMethods:PX,requestBodyHeader:M1e,referrerPolicy:NX,requestRedirect:Q1e,requestMode:k1e,requestCredentials:L1e,requestCache:O1e,redirectStatus:BX,corsSafeListedMethods:SX,nullBodyStatus:T1e,safeMethods:TX,badPorts:RX,requestDuplex:F1e,subresourceSet:q1e,badPortsSet:v1e,redirectStatusSet:P1e,corsSafeListedMethodsSet:N1e,safeMethodsSet:D1e,forbiddenMethodsSet:U1e,referrerPolicySet:_1e}});var ZO=w((LFt,QX)=>{"use strict";var XO=Symbol.for("undici.globalOrigin.1");function $1e(){return globalThis[XO]}function G1e(t){if(t===void 0){Object.defineProperty(globalThis,XO,{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,XO,{value:e,writable:!0,enumerable:!1,configurable:!1})}QX.exports={getGlobalOrigin:$1e,setGlobalOrigin:G1e}});var Ls=w((OFt,UX)=>{"use strict";var z0=require("node:assert"),H1e=new TextEncoder,Ky=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,z1e=/[\u000A\u000D\u0009\u0020]/,V1e=/[\u0009\u000A\u000C\u000D\u0020]/g,Y1e=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function W1e(t){z0(t.protocol==="data:");let e=LX(t,!0);e=e.slice(5);let r={position:0},n=pA(",",e,r),s=n.length;if(n=eUe(n,!0,!0),r.position>=e.length)return"failure";r.position++;let o=e.slice(s+1),i=OX(o);if(/;(\u0020){0,}base64$/i.test(n)){let c=FX(i);if(i=J1e(c),i==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let a=eM(n);return a==="failure"&&(a=eM("text/plain;charset=US-ASCII")),{mimeType:a,body:i}}function LX(t,e=!1){if(!e)return t.href;let r=t.href,n=t.hash.length,s=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?s.slice(0,-1):s}function V0(t,e,r){let n="";for(;r.position=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function kX(t){return t>=48&&t<=57?t-48:(t&223)-55}function j1e(t){let e=t.length,r=new Uint8Array(e),n=0;for(let s=0;st.length)return"failure";e.position++;let n=pA(";",t,e);if(n=H0(n,!1,!0),n.length===0||!Ky.test(n))return"failure";let s=r.toLowerCase(),o=n.toLowerCase(),i={type:s,subtype:o,parameters:new Map,essence:`${s}/${o}`};for(;e.positionz1e.test(l),t,e);let a=V0(l=>l!==";"&&l!=="=",t,e);if(a=a.toLowerCase(),e.positiont.length)break;let c=null;if(t[e.position]==='"')c=MX(t,e,!0),pA(";",t,e);else if(c=pA(";",t,e),c=H0(c,!1,!0),c.length===0)continue;a.length!==0&&Ky.test(a)&&(c.length===0||Y1e.test(c))&&!i.parameters.has(a)&&i.parameters.set(a,c)}return i}function J1e(t){t=t.replace(V1e,"");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 r=Buffer.from(t,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}function MX(t,e,r){let n=e.position,s="";for(z0(t[e.position]==='"'),e.position++;s+=V0(i=>i!=='"'&&i!=="\\",t,e),!(e.position>=t.length);){let o=t[e.position];if(e.position++,o==="\\"){if(e.position>=t.length){s+="\\";break}s+=t[e.position],e.position++}else{z0(o==='"');break}}return r?s:t.slice(n,e.position)}function K1e(t){z0(t!=="failure");let{parameters:e,essence:r}=t,n=r;for(let[s,o]of e.entries())n+=";",n+=s,n+="=",Ky.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}function X1e(t){return t===13||t===10||t===9||t===32}function H0(t,e=!0,r=!0){return tM(t,e,r,X1e)}function Z1e(t){return t===13||t===10||t===9||t===12||t===32}function eUe(t,e=!0,r=!0){return tM(t,e,r,Z1e)}function tM(t,e,r,n){let s=0,o=t.length-1;if(e)for(;s0&&n(t.charCodeAt(o));)o--;return s===0&&o===t.length-1?t:t.slice(s,o+1)}function FX(t){let e=t.length;if(65535>e)return String.fromCharCode.apply(null,t);let r="",n=0,s=65535;for(;ne&&(s=e-n),r+=String.fromCharCode.apply(null,t.subarray(n,n+=s));return r}function tUe(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":""}UX.exports={dataURLProcessor:W1e,URLSerializer:LX,collectASequenceOfCodePoints:V0,collectASequenceOfCodePointsFast:pA,stringPercentDecode:OX,parseMIMEType:eM,collectAnHTTPQuotedString:MX,serializeAMimeType:K1e,removeChars:tM,removeHTTPWhitespace:H0,minimizeSupportedMimeType:tUe,HTTP_TOKEN_CODEPOINTS:Ky,isomorphicDecode:FX}});var Bn=w((MFt,qX)=>{"use strict";var{types:Ua,inspect:rUe}=require("node:util"),{markAsUncloneable:nUe}=require("node:worker_threads"),{toUSVString:sUe}=lt(),V={};V.converters={};V.util={};V.errors={};V.errors.exception=function(t){return new TypeError(`${t.header}: ${t.message}`)};V.errors.conversionFailed=function(t){let e=t.types.length===1?"":" one of",r=`${t.argument} could not be converted to${e}: ${t.types.join(", ")}.`;return V.errors.exception({header:t.prefix,message:r})};V.errors.invalidArgument=function(t){return V.errors.exception({header:t.prefix,message:`"${t.value}" is an invalid ${t.type}.`})};V.brandCheck=function(t,e,r){if(r?.strict!==!1){if(!(t instanceof e)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(t?.[Symbol.toStringTag]!==e.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};V.argumentLengthCheck=function({length:t},e,r){if(t{});V.util.ConvertToInt=function(t,e,r,n){let s,o;e===64?(s=Math.pow(2,53)-1,r==="unsigned"?o=0:o=Math.pow(-2,53)+1):r==="unsigned"?(o=0,s=Math.pow(2,e)-1):(o=Math.pow(-2,e)-1,s=Math.pow(2,e-1)-1);let i=Number(t);if(i===0&&(i=0),n?.enforceRange===!0){if(Number.isNaN(i)||i===Number.POSITIVE_INFINITY||i===Number.NEGATIVE_INFINITY)throw V.errors.exception({header:"Integer conversion",message:`Could not convert ${V.util.Stringify(t)} to an integer.`});if(i=V.util.IntegerPart(i),is)throw V.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${s}, got ${i}.`});return i}return!Number.isNaN(i)&&n?.clamp===!0?(i=Math.min(Math.max(i,o),s),Math.floor(i)%2===0?i=Math.floor(i):i=Math.ceil(i),i):Number.isNaN(i)||i===0&&Object.is(0,i)||i===Number.POSITIVE_INFINITY||i===Number.NEGATIVE_INFINITY?0:(i=V.util.IntegerPart(i),i=i%Math.pow(2,e),r==="signed"&&i>=Math.pow(2,e)-1?i-Math.pow(2,e):i)};V.util.IntegerPart=function(t){let e=Math.floor(Math.abs(t));return t<0?-1*e:e};V.util.Stringify=function(t){switch(V.util.Type(t)){case"Symbol":return`Symbol(${t.description})`;case"Object":return rUe(t);case"String":return`"${t}"`;default:return`${t}`}};V.sequenceConverter=function(t){return(e,r,n,s)=>{if(V.util.Type(e)!=="Object")throw V.errors.exception({header:r,message:`${n} (${V.util.Stringify(e)}) is not iterable.`});let o=typeof s=="function"?s():e?.[Symbol.iterator]?.(),i=[],a=0;if(o===void 0||typeof o.next!="function")throw V.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:c,value:l}=o.next();if(c)break;i.push(t(l,r,`${n}[${a++}]`))}return i}};V.recordConverter=function(t,e){return(r,n,s)=>{if(V.util.Type(r)!=="Object")throw V.errors.exception({header:n,message:`${s} ("${V.util.Type(r)}") is not an Object.`});let o={};if(!Ua.isProxy(r)){let a=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let c of a){let l=t(c,n,s),u=e(r[c],n,s);o[l]=u}return o}let i=Reflect.ownKeys(r);for(let a of i)if(Reflect.getOwnPropertyDescriptor(r,a)?.enumerable){let l=t(a,n,s),u=e(r[a],n,s);o[l]=u}return o}};V.interfaceConverter=function(t){return(e,r,n,s)=>{if(s?.strict!==!1&&!(e instanceof t))throw V.errors.exception({header:r,message:`Expected ${n} ("${V.util.Stringify(e)}") to be an instance of ${t.name}.`});return e}};V.dictionaryConverter=function(t){return(e,r,n)=>{let s=V.util.Type(e),o={};if(s==="Null"||s==="Undefined")return o;if(s!=="Object")throw V.errors.exception({header:r,message:`Expected ${e} to be one of: Null, Undefined, Object.`});for(let i of t){let{key:a,defaultValue:c,required:l,converter:u}=i;if(l===!0&&!Object.hasOwn(e,a))throw V.errors.exception({header:r,message:`Missing required key "${a}".`});let d=e[a],p=Object.hasOwn(i,"defaultValue");if(p&&d!==null&&(d??=c()),l||p||d!==void 0){if(d=u(d,r,`${n}.${a}`),i.allowedValues&&!i.allowedValues.includes(d))throw V.errors.exception({header:r,message:`${d} is not an accepted type. Expected one of ${i.allowedValues.join(", ")}.`});o[a]=d}}return o}};V.nullableConverter=function(t){return(e,r,n)=>e===null?e:t(e,r,n)};V.converters.DOMString=function(t,e,r,n){if(t===null&&n?.legacyNullToEmptyString)return"";if(typeof t=="symbol")throw V.errors.exception({header:e,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(t)};V.converters.ByteString=function(t,e,r){let n=V.converters.DOMString(t,e,r);for(let s=0;s255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${s} has a value of ${n.charCodeAt(s)} which is greater than 255.`);return n};V.converters.USVString=sUe;V.converters.boolean=function(t){return!!t};V.converters.any=function(t){return t};V.converters["long long"]=function(t,e,r){return V.util.ConvertToInt(t,64,"signed",void 0,e,r)};V.converters["unsigned long long"]=function(t,e,r){return V.util.ConvertToInt(t,64,"unsigned",void 0,e,r)};V.converters["unsigned long"]=function(t,e,r){return V.util.ConvertToInt(t,32,"unsigned",void 0,e,r)};V.converters["unsigned short"]=function(t,e,r,n){return V.util.ConvertToInt(t,16,"unsigned",n,e,r)};V.converters.ArrayBuffer=function(t,e,r,n){if(V.util.Type(t)!=="Object"||!Ua.isAnyArrayBuffer(t))throw V.errors.conversionFailed({prefix:e,argument:`${r} ("${V.util.Stringify(t)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&Ua.isSharedArrayBuffer(t))throw V.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.resizable||t.growable)throw V.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};V.converters.TypedArray=function(t,e,r,n,s){if(V.util.Type(t)!=="Object"||!Ua.isTypedArray(t)||t.constructor.name!==e.name)throw V.errors.conversionFailed({prefix:r,argument:`${n} ("${V.util.Stringify(t)}")`,types:[e.name]});if(s?.allowShared===!1&&Ua.isSharedArrayBuffer(t.buffer))throw V.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw V.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};V.converters.DataView=function(t,e,r,n){if(V.util.Type(t)!=="Object"||!Ua.isDataView(t))throw V.errors.exception({header:e,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&Ua.isSharedArrayBuffer(t.buffer))throw V.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw V.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};V.converters.BufferSource=function(t,e,r,n){if(Ua.isAnyArrayBuffer(t))return V.converters.ArrayBuffer(t,e,r,{...n,allowShared:!1});if(Ua.isTypedArray(t))return V.converters.TypedArray(t,t.constructor,e,r,{...n,allowShared:!1});if(Ua.isDataView(t))return V.converters.DataView(t,e,r,{...n,allowShared:!1});throw V.errors.conversionFailed({prefix:e,argument:`${r} ("${V.util.Stringify(t)}")`,types:["BufferSource"]})};V.converters["sequence"]=V.sequenceConverter(V.converters.ByteString);V.converters["sequence>"]=V.sequenceConverter(V.converters["sequence"]);V.converters["record"]=V.recordConverter(V.converters.ByteString,V.converters.ByteString);qX.exports={webidl:V}});var ho=w((FFt,t7)=>{"use strict";var{Transform:oUe}=require("node:stream"),$X=require("node:zlib"),{redirectStatusSet:iUe,referrerPolicySet:aUe,badPortsSet:cUe}=Jy(),{getGlobalOrigin:GX}=ZO(),{collectASequenceOfCodePoints:Op,collectAnHTTPQuotedString:lUe,removeChars:uUe,parseMIMEType:dUe}=Ls(),{performance:pUe}=require("node:perf_hooks"),{isBlobLike:mUe,ReadableStreamFrom:fUe,isValidHTTPToken:HX,normalizedMethodRecordsBase:AUe}=lt(),Mp=require("node:assert"),{isUint8Array:hUe}=require("node:util/types"),{webidl:Xy}=Bn(),zX=[],W0;try{W0=require("node:crypto");let t=["sha256","sha384","sha512"];zX=W0.getHashes().filter(e=>t.includes(e))}catch{}function VX(t){let e=t.urlList,r=e.length;return r===0?null:e[r-1].toString()}function gUe(t,e){if(!iUe.has(t.status))return null;let r=t.headersList.get("location",!0);return r!==null&&WX(r)&&(YX(r)||(r=yUe(r)),r=new URL(r,VX(t))),r&&!r.hash&&(r.hash=e),r}function YX(t){for(let e=0;e126||r<32)return!1}return!0}function yUe(t){return Buffer.from(t,"binary").toString("utf8")}function eE(t){return t.urlList[t.urlList.length-1]}function EUe(t){let e=eE(t);return ZX(e)&&cUe.has(e.port)?"blocked":"allowed"}function CUe(t){return t instanceof Error||t?.constructor?.name==="Error"||t?.constructor?.name==="DOMException"}function IUe(t){for(let e=0;e=32&&r<=126||r>=128&&r<=255))return!1}return!0}var xUe=HX;function WX(t){return(t[0]===" "||t[0]===" "||t[t.length-1]===" "||t[t.length-1]===" "||t.includes(` -`)||t.includes("\r")||t.includes("\0"))===!1}function wUe(t,e){let{headersList:r}=e,n=(r.get("referrer-policy",!0)??"").split(","),s="";if(n.length>0)for(let o=n.length;o!==0;o--){let i=n[o-1].trim();if(aUe.has(i)){s=i;break}}s!==""&&(t.referrerPolicy=s)}function bUe(){return"allowed"}function SUe(){return"success"}function BUe(){return"success"}function RUe(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}function NUe(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&&nM(t.origin)&&!nM(eE(t))&&(e=null);break;case"same-origin":j0(t,eE(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}function mA(t,e){return t}function TUe(t,e,r){return!t?.startTime||t.startTime4096&&(n=s);let o=j0(t,n),i=Zy(n)&&!Zy(t.url);switch(e){case"origin":return s??rM(r,!0);case"unsafe-url":return n;case"same-origin":return o?s:"no-referrer";case"origin-when-cross-origin":return o?n:s;case"strict-origin-when-cross-origin":{let a=eE(t);return j0(n,a)?n:Zy(n)&&!Zy(a)?"no-referrer":s}default:return i?"no-referrer":s}}function rM(t,e){return Mp(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)}function Zy(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(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}function DUe(t,e){if(W0===void 0)return!0;let r=JX(e);if(r==="no metadata"||r.length===0)return!0;let n=LUe(r),s=OUe(r,n);for(let o of s){let i=o.algo,a=o.hash,c=W0.createHash(i).update(t).digest("base64");if(c[c.length-1]==="="&&(c[c.length-2]==="="?c=c.slice(0,-2):c=c.slice(0,-1)),MUe(c,a))return!0}return!1}var kUe=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function JX(t){let e=[],r=!0;for(let n of t.split(" ")){r=!1;let s=kUe.exec(n);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let o=s.groups.algo.toLowerCase();zX.includes(o)&&e.push(s.groups)}return r===!0?"no metadata":e}function LUe(t){let e=t[0].algo;if(e[3]==="5")return e;for(let r=1;r{t=n,e=s}),resolve:t,reject:e}}function qUe(t){return t.controller.state==="aborted"}function $Ue(t){return t.controller.state==="aborted"||t.controller.state==="terminated"}function GUe(t){return AUe[t.toLowerCase()]??t}function HUe(t){let e=JSON.stringify(t);if(e===void 0)throw new TypeError("Value is not JSON serializable");return Mp(typeof e=="string"),e}var zUe=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function KX(t,e,r=0,n=1){class s{#e;#t;#s;constructor(i,a){this.#e=i,this.#t=a,this.#s=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 i=this.#s,a=this.#e[e],c=a.length;if(i>=c)return{value:void 0,done:!0};let{[r]:l,[n]:u}=a[i];this.#s=i+1;let d;switch(this.#t){case"key":d=l;break;case"value":d=u;break;case"key+value":d=[l,u];break}return{value:d,done:!1}}}return delete s.prototype.constructor,Object.setPrototypeOf(s.prototype,zUe),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${t} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,i){return new s(o,i)}}function VUe(t,e,r,n=0,s=1){let o=KX(t,r,n,s),i={keys:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Xy.brandCheck(this,e),o(this,"key")}},values:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Xy.brandCheck(this,e),o(this,"value")}},entries:{writable:!0,enumerable:!0,configurable:!0,value:function(){return Xy.brandCheck(this,e),o(this,"key+value")}},forEach:{writable:!0,enumerable:!0,configurable:!0,value:function(c,l=globalThis){if(Xy.brandCheck(this,e),Xy.argumentLengthCheck(arguments,1,`${t}.forEach`),typeof c!="function")throw new TypeError(`Failed to execute 'forEach' on '${t}': parameter 1 is not of type 'Function'.`);for(let{0:u,1:d}of o(this,"key+value"))c.call(l,d,u,this)}}};return Object.defineProperties(e.prototype,{...i,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:i.entries.value}})}async function YUe(t,e,r){let n=e,s=r,o;try{o=t.stream.getReader()}catch(i){s(i);return}try{n(await XX(o))}catch(i){s(i)}}function WUe(t){return t instanceof ReadableStream||t[Symbol.toStringTag]==="ReadableStream"&&typeof t.tee=="function"}function jUe(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}}var JUe=/[^\x00-\xFF]/;function Y0(t){return Mp(!JUe.test(t)),t}async function XX(t){let e=[],r=0;for(;;){let{done:n,value:s}=await t.read();if(n)return Buffer.concat(e,r);if(!hUe(s))throw new TypeError("Received non-Uint8Array chunk");e.push(s),r+=s.length}}function KUe(t){Mp("protocol"in t);let e=t.protocol;return e==="about:"||e==="blob:"||e==="data:"}function nM(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:"}function ZX(t){Mp("protocol"in t);let e=t.protocol;return e==="http:"||e==="https:"}function XUe(t,e){let r=t;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(e&&Op(c=>c===" "||c===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,e&&Op(c=>c===" "||c===" ",r,n);let s=Op(c=>{let l=c.charCodeAt(0);return l>=48&&l<=57},r,n),o=s.length?Number(s):null;if(e&&Op(c=>c===" "||c===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,e&&Op(c=>c===" "||c===" ",r,n);let i=Op(c=>{let l=c.charCodeAt(0);return l>=48&&l<=57},r,n),a=i.length?Number(i):null;return n.positiona?"failure":{rangeStartValue:o,rangeEndValue:a}}function ZUe(t,e,r){let n="bytes ";return n+=Y0(`${t}`),n+="-",n+=Y0(`${e}`),n+="/",n+=Y0(`${r}`),n}var sM=class extends oUe{#e;constructor(e){super(),this.#e=e}_transform(e,r,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)===8?$X.createInflate(this.#e):$X.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,r,n)}_final(e){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),e()}};function e2e(t){return new sM(t)}function t2e(t){let e=null,r=null,n=null,s=e7("content-type",t);if(s===null)return"failure";for(let o of s){let i=dUe(o);i==="failure"||i.essence==="*/*"||(n=i,n.essence!==r?(e=null,n.parameters.has("charset")&&(e=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&e!==null&&n.parameters.set("charset",e))}return n??"failure"}function r2e(t){let e=t,r={position:0},n=[],s="";for(;r.positiono!=='"'&&o!==",",e,r),r.positiono===9||o===32),n.push(s),s=""}return n}function e7(t,e){let r=e.get(t,!0);return r===null?null:r2e(r)}var n2e=new TextDecoder;function s2e(t){return t.length===0?"":(t[0]===239&&t[1]===187&&t[2]===191&&(t=t.subarray(3)),n2e.decode(t))}var oM=class{get baseUrl(){return GX()}get origin(){return this.baseUrl?.origin}policyContainer=jX()},iM=class{settingsObject=new oM},o2e=new iM;t7.exports={isAborted:qUe,isCancelled:$Ue,isValidEncodedURL:YX,createDeferredPromise:UUe,ReadableStreamFrom:fUe,tryUpgradeRequestToAPotentiallyTrustworthyURL:FUe,clampAndCoarsenConnectionTimingInfo:TUe,coarsenedSharedCurrentTime:PUe,determineRequestsReferrer:QUe,makePolicyContainer:jX,clonePolicyContainer:_Ue,appendFetchMetadata:RUe,appendRequestOriginHeader:NUe,TAOCheck:BUe,corsCheck:SUe,crossOriginResourcePolicyCheck:bUe,createOpaqueTimingInfo:vUe,setRequestReferrerPolicyOnRedirect:wUe,isValidHTTPToken:HX,requestBadPort:EUe,requestCurrentURL:eE,responseURL:VX,responseLocationURL:gUe,isBlobLike:mUe,isURLPotentiallyTrustworthy:Zy,isValidReasonPhrase:IUe,sameOrigin:j0,normalizeMethod:GUe,serializeJavascriptValueToJSONString:HUe,iteratorMixin:VUe,createIterator:KX,isValidHeaderName:xUe,isValidHeaderValue:WX,isErrorLike:CUe,fullyReadBody:YUe,bytesMatch:DUe,isReadableStreamLike:WUe,readableStreamClose:jUe,isomorphicEncode:Y0,urlIsLocal:KUe,urlHasHttpsScheme:nM,urlIsHttpHttpsScheme:ZX,readAllBytes:XX,simpleRangeHeaderValue:XUe,buildContentRange:ZUe,parseMetadata:JX,createInflate:e2e,extractMimeType:t2e,getDecodeSplit:e7,utf8DecodeBytes:s2e,environmentSettingsObject:o2e}});var Hu=w((UFt,r7)=>{"use strict";r7.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var cM=w((qFt,n7)=>{"use strict";var{Blob:i2e,File:a2e}=require("node:buffer"),{kState:Ql}=Hu(),{webidl:qa}=Bn(),aM=class t{constructor(e,r,n={}){let s=r,o=n.type,i=n.lastModified??Date.now();this[Ql]={blobLike:e,name:s,type:o,lastModified:i}}stream(...e){return qa.brandCheck(this,t),this[Ql].blobLike.stream(...e)}arrayBuffer(...e){return qa.brandCheck(this,t),this[Ql].blobLike.arrayBuffer(...e)}slice(...e){return qa.brandCheck(this,t),this[Ql].blobLike.slice(...e)}text(...e){return qa.brandCheck(this,t),this[Ql].blobLike.text(...e)}get size(){return qa.brandCheck(this,t),this[Ql].blobLike.size}get type(){return qa.brandCheck(this,t),this[Ql].blobLike.type}get name(){return qa.brandCheck(this,t),this[Ql].name}get lastModified(){return qa.brandCheck(this,t),this[Ql].lastModified}get[Symbol.toStringTag](){return"File"}};qa.converters.Blob=qa.interfaceConverter(i2e);function c2e(t){return t instanceof a2e||t&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&t[Symbol.toStringTag]==="File"}n7.exports={FileLike:aM,isFileLike:c2e}});var rE=w(($Ft,c7)=>{"use strict";var{isBlobLike:J0,iteratorMixin:l2e}=ho(),{kState:us}=Hu(),{kEnumerableProperty:fA}=lt(),{FileLike:s7,isFileLike:u2e}=cM(),{webidl:Gt}=Bn(),{File:a7}=require("node:buffer"),o7=require("node:util"),i7=globalThis.File??a7,tE=class t{constructor(e){if(Gt.util.markAsUncloneable(this),e!==void 0)throw Gt.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[us]=[]}append(e,r,n=void 0){Gt.brandCheck(this,t);let s="FormData.append";if(Gt.argumentLengthCheck(arguments,2,s),arguments.length===3&&!J0(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");e=Gt.converters.USVString(e,s,"name"),r=J0(r)?Gt.converters.Blob(r,s,"value",{strict:!1}):Gt.converters.USVString(r,s,"value"),n=arguments.length===3?Gt.converters.USVString(n,s,"filename"):void 0;let o=lM(e,r,n);this[us].push(o)}delete(e){Gt.brandCheck(this,t);let r="FormData.delete";Gt.argumentLengthCheck(arguments,1,r),e=Gt.converters.USVString(e,r,"name"),this[us]=this[us].filter(n=>n.name!==e)}get(e){Gt.brandCheck(this,t);let r="FormData.get";Gt.argumentLengthCheck(arguments,1,r),e=Gt.converters.USVString(e,r,"name");let n=this[us].findIndex(s=>s.name===e);return n===-1?null:this[us][n].value}getAll(e){Gt.brandCheck(this,t);let r="FormData.getAll";return Gt.argumentLengthCheck(arguments,1,r),e=Gt.converters.USVString(e,r,"name"),this[us].filter(n=>n.name===e).map(n=>n.value)}has(e){Gt.brandCheck(this,t);let r="FormData.has";return Gt.argumentLengthCheck(arguments,1,r),e=Gt.converters.USVString(e,r,"name"),this[us].findIndex(n=>n.name===e)!==-1}set(e,r,n=void 0){Gt.brandCheck(this,t);let s="FormData.set";if(Gt.argumentLengthCheck(arguments,2,s),arguments.length===3&&!J0(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");e=Gt.converters.USVString(e,s,"name"),r=J0(r)?Gt.converters.Blob(r,s,"name",{strict:!1}):Gt.converters.USVString(r,s,"name"),n=arguments.length===3?Gt.converters.USVString(n,s,"name"):void 0;let o=lM(e,r,n),i=this[us].findIndex(a=>a.name===e);i!==-1?this[us]=[...this[us].slice(0,i),o,...this[us].slice(i+1).filter(a=>a.name!==e)]:this[us].push(o)}[o7.inspect.custom](e,r){let n=this[us].reduce((o,i)=>(o[i.name]?Array.isArray(o[i.name])?o[i.name].push(i.value):o[i.name]=[o[i.name],i.value]:o[i.name]=i.value,o),{__proto__:null});r.depth??=e,r.colors??=!0;let s=o7.formatWithOptions(r,n);return`FormData ${s.slice(s.indexOf("]")+2)}`}};l2e("FormData",tE,us,"name","value");Object.defineProperties(tE.prototype,{append:fA,delete:fA,get:fA,getAll:fA,has:fA,set:fA,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function lM(t,e,r){if(typeof e!="string"){if(u2e(e)||(e=e instanceof Blob?new i7([e],"blob",{type:e.type}):new s7(e,"blob",{type:e.type})),r!==void 0){let n={type:e.type,lastModified:e.lastModified};e=e instanceof a7?new i7([e],r,n):new s7(e,r,n)}}return{name:t,value:e}}c7.exports={FormData:tE,makeEntry:lM}});var f7=w((GFt,m7)=>{"use strict";var{isUSVString:l7,bufferToLowerCasedHeaderName:d2e}=lt(),{utf8DecodeBytes:p2e}=ho(),{HTTP_TOKEN_CODEPOINTS:m2e,isomorphicDecode:u7}=Ls(),{isFileLike:f2e}=cM(),{makeEntry:A2e}=rE(),K0=require("node:assert"),{File:h2e}=require("node:buffer"),g2e=globalThis.File??h2e,y2e=Buffer.from('form-data; name="'),d7=Buffer.from("; filename"),E2e=Buffer.from("--"),C2e=Buffer.from(`--\r -`);function I2e(t){for(let e=0;e70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}function w2e(t,e){K0(e!=="failure"&&e.essence==="multipart/form-data");let r=e.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),s=[],o={position:0};for(;t[o.position]===13&&t[o.position+1]===10;)o.position+=2;let i=t.length;for(;t[i-1]===10&&t[i-2]===13;)i-=2;for(i!==t.length&&(t=t.subarray(0,i));;){if(t.subarray(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===t.length-2&&X0(t,E2e,o)||o.position===t.length-4&&X0(t,C2e,o))return s;if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let a=b2e(t,o);if(a==="failure")return"failure";let{name:c,filename:l,contentType:u,encoding:d}=a;o.position+=2;let p;{let h=t.indexOf(n.subarray(2),o.position);if(h===-1)return"failure";p=t.subarray(o.position,h-4),o.position+=p.length,d==="base64"&&(p=Buffer.from(p.toString(),"base64"))}if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let m;l!==null?(u??="text/plain",I2e(u)||(u=""),m=new g2e([p],l,{type:u})):m=p2e(Buffer.from(p)),K0(l7(c)),K0(typeof m=="string"&&l7(m)||f2e(m)),s.push(A2e(c,m,l))}}function b2e(t,e){let r=null,n=null,s=null,o=null;for(;;){if(t[e.position]===13&&t[e.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:s,encoding:o};let i=AA(a=>a!==10&&a!==13&&a!==58,t,e);if(i=uM(i,!0,!0,a=>a===9||a===32),!m2e.test(i.toString())||t[e.position]!==58)return"failure";switch(e.position++,AA(a=>a===32||a===9,t,e),d2e(i)){case"content-disposition":{if(r=n=null,!X0(t,y2e,e)||(e.position+=17,r=p7(t,e),r===null))return"failure";if(X0(t,d7,e)){let a=e.position+d7.length;if(t[a]===42&&(e.position+=1,a+=1),t[a]!==61||t[a+1]!==34||(e.position+=12,n=p7(t,e),n===null))return"failure"}break}case"content-type":{let a=AA(c=>c!==10&&c!==13,t,e);a=uM(a,!1,!0,c=>c===9||c===32),s=u7(a);break}case"content-transfer-encoding":{let a=AA(c=>c!==10&&c!==13,t,e);a=uM(a,!1,!0,c=>c===9||c===32),o=u7(a);break}default:AA(a=>a!==10&&a!==13,t,e)}if(t[e.position]!==13&&t[e.position+1]!==10)return"failure";e.position+=2}}function p7(t,e){K0(t[e.position-1]===34);let r=AA(n=>n!==10&&n!==13&&n!==34,t,e);return t[e.position]!==34?null:(e.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` -`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}function AA(t,e,r){let n=r.position;for(;n0&&n(t[o]);)o--;return s===0&&o===t.length-1?t:t.subarray(s,o+1)}function X0(t,e,r){if(t.length{"use strict";var nE=lt(),{ReadableStreamFrom:S2e,isBlobLike:A7,isReadableStreamLike:B2e,readableStreamClose:R2e,createDeferredPromise:N2e,fullyReadBody:T2e,extractMimeType:P2e,utf8DecodeBytes:y7}=ho(),{FormData:h7}=rE(),{kState:gA}=Hu(),{webidl:v2e}=Bn(),{Blob:_2e}=require("node:buffer"),dM=require("node:assert"),{isErrored:E7,isDisturbed:Q2e}=require("node:stream"),{isArrayBuffer:D2e}=require("node:util/types"),{serializeAMimeType:k2e}=Ls(),{multipartFormDataParser:L2e}=f7(),pM;try{let t=require("node:crypto");pM=e=>t.randomInt(0,e)}catch{pM=t=>Math.floor(Math.random(t))}var Z0=new TextEncoder;function O2e(){}var C7=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,I7;C7&&(I7=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!Q2e(e)&&!E7(e)&&e.cancel("Response object has been garbage collected").catch(O2e)}));function x7(t,e=!1){let r=null;t instanceof ReadableStream?r=t:A7(t)?r=t.stream():r=new ReadableStream({async pull(c){let l=typeof s=="string"?Z0.encode(s):s;l.byteLength&&c.enqueue(l),queueMicrotask(()=>R2e(c))},start(){},type:"bytes"}),dM(B2e(r));let n=null,s=null,o=null,i=null;if(typeof t=="string")s=t,i="text/plain;charset=UTF-8";else if(t instanceof URLSearchParams)s=t.toString(),i="application/x-www-form-urlencoded;charset=UTF-8";else if(D2e(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(nE.isFormDataLike(t)){let c=`----formdata-undici-0${`${pM(1e11)}`.padStart(11,"0")}`,l=`--${c}\r -Content-Disposition: form-data`;let u=I=>I.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),d=I=>I.replace(/\r?\n|\r/g,`\r -`),p=[],m=new Uint8Array([13,10]);o=0;let h=!1;for(let[I,x]of t)if(typeof x=="string"){let b=Z0.encode(l+`; name="${u(d(I))}"\r +var jMe=Object.create;var Vy=Object.defineProperty;var JMe=Object.getOwnPropertyDescriptor;var KMe=Object.getOwnPropertyNames;var XMe=Object.getPrototypeOf,ZMe=Object.prototype.hasOwnProperty;var i=(t,e)=>Vy(t,"name",{value:e,configurable:!0});var I=(t,e)=>()=>(t&&(e=t(t=0)),e);var b=(t,e)=>()=>(e||t((e={exports:{}}).exports,e),e.exports),en=(t,e)=>{for(var r in e)Vy(t,r,{get:e[r],enumerable:!0})},eK=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of KMe(e))!ZMe.call(t,s)&&s!==r&&Vy(t,s,{get:()=>e[s],enumerable:!(n=JMe(e,s))||n.enumerable});return t};var D=(t,e,r)=>(r=t!=null?jMe(XMe(t)):{},eK(e||!t||!t.__esModule?Vy(r,"default",{value:t,enumerable:!0}):r,t)),W=t=>eK(Vy({},"__esModule",{value:!0}),t);var lK=b(sA=>{"use strict";var EFt=require("net"),nFe=require("tls"),aO=require("http"),iK=require("https"),sFe=require("events"),CFt=require("assert"),oFe=require("util");sA.httpOverHttp=iFe;sA.httpsOverHttp=aFe;sA.httpOverHttps=cFe;sA.httpsOverHttps=lFe;function iFe(t){var e=new Tl(t);return e.request=aO.request,e}i(iFe,"httpOverHttp");function aFe(t){var e=new Tl(t);return e.request=aO.request,e.createSocket=aK,e.defaultPort=443,e}i(aFe,"httpsOverHttp");function cFe(t){var e=new Tl(t);return e.request=iK.request,e}i(cFe,"httpOverHttps");function lFe(t){var e=new Tl(t);return e.request=iK.request,e.createSocket=aK,e.defaultPort=443,e}i(lFe,"httpsOverHttps");function Tl(t){var e=this;e.options=t||{},e.proxyOptions=e.options.proxy||{},e.maxSockets=e.options.maxSockets||aO.Agent.defaultMaxSockets,e.requests=[],e.sockets=[],e.on("free",i(function(n,s,o,a){for(var c=cK(s,o,a),l=0,u=e.requests.length;l=this.maxSockets){o.requests.push(a);return}o.createSocket(a,function(c){c.on("free",l),c.on("close",u),c.on("agentRemove",u),e.onSocket(c);function l(){o.emit("free",c,a)}i(l,"onFree");function u(d){o.removeSocket(c),c.removeListener("free",l),c.removeListener("close",u),c.removeListener("agentRemove",u)}i(u,"onCloseOrRemove")})},"addRequest");Tl.prototype.createSocket=i(function(e,r){var n=this,s={};n.sockets.push(s);var o=cO({},n.proxyOptions,{method:"CONNECT",path:e.host+":"+e.port,agent:!1,headers:{host:e.host+":"+e.port}});e.localAddress&&(o.localAddress=e.localAddress),o.proxyAuth&&(o.headers=o.headers||{},o.headers["Proxy-Authorization"]="Basic "+new Buffer(o.proxyAuth).toString("base64")),Hu("making CONNECT request");var a=n.request(o);a.useChunkedEncodingByDefault=!1,a.once("response",c),a.once("upgrade",l),a.once("connect",u),a.once("error",d),a.end();function c(p){p.upgrade=!0}i(c,"onResponse");function l(p,m,f){process.nextTick(function(){u(p,m,f)})}i(l,"onUpgrade");function u(p,m,f){if(a.removeAllListeners(),m.removeAllListeners(),p.statusCode!==200){Hu("tunneling socket could not be established, statusCode=%d",p.statusCode),m.destroy();var g=new Error("tunneling socket could not be established, statusCode="+p.statusCode);g.code="ECONNRESET",e.request.emit("error",g),n.removeSocket(s);return}if(f.length>0){Hu("got illegal response body from proxy"),m.destroy();var g=new Error("got illegal response body from proxy");g.code="ECONNRESET",e.request.emit("error",g),n.removeSocket(s);return}return Hu("tunneling connection has established"),n.sockets[n.sockets.indexOf(s)]=m,r(m)}i(u,"onConnect");function d(p){a.removeAllListeners(),Hu(`tunneling socket could not be established, cause=%s +`,p.message,p.stack);var m=new Error("tunneling socket could not be established, cause="+p.message);m.code="ECONNRESET",e.request.emit("error",m),n.removeSocket(s)}i(d,"onError")},"createSocket");Tl.prototype.removeSocket=i(function(e){var r=this.sockets.indexOf(e);if(r!==-1){this.sockets.splice(r,1);var n=this.requests.shift();n&&this.createSocket(n,function(s){n.request.onSocket(s)})}},"removeSocket");function aK(t,e){var r=this;Tl.prototype.createSocket.call(r,t,function(n){var s=t.request.getHeader("host"),o=cO({},r.options,{socket:n,servername:s?s.replace(/:.*$/,""):t.host}),a=nFe.connect(0,o);r.sockets[r.sockets.indexOf(n)]=a,e(a)})}i(aK,"createSecureSocket");function cK(t,e,r){return typeof t=="string"?{host:t,port:e,localAddress:r}:t}i(cK,"toOptions");function cO(t){for(var e=1,r=arguments.length;e{uK.exports=lK()});var Zt=b((bFt,dK)=>{dK.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 bt=b((SFt,LK)=>{"use strict";var pK=Symbol.for("undici.error.UND_ERR"),er=class extends Error{static{i(this,"UndiciError")}constructor(e){super(e),this.name="UndiciError",this.code="UND_ERR"}static[Symbol.hasInstance](e){return e&&e[pK]===!0}[pK]=!0},mK=Symbol.for("undici.error.UND_ERR_CONNECT_TIMEOUT"),lO=class extends er{static{i(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[mK]===!0}[mK]=!0},fK=Symbol.for("undici.error.UND_ERR_HEADERS_TIMEOUT"),uO=class extends er{static{i(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[fK]===!0}[fK]=!0},AK=Symbol.for("undici.error.UND_ERR_HEADERS_OVERFLOW"),dO=class extends er{static{i(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[AK]===!0}[AK]=!0},hK=Symbol.for("undici.error.UND_ERR_BODY_TIMEOUT"),pO=class extends er{static{i(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[hK]===!0}[hK]=!0},gK=Symbol.for("undici.error.UND_ERR_RESPONSE_STATUS_CODE"),mO=class extends er{static{i(this,"ResponseStatusCodeError")}constructor(e,r,n,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=r,this.statusCode=r,this.headers=n}static[Symbol.hasInstance](e){return e&&e[gK]===!0}[gK]=!0},yK=Symbol.for("undici.error.UND_ERR_INVALID_ARG"),fO=class extends er{static{i(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[yK]===!0}[yK]=!0},EK=Symbol.for("undici.error.UND_ERR_INVALID_RETURN_VALUE"),AO=class extends er{static{i(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[EK]===!0}[EK]=!0},CK=Symbol.for("undici.error.UND_ERR_ABORT"),P0=class extends er{static{i(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[CK]===!0}[CK]=!0},IK=Symbol.for("undici.error.UND_ERR_ABORTED"),hO=class extends P0{static{i(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[IK]===!0}[IK]=!0},xK=Symbol.for("undici.error.UND_ERR_INFO"),gO=class extends er{static{i(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[xK]===!0}[xK]=!0},wK=Symbol.for("undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH"),yO=class extends er{static{i(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[wK]===!0}[wK]=!0},bK=Symbol.for("undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH"),EO=class extends er{static{i(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[bK]===!0}[bK]=!0},SK=Symbol.for("undici.error.UND_ERR_DESTROYED"),CO=class extends er{static{i(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[SK]===!0}[SK]=!0},BK=Symbol.for("undici.error.UND_ERR_CLOSED"),IO=class extends er{static{i(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[BK]===!0}[BK]=!0},RK=Symbol.for("undici.error.UND_ERR_SOCKET"),xO=class extends er{static{i(this,"SocketError")}constructor(e,r){super(e),this.name="SocketError",this.message=e||"Socket error",this.code="UND_ERR_SOCKET",this.socket=r}static[Symbol.hasInstance](e){return e&&e[RK]===!0}[RK]=!0},NK=Symbol.for("undici.error.UND_ERR_NOT_SUPPORTED"),wO=class extends er{static{i(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[NK]===!0}[NK]=!0},TK=Symbol.for("undici.error.UND_ERR_BPL_MISSING_UPSTREAM"),bO=class extends er{static{i(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[TK]===!0}[TK]=!0},PK=Symbol.for("undici.error.UND_ERR_HTTP_PARSER"),SO=class extends Error{static{i(this,"HTTPParserError")}constructor(e,r,n){super(e),this.name="HTTPParserError",this.code=r?`HPE_${r}`:void 0,this.data=n?n.toString():void 0}static[Symbol.hasInstance](e){return e&&e[PK]===!0}[PK]=!0},vK=Symbol.for("undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE"),BO=class extends er{static{i(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[vK]===!0}[vK]=!0},_K=Symbol.for("undici.error.UND_ERR_REQ_RETRY"),RO=class extends er{static{i(this,"RequestRetryError")}constructor(e,r,{headers:n,data:s}){super(e),this.name="RequestRetryError",this.message=e||"Request retry error",this.code="UND_ERR_REQ_RETRY",this.statusCode=r,this.data=s,this.headers=n}static[Symbol.hasInstance](e){return e&&e[_K]===!0}[_K]=!0},QK=Symbol.for("undici.error.UND_ERR_RESPONSE"),NO=class extends er{static{i(this,"ResponseError")}constructor(e,r,{headers:n,data:s}){super(e),this.name="ResponseError",this.message=e||"Response error",this.code="UND_ERR_RESPONSE",this.statusCode=r,this.data=s,this.headers=n}static[Symbol.hasInstance](e){return e&&e[QK]===!0}[QK]=!0},DK=Symbol.for("undici.error.UND_ERR_PRX_TLS"),TO=class extends er{static{i(this,"SecureProxyConnectionError")}constructor(e,r,n){super(r,{cause:e,...n??{}}),this.name="SecureProxyConnectionError",this.message=r||"Secure Proxy Connection failed",this.code="UND_ERR_PRX_TLS",this.cause=e}static[Symbol.hasInstance](e){return e&&e[DK]===!0}[DK]=!0},kK=Symbol.for("undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED"),PO=class extends er{static{i(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[kK]===!0}get[kK](){return!0}};LK.exports={AbortError:P0,HTTPParserError:SO,UndiciError:er,HeadersTimeoutError:uO,HeadersOverflowError:dO,BodyTimeoutError:pO,RequestContentLengthMismatchError:yO,ConnectTimeoutError:lO,ResponseStatusCodeError:mO,InvalidArgumentError:fO,InvalidReturnValueError:AO,RequestAbortedError:hO,ClientDestroyedError:CO,ClientClosedError:IO,InformationalError:gO,SocketError:xO,NotSupportedError:wO,ResponseContentLengthMismatchError:EO,BalancedPoolMissingUpstreamError:bO,ResponseExceededMaxSizeError:BO,RequestRetryError:RO,ResponseError:NO,SecureProxyConnectionError:TO,MessageSizeExceededError:PO}});var _0=b((RFt,OK)=>{"use strict";var v0={},vO=["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{"use strict";var{wellknownHeaderNames:MK,headerNameLowerCasedRecord:uFe}=_0(),_O=class t{static{i(this,"TstNode")}value=null;left=null;middle=null;right=null;code;constructor(e,r,n){if(n===void 0||n>=e.length)throw new TypeError("Unreachable");if((this.code=e.charCodeAt(n))>127)throw new TypeError("key must be ascii string");e.length!==++n?this.middle=new t(e,r,n):this.value=r}add(e,r){let n=e.length;if(n===0)throw new TypeError("Unreachable");let s=0,o=this;for(;;){let a=e.charCodeAt(s);if(a>127)throw new TypeError("key must be ascii string");if(o.code===a)if(n===++s){o.value=r;break}else if(o.middle!==null)o=o.middle;else{o.middle=new t(e,r,s);break}else if(o.code=65&&(o|=32);s!==null;){if(o===s.code){if(r===++n)return s;s=s.middle;break}s=s.code{"use strict";var Wy=require("node:assert"),{kDestroyed:GK,kBodyUsed:oA,kListeners:QO,kBody:$K}=Zt(),{IncomingMessage:dFe}=require("node:http"),L0=require("node:stream"),pFe=require("node:net"),{Blob:mFe}=require("node:buffer"),fFe=require("node:util"),{stringify:AFe}=require("node:querystring"),{EventEmitter:hFe}=require("node:events"),{InvalidArgumentError:fn}=bt(),{headerNameLowerCasedRecord:gFe}=_0(),{tree:HK}=qK(),[yFe,EFe]=process.versions.node.split(".").map(t=>Number(t)),k0=class{static{i(this,"BodyAsyncIterable")}constructor(e){this[$K]=e,this[oA]=!1}async*[Symbol.asyncIterator](){Wy(!this[oA],"disturbed"),this[oA]=!0,yield*this[$K]}};function CFe(t){return O0(t)?(jK(t)===0&&t.on("data",function(){Wy(!1)}),typeof t.readableDidRead!="boolean"&&(t[oA]=!1,hFe.prototype.on.call(t,"data",function(){this[oA]=!0})),t):t&&typeof t.pipeTo=="function"?new k0(t):t&&typeof t!="string"&&!ArrayBuffer.isView(t)&&WK(t)?new k0(t):t}i(CFe,"wrapRequestBody");function IFe(){}i(IFe,"nop");function O0(t){return t&&typeof t=="object"&&typeof t.pipe=="function"&&typeof t.on=="function"}i(O0,"isStream");function zK(t){if(t===null)return!1;if(t instanceof mFe)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")}}i(zK,"isBlobLike");function xFe(t,e){if(t.includes("?")||t.includes("#"))throw new Error('Query params cannot be passed when url already contains "?" or "#".');let r=AFe(e);return r&&(t+="?"+r),t}i(xFe,"buildURL");function VK(t){let e=parseInt(t,10);return e===Number(t)&&e>=0&&e<=65535}i(VK,"isValidPort");function D0(t){return t!=null&&t[0]==="h"&&t[1]==="t"&&t[2]==="t"&&t[3]==="p"&&(t[4]===":"||t[4]==="s"&&t[5]===":")}i(D0,"isHttpOrHttpsPrefixed");function YK(t){if(typeof t=="string"){if(t=new URL(t),!D0(t.origin||t.protocol))throw new fn("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}if(!t||typeof t!="object")throw new fn("Invalid URL: The URL argument must be a non-null object.");if(!(t instanceof URL)){if(t.port!=null&&t.port!==""&&VK(t.port)===!1)throw new fn("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 fn("Invalid URL path: the path must be a string or null/undefined.");if(t.pathname!=null&&typeof t.pathname!="string")throw new fn("Invalid URL pathname: the pathname must be a string or null/undefined.");if(t.hostname!=null&&typeof t.hostname!="string")throw new fn("Invalid URL hostname: the hostname must be a string or null/undefined.");if(t.origin!=null&&typeof t.origin!="string")throw new fn("Invalid URL origin: the origin must be a string or null/undefined.");if(!D0(t.origin||t.protocol))throw new fn("Invalid URL protocol: the URL must start with `http:` or `https:`.");let e=t.port!=null?t.port:t.protocol==="https:"?443:80,r=t.origin!=null?t.origin:`${t.protocol||""}//${t.hostname||""}:${e}`,n=t.path!=null?t.path:`${t.pathname||""}${t.search||""}`;return r[r.length-1]==="/"&&(r=r.slice(0,r.length-1)),n&&n[0]!=="/"&&(n=`/${n}`),new URL(`${r}${n}`)}if(!D0(t.origin||t.protocol))throw new fn("Invalid URL protocol: the URL must start with `http:` or `https:`.");return t}i(YK,"parseURL");function wFe(t){if(t=YK(t),t.pathname!=="/"||t.search||t.hash)throw new fn("invalid url");return t}i(wFe,"parseOrigin");function bFe(t){if(t[0]==="["){let r=t.indexOf("]");return Wy(r!==-1),t.substring(1,r)}let e=t.indexOf(":");return e===-1?t:t.substring(0,e)}i(bFe,"getHostname");function SFe(t){if(!t)return null;Wy(typeof t=="string");let e=bFe(t);return pFe.isIP(e)?"":e}i(SFe,"getServerName");function BFe(t){return JSON.parse(JSON.stringify(t))}i(BFe,"deepClone");function RFe(t){return t!=null&&typeof t[Symbol.asyncIterator]=="function"}i(RFe,"isAsyncIterable");function WK(t){return t!=null&&(typeof t[Symbol.iterator]=="function"||typeof t[Symbol.asyncIterator]=="function")}i(WK,"isIterable");function jK(t){if(t==null)return 0;if(O0(t)){let e=t._readableState;return e&&e.objectMode===!1&&e.ended===!0&&Number.isFinite(e.length)?e.length:null}else{if(zK(t))return t.size!=null?t.size:null;if(XK(t))return t.byteLength}return null}i(jK,"bodyLength");function JK(t){return t&&!!(t.destroyed||t[GK]||L0.isDestroyed?.(t))}i(JK,"isDestroyed");function NFe(t,e){t==null||!O0(t)||JK(t)||(typeof t.destroy=="function"?(Object.getPrototypeOf(t).constructor===dFe&&(t.socket=null),t.destroy(e)):e&&queueMicrotask(()=>{t.emit("error",e)}),t.destroyed!==!0&&(t[GK]=!0))}i(NFe,"destroy");var TFe=/timeout=(\d+)/;function PFe(t){let e=t.toString().match(TFe);return e?parseInt(e[1],10)*1e3:null}i(PFe,"parseKeepAliveTimeout");function KK(t){return typeof t=="string"?gFe[t]??t.toLowerCase():HK.lookup(t)??t.toString("latin1").toLowerCase()}i(KK,"headerNameToString");function vFe(t){return HK.lookup(t)??t.toString("latin1").toLowerCase()}i(vFe,"bufferToLowerCasedHeaderName");function _Fe(t,e){e===void 0&&(e={});for(let r=0;ra.toString("utf8")):o.toString("utf8")}}return"content-length"in e&&"content-disposition"in e&&(e["content-disposition"]=Buffer.from(e["content-disposition"]).toString("latin1")),e}i(_Fe,"parseHeaders");function QFe(t){let e=t.length,r=new Array(e),n=!1,s=-1,o,a,c=0;for(let l=0;l{r.close(),r.byobRequest?.respond(0)});else{let o=Buffer.isBuffer(s)?s:Buffer.from(s);o.byteLength&&r.enqueue(new Uint8Array(o))}return r.desiredSize>0},async cancel(r){await e.return()},type:"bytes"})}i(FFe,"ReadableStreamFrom");function UFe(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"}i(UFe,"isFormDataLike");function qFe(t,e){return"addEventListener"in t?(t.addEventListener("abort",e,{once:!0}),()=>t.removeEventListener("abort",e)):(t.addListener("abort",e),()=>t.removeListener("abort",e))}i(qFe,"addAbortListener");var $Fe=typeof String.prototype.toWellFormed=="function",GFe=typeof String.prototype.isWellFormed=="function";function ZK(t){return $Fe?`${t}`.toWellFormed():fFe.toUSVString(t)}i(ZK,"toUSVString");function HFe(t){return GFe?`${t}`.isWellFormed():ZK(t)===`${t}`}i(HFe,"isUSVString");function eX(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}}i(eX,"isTokenCharCode");function zFe(t){if(t.length===0)return!1;for(let e=0;e{"use strict";var vt=require("node:diagnostics_channel"),LO=require("node:util"),M0=LO.debuglog("undici"),kO=LO.debuglog("fetch"),Lp=LO.debuglog("websocket"),sX=!1,XFe={beforeConnect:vt.channel("undici:client:beforeConnect"),connected:vt.channel("undici:client:connected"),connectError:vt.channel("undici:client:connectError"),sendHeaders:vt.channel("undici:client:sendHeaders"),create:vt.channel("undici:request:create"),bodySent:vt.channel("undici:request:bodySent"),headers:vt.channel("undici:request:headers"),trailers:vt.channel("undici:request:trailers"),error:vt.channel("undici:request:error"),open:vt.channel("undici:websocket:open"),close:vt.channel("undici:websocket:close"),socketError:vt.channel("undici:websocket:socket_error"),ping:vt.channel("undici:websocket:ping"),pong:vt.channel("undici:websocket:pong")};if(M0.enabled||kO.enabled){let t=kO.enabled?kO:M0;vt.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connecting to %s using %s%s",`${o}${s?`:${s}`:""}`,n,r)}),vt.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connected to %s using %s%s",`${o}${s?`:${s}`:""}`,n,r)}),vt.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o},error:a}=e;t("connection to %s using %s%s errored - %s",`${o}${s?`:${s}`:""}`,n,r,a.message)}),vt.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("sending request to %s %s/%s",r,s,n)}),vt.channel("undici:request:headers").subscribe(e=>{let{request:{method:r,path:n,origin:s},response:{statusCode:o}}=e;t("received response to %s %s/%s - HTTP %d",r,s,n,o)}),vt.channel("undici:request:trailers").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("trailers received from %s %s/%s",r,s,n)}),vt.channel("undici:request:error").subscribe(e=>{let{request:{method:r,path:n,origin:s},error:o}=e;t("request to %s %s/%s errored - %s",r,s,n,o.message)}),sX=!0}if(Lp.enabled){if(!sX){let t=M0.enabled?M0:Lp;vt.channel("undici:client:beforeConnect").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connecting to %s%s using %s%s",o,s?`:${s}`:"",n,r)}),vt.channel("undici:client:connected").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o}}=e;t("connected to %s%s using %s%s",o,s?`:${s}`:"",n,r)}),vt.channel("undici:client:connectError").subscribe(e=>{let{connectParams:{version:r,protocol:n,port:s,host:o},error:a}=e;t("connection to %s%s using %s%s errored - %s",o,s?`:${s}`:"",n,r,a.message)}),vt.channel("undici:client:sendHeaders").subscribe(e=>{let{request:{method:r,path:n,origin:s}}=e;t("sending request to %s %s/%s",r,s,n)})}vt.channel("undici:websocket:open").subscribe(t=>{let{address:{address:e,port:r}}=t;Lp("connection opened %s%s",e,r?`:${r}`:"")}),vt.channel("undici:websocket:close").subscribe(t=>{let{websocket:e,code:r,reason:n}=t;Lp("closed connection to %s - %s %s",e.url,r,n)}),vt.channel("undici:websocket:socket_error").subscribe(t=>{Lp("connection errored - %s",t.message)}),vt.channel("undici:websocket:ping").subscribe(t=>{Lp("ping received")}),vt.channel("undici:websocket:pong").subscribe(t=>{Lp("pong received")})}oX.exports={channels:XFe}});var lX=b((QFt,cX)=>{"use strict";var{InvalidArgumentError:Gt,NotSupportedError:ZFe}=bt(),Pl=require("node:assert"),{isValidHTTPToken:aX,isValidHeaderValue:OO,isStream:e1e,destroy:t1e,isBuffer:r1e,isFormDataLike:n1e,isIterable:s1e,isBlobLike:o1e,buildURL:i1e,validateHandler:a1e,getServerName:c1e,normalizedMethodRecords:l1e}=ut(),{channels:Ua}=iA(),{headerNameLowerCasedRecord:iX}=_0(),u1e=/[^\u0021-\u00ff]/,ti=Symbol("handler"),MO=class{static{i(this,"Request")}constructor(e,{path:r,method:n,body:s,headers:o,query:a,idempotent:c,blocking:l,upgrade:u,headersTimeout:d,bodyTimeout:p,reset:m,throwOnError:f,expectContinue:g,servername:E},x){if(typeof r!="string")throw new Gt("path must be a string");if(r[0]!=="/"&&!(r.startsWith("http://")||r.startsWith("https://"))&&n!=="CONNECT")throw new Gt("path must be an absolute URL or start with a slash");if(u1e.test(r))throw new Gt("invalid request path");if(typeof n!="string")throw new Gt("method must be a string");if(l1e[n]===void 0&&!aX(n))throw new Gt("invalid request method");if(u&&typeof u!="string")throw new Gt("upgrade must be a string");if(u&&!OO(u))throw new Gt("invalid upgrade header");if(d!=null&&(!Number.isFinite(d)||d<0))throw new Gt("invalid headersTimeout");if(p!=null&&(!Number.isFinite(p)||p<0))throw new Gt("invalid bodyTimeout");if(m!=null&&typeof m!="boolean")throw new Gt("invalid reset");if(g!=null&&typeof g!="boolean")throw new Gt("invalid expectContinue");if(this.headersTimeout=d,this.bodyTimeout=p,this.throwOnError=f===!0,this.method=n,this.abort=null,s==null)this.body=null;else if(e1e(s)){this.body=s;let w=this.body._readableState;(!w||!w.autoDestroy)&&(this.endHandler=i(function(){t1e(this)},"autoDestroy"),this.body.on("end",this.endHandler)),this.errorHandler=S=>{this.abort?this.abort(S):this.error=S},this.body.on("error",this.errorHandler)}else if(r1e(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(n1e(s)||s1e(s)||o1e(s))this.body=s;else throw new Gt("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=u||null,this.path=a?i1e(r,a):r,this.origin=e,this.idempotent=c??(n==="HEAD"||n==="GET"),this.blocking=l??!1,this.reset=m??null,this.host=null,this.contentLength=null,this.contentType=null,this.headers=[],this.expectContinue=g??!1,Array.isArray(o)){if(o.length%2!==0)throw new Gt("headers array must be even");for(let w=0;w{"use strict";var d1e=require("node:events"),U0=class extends d1e{static{i(this,"Dispatcher")}dispatch(){throw new Error("not implemented")}close(){throw new Error("not implemented")}destroy(){throw new Error("not implemented")}compose(...e){let r=Array.isArray(e[0])?e[0]:e,n=this.dispatch.bind(this);for(let s of r)if(s!=null){if(typeof s!="function")throw new TypeError(`invalid interceptor, expected function received ${typeof s}`);if(n=s(n),n==null||typeof n!="function"||n.length!==2)throw new TypeError("invalid interceptor")}return new FO(this,n)}},FO=class extends U0{static{i(this,"ComposedDispatcher")}#e=null;#t=null;constructor(e,r){super(),this.#e=e,this.#t=r}dispatch(...e){this.#t(...e)}close(...e){return this.#e.close(...e)}destroy(...e){return this.#e.destroy(...e)}};uX.exports=U0});var uA=b((OFt,dX)=>{"use strict";var p1e=jy(),{ClientDestroyedError:UO,ClientClosedError:m1e,InvalidArgumentError:aA}=bt(),{kDestroy:f1e,kClose:A1e,kClosed:Jy,kDestroyed:cA,kDispatch:qO,kInterceptors:Op}=Zt(),vl=Symbol("onDestroyed"),lA=Symbol("onClosed"),q0=Symbol("Intercepted Dispatch"),$O=class extends p1e{static{i(this,"DispatcherBase")}constructor(){super(),this[cA]=!1,this[vl]=null,this[Jy]=!1,this[lA]=[]}get destroyed(){return this[cA]}get closed(){return this[Jy]}get interceptors(){return this[Op]}set interceptors(e){if(e){for(let r=e.length-1;r>=0;r--)if(typeof this[Op][r]!="function")throw new aA("interceptor must be an function")}this[Op]=e}close(e){if(e===void 0)return new Promise((n,s)=>{this.close((o,a)=>o?s(o):n(a))});if(typeof e!="function")throw new aA("invalid callback");if(this[cA]){queueMicrotask(()=>e(new UO,null));return}if(this[Jy]){this[lA]?this[lA].push(e):queueMicrotask(()=>e(null,null));return}this[Jy]=!0,this[lA].push(e);let r=i(()=>{let n=this[lA];this[lA]=null;for(let s=0;sthis.destroy()).then(()=>{queueMicrotask(r)})}destroy(e,r){if(typeof e=="function"&&(r=e,e=null),r===void 0)return new Promise((s,o)=>{this.destroy(e,(a,c)=>a?o(a):s(c))});if(typeof r!="function")throw new aA("invalid callback");if(this[cA]){this[vl]?this[vl].push(r):queueMicrotask(()=>r(null,null));return}e||(e=new UO),this[cA]=!0,this[vl]=this[vl]||[],this[vl].push(r);let n=i(()=>{let s=this[vl];this[vl]=null;for(let o=0;o{queueMicrotask(n)})}[q0](e,r){if(!this[Op]||this[Op].length===0)return this[q0]=this[qO],this[qO](e,r);let n=this[qO].bind(this);for(let s=this[Op].length-1;s>=0;s--)n=this[Op][s](n);return this[q0]=n,n(e,r)}dispatch(e,r){if(!r||typeof r!="object")throw new aA("handler must be an object");try{if(!e||typeof e!="object")throw new aA("opts must be an object.");if(this[cA]||this[vl])throw new UO;if(this[Jy])throw new m1e;return this[q0](e,r)}catch(n){if(typeof r.onError!="function")throw new aA("invalid onError method");return r.onError(n),!1}}};dX.exports=$O});var jO=b((FFt,AX)=>{"use strict";var dA=0,GO=1e3,HO=(GO>>1)-1,_l,zO=Symbol("kFastTimer"),Ql=[],VO=-2,YO=-1,mX=0,pX=1;function WO(){dA+=HO;let t=0,e=Ql.length;for(;t=r._idleStart+r._idleTimeout&&(r._state=YO,r._idleStart=-1,r._onTimeout(r._timerArg)),r._state===YO?(r._state=VO,--e!==0&&(Ql[t]=Ql[e])):++t}Ql.length=e,Ql.length!==0&&fX()}i(WO,"onTick");function fX(){_l?_l.refresh():(clearTimeout(_l),_l=setTimeout(WO,HO),_l.unref&&_l.unref())}i(fX,"refreshTimeout");var $0=class{static{i(this,"FastTimer")}[zO]=!0;_state=VO;_idleTimeout=-1;_idleStart=-1;_onTimeout;_timerArg;constructor(e,r,n){this._onTimeout=e,this._idleTimeout=r,this._timerArg=n,this.refresh()}refresh(){this._state===VO&&Ql.push(this),(!_l||Ql.length===1)&&fX(),this._state=mX}clear(){this._state=YO,this._idleStart=-1}};AX.exports={setTimeout(t,e,r){return e<=GO?setTimeout(t,e,r):new $0(t,e,r)},clearTimeout(t){t[zO]?t.clear():clearTimeout(t)},setFastTimeout(t,e,r){return new $0(t,e,r)},clearFastTimeout(t){t.clear()},now(){return dA},tick(t=0){dA+=t-GO+1,WO(),WO()},reset(){dA=0,Ql.length=0,clearTimeout(_l),_l=null},kFastTimer:zO}});var Ky=b((GFt,CX)=>{"use strict";var h1e=require("node:net"),hX=require("node:assert"),EX=ut(),{InvalidArgumentError:g1e,ConnectTimeoutError:y1e}=bt(),G0=jO();function gX(){}i(gX,"noop");var JO,KO;global.FinalizationRegistry&&!(process.env.NODE_V8_COVERAGE||process.env.UNDICI_NO_FG)?KO=class{static{i(this,"WeakSessionCache")}constructor(e){this._maxCachedSessions=e,this._sessionCache=new Map,this._sessionRegistry=new global.FinalizationRegistry(r=>{if(this._sessionCache.size=this._maxCachedSessions){let{value:n}=this._sessionCache.keys().next();this._sessionCache.delete(n)}this._sessionCache.set(e,r)}}};function E1e({allowH2:t,maxCachedSessions:e,socketPath:r,timeout:n,session:s,...o}){if(e!=null&&(!Number.isInteger(e)||e<0))throw new g1e("maxCachedSessions must be a positive integer or zero");let a={path:r,...o},c=new KO(e??100);return n=n??1e4,t=t??!1,i(function({hostname:u,host:d,protocol:p,port:m,servername:f,localAddress:g,httpSocket:E},x){let w;if(p==="https:"){JO||(JO=require("node:tls")),f=f||a.servername||EX.getServerName(d)||null;let P=f||u;hX(P);let Q=s||c.get(P)||null;m=m||443,w=JO.connect({highWaterMark:16384,...a,servername:f,session:Q,localAddress:g,ALPNProtocols:t?["http/1.1","h2"]:["http/1.1"],socket:E,port:m,host:u}),w.on("session",function(q){c.set(P,q)})}else hX(!E,"httpSocket can only be sent on TLS update"),m=m||80,w=h1e.connect({highWaterMark:64*1024,...a,localAddress:g,port:m,host:u});if(a.keepAlive==null||a.keepAlive){let P=a.keepAliveInitialDelay===void 0?6e4:a.keepAliveInitialDelay;w.setKeepAlive(!0,P)}let S=C1e(new WeakRef(w),{timeout:n,hostname:u,port:m});return w.setNoDelay(!0).once(p==="https:"?"secureConnect":"connect",function(){if(queueMicrotask(S),x){let P=x;x=null,P(null,this)}}).on("error",function(P){if(queueMicrotask(S),x){let Q=x;x=null,Q(P)}}),w},"connect")}i(E1e,"buildConnector");var C1e=process.platform==="win32"?(t,e)=>{if(!e.timeout)return gX;let r=null,n=null,s=G0.setFastTimeout(()=>{r=setImmediate(()=>{n=setImmediate(()=>yX(t.deref(),e))})},e.timeout);return()=>{G0.clearFastTimeout(s),clearImmediate(r),clearImmediate(n)}}:(t,e)=>{if(!e.timeout)return gX;let r=null,n=G0.setFastTimeout(()=>{r=setImmediate(()=>{yX(t.deref(),e)})},e.timeout);return()=>{G0.clearFastTimeout(n),clearImmediate(r)}};function yX(t,e){if(t==null)return;let r="Connect Timeout Error";Array.isArray(t.autoSelectFamilyAttemptedAddresses)?r+=` (attempted addresses: ${t.autoSelectFamilyAttemptedAddresses.join(", ")},`:r+=` (attempted address: ${e.hostname}:${e.port},`,r+=` timeout: ${e.timeout}ms)`,EX.destroy(t,new y1e(r))}i(yX,"onConnectTimeout");CX.exports=E1e});var IX=b(H0=>{"use strict";Object.defineProperty(H0,"__esModule",{value:!0});H0.enumToMap=void 0;function I1e(t){let e={};return Object.keys(t).forEach(r=>{let n=t[r];typeof n=="number"&&(e[r]=n)}),e}i(I1e,"enumToMap");H0.enumToMap=I1e});var xX=b(j=>{"use strict";Object.defineProperty(j,"__esModule",{value:!0});j.SPECIAL_HEADERS=j.HEADER_STATE=j.MINOR=j.MAJOR=j.CONNECTION_TOKEN_CHARS=j.HEADER_CHARS=j.TOKEN=j.STRICT_TOKEN=j.HEX=j.URL_CHAR=j.STRICT_URL_CHAR=j.USERINFO_CHARS=j.MARK=j.ALPHANUM=j.NUM=j.HEX_MAP=j.NUM_MAP=j.ALPHA=j.FINISH=j.H_METHOD_MAP=j.METHOD_MAP=j.METHODS_RTSP=j.METHODS_ICE=j.METHODS_HTTP=j.METHODS=j.LENIENT_FLAGS=j.FLAGS=j.TYPE=j.ERROR=void 0;var x1e=IX(),w1e;(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"})(w1e=j.ERROR||(j.ERROR={}));var b1e;(function(t){t[t.BOTH=0]="BOTH",t[t.REQUEST=1]="REQUEST",t[t.RESPONSE=2]="RESPONSE"})(b1e=j.TYPE||(j.TYPE={}));var S1e;(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"})(S1e=j.FLAGS||(j.FLAGS={}));var B1e;(function(t){t[t.HEADERS=1]="HEADERS",t[t.CHUNKED_LENGTH=2]="CHUNKED_LENGTH",t[t.KEEP_ALIVE=4]="KEEP_ALIVE"})(B1e=j.LENIENT_FLAGS||(j.LENIENT_FLAGS={}));var _e;(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"})(_e=j.METHODS||(j.METHODS={}));j.METHODS_HTTP=[_e.DELETE,_e.GET,_e.HEAD,_e.POST,_e.PUT,_e.CONNECT,_e.OPTIONS,_e.TRACE,_e.COPY,_e.LOCK,_e.MKCOL,_e.MOVE,_e.PROPFIND,_e.PROPPATCH,_e.SEARCH,_e.UNLOCK,_e.BIND,_e.REBIND,_e.UNBIND,_e.ACL,_e.REPORT,_e.MKACTIVITY,_e.CHECKOUT,_e.MERGE,_e["M-SEARCH"],_e.NOTIFY,_e.SUBSCRIBE,_e.UNSUBSCRIBE,_e.PATCH,_e.PURGE,_e.MKCALENDAR,_e.LINK,_e.UNLINK,_e.PRI,_e.SOURCE];j.METHODS_ICE=[_e.SOURCE];j.METHODS_RTSP=[_e.OPTIONS,_e.DESCRIBE,_e.ANNOUNCE,_e.SETUP,_e.PLAY,_e.PAUSE,_e.TEARDOWN,_e.GET_PARAMETER,_e.SET_PARAMETER,_e.REDIRECT,_e.RECORD,_e.FLUSH,_e.GET,_e.POST];j.METHOD_MAP=x1e.enumToMap(_e);j.H_METHOD_MAP={};Object.keys(j.METHOD_MAP).forEach(t=>{/^H/.test(t)&&(j.H_METHOD_MAP[t]=j.METHOD_MAP[t])});var R1e;(function(t){t[t.SAFE=0]="SAFE",t[t.SAFE_WITH_CB=1]="SAFE_WITH_CB",t[t.UNSAFE=2]="UNSAFE"})(R1e=j.FINISH||(j.FINISH={}));j.ALPHA=[];for(let t=65;t<=90;t++)j.ALPHA.push(String.fromCharCode(t)),j.ALPHA.push(String.fromCharCode(t+32));j.NUM_MAP={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9};j.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};j.NUM=["0","1","2","3","4","5","6","7","8","9"];j.ALPHANUM=j.ALPHA.concat(j.NUM);j.MARK=["-","_",".","!","~","*","'","(",")"];j.USERINFO_CHARS=j.ALPHANUM.concat(j.MARK).concat(["%",";",":","&","=","+","$",","]);j.STRICT_URL_CHAR=["!",'"',"$","%","&","'","(",")","*","+",",","-",".","/",":",";","<","=",">","@","[","\\","]","^","_","`","{","|","}","~"].concat(j.ALPHANUM);j.URL_CHAR=j.STRICT_URL_CHAR.concat([" ","\f"]);for(let t=128;t<=255;t++)j.URL_CHAR.push(t);j.HEX=j.NUM.concat(["a","b","c","d","e","f","A","B","C","D","E","F"]);j.STRICT_TOKEN=["!","#","$","%","&","'","*","+","-",".","^","_","`","|","~"].concat(j.ALPHANUM);j.TOKEN=j.STRICT_TOKEN.concat([" "]);j.HEADER_CHARS=[" "];for(let t=32;t<=255;t++)t!==127&&j.HEADER_CHARS.push(t);j.CONNECTION_TOKEN_CHARS=j.HEADER_CHARS.filter(t=>t!==44);j.MAJOR=j.NUM_MAP;j.MINOR=j.MAJOR;var pA;(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"})(pA=j.HEADER_STATE||(j.HEADER_STATE={}));j.SPECIAL_HEADERS={connection:pA.CONNECTION,"content-length":pA.CONTENT_LENGTH,"proxy-connection":pA.CONNECTION,"transfer-encoding":pA.TRANSFER_ENCODING,upgrade:pA.UPGRADE}});var XO=b((WFt,wX)=>{"use strict";var{Buffer:N1e}=require("node:buffer");wX.exports=N1e.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 SX=b((jFt,bX)=>{"use strict";var{Buffer:T1e}=require("node:buffer");bX.exports=T1e.from("AGFzbQEAAAABJwdgAX8Bf2ADf39/AX9gAX8AYAJ/fwBgBH9/f38Bf2AAAGADf39/AALLAQgDZW52GHdhc21fb25faGVhZGVyc19jb21wbGV0ZQAEA2VudhV3YXNtX29uX21lc3NhZ2VfYmVnaW4AAANlbnYLd2FzbV9vbl91cmwAAQNlbnYOd2FzbV9vbl9zdGF0dXMAAQNlbnYUd2FzbV9vbl9oZWFkZXJfZmllbGQAAQNlbnYUd2FzbV9vbl9oZWFkZXJfdmFsdWUAAQNlbnYMd2FzbV9vbl9ib2R5AAEDZW52GHdhc21fb25fbWVzc2FnZV9jb21wbGV0ZQAAAy0sBQYAAAIAAAAAAAACAQIAAgICAAADAAAAAAMDAwMBAQEBAQEBAQEAAAIAAAAEBQFwARISBQMBAAIGCAF/AUGA1AQLB9EFIgZtZW1vcnkCAAtfaW5pdGlhbGl6ZQAIGV9faW5kaXJlY3RfZnVuY3Rpb25fdGFibGUBAAtsbGh0dHBfaW5pdAAJGGxsaHR0cF9zaG91bGRfa2VlcF9hbGl2ZQAvDGxsaHR0cF9hbGxvYwALBm1hbGxvYwAxC2xsaHR0cF9mcmVlAAwEZnJlZQAMD2xsaHR0cF9nZXRfdHlwZQANFWxsaHR0cF9nZXRfaHR0cF9tYWpvcgAOFWxsaHR0cF9nZXRfaHR0cF9taW5vcgAPEWxsaHR0cF9nZXRfbWV0aG9kABAWbGxodHRwX2dldF9zdGF0dXNfY29kZQAREmxsaHR0cF9nZXRfdXBncmFkZQASDGxsaHR0cF9yZXNldAATDmxsaHR0cF9leGVjdXRlABQUbGxodHRwX3NldHRpbmdzX2luaXQAFQ1sbGh0dHBfZmluaXNoABYMbGxodHRwX3BhdXNlABcNbGxodHRwX3Jlc3VtZQAYG2xsaHR0cF9yZXN1bWVfYWZ0ZXJfdXBncmFkZQAZEGxsaHR0cF9nZXRfZXJybm8AGhdsbGh0dHBfZ2V0X2Vycm9yX3JlYXNvbgAbF2xsaHR0cF9zZXRfZXJyb3JfcmVhc29uABwUbGxodHRwX2dldF9lcnJvcl9wb3MAHRFsbGh0dHBfZXJybm9fbmFtZQAeEmxsaHR0cF9tZXRob2RfbmFtZQAfEmxsaHR0cF9zdGF0dXNfbmFtZQAgGmxsaHR0cF9zZXRfbGVu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PgtBhwEMPQtBiAEMPAtBiQEMOwtBigEMOgtBiwEMOQtBjAEMOAtBjQEMNwtBjgEMNgtBjwEMNQtBkAEMNAtBkQEMMwtBkgEMMgtBkwEMMQtBlAEMMAtBlQEMLwtBlgEMLgtBlwEMLQtBmAEMLAtBmQEMKwtBmgEMKgtBmwEMKQtBnAEMKAtBnQEMJwtBngEMJgtBnwEMJQtBoAEMJAtBoQEMIwtBogEMIgtBowEMIQtBpAEMIAtBpQEMHwtBpgEMHgtBpwEMHQtBqAEMHAtBqQEMGwtBqgEMGgtBqwEMGQtBrAEMGAtBrQEMFwtBrgEMFgtBAQwVC0GvAQwUC0GwAQwTC0GxAQwSC0GzAQwRC0GyAQwQC0G0AQwPC0G1AQwOC0G2AQwNC0G3AQwMC0G4AQwLC0G5AQwKC0G6AQwJC0G7AQwIC0HGAQwHC0G8AQwGC0G9AQwFC0G+AQwEC0G/AQwDC0HAAQwCC0HCAQwBC0HBAQshAwNAAkACQAJAAkACQAJAAkACQAJAIAICfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAgAgJ/AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACfwJAAkACfwJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkAC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iQEhAwykAgtBASABLQAAQd8ARw1nGiABQQFqIQEMXgtBigEhAyABIARGDaICIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgNAIAEtAAAgAEGMzwBqLQAARw1kIABBAUYN+gEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMogILQYsBIQMgASAERg2hAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGOzwBqLQAARw1kIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyiAgsgAkEANgIAIAZBAWohAUECDGULQYwBIQMgASAERg2gAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHwzwBqLQAARw1jIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyhAgsgAkEANgIAIAZBAWohAUEfDGQLQY0BIQMgASAERg2fAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHyzwBqLQAARw1iIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAygAgsgAkEANgIAIAZBAWohAUEJDGMLIAEgBEYEQEGOASEDDJ8CCwJAAkAgAS0AAEHJAGsOBwBiYmJiYgFiCyABQQFqIQFB+AAhAwyGAgsgAUEBaiEBQfkAIQMMhQILQY8BIQMgASAERg2dAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGRzwBqLQAARw1gIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyeAgsgAkEANgIAIAZBAWohAUEYDGELQZABIQMgASAERg2cAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEGXzwBqLQAARw1fIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAydAgsgAkEANgIAIAZBAWohAUEXDGALQZEBIQMgASAERg2bAiACKAIAIgAgBCABa2ohBSABIABrQQZqIQYCQANAIAEtAAAgAEGazwBqLQAARw1eIABBBkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAycAgsgAkEANgIAIAZBAWohAUEVDF8LQZIBIQMgASAERg2aAiACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEGhzwBqLQAARw1dIABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAybAgsgAkEANgIAIAZBAWohAUEeDF4LIAEgBEYEQEGTASEDDJoCCyABLQAAQcwARw1bIAFBAWohAUEKDF0LIAEgBEYEQEGUASEDDJkCCwJAAkAgAS0AAEHBAGsODwBcXFxcXFxcXFxcXFxcAVwLIAFBAWohAUH+ACEDDIACCyABQQFqIQFB/wAhAwz/AQsgASAERgRAQZUBIQMMmAILAkACQCABLQAAQcEAaw4DAFsBWwsgAUEBaiEBQf0AIQMM/wELIAFBAWohAUGAASEDDP4BC0GWASEDIAEgBEYNlgIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBp88Aai0AAEcNWSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlwILIAJBADYCACAGQQFqIQFBCwxaCyABIARGBEBBlwEhAwyWAgsCQAJAAkACQCABLQAAQS1rDiMAW1tbW1tbW1tbW1tbW1tbW1tbW1tbW1sBW1tbW1sCW1tbA1sLIAFBAWohAUH7ACEDDP8BCyABQQFqIQFB/AAhAwz+AQsgAUEBaiEBQYEBIQMM/QELIAFBAWohAUGCASEDDPwBC0GYASEDIAEgBEYNlAIgAigCACIAIAQgAWtqIQUgASAAa0EEaiEGAkADQCABLQAAIABBqc8Aai0AAEcNVyAAQQRGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlQILIAJBADYCACAGQQFqIQFBGQxYC0GZASEDIAEgBEYNkwIgAigCACIAIAQgAWtqIQUgASAAa0EFaiEGAkADQCABLQAAIABBrs8Aai0AAEcNViAAQQVGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMlAILIAJBADYCACAGQQFqIQFBBgxXC0GaASEDIAEgBEYNkgIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBtM8Aai0AAEcNVSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMkwILIAJBADYCACAGQQFqIQFBHAxWC0GbASEDIAEgBEYNkQIgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABBts8Aai0AAEcNVCAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAMkgILIAJBADYCACAGQQFqIQFBJwxVCyABIARGBEBBnAEhAwyRAgsCQAJAIAEtAABB1ABrDgIAAVQLIAFBAWohAUGGASEDDPgBCyABQQFqIQFBhwEhAwz3AQtBnQEhAyABIARGDY8CIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbjPAGotAABHDVIgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADJACCyACQQA2AgAgBkEBaiEBQSYMUwtBngEhAyABIARGDY4CIAIoAgAiACAEIAFraiEFIAEgAGtBAWohBgJAA0AgAS0AACAAQbrPAGotAABHDVEgAEEBRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI8CCyACQQA2AgAgBkEBaiEBQQMMUgtBnwEhAyABIARGDY0CIAIoAgAiACAEIAFraiEFIAEgAGtBAmohBgJAA0AgAS0AACAAQe3PAGotAABHDVAgAEECRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI4CCyACQQA2AgAgBkEBaiEBQQwMUQtBoAEhAyABIARGDYwCIAIoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQbzPAGotAABHDU8gAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADI0CCyACQQA2AgAgBkEBaiEBQQ0MUAsgASAERgRAQaEBIQMMjAILAkACQCABLQAAQcYAaw4LAE9PT09PT09PTwFPCyABQQFqIQFBiwEhAwzzAQsgAUEBaiEBQYwBIQMM8gELIAEgBEYEQEGiASEDDIsCCyABLQAAQdAARw1MIAFBAWohAQxGCyABIARGBEBBowEhAwyKAgsCQAJAIAEtAABByQBrDgcBTU1NTU0ATQsgAUEBaiEBQY4BIQMM8QELIAFBAWohAUEiDE0LQaQBIQMgASAERg2IAiACKAIAIgAgBCABa2ohBSABIABrQQFqIQYCQANAIAEtAAAgAEHAzwBqLQAARw1LIABBAUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyJAgsgAkEANgIAIAZBAWohAUEdDEwLIAEgBEYEQEGlASEDDIgCCwJAAkAgAS0AAEHSAGsOAwBLAUsLIAFBAWohAUGQASEDDO8BCyABQQFqIQFBBAxLCyABIARGBEBBpgEhAwyHAgsCQAJAAkACQAJAIAEtAABBwQBrDhUATU1NTU1NTU1NTQFNTQJNTQNNTQRNCyABQQFqIQFBiAEhAwzxAQsgAUEBaiEBQYkBIQMM8AELIAFBAWohAUGKASEDDO8BCyABQQFqIQFBjwEhAwzuAQsgAUEBaiEBQZEBIQMM7QELQacBIQMgASAERg2FAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHtzwBqLQAARw1IIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyGAgsgAkEANgIAIAZBAWohAUERDEkLQagBIQMgASAERg2EAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHCzwBqLQAARw1HIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyFAgsgAkEANgIAIAZBAWohAUEsDEgLQakBIQMgASAERg2DAiACKAIAIgAgBCABa2ohBSABIABrQQRqIQYCQANAIAEtAAAgAEHFzwBqLQAARw1GIABBBEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyEAgsgAkEANgIAIAZBAWohAUErDEcLQaoBIQMgASAERg2CAiACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHKzwBqLQAARw1FIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyDAgsgAkEANgIAIAZBAWohAUEUDEYLIAEgBEYEQEGrASEDDIICCwJAAkACQAJAIAEtAABBwgBrDg8AAQJHR0dHR0dHR0dHRwNHCyABQQFqIQFBkwEhAwzrAQsgAUEBaiEBQZQBIQMM6gELIAFBAWohAUGVASEDDOkBCyABQQFqIQFBlgEhAwzoAQsgASAERgRAQawBIQMMgQILIAEtAABBxQBHDUIgAUEBaiEBDD0LQa0BIQMgASAERg3/ASACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHNzwBqLQAARw1CIABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAyAAgsgAkEANgIAIAZBAWohAUEODEMLIAEgBEYEQEGuASEDDP8BCyABLQAAQdAARw1AIAFBAWohAUElDEILQa8BIQMgASAERg39ASACKAIAIgAgBCABa2ohBSABIABrQQhqIQYCQANAIAEtAAAgAEHQzwBqLQAARw1AIABBCEYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz+AQsgAkEANgIAIAZBAWohAUEqDEELIAEgBEYEQEGwASEDDP0BCwJAAkAgAS0AAEHVAGsOCwBAQEBAQEBAQEABQAsgAUEBaiEBQZoBIQMM5AELIAFBAWohAUGbASEDDOMBCyABIARGBEBBsQEhAwz8AQsCQAJAIAEtAABBwQBrDhQAPz8/Pz8/Pz8/Pz8/Pz8/Pz8/AT8LIAFBAWohAUGZASEDDOMBCyABQQFqIQFBnAEhAwziAQtBsgEhAyABIARGDfoBIAIoAgAiACAEIAFraiEFIAEgAGtBA2ohBgJAA0AgAS0AACAAQdnPAGotAABHDT0gAEEDRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADPsBCyACQQA2AgAgBkEBaiEBQSEMPgtBswEhAyABIARGDfkBIAIoAgAiACAEIAFraiEFIAEgAGtBBmohBgJAA0AgAS0AACAAQd3PAGotAABHDTwgAEEGRg0BIABBAWohACAEIAFBAWoiAUcNAAsgAiAFNgIADPoBCyACQQA2AgAgBkEBaiEBQRoMPQsgASAERgRAQbQBIQMM+QELAkACQAJAIAEtAABBxQBrDhEAPT09PT09PT09AT09PT09Aj0LIAFBAWohAUGdASEDDOEBCyABQQFqIQFBngEhAwzgAQsgAUEBaiEBQZ8BIQMM3wELQbUBIQMgASAERg33ASACKAIAIgAgBCABa2ohBSABIABrQQVqIQYCQANAIAEtAAAgAEHkzwBqLQAARw06IABBBUYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz4AQsgAkEANgIAIAZBAWohAUEoDDsLQbYBIQMgASAERg32ASACKAIAIgAgBCABa2ohBSABIABrQQJqIQYCQANAIAEtAAAgAEHqzwBqLQAARw05IABBAkYNASAAQQFqIQAgBCABQQFqIgFHDQALIAIgBTYCAAz3AQsgAkEANgIAIAZBAWohAUEHDDoLIAEgBEYEQEG3ASEDDPYBCwJAAkAgAS0AAEHFAGsODgA5OTk5OTk5OTk5OTkBOQsgAUEBaiEBQaEBIQMM3QELIAFBAWohAUGiASEDDNwBC0G4ASEDIAEgBEYN9AEgAigCACIAIAQgAWtqIQUgASAAa0ECaiEGAkADQCABLQAAIABB7c8Aai0AAEcNNyAAQQJGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM9QELIAJBADYCACAGQQFqIQFBEgw4C0G5ASEDIAEgBEYN8wEgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8M8Aai0AAEcNNiAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM9AELIAJBADYCACAGQQFqIQFBIAw3C0G6ASEDIAEgBEYN8gEgAigCACIAIAQgAWtqIQUgASAAa0EBaiEGAkADQCABLQAAIABB8s8Aai0AAEcNNSAAQQFGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM8wELIAJBADYCACAGQQFqIQFBDww2CyABIARGBEBBuwEhAwzyAQsCQAJAIAEtAABByQBrDgcANTU1NTUBNQsgAUEBaiEBQaUBIQMM2QELIAFBAWohAUGmASEDDNgBC0G8ASEDIAEgBEYN8AEgAigCACIAIAQgAWtqIQUgASAAa0EHaiEGAkADQCABLQAAIABB9M8Aai0AAEcNMyAAQQdGDQEgAEEBaiEAIAQgAUEBaiIBRw0ACyACIAU2AgAM8QELIAJBADYCACAGQQFqIQFBGww0CyABIARGBEBBvQEhAwzwAQsCQAJAAkAgAS0AAEHCAGsOEgA0NDQ0NDQ0NDQBNDQ0NDQ0AjQLIAFBAWohAUGkASEDDNgBCyABQQFqIQFBpwEhAwzXAQsgAUEBaiEBQagBIQMM1gELIAEgBEYEQEG+ASEDDO8BCyABLQAAQc4ARw0wIAFBAWohAQwsCyABIARGBEBBvwEhAwzuAQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCABLQAAQcEAaw4VAAECAz8EBQY/Pz8HCAkKCz8MDQ4PPwsgAUEBaiEBQegAIQMM4wELIAFBAWohAUHpACEDDOIBCyABQQFqIQFB7gAhAwzhAQsgAUEBaiEBQfIAIQMM4AELIAFBAWohAUHzACEDDN8BCyABQQFqIQFB9gAhAwzeAQsgAUEBaiEBQfcAIQMM3QELIAFBAWohAUH6ACEDDNwBCyABQQFqIQFBgwEhAwzbAQsgAUEBaiEBQYQBIQMM2gELIAFBAWohAUGFASEDDNkBCyABQQFqIQFBkgEhAwzYAQsgAUEBaiEBQZgBIQMM1wELIAFBAWohAUGgASEDDNYBCyABQQFqIQFBowEhAwzVAQsgAUEBaiEBQaoBIQMM1AELIAEgBEcEQCACQRA2AgggAiABNgIEQasBIQMM1AELQcABIQMM7AELQQAhAAJAIAIoAjgiA0UNACADKAI0IgNFDQAgAiADEQAAIQALIABFDV4gAEEVRw0HIAJB0QA2AhwgAiABNgIUIAJBsBc2AhAgAkEVNgIMQQAhAwzrAQsgAUEBaiABIARHDQgaQcIBIQMM6gELA0ACQCABLQAAQQprDgQIAAALAAsgBCABQQFqIgFHDQALQcMBIQMM6QELIAEgBEcEQCACQRE2AgggAiABNgIEQQEhAwzQAQtBxAEhAwzoAQsgASAERgRAQcUBIQMM6AELAkACQCABLQAAQQprDgQBKCgAKAsgAUEBagwJCyABQQFqDAULIAEgBEYEQEHGASEDDOcBCwJAAkAgAS0AAEEKaw4XAQsLAQsLCwsLCwsLCwsLCwsLCwsLCwALCyABQQFqIQELQbABIQMMzQELIAEgBEYEQEHIASEDDOYBCyABLQAAQSBHDQkgAkEAOwEyIAFBAWohAUGzASEDDMwBCwNAIAEhAAJAIAEgBEcEQCABLQAAQTBrQf8BcSIDQQpJDQEMJwtBxwEhAwzmAQsCQCACLwEyIgFBmTNLDQAgAiABQQpsIgU7ATIgBUH+/wNxIANB//8Dc0sNACAAQQFqIQEgAiADIAVqIgM7ATIgA0H//wNxQegHSQ0BCwtBACEDIAJBADYCHCACQcEJNgIQIAJBDTYCDCACIABBAWo2AhQM5AELIAJBADYCHCACIAE2AhQgAkHwDDYCECACQRs2AgxBACEDDOMBCyACKAIEIQAgAkEANgIEIAIgACABECYiAA0BIAFBAWoLIQFBrQEhAwzIAQsgAkHBATYCHCACIAA2AgwgAiABQQFqNgIUQQAhAwzgAQsgAigCBCEAIAJBADYCBCACIAAgARAmIgANASABQQFqCyEBQa4BIQMMxQELIAJBwgE2AhwgAiAANgIMIAIgAUEBajYCFEEAIQMM3QELIAJBADYCHCACIAE2AhQgAkGXCzYCECACQQ02AgxBACEDDNwBCyACQQA2AhwgAiABNgIUIAJB4xA2AhAgAkEJNgIMQQAhAwzbAQsgAkECOgAoDKwBC0EAIQMgAkEANgIcIAJBrws2AhAgAkECNgIMIAIgAUEBajYCFAzZAQtBAiEDDL8BC0ENIQMMvgELQSYhAwy9AQtBFSEDDLwBC0EWIQMMuwELQRghAwy6AQtBHCEDDLkBC0EdIQMMuAELQSAhAwy3AQtBISEDDLYBC0EjIQMMtQELQcYAIQMMtAELQS4hAwyzAQtBPSEDDLIBC0HLACEDDLEBC0HOACEDDLABC0HYACEDDK8BC0HZACEDDK4BC0HbACEDDK0BC0HxACEDDKwBC0H0ACEDDKsBC0GNASEDDKoBC0GXASEDDKkBC0GpASEDDKgBC0GvASEDDKcBC0GxASEDDKYBCyACQQA2AgALQQAhAyACQQA2AhwgAiABNgIUIAJB8Rs2AhAgAkEGNgIMDL0BCyACQQA2AgAgBkEBaiEBQSQLOgApIAIoAgQhACACQQA2AgQgAiAAIAEQJyIARQRAQeUAIQMMowELIAJB+QA2AhwgAiABNgIUIAIgADYCDEEAIQMMuwELIABBFUcEQCACQQA2AhwgAiABNgIUIAJBzA42AhAgAkEgNgIMQQAhAwy7AQsgAkH4ADYCHCACIAE2AhQgAkHKGDYCECACQRU2AgxBACEDDLoBCyACQQA2AhwgAiABNgIUIAJBjhs2AhAgAkEGNgIMQQAhAwy5AQsgAkEANgIcIAIgATYCFCACQf4RNgIQIAJBBzYCDEEAIQMMuAELIAJBADYCHCACIAE2AhQgAkGMHDYCECACQQc2AgxBACEDDLcBCyACQQA2AhwgAiABNgIUIAJBww82AhAgAkEHNgIMQQAhAwy2AQsgAkEANgIcIAIgATYCFCACQcMPNgIQIAJBBzYCDEEAIQMMtQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0RIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMtAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0gIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMswELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0iIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMsgELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0OIAJB5QA2AhwgAiABNgIUIAIgADYCDEEAIQMMsQELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0dIAJB0wA2AhwgAiABNgIUIAIgADYCDEEAIQMMsAELIAIoAgQhACACQQA2AgQgAiAAIAEQJSIARQ0fIAJB0gA2AhwgAiABNgIUIAIgADYCDEEAIQMMrwELIABBP0cNASABQQFqCyEBQQUhAwyUAQtBACEDIAJBADYCHCACIAE2AhQgAkH9EjYCECACQQc2AgwMrAELIAJBADYCHCACIAE2AhQgAkHcCDYCECACQQc2AgxBACEDDKsBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNByACQeUANgIcIAIgATYCFCACIAA2AgxBACEDDKoBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNFiACQdMANgIcIAIgATYCFCACIAA2AgxBACEDDKkBCyACKAIEIQAgAkEANgIEIAIgACABECUiAEUNGCACQdIANgIcIAIgATYCFCACIAA2AgxBACEDDKgBCyACQQA2AhwgAiABNgIUIAJBxgo2AhAgAkEHNgIMQQAhAwynAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQMgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwymAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRIgAkHTADYCHCACIAE2AhQgAiAANgIMQQAhAwylAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDRQgAkHSADYCHCACIAE2AhQgAiAANgIMQQAhAwykAQsgAigCBCEAIAJBADYCBCACIAAgARAlIgBFDQAgAkHlADYCHCACIAE2AhQgAiAANgIMQQAhAwyjAQtB1QAhAwyJAQsgAEEVRwRAIAJBADYCHCACIAE2AhQgAkG5DTYCECACQRo2AgxB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AkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAIABB5ABrDvQDY2IAAWFhYWFhYQIDBAVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhBgcICQoLDA0OD2FhYWFhEGFhYWFhYWFhYWFhEWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYRITFBUWFxgZGhthYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhHB0eHyAhIiMkJSYnKCkqKywtLi8wMTIzNDU2YTc4OTphYWFhYWFhYTthYWE8YWFhYT0+P2FhYWFhYWFhQGFhQWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYUJDREVGR0hJSktMTU5PUFFSU2FhYWFhYWFhVFVWV1hZWlthXF1hYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFeYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhX2BhC0HhJw8LQaQhDwtByywPC0H+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB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AAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==","base64")});var Xy=b((JFt,QX)=>{"use strict";var BX=["GET","HEAD","POST"],P1e=new Set(BX),v1e=[101,204,205,304],RX=[301,302,303,307,308],_1e=new Set(RX),NX=["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"],Q1e=new Set(NX),TX=["","no-referrer","no-referrer-when-downgrade","same-origin","origin","strict-origin","origin-when-cross-origin","strict-origin-when-cross-origin","unsafe-url"],D1e=new Set(TX),k1e=["follow","manual","error"],PX=["GET","HEAD","OPTIONS","TRACE"],L1e=new Set(PX),O1e=["navigate","same-origin","no-cors","cors"],M1e=["omit","same-origin","include"],F1e=["default","no-store","reload","no-cache","force-cache","only-if-cached"],U1e=["content-encoding","content-language","content-location","content-type","content-length"],q1e=["half"],vX=["CONNECT","TRACE","TRACK"],$1e=new Set(vX),_X=["audio","audioworklet","font","image","manifest","paintworklet","script","style","track","video","xslt",""],G1e=new Set(_X);QX.exports={subresource:_X,forbiddenMethods:vX,requestBodyHeader:U1e,referrerPolicy:TX,requestRedirect:k1e,requestMode:O1e,requestCredentials:M1e,requestCache:F1e,redirectStatus:RX,corsSafeListedMethods:BX,nullBodyStatus:v1e,safeMethods:PX,badPorts:NX,requestDuplex:q1e,subresourceSet:G1e,badPortsSet:Q1e,redirectStatusSet:_1e,corsSafeListedMethodsSet:P1e,safeMethodsSet:L1e,forbiddenMethodsSet:$1e,referrerPolicySet:D1e}});var eM=b((KFt,DX)=>{"use strict";var ZO=Symbol.for("undici.globalOrigin.1");function H1e(){return globalThis[ZO]}i(H1e,"getGlobalOrigin");function z1e(t){if(t===void 0){Object.defineProperty(globalThis,ZO,{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,ZO,{value:e,writable:!0,enumerable:!1,configurable:!1})}i(z1e,"setGlobalOrigin");DX.exports={getGlobalOrigin:H1e,setGlobalOrigin:z1e}});var Os=b((ZFt,qX)=>{"use strict";var V0=require("node:assert"),V1e=new TextEncoder,Zy=/^[!#$%&'*+\-.^_|~A-Za-z0-9]+$/,Y1e=/[\u000A\u000D\u0009\u0020]/,W1e=/[\u0009\u000A\u000C\u000D\u0020]/g,j1e=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function J1e(t){V0(t.protocol==="data:");let e=OX(t,!0);e=e.slice(5);let r={position:0},n=mA(",",e,r),s=n.length;if(n=rUe(n,!0,!0),r.position>=e.length)return"failure";r.position++;let o=e.slice(s+1),a=MX(o);if(/;(\u0020){0,}base64$/i.test(n)){let l=UX(a);if(a=X1e(l),a==="failure")return"failure";n=n.slice(0,-6),n=n.replace(/(\u0020)+$/,""),n=n.slice(0,-1)}n.startsWith(";")&&(n="text/plain"+n);let c=tM(n);return c==="failure"&&(c=tM("text/plain;charset=US-ASCII")),{mimeType:c,body:a}}i(J1e,"dataURLProcessor");function OX(t,e=!1){if(!e)return t.href;let r=t.href,n=t.hash.length,s=n===0?r:r.substring(0,r.length-n);return!n&&r.endsWith("#")?s.slice(0,-1):s}i(OX,"URLSerializer");function Y0(t,e,r){let n="";for(;r.position=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}i(kX,"isHexCharByte");function LX(t){return t>=48&&t<=57?t-48:(t&223)-55}i(LX,"hexByteToNumber");function K1e(t){let e=t.length,r=new Uint8Array(e),n=0;for(let s=0;st.length)return"failure";e.position++;let n=mA(";",t,e);if(n=z0(n,!1,!0),n.length===0||!Zy.test(n))return"failure";let s=r.toLowerCase(),o=n.toLowerCase(),a={type:s,subtype:o,parameters:new Map,essence:`${s}/${o}`};for(;e.positionY1e.test(u),t,e);let c=Y0(u=>u!==";"&&u!=="=",t,e);if(c=c.toLowerCase(),e.positiont.length)break;let l=null;if(t[e.position]==='"')l=FX(t,e,!0),mA(";",t,e);else if(l=mA(";",t,e),l=z0(l,!1,!0),l.length===0)continue;c.length!==0&&Zy.test(c)&&(l.length===0||j1e.test(l))&&!a.parameters.has(c)&&a.parameters.set(c,l)}return a}i(tM,"parseMIMEType");function X1e(t){t=t.replace(W1e,"");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 r=Buffer.from(t,"base64");return new Uint8Array(r.buffer,r.byteOffset,r.byteLength)}i(X1e,"forgivingBase64");function FX(t,e,r){let n=e.position,s="";for(V0(t[e.position]==='"'),e.position++;s+=Y0(a=>a!=='"'&&a!=="\\",t,e),!(e.position>=t.length);){let o=t[e.position];if(e.position++,o==="\\"){if(e.position>=t.length){s+="\\";break}s+=t[e.position],e.position++}else{V0(o==='"');break}}return r?s:t.slice(n,e.position)}i(FX,"collectAnHTTPQuotedString");function Z1e(t){V0(t!=="failure");let{parameters:e,essence:r}=t,n=r;for(let[s,o]of e.entries())n+=";",n+=s,n+="=",Zy.test(o)||(o=o.replace(/(\\|")/g,"\\$1"),o='"'+o,o+='"'),n+=o;return n}i(Z1e,"serializeAMimeType");function eUe(t){return t===13||t===10||t===9||t===32}i(eUe,"isHTTPWhiteSpace");function z0(t,e=!0,r=!0){return rM(t,e,r,eUe)}i(z0,"removeHTTPWhitespace");function tUe(t){return t===13||t===10||t===9||t===12||t===32}i(tUe,"isASCIIWhitespace");function rUe(t,e=!0,r=!0){return rM(t,e,r,tUe)}i(rUe,"removeASCIIWhitespace");function rM(t,e,r,n){let s=0,o=t.length-1;if(e)for(;s0&&n(t.charCodeAt(o));)o--;return s===0&&o===t.length-1?t:t.slice(s,o+1)}i(rM,"removeChars");function UX(t){let e=t.length;if(65535>e)return String.fromCharCode.apply(null,t);let r="",n=0,s=65535;for(;ne&&(s=e-n),r+=String.fromCharCode.apply(null,t.subarray(n,n+=s));return r}i(UX,"isomorphicDecode");function nUe(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":""}i(nUe,"minimizeSupportedMimeType");qX.exports={dataURLProcessor:J1e,URLSerializer:OX,collectASequenceOfCodePoints:Y0,collectASequenceOfCodePointsFast:mA,stringPercentDecode:MX,parseMIMEType:tM,collectAnHTTPQuotedString:FX,serializeAMimeType:Z1e,removeChars:rM,removeHTTPWhitespace:z0,minimizeSupportedMimeType:nUe,HTTP_TOKEN_CODEPOINTS:Zy,isomorphicDecode:UX}});var Rn=b((t1t,$X)=>{"use strict";var{types:qa,inspect:sUe}=require("node:util"),{markAsUncloneable:oUe}=require("node:worker_threads"),{toUSVString:iUe}=ut(),Y={};Y.converters={};Y.util={};Y.errors={};Y.errors.exception=function(t){return new TypeError(`${t.header}: ${t.message}`)};Y.errors.conversionFailed=function(t){let e=t.types.length===1?"":" one of",r=`${t.argument} could not be converted to${e}: ${t.types.join(", ")}.`;return Y.errors.exception({header:t.prefix,message:r})};Y.errors.invalidArgument=function(t){return Y.errors.exception({header:t.prefix,message:`"${t.value}" is an invalid ${t.type}.`})};Y.brandCheck=function(t,e,r){if(r?.strict!==!1){if(!(t instanceof e)){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}}else if(t?.[Symbol.toStringTag]!==e.prototype[Symbol.toStringTag]){let n=new TypeError("Illegal invocation");throw n.code="ERR_INVALID_THIS",n}};Y.argumentLengthCheck=function({length:t},e,r){if(t{});Y.util.ConvertToInt=function(t,e,r,n){let s,o;e===64?(s=Math.pow(2,53)-1,r==="unsigned"?o=0:o=Math.pow(-2,53)+1):r==="unsigned"?(o=0,s=Math.pow(2,e)-1):(o=Math.pow(-2,e)-1,s=Math.pow(2,e-1)-1);let a=Number(t);if(a===0&&(a=0),n?.enforceRange===!0){if(Number.isNaN(a)||a===Number.POSITIVE_INFINITY||a===Number.NEGATIVE_INFINITY)throw Y.errors.exception({header:"Integer conversion",message:`Could not convert ${Y.util.Stringify(t)} to an integer.`});if(a=Y.util.IntegerPart(a),as)throw Y.errors.exception({header:"Integer conversion",message:`Value must be between ${o}-${s}, got ${a}.`});return a}return!Number.isNaN(a)&&n?.clamp===!0?(a=Math.min(Math.max(a,o),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=Y.util.IntegerPart(a),a=a%Math.pow(2,e),r==="signed"&&a>=Math.pow(2,e)-1?a-Math.pow(2,e):a)};Y.util.IntegerPart=function(t){let e=Math.floor(Math.abs(t));return t<0?-1*e:e};Y.util.Stringify=function(t){switch(Y.util.Type(t)){case"Symbol":return`Symbol(${t.description})`;case"Object":return sUe(t);case"String":return`"${t}"`;default:return`${t}`}};Y.sequenceConverter=function(t){return(e,r,n,s)=>{if(Y.util.Type(e)!=="Object")throw Y.errors.exception({header:r,message:`${n} (${Y.util.Stringify(e)}) is not iterable.`});let o=typeof s=="function"?s():e?.[Symbol.iterator]?.(),a=[],c=0;if(o===void 0||typeof o.next!="function")throw Y.errors.exception({header:r,message:`${n} is not iterable.`});for(;;){let{done:l,value:u}=o.next();if(l)break;a.push(t(u,r,`${n}[${c++}]`))}return a}};Y.recordConverter=function(t,e){return(r,n,s)=>{if(Y.util.Type(r)!=="Object")throw Y.errors.exception({header:n,message:`${s} ("${Y.util.Type(r)}") is not an Object.`});let o={};if(!qa.isProxy(r)){let c=[...Object.getOwnPropertyNames(r),...Object.getOwnPropertySymbols(r)];for(let l of c){let u=t(l,n,s),d=e(r[l],n,s);o[u]=d}return o}let a=Reflect.ownKeys(r);for(let c of a)if(Reflect.getOwnPropertyDescriptor(r,c)?.enumerable){let u=t(c,n,s),d=e(r[c],n,s);o[u]=d}return o}};Y.interfaceConverter=function(t){return(e,r,n,s)=>{if(s?.strict!==!1&&!(e instanceof t))throw Y.errors.exception({header:r,message:`Expected ${n} ("${Y.util.Stringify(e)}") to be an instance of ${t.name}.`});return e}};Y.dictionaryConverter=function(t){return(e,r,n)=>{let s=Y.util.Type(e),o={};if(s==="Null"||s==="Undefined")return o;if(s!=="Object")throw Y.errors.exception({header:r,message:`Expected ${e} to be one of: Null, Undefined, Object.`});for(let a of t){let{key:c,defaultValue:l,required:u,converter:d}=a;if(u===!0&&!Object.hasOwn(e,c))throw Y.errors.exception({header:r,message:`Missing required key "${c}".`});let p=e[c],m=Object.hasOwn(a,"defaultValue");if(m&&p!==null&&(p??=l()),u||m||p!==void 0){if(p=d(p,r,`${n}.${c}`),a.allowedValues&&!a.allowedValues.includes(p))throw Y.errors.exception({header:r,message:`${p} is not an accepted type. Expected one of ${a.allowedValues.join(", ")}.`});o[c]=p}}return o}};Y.nullableConverter=function(t){return(e,r,n)=>e===null?e:t(e,r,n)};Y.converters.DOMString=function(t,e,r,n){if(t===null&&n?.legacyNullToEmptyString)return"";if(typeof t=="symbol")throw Y.errors.exception({header:e,message:`${r} is a symbol, which cannot be converted to a DOMString.`});return String(t)};Y.converters.ByteString=function(t,e,r){let n=Y.converters.DOMString(t,e,r);for(let s=0;s255)throw new TypeError(`Cannot convert argument to a ByteString because the character at index ${s} has a value of ${n.charCodeAt(s)} which is greater than 255.`);return n};Y.converters.USVString=iUe;Y.converters.boolean=function(t){return!!t};Y.converters.any=function(t){return t};Y.converters["long long"]=function(t,e,r){return Y.util.ConvertToInt(t,64,"signed",void 0,e,r)};Y.converters["unsigned long long"]=function(t,e,r){return Y.util.ConvertToInt(t,64,"unsigned",void 0,e,r)};Y.converters["unsigned long"]=function(t,e,r){return Y.util.ConvertToInt(t,32,"unsigned",void 0,e,r)};Y.converters["unsigned short"]=function(t,e,r,n){return Y.util.ConvertToInt(t,16,"unsigned",n,e,r)};Y.converters.ArrayBuffer=function(t,e,r,n){if(Y.util.Type(t)!=="Object"||!qa.isAnyArrayBuffer(t))throw Y.errors.conversionFailed({prefix:e,argument:`${r} ("${Y.util.Stringify(t)}")`,types:["ArrayBuffer"]});if(n?.allowShared===!1&&qa.isSharedArrayBuffer(t))throw Y.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.resizable||t.growable)throw Y.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};Y.converters.TypedArray=function(t,e,r,n,s){if(Y.util.Type(t)!=="Object"||!qa.isTypedArray(t)||t.constructor.name!==e.name)throw Y.errors.conversionFailed({prefix:r,argument:`${n} ("${Y.util.Stringify(t)}")`,types:[e.name]});if(s?.allowShared===!1&&qa.isSharedArrayBuffer(t.buffer))throw Y.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw Y.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};Y.converters.DataView=function(t,e,r,n){if(Y.util.Type(t)!=="Object"||!qa.isDataView(t))throw Y.errors.exception({header:e,message:`${r} is not a DataView.`});if(n?.allowShared===!1&&qa.isSharedArrayBuffer(t.buffer))throw Y.errors.exception({header:"ArrayBuffer",message:"SharedArrayBuffer is not allowed."});if(t.buffer.resizable||t.buffer.growable)throw Y.errors.exception({header:"ArrayBuffer",message:"Received a resizable ArrayBuffer."});return t};Y.converters.BufferSource=function(t,e,r,n){if(qa.isAnyArrayBuffer(t))return Y.converters.ArrayBuffer(t,e,r,{...n,allowShared:!1});if(qa.isTypedArray(t))return Y.converters.TypedArray(t,t.constructor,e,r,{...n,allowShared:!1});if(qa.isDataView(t))return Y.converters.DataView(t,e,r,{...n,allowShared:!1});throw Y.errors.conversionFailed({prefix:e,argument:`${r} ("${Y.util.Stringify(t)}")`,types:["BufferSource"]})};Y.converters["sequence"]=Y.sequenceConverter(Y.converters.ByteString);Y.converters["sequence>"]=Y.sequenceConverter(Y.converters["sequence"]);Y.converters["record"]=Y.recordConverter(Y.converters.ByteString,Y.converters.ByteString);$X.exports={webidl:Y}});var go=b((r1t,r7)=>{"use strict";var{Transform:aUe}=require("node:stream"),GX=require("node:zlib"),{redirectStatusSet:cUe,referrerPolicySet:lUe,badPortsSet:uUe}=Xy(),{getGlobalOrigin:HX}=eM(),{collectASequenceOfCodePoints:Mp,collectAnHTTPQuotedString:dUe,removeChars:pUe,parseMIMEType:mUe}=Os(),{performance:fUe}=require("node:perf_hooks"),{isBlobLike:AUe,ReadableStreamFrom:hUe,isValidHTTPToken:zX,normalizedMethodRecordsBase:gUe}=ut(),Fp=require("node:assert"),{isUint8Array:yUe}=require("node:util/types"),{webidl:eE}=Rn(),VX=[],j0;try{j0=require("node:crypto");let t=["sha256","sha384","sha512"];VX=j0.getHashes().filter(e=>t.includes(e))}catch{}function YX(t){let e=t.urlList,r=e.length;return r===0?null:e[r-1].toString()}i(YX,"responseURL");function EUe(t,e){if(!cUe.has(t.status))return null;let r=t.headersList.get("location",!0);return r!==null&&jX(r)&&(WX(r)||(r=CUe(r)),r=new URL(r,YX(t))),r&&!r.hash&&(r.hash=e),r}i(EUe,"responseLocationURL");function WX(t){for(let e=0;e126||r<32)return!1}return!0}i(WX,"isValidEncodedURL");function CUe(t){return Buffer.from(t,"binary").toString("utf8")}i(CUe,"normalizeBinaryStringToUtf8");function rE(t){return t.urlList[t.urlList.length-1]}i(rE,"requestCurrentURL");function IUe(t){let e=rE(t);return e7(e)&&uUe.has(e.port)?"blocked":"allowed"}i(IUe,"requestBadPort");function xUe(t){return t instanceof Error||t?.constructor?.name==="Error"||t?.constructor?.name==="DOMException"}i(xUe,"isErrorLike");function wUe(t){for(let e=0;e=32&&r<=126||r>=128&&r<=255))return!1}return!0}i(wUe,"isValidReasonPhrase");var bUe=zX;function jX(t){return(t[0]===" "||t[0]===" "||t[t.length-1]===" "||t[t.length-1]===" "||t.includes(` +`)||t.includes("\r")||t.includes("\0"))===!1}i(jX,"isValidHeaderValue");function SUe(t,e){let{headersList:r}=e,n=(r.get("referrer-policy",!0)??"").split(","),s="";if(n.length>0)for(let o=n.length;o!==0;o--){let a=n[o-1].trim();if(lUe.has(a)){s=a;break}}s!==""&&(t.referrerPolicy=s)}i(SUe,"setRequestReferrerPolicyOnRedirect");function BUe(){return"allowed"}i(BUe,"crossOriginResourcePolicyCheck");function RUe(){return"success"}i(RUe,"corsCheck");function NUe(){return"success"}i(NUe,"TAOCheck");function TUe(t){let e=null;e=t.mode,t.headersList.set("sec-fetch-mode",e,!0)}i(TUe,"appendFetchMetadata");function PUe(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&&sM(t.origin)&&!sM(rE(t))&&(e=null);break;case"same-origin":J0(t,rE(t))||(e=null);break;default:}t.headersList.append("origin",e,!0)}}}i(PUe,"appendRequestOriginHeader");function fA(t,e){return t}i(fA,"coarsenTime");function vUe(t,e,r){return!t?.startTime||t.startTime4096&&(n=s);let o=J0(t,n),a=tE(n)&&!tE(t.url);switch(e){case"origin":return s??nM(r,!0);case"unsafe-url":return n;case"same-origin":return o?s:"no-referrer";case"origin-when-cross-origin":return o?n:s;case"strict-origin-when-cross-origin":{let c=rE(t);return J0(n,c)?n:tE(n)&&!tE(c)?"no-referrer":s}default:return a?"no-referrer":s}}i(kUe,"determineRequestsReferrer");function nM(t,e){return Fp(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)}i(nM,"stripURLForReferrer");function tE(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(r){if(r==null||r==="null")return!1;let n=new URL(r);return!!(n.protocol==="https:"||n.protocol==="wss:"||/^127(?:\.[0-9]+){0,2}\.[0-9]+$|^\[(?:0*:)*?:?0*1\]$/.test(n.hostname)||n.hostname==="localhost"||n.hostname.includes("localhost.")||n.hostname.endsWith(".localhost"))}}i(tE,"isURLPotentiallyTrustworthy");function LUe(t,e){if(j0===void 0)return!0;let r=KX(e);if(r==="no metadata"||r.length===0)return!0;let n=MUe(r),s=FUe(r,n);for(let o of s){let a=o.algo,c=o.hash,l=j0.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)),UUe(l,c))return!0}return!1}i(LUe,"bytesMatch");var OUe=/(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\s|$)( +[!-~]*)?)?/i;function KX(t){let e=[],r=!0;for(let n of t.split(" ")){r=!1;let s=OUe.exec(n);if(s===null||s.groups===void 0||s.groups.algo===void 0)continue;let o=s.groups.algo.toLowerCase();VX.includes(o)&&e.push(s.groups)}return r===!0?"no metadata":e}i(KX,"parseMetadata");function MUe(t){let e=t[0].algo;if(e[3]==="5")return e;for(let r=1;r{t=n,e=s}),resolve:t,reject:e}}i($Ue,"createDeferredPromise");function GUe(t){return t.controller.state==="aborted"}i(GUe,"isAborted");function HUe(t){return t.controller.state==="aborted"||t.controller.state==="terminated"}i(HUe,"isCancelled");function zUe(t){return gUe[t.toLowerCase()]??t}i(zUe,"normalizeMethod");function VUe(t){let e=JSON.stringify(t);if(e===void 0)throw new TypeError("Value is not JSON serializable");return Fp(typeof e=="string"),e}i(VUe,"serializeJavascriptValueToJSONString");var YUe=Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()));function XX(t,e,r=0,n=1){class s{static{i(this,"FastIterableIterator")}#e;#t;#s;constructor(a,c){this.#e=a,this.#t=c,this.#s=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.#s,c=this.#e[e],l=c.length;if(a>=l)return{value:void 0,done:!0};let{[r]:u,[n]:d}=c[a];this.#s=a+1;let p;switch(this.#t){case"key":p=u;break;case"value":p=d;break;case"key+value":p=[u,d];break}return{value:p,done:!1}}}return delete s.prototype.constructor,Object.setPrototypeOf(s.prototype,YUe),Object.defineProperties(s.prototype,{[Symbol.toStringTag]:{writable:!1,enumerable:!1,configurable:!0,value:`${t} Iterator`},next:{writable:!0,enumerable:!0,configurable:!0}}),function(o,a){return new s(o,a)}}i(XX,"createIterator");function WUe(t,e,r,n=0,s=1){let o=XX(t,r,n,s),a={keys:{writable:!0,enumerable:!0,configurable:!0,value:i(function(){return eE.brandCheck(this,e),o(this,"key")},"keys")},values:{writable:!0,enumerable:!0,configurable:!0,value:i(function(){return eE.brandCheck(this,e),o(this,"value")},"values")},entries:{writable:!0,enumerable:!0,configurable:!0,value:i(function(){return eE.brandCheck(this,e),o(this,"key+value")},"entries")},forEach:{writable:!0,enumerable:!0,configurable:!0,value:i(function(l,u=globalThis){if(eE.brandCheck(this,e),eE.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:d,1:p}of o(this,"key+value"))l.call(u,p,d,this)},"forEach")}};return Object.defineProperties(e.prototype,{...a,[Symbol.iterator]:{writable:!0,enumerable:!1,configurable:!0,value:a.entries.value}})}i(WUe,"iteratorMixin");async function jUe(t,e,r){let n=e,s=r,o;try{o=t.stream.getReader()}catch(a){s(a);return}try{n(await ZX(o))}catch(a){s(a)}}i(jUe,"fullyReadBody");function JUe(t){return t instanceof ReadableStream||t[Symbol.toStringTag]==="ReadableStream"&&typeof t.tee=="function"}i(JUe,"isReadableStreamLike");function KUe(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}}i(KUe,"readableStreamClose");var XUe=/[^\x00-\xFF]/;function W0(t){return Fp(!XUe.test(t)),t}i(W0,"isomorphicEncode");async function ZX(t){let e=[],r=0;for(;;){let{done:n,value:s}=await t.read();if(n)return Buffer.concat(e,r);if(!yUe(s))throw new TypeError("Received non-Uint8Array chunk");e.push(s),r+=s.length}}i(ZX,"readAllBytes");function ZUe(t){Fp("protocol"in t);let e=t.protocol;return e==="about:"||e==="blob:"||e==="data:"}i(ZUe,"urlIsLocal");function sM(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:"}i(sM,"urlHasHttpsScheme");function e7(t){Fp("protocol"in t);let e=t.protocol;return e==="http:"||e==="https:"}i(e7,"urlIsHttpHttpsScheme");function e2e(t,e){let r=t;if(!r.startsWith("bytes"))return"failure";let n={position:5};if(e&&Mp(l=>l===" "||l===" ",r,n),r.charCodeAt(n.position)!==61)return"failure";n.position++,e&&Mp(l=>l===" "||l===" ",r,n);let s=Mp(l=>{let u=l.charCodeAt(0);return u>=48&&u<=57},r,n),o=s.length?Number(s):null;if(e&&Mp(l=>l===" "||l===" ",r,n),r.charCodeAt(n.position)!==45)return"failure";n.position++,e&&Mp(l=>l===" "||l===" ",r,n);let a=Mp(l=>{let u=l.charCodeAt(0);return u>=48&&u<=57},r,n),c=a.length?Number(a):null;return n.positionc?"failure":{rangeStartValue:o,rangeEndValue:c}}i(e2e,"simpleRangeHeaderValue");function t2e(t,e,r){let n="bytes ";return n+=W0(`${t}`),n+="-",n+=W0(`${e}`),n+="/",n+=W0(`${r}`),n}i(t2e,"buildContentRange");var oM=class extends aUe{static{i(this,"InflateStream")}#e;constructor(e){super(),this.#e=e}_transform(e,r,n){if(!this._inflateStream){if(e.length===0){n();return}this._inflateStream=(e[0]&15)===8?GX.createInflate(this.#e):GX.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,r,n)}_final(e){this._inflateStream&&(this._inflateStream.end(),this._inflateStream=null),e()}};function r2e(t){return new oM(t)}i(r2e,"createInflate");function n2e(t){let e=null,r=null,n=null,s=t7("content-type",t);if(s===null)return"failure";for(let o of s){let a=mUe(o);a==="failure"||a.essence==="*/*"||(n=a,n.essence!==r?(e=null,n.parameters.has("charset")&&(e=n.parameters.get("charset")),r=n.essence):!n.parameters.has("charset")&&e!==null&&n.parameters.set("charset",e))}return n??"failure"}i(n2e,"extractMimeType");function s2e(t){let e=t,r={position:0},n=[],s="";for(;r.positiono!=='"'&&o!==",",e,r),r.positiono===9||o===32),n.push(s),s=""}return n}i(s2e,"gettingDecodingSplitting");function t7(t,e){let r=e.get(t,!0);return r===null?null:s2e(r)}i(t7,"getDecodeSplit");var o2e=new TextDecoder;function i2e(t){return t.length===0?"":(t[0]===239&&t[1]===187&&t[2]===191&&(t=t.subarray(3)),o2e.decode(t))}i(i2e,"utf8DecodeBytes");var iM=class{static{i(this,"EnvironmentSettingsObjectBase")}get baseUrl(){return HX()}get origin(){return this.baseUrl?.origin}policyContainer=JX()},aM=class{static{i(this,"EnvironmentSettingsObject")}settingsObject=new iM},a2e=new aM;r7.exports={isAborted:GUe,isCancelled:HUe,isValidEncodedURL:WX,createDeferredPromise:$Ue,ReadableStreamFrom:hUe,tryUpgradeRequestToAPotentiallyTrustworthyURL:qUe,clampAndCoarsenConnectionTimingInfo:vUe,coarsenedSharedCurrentTime:_Ue,determineRequestsReferrer:kUe,makePolicyContainer:JX,clonePolicyContainer:DUe,appendFetchMetadata:TUe,appendRequestOriginHeader:PUe,TAOCheck:NUe,corsCheck:RUe,crossOriginResourcePolicyCheck:BUe,createOpaqueTimingInfo:QUe,setRequestReferrerPolicyOnRedirect:SUe,isValidHTTPToken:zX,requestBadPort:IUe,requestCurrentURL:rE,responseURL:YX,responseLocationURL:EUe,isBlobLike:AUe,isURLPotentiallyTrustworthy:tE,isValidReasonPhrase:wUe,sameOrigin:J0,normalizeMethod:zUe,serializeJavascriptValueToJSONString:VUe,iteratorMixin:WUe,createIterator:XX,isValidHeaderName:bUe,isValidHeaderValue:jX,isErrorLike:xUe,fullyReadBody:jUe,bytesMatch:LUe,isReadableStreamLike:JUe,readableStreamClose:KUe,isomorphicEncode:W0,urlIsLocal:ZUe,urlHasHttpsScheme:sM,urlIsHttpHttpsScheme:e7,readAllBytes:ZX,simpleRangeHeaderValue:e2e,buildContentRange:t2e,parseMetadata:KX,createInflate:r2e,extractMimeType:n2e,getDecodeSplit:t7,utf8DecodeBytes:i2e,environmentSettingsObject:a2e}});var zu=b((s1t,n7)=>{"use strict";n7.exports={kUrl:Symbol("url"),kHeaders:Symbol("headers"),kSignal:Symbol("signal"),kState:Symbol("state"),kDispatcher:Symbol("dispatcher")}});var lM=b((o1t,s7)=>{"use strict";var{Blob:c2e,File:l2e}=require("node:buffer"),{kState:Dl}=zu(),{webidl:$a}=Rn(),cM=class t{static{i(this,"FileLike")}constructor(e,r,n={}){let s=r,o=n.type,a=n.lastModified??Date.now();this[Dl]={blobLike:e,name:s,type:o,lastModified:a}}stream(...e){return $a.brandCheck(this,t),this[Dl].blobLike.stream(...e)}arrayBuffer(...e){return $a.brandCheck(this,t),this[Dl].blobLike.arrayBuffer(...e)}slice(...e){return $a.brandCheck(this,t),this[Dl].blobLike.slice(...e)}text(...e){return $a.brandCheck(this,t),this[Dl].blobLike.text(...e)}get size(){return $a.brandCheck(this,t),this[Dl].blobLike.size}get type(){return $a.brandCheck(this,t),this[Dl].blobLike.type}get name(){return $a.brandCheck(this,t),this[Dl].name}get lastModified(){return $a.brandCheck(this,t),this[Dl].lastModified}get[Symbol.toStringTag](){return"File"}};$a.converters.Blob=$a.interfaceConverter(c2e);function u2e(t){return t instanceof l2e||t&&(typeof t.stream=="function"||typeof t.arrayBuffer=="function")&&t[Symbol.toStringTag]==="File"}i(u2e,"isFileLike");s7.exports={FileLike:cM,isFileLike:u2e}});var sE=b((a1t,l7)=>{"use strict";var{isBlobLike:K0,iteratorMixin:d2e}=go(),{kState:ds}=zu(),{kEnumerableProperty:AA}=ut(),{FileLike:o7,isFileLike:p2e}=lM(),{webidl:Ht}=Rn(),{File:c7}=require("node:buffer"),i7=require("node:util"),a7=globalThis.File??c7,nE=class t{static{i(this,"FormData")}constructor(e){if(Ht.util.markAsUncloneable(this),e!==void 0)throw Ht.errors.conversionFailed({prefix:"FormData constructor",argument:"Argument 1",types:["undefined"]});this[ds]=[]}append(e,r,n=void 0){Ht.brandCheck(this,t);let s="FormData.append";if(Ht.argumentLengthCheck(arguments,2,s),arguments.length===3&&!K0(r))throw new TypeError("Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'");e=Ht.converters.USVString(e,s,"name"),r=K0(r)?Ht.converters.Blob(r,s,"value",{strict:!1}):Ht.converters.USVString(r,s,"value"),n=arguments.length===3?Ht.converters.USVString(n,s,"filename"):void 0;let o=uM(e,r,n);this[ds].push(o)}delete(e){Ht.brandCheck(this,t);let r="FormData.delete";Ht.argumentLengthCheck(arguments,1,r),e=Ht.converters.USVString(e,r,"name"),this[ds]=this[ds].filter(n=>n.name!==e)}get(e){Ht.brandCheck(this,t);let r="FormData.get";Ht.argumentLengthCheck(arguments,1,r),e=Ht.converters.USVString(e,r,"name");let n=this[ds].findIndex(s=>s.name===e);return n===-1?null:this[ds][n].value}getAll(e){Ht.brandCheck(this,t);let r="FormData.getAll";return Ht.argumentLengthCheck(arguments,1,r),e=Ht.converters.USVString(e,r,"name"),this[ds].filter(n=>n.name===e).map(n=>n.value)}has(e){Ht.brandCheck(this,t);let r="FormData.has";return Ht.argumentLengthCheck(arguments,1,r),e=Ht.converters.USVString(e,r,"name"),this[ds].findIndex(n=>n.name===e)!==-1}set(e,r,n=void 0){Ht.brandCheck(this,t);let s="FormData.set";if(Ht.argumentLengthCheck(arguments,2,s),arguments.length===3&&!K0(r))throw new TypeError("Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'");e=Ht.converters.USVString(e,s,"name"),r=K0(r)?Ht.converters.Blob(r,s,"name",{strict:!1}):Ht.converters.USVString(r,s,"name"),n=arguments.length===3?Ht.converters.USVString(n,s,"name"):void 0;let o=uM(e,r,n),a=this[ds].findIndex(c=>c.name===e);a!==-1?this[ds]=[...this[ds].slice(0,a),o,...this[ds].slice(a+1).filter(c=>c.name!==e)]:this[ds].push(o)}[i7.inspect.custom](e,r){let n=this[ds].reduce((o,a)=>(o[a.name]?Array.isArray(o[a.name])?o[a.name].push(a.value):o[a.name]=[o[a.name],a.value]:o[a.name]=a.value,o),{__proto__:null});r.depth??=e,r.colors??=!0;let s=i7.formatWithOptions(r,n);return`FormData ${s.slice(s.indexOf("]")+2)}`}};d2e("FormData",nE,ds,"name","value");Object.defineProperties(nE.prototype,{append:AA,delete:AA,get:AA,getAll:AA,has:AA,set:AA,[Symbol.toStringTag]:{value:"FormData",configurable:!0}});function uM(t,e,r){if(typeof e!="string"){if(p2e(e)||(e=e instanceof Blob?new a7([e],"blob",{type:e.type}):new o7(e,"blob",{type:e.type})),r!==void 0){let n={type:e.type,lastModified:e.lastModified};e=e instanceof c7?new a7([e],r,n):new o7(e,r,n)}}return{name:t,value:e}}i(uM,"makeEntry");l7.exports={FormData:nE,makeEntry:uM}});var A7=b((l1t,f7)=>{"use strict";var{isUSVString:u7,bufferToLowerCasedHeaderName:m2e}=ut(),{utf8DecodeBytes:f2e}=go(),{HTTP_TOKEN_CODEPOINTS:A2e,isomorphicDecode:d7}=Os(),{isFileLike:h2e}=lM(),{makeEntry:g2e}=sE(),X0=require("node:assert"),{File:y2e}=require("node:buffer"),E2e=globalThis.File??y2e,C2e=Buffer.from('form-data; name="'),p7=Buffer.from("; filename"),I2e=Buffer.from("--"),x2e=Buffer.from(`--\r +`);function w2e(t){for(let e=0;e70)return!1;for(let r=0;r=48&&n<=57||n>=65&&n<=90||n>=97&&n<=122||n===39||n===45||n===95))return!1}return!0}i(b2e,"validateBoundary");function S2e(t,e){X0(e!=="failure"&&e.essence==="multipart/form-data");let r=e.parameters.get("boundary");if(r===void 0)return"failure";let n=Buffer.from(`--${r}`,"utf8"),s=[],o={position:0};for(;t[o.position]===13&&t[o.position+1]===10;)o.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(o.position,o.position+n.length).equals(n))o.position+=n.length;else return"failure";if(o.position===t.length-2&&Z0(t,I2e,o)||o.position===t.length-4&&Z0(t,x2e,o))return s;if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let c=B2e(t,o);if(c==="failure")return"failure";let{name:l,filename:u,contentType:d,encoding:p}=c;o.position+=2;let m;{let g=t.indexOf(n.subarray(2),o.position);if(g===-1)return"failure";m=t.subarray(o.position,g-4),o.position+=m.length,p==="base64"&&(m=Buffer.from(m.toString(),"base64"))}if(t[o.position]!==13||t[o.position+1]!==10)return"failure";o.position+=2;let f;u!==null?(d??="text/plain",w2e(d)||(d=""),f=new E2e([m],u,{type:d})):f=f2e(Buffer.from(m)),X0(u7(l)),X0(typeof f=="string"&&u7(f)||h2e(f)),s.push(g2e(l,f,u))}}i(S2e,"multipartFormDataParser");function B2e(t,e){let r=null,n=null,s=null,o=null;for(;;){if(t[e.position]===13&&t[e.position+1]===10)return r===null?"failure":{name:r,filename:n,contentType:s,encoding:o};let a=hA(c=>c!==10&&c!==13&&c!==58,t,e);if(a=dM(a,!0,!0,c=>c===9||c===32),!A2e.test(a.toString())||t[e.position]!==58)return"failure";switch(e.position++,hA(c=>c===32||c===9,t,e),m2e(a)){case"content-disposition":{if(r=n=null,!Z0(t,C2e,e)||(e.position+=17,r=m7(t,e),r===null))return"failure";if(Z0(t,p7,e)){let c=e.position+p7.length;if(t[c]===42&&(e.position+=1,c+=1),t[c]!==61||t[c+1]!==34||(e.position+=12,n=m7(t,e),n===null))return"failure"}break}case"content-type":{let c=hA(l=>l!==10&&l!==13,t,e);c=dM(c,!1,!0,l=>l===9||l===32),s=d7(c);break}case"content-transfer-encoding":{let c=hA(l=>l!==10&&l!==13,t,e);c=dM(c,!1,!0,l=>l===9||l===32),o=d7(c);break}default:hA(c=>c!==10&&c!==13,t,e)}if(t[e.position]!==13&&t[e.position+1]!==10)return"failure";e.position+=2}}i(B2e,"parseMultipartFormDataHeaders");function m7(t,e){X0(t[e.position-1]===34);let r=hA(n=>n!==10&&n!==13&&n!==34,t,e);return t[e.position]!==34?null:(e.position++,r=new TextDecoder().decode(r).replace(/%0A/ig,` +`).replace(/%0D/ig,"\r").replace(/%22/g,'"'),r)}i(m7,"parseMultipartFormDataName");function hA(t,e,r){let n=r.position;for(;n0&&n(t[o]);)o--;return s===0&&o===t.length-1?t:t.subarray(s,o+1)}i(dM,"removeChars");function Z0(t,e,r){if(t.length{"use strict";var oE=ut(),{ReadableStreamFrom:R2e,isBlobLike:h7,isReadableStreamLike:N2e,readableStreamClose:T2e,createDeferredPromise:P2e,fullyReadBody:v2e,extractMimeType:_2e,utf8DecodeBytes:E7}=go(),{FormData:g7}=sE(),{kState:yA}=zu(),{webidl:Q2e}=Rn(),{Blob:D2e}=require("node:buffer"),pM=require("node:assert"),{isErrored:C7,isDisturbed:k2e}=require("node:stream"),{isArrayBuffer:L2e}=require("node:util/types"),{serializeAMimeType:O2e}=Os(),{multipartFormDataParser:M2e}=A7(),mM;try{let t=require("node:crypto");mM=i(e=>t.randomInt(0,e),"random")}catch{mM=i(t=>Math.floor(Math.random(t)),"random")}var eb=new TextEncoder;function F2e(){}i(F2e,"noop");var I7=globalThis.FinalizationRegistry&&process.version.indexOf("v18")!==0,x7;I7&&(x7=new FinalizationRegistry(t=>{let e=t.deref();e&&!e.locked&&!k2e(e)&&!C7(e)&&e.cancel("Response object has been garbage collected").catch(F2e)}));function w7(t,e=!1){let r=null;t instanceof ReadableStream?r=t:h7(t)?r=t.stream():r=new ReadableStream({async pull(l){let u=typeof s=="string"?eb.encode(s):s;u.byteLength&&l.enqueue(u),queueMicrotask(()=>T2e(l))},start(){},type:"bytes"}),pM(N2e(r));let n=null,s=null,o=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(L2e(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(oE.isFormDataLike(t)){let l=`----formdata-undici-0${`${mM(1e11)}`.padStart(11,"0")}`,u=`--${l}\r +Content-Disposition: form-data`;let d=i(x=>x.replace(/\n/g,"%0A").replace(/\r/g,"%0D").replace(/"/g,"%22"),"escape"),p=i(x=>x.replace(/\r?\n|\r/g,`\r +`),"normalizeLinefeeds"),m=[],f=new Uint8Array([13,10]);o=0;let g=!1;for(let[x,w]of t)if(typeof w=="string"){let S=eb.encode(u+`; name="${d(p(x))}"\r \r -${d(x)}\r -`);p.push(b),o+=b.byteLength}else{let b=Z0.encode(`${l}; name="${u(d(I))}"`+(x.name?`; filename="${u(x.name)}"`:"")+`\r -Content-Type: ${x.type||"application/octet-stream"}\r +${p(w)}\r +`);m.push(S),o+=S.byteLength}else{let S=eb.encode(`${u}; name="${d(p(x))}"`+(w.name?`; filename="${d(w.name)}"`:"")+`\r +Content-Type: ${w.type||"application/octet-stream"}\r \r -`);p.push(b,x,m),typeof x.size=="number"?o+=b.byteLength+x.size+m.byteLength:h=!0}let y=Z0.encode(`--${c}--\r -`);p.push(y),o+=y.byteLength,h&&(o=null),s=t,n=async function*(){for(let I of p)I.stream?yield*I.stream():yield I},i=`multipart/form-data; boundary=${c}`}else if(A7(t))s=t,o=t.size,t.type&&(i=t.type);else if(typeof t[Symbol.asyncIterator]=="function"){if(e)throw new TypeError("keepalive");if(nE.isDisturbed(t)||t.locked)throw new TypeError("Response body object should not be disturbed or locked");r=t instanceof ReadableStream?t:S2e(t)}if((typeof s=="string"||nE.isBuffer(s))&&(o=Buffer.byteLength(s)),n!=null){let c;r=new ReadableStream({async start(){c=n(t)[Symbol.asyncIterator]()},async pull(l){let{value:u,done:d}=await c.next();if(d)queueMicrotask(()=>{l.close(),l.byobRequest?.respond(0)});else if(!E7(r)){let p=new Uint8Array(u);p.byteLength&&l.enqueue(p)}return l.desiredSize>0},async cancel(l){await c.return()},type:"bytes"})}return[{stream:r,source:s,length:o},i]}function M2e(t,e=!1){return t instanceof ReadableStream&&(dM(!nE.isDisturbed(t),"The body has already been consumed."),dM(!t.locked,"The stream is locked.")),x7(t,e)}function F2e(t,e){let[r,n]=e.stream.tee();return e.stream=r,{stream:n,length:e.length,source:e.source}}function U2e(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}function q2e(t){return{blob(){return hA(this,r=>{let n=g7(this);return n===null?n="":n&&(n=k2e(n)),new _2e([r],{type:n})},t)},arrayBuffer(){return hA(this,r=>new Uint8Array(r).buffer,t)},text(){return hA(this,y7,t)},json(){return hA(this,G2e,t)},formData(){return hA(this,r=>{let n=g7(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let s=L2e(r,n);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new h7;return o[gA]=s,o}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(r.toString()),o=new h7;for(let[i,a]of s)o.append(i,a);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},t)},bytes(){return hA(this,r=>new Uint8Array(r),t)}}}function $2e(t){Object.assign(t.prototype,q2e(t))}async function hA(t,e,r){if(v2e.brandCheck(t,r),w7(t))throw new TypeError("Body is unusable: Body has already been read");U2e(t[gA]);let n=N2e(),s=i=>n.reject(i),o=i=>{try{n.resolve(e(i))}catch(a){s(a)}};return t[gA].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await T2e(t[gA].body,o,s),n.promise)}function w7(t){let e=t[gA].body;return e!=null&&(e.stream.locked||nE.isDisturbed(e.stream))}function G2e(t){return JSON.parse(y7(t))}function g7(t){let e=t[gA].headersList,r=P2e(e);return r==="failure"?null:r}b7.exports={extractBody:x7,safelyExtractBody:M2e,cloneBody:F2e,mixinBody:$2e,streamRegistry:I7,hasFinalizationRegistry:C7,bodyUnusable:w7}});var k7=w((zFt,D7)=>{"use strict";var ke=require("node:assert"),We=lt(),{channels:S7}=oA(),mM=WO(),{RequestContentLengthMismatchError:Fp,ResponseContentLengthMismatchError:H2e,RequestAbortedError:v7,HeadersTimeoutError:z2e,HeadersOverflowError:V2e,SocketError:ob,InformationalError:EA,BodyTimeoutError:Y2e,HTTPParserError:W2e,ResponseExceededMaxSizeError:j2e}=wt(),{kUrl:_7,kReset:Os,kClient:gM,kParser:Er,kBlocking:iE,kRunning:qn,kPending:J2e,kSize:B7,kWriting:Vu,kQueue:ji,kNoRef:sE,kKeepAliveDefaultTimeout:K2e,kHostHeader:X2e,kPendingIdx:Z2e,kRunningIdx:ti,kError:ri,kPipelining:nb,kSocket:CA,kKeepAliveTimeoutValue:ib,kMaxHeadersSize:fM,kKeepAliveMaxTimeout:eqe,kKeepAliveTimeoutThreshold:tqe,kHeadersTimeout:rqe,kBodyTimeout:nqe,kStrictContentLength:yM,kMaxRequests:R7,kCounter:sqe,kMaxResponseSize:oqe,kOnError:iqe,kResume:zu,kHTTPContext:Q7}=Xt(),$a=IX(),aqe=Buffer.alloc(0),eb=Buffer[Symbol.species],tb=We.addListener,cqe=We.removeAllListeners,AM;async function lqe(){let t=process.env.JEST_WORKER_ID?KO():void 0,e;try{e=await WebAssembly.compile(bX())}catch{e=await WebAssembly.compile(t||KO())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:(r,n,s)=>0,wasm_on_status:(r,n,s)=>{ke(en.ptr===r);let o=n-Ha+Ga.byteOffset;return en.onStatus(new eb(Ga.buffer,o,s))||0},wasm_on_message_begin:r=>(ke(en.ptr===r),en.onMessageBegin()||0),wasm_on_header_field:(r,n,s)=>{ke(en.ptr===r);let o=n-Ha+Ga.byteOffset;return en.onHeaderField(new eb(Ga.buffer,o,s))||0},wasm_on_header_value:(r,n,s)=>{ke(en.ptr===r);let o=n-Ha+Ga.byteOffset;return en.onHeaderValue(new eb(Ga.buffer,o,s))||0},wasm_on_headers_complete:(r,n,s,o)=>(ke(en.ptr===r),en.onHeadersComplete(n,!!s,!!o)||0),wasm_on_body:(r,n,s)=>{ke(en.ptr===r);let o=n-Ha+Ga.byteOffset;return en.onBody(new eb(Ga.buffer,o,s))||0},wasm_on_message_complete:r=>(ke(en.ptr===r),en.onMessageComplete()||0)}})}var hM=null,EM=lqe();EM.catch();var en=null,Ga=null,rb=0,Ha=null,uqe=0,oE=1,IA=2|oE,sb=4|oE,CM=8|uqe,IM=class{constructor(e,r,{exports:n}){ke(Number.isFinite(e[fM])&&e[fM]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc($a.TYPE.RESPONSE),this.client=e,this.socket=r,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[fM],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=e[oqe]}setTimeout(e,r){e!==this.timeoutValue||r&oE^this.timeoutType&oE?(this.timeout&&(mM.clearTimeout(this.timeout),this.timeout=null),e&&(r&oE?this.timeout=mM.setFastTimeout(N7,e,new WeakRef(this)):(this.timeout=setTimeout(N7,e,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(ke(this.ptr!=null),ke(en==null),this.llhttp.llhttp_resume(this.ptr),ke(this.timeoutType===sb),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||aqe),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){ke(this.ptr!=null),ke(en==null),ke(!this.paused);let{socket:r,llhttp:n}=this;e.length>rb&&(Ha&&n.free(Ha),rb=Math.ceil(e.length/4096)*4096,Ha=n.malloc(rb)),new Uint8Array(n.memory.buffer,Ha,rb).set(e);try{let s;try{Ga=e,en=this,s=n.llhttp_execute(this.ptr,Ha,e.length)}catch(i){throw i}finally{en=null,Ga=null}let o=n.llhttp_get_error_pos(this.ptr)-Ha;if(s===$a.ERROR.PAUSED_UPGRADE)this.onUpgrade(e.slice(o));else if(s===$a.ERROR.PAUSED)this.paused=!0,r.unshift(e.slice(o));else if(s!==$a.ERROR.OK){let i=n.llhttp_get_error_reason(this.ptr),a="";if(i){let c=new Uint8Array(n.memory.buffer,i).indexOf(0);a="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,i,c).toString()+")"}throw new W2e(a,$a.ERROR[s],e.slice(o))}}catch(s){We.destroy(r,s)}}destroy(){ke(this.ptr!=null),ke(en==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&mM.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:r}=this;if(e.destroyed)return-1;let n=r[ji][r[ti]];if(!n)return-1;n.onResponseStarted()}onHeaderField(e){let r=this.headers.length;(r&1)===0?this.headers.push(e):this.headers[r-1]=Buffer.concat([this.headers[r-1],e]),this.trackHeader(e.length)}onHeaderValue(e){let r=this.headers.length;(r&1)===1?(this.headers.push(e),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],e]);let n=this.headers[r-2];if(n.length===10){let s=We.bufferToLowerCasedHeaderName(n);s==="keep-alive"?this.keepAlive+=e.toString():s==="connection"&&(this.connection+=e.toString())}else n.length===14&&We.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=e.toString());this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&We.destroy(this.socket,new V2e)}onUpgrade(e){let{upgrade:r,client:n,socket:s,headers:o,statusCode:i}=this;ke(r),ke(n[CA]===s),ke(!s.destroyed),ke(!this.paused),ke((o.length&1)===0);let a=n[ji][n[ti]];ke(a),ke(a.upgrade||a.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,s.unshift(e),s[Er].destroy(),s[Er]=null,s[gM]=null,s[ri]=null,cqe(s),n[CA]=null,n[Q7]=null,n[ji][n[ti]++]=null,n.emit("disconnect",n[_7],[n],new EA("upgrade"));try{a.onUpgrade(i,o,s)}catch(c){We.destroy(s,c)}n[zu]()}onHeadersComplete(e,r,n){let{client:s,socket:o,headers:i,statusText:a}=this;if(o.destroyed)return-1;let c=s[ji][s[ti]];if(!c)return-1;if(ke(!this.upgrade),ke(this.statusCode<200),e===100)return We.destroy(o,new ob("bad response",We.getSocketInfo(o))),-1;if(r&&!c.upgrade)return We.destroy(o,new ob("bad upgrade",We.getSocketInfo(o))),-1;if(ke(this.timeoutType===IA),this.statusCode=e,this.shouldKeepAlive=n||c.method==="HEAD"&&!o[Os]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let u=c.bodyTimeout!=null?c.bodyTimeout:s[nqe];this.setTimeout(u,sb)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(c.method==="CONNECT")return ke(s[qn]===1),this.upgrade=!0,2;if(r)return ke(s[qn]===1),this.upgrade=!0,2;if(ke((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&s[nb]){let u=this.keepAlive?We.parseKeepAliveTimeout(this.keepAlive):null;if(u!=null){let d=Math.min(u-s[tqe],s[eqe]);d<=0?o[Os]=!0:s[ib]=d}else s[ib]=s[K2e]}else o[Os]=!0;let l=c.onHeaders(e,i,this.resume,a)===!1;return c.aborted?-1:c.method==="HEAD"||e<200?1:(o[iE]&&(o[iE]=!1,s[zu]()),l?$a.ERROR.PAUSED:0)}onBody(e){let{client:r,socket:n,statusCode:s,maxResponseSize:o}=this;if(n.destroyed)return-1;let i=r[ji][r[ti]];if(ke(i),ke(this.timeoutType===sb),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),ke(s>=200),o>-1&&this.bytesRead+e.length>o)return We.destroy(n,new j2e),-1;if(this.bytesRead+=e.length,i.onData(e)===!1)return $a.ERROR.PAUSED}onMessageComplete(){let{client:e,socket:r,statusCode:n,upgrade:s,headers:o,contentLength:i,bytesRead:a,shouldKeepAlive:c}=this;if(r.destroyed&&(!n||c))return-1;if(s)return;ke(n>=100),ke((this.headers.length&1)===0);let l=e[ji][e[ti]];if(ke(l),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(l.method!=="HEAD"&&i&&a!==parseInt(i,10))return We.destroy(r,new H2e),-1;if(l.onComplete(o),e[ji][e[ti]++]=null,r[Vu])return ke(e[qn]===0),We.destroy(r,new EA("reset")),$a.ERROR.PAUSED;if(c){if(r[Os]&&e[qn]===0)return We.destroy(r,new EA("reset")),$a.ERROR.PAUSED;e[nb]==null||e[nb]===1?setImmediate(()=>e[zu]()):e[zu]()}else return We.destroy(r,new EA("reset")),$a.ERROR.PAUSED}}};function N7(t){let{socket:e,timeoutType:r,client:n,paused:s}=t.deref();r===IA?(!e[Vu]||e.writableNeedDrain||n[qn]>1)&&(ke(!s,"cannot be paused while waiting for headers"),We.destroy(e,new z2e)):r===sb?s||We.destroy(e,new Y2e):r===CM&&(ke(n[qn]===0&&n[ib]),We.destroy(e,new EA("socket idle timeout")))}async function dqe(t,e){t[CA]=e,hM||(hM=await EM,EM=null),e[sE]=!1,e[Vu]=!1,e[Os]=!1,e[iE]=!1,e[Er]=new IM(t,e,hM),tb(e,"error",function(n){ke(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let s=this[Er];if(n.code==="ECONNRESET"&&s.statusCode&&!s.shouldKeepAlive){s.onMessageComplete();return}this[ri]=n,this[gM][iqe](n)}),tb(e,"readable",function(){let n=this[Er];n&&n.readMore()}),tb(e,"end",function(){let n=this[Er];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}We.destroy(this,new ob("other side closed",We.getSocketInfo(this)))}),tb(e,"close",function(){let n=this[gM],s=this[Er];s&&(!this[ri]&&s.statusCode&&!s.shouldKeepAlive&&s.onMessageComplete(),this[Er].destroy(),this[Er]=null);let o=this[ri]||new ob("closed",We.getSocketInfo(this));if(n[CA]=null,n[Q7]=null,n.destroyed){ke(n[J2e]===0);let i=n[ji].splice(n[ti]);for(let a=0;a0&&o.code!=="UND_ERR_INFO"){let i=n[ji][n[ti]];n[ji][n[ti]++]=null,We.errorRequest(n,i,o)}n[Z2e]=n[ti],ke(n[qn]===0),n.emit("disconnect",n[_7],[n],o),n[zu]()});let r=!1;return e.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return fqe(t,...n)},resume(){pqe(t)},destroy(n,s){r?queueMicrotask(s):e.destroy(n).on("close",s)},get destroyed(){return e.destroyed},busy(n){return!!(e[Vu]||e[Os]||e[iE]||n&&(t[qn]>0&&!n.idempotent||t[qn]>0&&(n.upgrade||n.method==="CONNECT")||t[qn]>0&&We.bodyLength(n.body)!==0&&(We.isStream(n.body)||We.isAsyncIterable(n.body)||We.isFormDataLike(n.body))))}}}function pqe(t){let e=t[CA];if(e&&!e.destroyed){if(t[B7]===0?!e[sE]&&e.unref&&(e.unref(),e[sE]=!0):e[sE]&&e.ref&&(e.ref(),e[sE]=!1),t[B7]===0)e[Er].timeoutType!==CM&&e[Er].setTimeout(t[ib],CM);else if(t[qn]>0&&e[Er].statusCode<200&&e[Er].timeoutType!==IA){let r=t[ji][t[ti]],n=r.headersTimeout!=null?r.headersTimeout:t[rqe];e[Er].setTimeout(n,IA)}}}function mqe(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}function fqe(t,e){let{method:r,path:n,host:s,upgrade:o,blocking:i,reset:a}=e,{body:c,headers:l,contentLength:u}=e,d=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(We.isFormDataLike(c)){AM||(AM=yA().extractBody);let[I,x]=AM(c);e.contentType==null&&l.push("content-type",x),c=I.stream,u=I.length}else We.isBlobLike(c)&&e.contentType==null&&c.type&&l.push("content-type",c.type);c&&typeof c.read=="function"&&c.read(0);let p=We.bodyLength(c);if(u=p??u,u===null&&(u=e.contentLength),u===0&&!d&&(u=null),mqe(r)&&u>0&&e.contentLength!==null&&e.contentLength!==u){if(t[yM])return We.errorRequest(t,e,new Fp),!1;process.emitWarning(new Fp)}let m=t[CA],h=I=>{e.aborted||e.completed||(We.errorRequest(t,e,I||new v7),We.destroy(c),We.destroy(m,new EA("aborted")))};try{e.onConnect(h)}catch(I){We.errorRequest(t,e,I)}if(e.aborted)return!1;r==="HEAD"&&(m[Os]=!0),(o||r==="CONNECT")&&(m[Os]=!0),a!=null&&(m[Os]=a),t[R7]&&m[sqe]++>=t[R7]&&(m[Os]=!0),i&&(m[iE]=!0);let y=`${r} ${n} HTTP/1.1\r -`;if(typeof s=="string"?y+=`host: ${s}\r -`:y+=t[X2e],o?y+=`connection: upgrade\r +`);m.push(S,w,f),typeof w.size=="number"?o+=S.byteLength+w.size+f.byteLength:g=!0}let E=eb.encode(`--${l}--\r +`);m.push(E),o+=E.byteLength,g&&(o=null),s=t,n=i(async function*(){for(let x of m)x.stream?yield*x.stream():yield x},"action"),a=`multipart/form-data; boundary=${l}`}else if(h7(t))s=t,o=t.size,t.type&&(a=t.type);else if(typeof t[Symbol.asyncIterator]=="function"){if(e)throw new TypeError("keepalive");if(oE.isDisturbed(t)||t.locked)throw new TypeError("Response body object should not be disturbed or locked");r=t instanceof ReadableStream?t:R2e(t)}if((typeof s=="string"||oE.isBuffer(s))&&(o=Buffer.byteLength(s)),n!=null){let l;r=new ReadableStream({async start(){l=n(t)[Symbol.asyncIterator]()},async pull(u){let{value:d,done:p}=await l.next();if(p)queueMicrotask(()=>{u.close(),u.byobRequest?.respond(0)});else if(!C7(r)){let m=new Uint8Array(d);m.byteLength&&u.enqueue(m)}return u.desiredSize>0},async cancel(u){await l.return()},type:"bytes"})}return[{stream:r,source:s,length:o},a]}i(w7,"extractBody");function U2e(t,e=!1){return t instanceof ReadableStream&&(pM(!oE.isDisturbed(t),"The body has already been consumed."),pM(!t.locked,"The stream is locked.")),w7(t,e)}i(U2e,"safelyExtractBody");function q2e(t,e){let[r,n]=e.stream.tee();return e.stream=r,{stream:n,length:e.length,source:e.source}}i(q2e,"cloneBody");function $2e(t){if(t.aborted)throw new DOMException("The operation was aborted.","AbortError")}i($2e,"throwIfAborted");function G2e(t){return{blob(){return gA(this,r=>{let n=y7(this);return n===null?n="":n&&(n=O2e(n)),new D2e([r],{type:n})},t)},arrayBuffer(){return gA(this,r=>new Uint8Array(r).buffer,t)},text(){return gA(this,E7,t)},json(){return gA(this,z2e,t)},formData(){return gA(this,r=>{let n=y7(this);if(n!==null)switch(n.essence){case"multipart/form-data":{let s=M2e(r,n);if(s==="failure")throw new TypeError("Failed to parse body as FormData.");let o=new g7;return o[yA]=s,o}case"application/x-www-form-urlencoded":{let s=new URLSearchParams(r.toString()),o=new g7;for(let[a,c]of s)o.append(a,c);return o}}throw new TypeError('Content-Type was not one of "multipart/form-data" or "application/x-www-form-urlencoded".')},t)},bytes(){return gA(this,r=>new Uint8Array(r),t)}}}i(G2e,"bodyMixinMethods");function H2e(t){Object.assign(t.prototype,G2e(t))}i(H2e,"mixinBody");async function gA(t,e,r){if(Q2e.brandCheck(t,r),b7(t))throw new TypeError("Body is unusable: Body has already been read");$2e(t[yA]);let n=P2e(),s=i(a=>n.reject(a),"errorSteps"),o=i(a=>{try{n.resolve(e(a))}catch(c){s(c)}},"successSteps");return t[yA].body==null?(o(Buffer.allocUnsafe(0)),n.promise):(await v2e(t[yA].body,o,s),n.promise)}i(gA,"consumeBody");function b7(t){let e=t[yA].body;return e!=null&&(e.stream.locked||oE.isDisturbed(e.stream))}i(b7,"bodyUnusable");function z2e(t){return JSON.parse(E7(t))}i(z2e,"parseJSONFromBytes");function y7(t){let e=t[yA].headersList,r=_2e(e);return r==="failure"?null:r}i(y7,"bodyMimeType");S7.exports={extractBody:w7,safelyExtractBody:U2e,cloneBody:q2e,mixinBody:H2e,streamRegistry:x7,hasFinalizationRegistry:I7,bodyUnusable:b7}});var L7=b((m1t,k7)=>{"use strict";var Le=require("node:assert"),je=ut(),{channels:B7}=iA(),fM=jO(),{RequestContentLengthMismatchError:Up,ResponseContentLengthMismatchError:V2e,RequestAbortedError:_7,HeadersTimeoutError:Y2e,HeadersOverflowError:W2e,SocketError:ib,InformationalError:CA,BodyTimeoutError:j2e,HTTPParserError:J2e,ResponseExceededMaxSizeError:K2e}=bt(),{kUrl:Q7,kReset:Ms,kClient:yM,kParser:Cr,kBlocking:cE,kRunning:$n,kPending:X2e,kSize:R7,kWriting:Yu,kQueue:Ji,kNoRef:iE,kKeepAliveDefaultTimeout:Z2e,kHostHeader:eqe,kPendingIdx:tqe,kRunningIdx:ri,kError:ni,kPipelining:sb,kSocket:IA,kKeepAliveTimeoutValue:ab,kMaxHeadersSize:AM,kKeepAliveMaxTimeout:rqe,kKeepAliveTimeoutThreshold:nqe,kHeadersTimeout:sqe,kBodyTimeout:oqe,kStrictContentLength:EM,kMaxRequests:N7,kCounter:iqe,kMaxResponseSize:aqe,kOnError:cqe,kResume:Vu,kHTTPContext:D7}=Zt(),Ga=xX(),lqe=Buffer.alloc(0),tb=Buffer[Symbol.species],rb=je.addListener,uqe=je.removeAllListeners,hM;async function dqe(){let t=process.env.JEST_WORKER_ID?XO():void 0,e;try{e=await WebAssembly.compile(SX())}catch{e=await WebAssembly.compile(t||XO())}return await WebAssembly.instantiate(e,{env:{wasm_on_url:i((r,n,s)=>0,"wasm_on_url"),wasm_on_status:i((r,n,s)=>{Le(tn.ptr===r);let o=n-za+Ha.byteOffset;return tn.onStatus(new tb(Ha.buffer,o,s))||0},"wasm_on_status"),wasm_on_message_begin:i(r=>(Le(tn.ptr===r),tn.onMessageBegin()||0),"wasm_on_message_begin"),wasm_on_header_field:i((r,n,s)=>{Le(tn.ptr===r);let o=n-za+Ha.byteOffset;return tn.onHeaderField(new tb(Ha.buffer,o,s))||0},"wasm_on_header_field"),wasm_on_header_value:i((r,n,s)=>{Le(tn.ptr===r);let o=n-za+Ha.byteOffset;return tn.onHeaderValue(new tb(Ha.buffer,o,s))||0},"wasm_on_header_value"),wasm_on_headers_complete:i((r,n,s,o)=>(Le(tn.ptr===r),tn.onHeadersComplete(n,!!s,!!o)||0),"wasm_on_headers_complete"),wasm_on_body:i((r,n,s)=>{Le(tn.ptr===r);let o=n-za+Ha.byteOffset;return tn.onBody(new tb(Ha.buffer,o,s))||0},"wasm_on_body"),wasm_on_message_complete:i(r=>(Le(tn.ptr===r),tn.onMessageComplete()||0),"wasm_on_message_complete")}})}i(dqe,"lazyllhttp");var gM=null,CM=dqe();CM.catch();var tn=null,Ha=null,nb=0,za=null,pqe=0,aE=1,xA=2|aE,ob=4|aE,IM=8|pqe,xM=class{static{i(this,"Parser")}constructor(e,r,{exports:n}){Le(Number.isFinite(e[AM])&&e[AM]>0),this.llhttp=n,this.ptr=this.llhttp.llhttp_alloc(Ga.TYPE.RESPONSE),this.client=e,this.socket=r,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[AM],this.shouldKeepAlive=!1,this.paused=!1,this.resume=this.resume.bind(this),this.bytesRead=0,this.keepAlive="",this.contentLength="",this.connection="",this.maxResponseSize=e[aqe]}setTimeout(e,r){e!==this.timeoutValue||r&aE^this.timeoutType&aE?(this.timeout&&(fM.clearTimeout(this.timeout),this.timeout=null),e&&(r&aE?this.timeout=fM.setFastTimeout(T7,e,new WeakRef(this)):(this.timeout=setTimeout(T7,e,new WeakRef(this)),this.timeout.unref())),this.timeoutValue=e):this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.timeoutType=r}resume(){this.socket.destroyed||!this.paused||(Le(this.ptr!=null),Le(tn==null),this.llhttp.llhttp_resume(this.ptr),Le(this.timeoutType===ob),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),this.paused=!1,this.execute(this.socket.read()||lqe),this.readMore())}readMore(){for(;!this.paused&&this.ptr;){let e=this.socket.read();if(e===null)break;this.execute(e)}}execute(e){Le(this.ptr!=null),Le(tn==null),Le(!this.paused);let{socket:r,llhttp:n}=this;e.length>nb&&(za&&n.free(za),nb=Math.ceil(e.length/4096)*4096,za=n.malloc(nb)),new Uint8Array(n.memory.buffer,za,nb).set(e);try{let s;try{Ha=e,tn=this,s=n.llhttp_execute(this.ptr,za,e.length)}catch(a){throw a}finally{tn=null,Ha=null}let o=n.llhttp_get_error_pos(this.ptr)-za;if(s===Ga.ERROR.PAUSED_UPGRADE)this.onUpgrade(e.slice(o));else if(s===Ga.ERROR.PAUSED)this.paused=!0,r.unshift(e.slice(o));else if(s!==Ga.ERROR.OK){let a=n.llhttp_get_error_reason(this.ptr),c="";if(a){let l=new Uint8Array(n.memory.buffer,a).indexOf(0);c="Response does not match the HTTP/1.1 protocol ("+Buffer.from(n.memory.buffer,a,l).toString()+")"}throw new J2e(c,Ga.ERROR[s],e.slice(o))}}catch(s){je.destroy(r,s)}}destroy(){Le(this.ptr!=null),Le(tn==null),this.llhttp.llhttp_free(this.ptr),this.ptr=null,this.timeout&&fM.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:r}=this;if(e.destroyed)return-1;let n=r[Ji][r[ri]];if(!n)return-1;n.onResponseStarted()}onHeaderField(e){let r=this.headers.length;(r&1)===0?this.headers.push(e):this.headers[r-1]=Buffer.concat([this.headers[r-1],e]),this.trackHeader(e.length)}onHeaderValue(e){let r=this.headers.length;(r&1)===1?(this.headers.push(e),r+=1):this.headers[r-1]=Buffer.concat([this.headers[r-1],e]);let n=this.headers[r-2];if(n.length===10){let s=je.bufferToLowerCasedHeaderName(n);s==="keep-alive"?this.keepAlive+=e.toString():s==="connection"&&(this.connection+=e.toString())}else n.length===14&&je.bufferToLowerCasedHeaderName(n)==="content-length"&&(this.contentLength+=e.toString());this.trackHeader(e.length)}trackHeader(e){this.headersSize+=e,this.headersSize>=this.headersMaxSize&&je.destroy(this.socket,new W2e)}onUpgrade(e){let{upgrade:r,client:n,socket:s,headers:o,statusCode:a}=this;Le(r),Le(n[IA]===s),Le(!s.destroyed),Le(!this.paused),Le((o.length&1)===0);let c=n[Ji][n[ri]];Le(c),Le(c.upgrade||c.method==="CONNECT"),this.statusCode=null,this.statusText="",this.shouldKeepAlive=null,this.headers=[],this.headersSize=0,s.unshift(e),s[Cr].destroy(),s[Cr]=null,s[yM]=null,s[ni]=null,uqe(s),n[IA]=null,n[D7]=null,n[Ji][n[ri]++]=null,n.emit("disconnect",n[Q7],[n],new CA("upgrade"));try{c.onUpgrade(a,o,s)}catch(l){je.destroy(s,l)}n[Vu]()}onHeadersComplete(e,r,n){let{client:s,socket:o,headers:a,statusText:c}=this;if(o.destroyed)return-1;let l=s[Ji][s[ri]];if(!l)return-1;if(Le(!this.upgrade),Le(this.statusCode<200),e===100)return je.destroy(o,new ib("bad response",je.getSocketInfo(o))),-1;if(r&&!l.upgrade)return je.destroy(o,new ib("bad upgrade",je.getSocketInfo(o))),-1;if(Le(this.timeoutType===xA),this.statusCode=e,this.shouldKeepAlive=n||l.method==="HEAD"&&!o[Ms]&&this.connection.toLowerCase()==="keep-alive",this.statusCode>=200){let d=l.bodyTimeout!=null?l.bodyTimeout:s[oqe];this.setTimeout(d,ob)}else this.timeout&&this.timeout.refresh&&this.timeout.refresh();if(l.method==="CONNECT")return Le(s[$n]===1),this.upgrade=!0,2;if(r)return Le(s[$n]===1),this.upgrade=!0,2;if(Le((this.headers.length&1)===0),this.headers=[],this.headersSize=0,this.shouldKeepAlive&&s[sb]){let d=this.keepAlive?je.parseKeepAliveTimeout(this.keepAlive):null;if(d!=null){let p=Math.min(d-s[nqe],s[rqe]);p<=0?o[Ms]=!0:s[ab]=p}else s[ab]=s[Z2e]}else o[Ms]=!0;let u=l.onHeaders(e,a,this.resume,c)===!1;return l.aborted?-1:l.method==="HEAD"||e<200?1:(o[cE]&&(o[cE]=!1,s[Vu]()),u?Ga.ERROR.PAUSED:0)}onBody(e){let{client:r,socket:n,statusCode:s,maxResponseSize:o}=this;if(n.destroyed)return-1;let a=r[Ji][r[ri]];if(Le(a),Le(this.timeoutType===ob),this.timeout&&this.timeout.refresh&&this.timeout.refresh(),Le(s>=200),o>-1&&this.bytesRead+e.length>o)return je.destroy(n,new K2e),-1;if(this.bytesRead+=e.length,a.onData(e)===!1)return Ga.ERROR.PAUSED}onMessageComplete(){let{client:e,socket:r,statusCode:n,upgrade:s,headers:o,contentLength:a,bytesRead:c,shouldKeepAlive:l}=this;if(r.destroyed&&(!n||l))return-1;if(s)return;Le(n>=100),Le((this.headers.length&1)===0);let u=e[Ji][e[ri]];if(Le(u),this.statusCode=null,this.statusText="",this.bytesRead=0,this.contentLength="",this.keepAlive="",this.connection="",this.headers=[],this.headersSize=0,!(n<200)){if(u.method!=="HEAD"&&a&&c!==parseInt(a,10))return je.destroy(r,new V2e),-1;if(u.onComplete(o),e[Ji][e[ri]++]=null,r[Yu])return Le(e[$n]===0),je.destroy(r,new CA("reset")),Ga.ERROR.PAUSED;if(l){if(r[Ms]&&e[$n]===0)return je.destroy(r,new CA("reset")),Ga.ERROR.PAUSED;e[sb]==null||e[sb]===1?setImmediate(()=>e[Vu]()):e[Vu]()}else return je.destroy(r,new CA("reset")),Ga.ERROR.PAUSED}}};function T7(t){let{socket:e,timeoutType:r,client:n,paused:s}=t.deref();r===xA?(!e[Yu]||e.writableNeedDrain||n[$n]>1)&&(Le(!s,"cannot be paused while waiting for headers"),je.destroy(e,new Y2e)):r===ob?s||je.destroy(e,new j2e):r===IM&&(Le(n[$n]===0&&n[ab]),je.destroy(e,new CA("socket idle timeout")))}i(T7,"onParserTimeout");async function mqe(t,e){t[IA]=e,gM||(gM=await CM,CM=null),e[iE]=!1,e[Yu]=!1,e[Ms]=!1,e[cE]=!1,e[Cr]=new xM(t,e,gM),rb(e,"error",function(n){Le(n.code!=="ERR_TLS_CERT_ALTNAME_INVALID");let s=this[Cr];if(n.code==="ECONNRESET"&&s.statusCode&&!s.shouldKeepAlive){s.onMessageComplete();return}this[ni]=n,this[yM][cqe](n)}),rb(e,"readable",function(){let n=this[Cr];n&&n.readMore()}),rb(e,"end",function(){let n=this[Cr];if(n.statusCode&&!n.shouldKeepAlive){n.onMessageComplete();return}je.destroy(this,new ib("other side closed",je.getSocketInfo(this)))}),rb(e,"close",function(){let n=this[yM],s=this[Cr];s&&(!this[ni]&&s.statusCode&&!s.shouldKeepAlive&&s.onMessageComplete(),this[Cr].destroy(),this[Cr]=null);let o=this[ni]||new ib("closed",je.getSocketInfo(this));if(n[IA]=null,n[D7]=null,n.destroyed){Le(n[X2e]===0);let a=n[Ji].splice(n[ri]);for(let c=0;c0&&o.code!=="UND_ERR_INFO"){let a=n[Ji][n[ri]];n[Ji][n[ri]++]=null,je.errorRequest(n,a,o)}n[tqe]=n[ri],Le(n[$n]===0),n.emit("disconnect",n[Q7],[n],o),n[Vu]()});let r=!1;return e.on("close",()=>{r=!0}),{version:"h1",defaultPipelining:1,write(...n){return hqe(t,...n)},resume(){fqe(t)},destroy(n,s){r?queueMicrotask(s):e.destroy(n).on("close",s)},get destroyed(){return e.destroyed},busy(n){return!!(e[Yu]||e[Ms]||e[cE]||n&&(t[$n]>0&&!n.idempotent||t[$n]>0&&(n.upgrade||n.method==="CONNECT")||t[$n]>0&&je.bodyLength(n.body)!==0&&(je.isStream(n.body)||je.isAsyncIterable(n.body)||je.isFormDataLike(n.body))))}}}i(mqe,"connectH1");function fqe(t){let e=t[IA];if(e&&!e.destroyed){if(t[R7]===0?!e[iE]&&e.unref&&(e.unref(),e[iE]=!0):e[iE]&&e.ref&&(e.ref(),e[iE]=!1),t[R7]===0)e[Cr].timeoutType!==IM&&e[Cr].setTimeout(t[ab],IM);else if(t[$n]>0&&e[Cr].statusCode<200&&e[Cr].timeoutType!==xA){let r=t[Ji][t[ri]],n=r.headersTimeout!=null?r.headersTimeout:t[sqe];e[Cr].setTimeout(n,xA)}}}i(fqe,"resumeH1");function Aqe(t){return t!=="GET"&&t!=="HEAD"&&t!=="OPTIONS"&&t!=="TRACE"&&t!=="CONNECT"}i(Aqe,"shouldSendContentLength");function hqe(t,e){let{method:r,path:n,host:s,upgrade:o,blocking:a,reset:c}=e,{body:l,headers:u,contentLength:d}=e,p=r==="PUT"||r==="POST"||r==="PATCH"||r==="QUERY"||r==="PROPFIND"||r==="PROPPATCH";if(je.isFormDataLike(l)){hM||(hM=EA().extractBody);let[x,w]=hM(l);e.contentType==null&&u.push("content-type",w),l=x.stream,d=x.length}else je.isBlobLike(l)&&e.contentType==null&&l.type&&u.push("content-type",l.type);l&&typeof l.read=="function"&&l.read(0);let m=je.bodyLength(l);if(d=m??d,d===null&&(d=e.contentLength),d===0&&!p&&(d=null),Aqe(r)&&d>0&&e.contentLength!==null&&e.contentLength!==d){if(t[EM])return je.errorRequest(t,e,new Up),!1;process.emitWarning(new Up)}let f=t[IA],g=i(x=>{e.aborted||e.completed||(je.errorRequest(t,e,x||new _7),je.destroy(l),je.destroy(f,new CA("aborted")))},"abort");try{e.onConnect(g)}catch(x){je.errorRequest(t,e,x)}if(e.aborted)return!1;r==="HEAD"&&(f[Ms]=!0),(o||r==="CONNECT")&&(f[Ms]=!0),c!=null&&(f[Ms]=c),t[N7]&&f[iqe]++>=t[N7]&&(f[Ms]=!0),a&&(f[cE]=!0);let E=`${r} ${n} HTTP/1.1\r +`;if(typeof s=="string"?E+=`host: ${s}\r +`:E+=t[eqe],o?E+=`connection: upgrade\r upgrade: ${o}\r -`:t[nb]&&!m[Os]?y+=`connection: keep-alive\r -`:y+=`connection: close\r -`,Array.isArray(l))for(let I=0;I{e.removeListener("error",m)}),!c){let h=new v7;queueMicrotask(()=>m(h))}},m=function(h){if(!c){if(c=!0,ke(s.destroyed||s[Vu]&&r[qn]<=1),s.off("drain",d).off("error",m),e.removeListener("data",u).removeListener("end",m).removeListener("close",p),!h)try{l.end()}catch(y){h=y}l.destroy(h),h&&(h.code!=="UND_ERR_INFO"||h.message!=="reset")?We.destroy(e,h):We.destroy(e)}};e.on("data",u).on("end",m).on("error",m).on("close",p),e.resume&&e.resume(),s.on("drain",d).on("error",m),e.errorEmitted??e.errored?setImmediate(()=>m(e.errored)):(e.endEmitted??e.readableEnded)&&setImmediate(()=>m(null)),(e.closeEmitted??e.closed)&&setImmediate(p)}function T7(t,e,r,n,s,o,i,a){try{e?We.isBuffer(e)&&(ke(o===e.byteLength,"buffer body must have content length"),s.cork(),s.write(`${i}content-length: ${o}\r +`:t[sb]&&!f[Ms]?E+=`connection: keep-alive\r +`:E+=`connection: close\r +`,Array.isArray(u))for(let x=0;x{e.removeListener("error",f)}),!l){let g=new _7;queueMicrotask(()=>f(g))}},"onClose"),f=i(function(g){if(!l){if(l=!0,Le(s.destroyed||s[Yu]&&r[$n]<=1),s.off("drain",p).off("error",f),e.removeListener("data",d).removeListener("end",f).removeListener("close",m),!g)try{u.end()}catch(E){g=E}u.destroy(g),g&&(g.code!=="UND_ERR_INFO"||g.message!=="reset")?je.destroy(e,g):je.destroy(e)}},"onFinished");e.on("data",d).on("end",f).on("error",f).on("close",m),e.resume&&e.resume(),s.on("drain",p).on("error",f),e.errorEmitted??e.errored?setImmediate(()=>f(e.errored)):(e.endEmitted??e.readableEnded)&&setImmediate(()=>f(null)),(e.closeEmitted??e.closed)&&setImmediate(m)}i(gqe,"writeStream");function P7(t,e,r,n,s,o,a,c){try{e?je.isBuffer(e)&&(Le(o===e.byteLength,"buffer body must have content length"),s.cork(),s.write(`${a}content-length: ${o}\r \r -`,"latin1"),s.write(e),s.uncork(),n.onBodySent(e),!a&&n.reset!==!1&&(s[Os]=!0)):o===0?s.write(`${i}content-length: 0\r +`,"latin1"),s.write(e),s.uncork(),n.onBodySent(e),!c&&n.reset!==!1&&(s[Ms]=!0)):o===0?s.write(`${a}content-length: 0\r \r -`,"latin1"):(ke(o===null,"no body must not have content length"),s.write(`${i}\r -`,"latin1")),n.onRequestSent(),r[zu]()}catch(c){t(c)}}async function hqe(t,e,r,n,s,o,i,a){ke(o===e.size,"blob body must have content length");try{if(o!=null&&o!==e.size)throw new Fp;let c=Buffer.from(await e.arrayBuffer());s.cork(),s.write(`${i}content-length: ${o}\r +`,"latin1"):(Le(o===null,"no body must not have content length"),s.write(`${a}\r +`,"latin1")),n.onRequestSent(),r[Vu]()}catch(l){t(l)}}i(P7,"writeBuffer");async function yqe(t,e,r,n,s,o,a,c){Le(o===e.size,"blob body must have content length");try{if(o!=null&&o!==e.size)throw new Up;let l=Buffer.from(await e.arrayBuffer());s.cork(),s.write(`${a}content-length: ${o}\r \r -`,"latin1"),s.write(c),s.uncork(),n.onBodySent(c),n.onRequestSent(),!a&&n.reset!==!1&&(s[Os]=!0),r[zu]()}catch(c){t(c)}}async function P7(t,e,r,n,s,o,i,a){ke(o!==0||r[qn]===0,"iterator body cannot be pipelined");let c=null;function l(){if(c){let p=c;c=null,p()}}let u=()=>new Promise((p,m)=>{ke(c===null),s[ri]?m(s[ri]):c=p});s.on("close",l).on("drain",l);let d=new ab({abort:t,socket:s,request:n,contentLength:o,client:r,expectsPayload:a,header:i});try{for await(let p of e){if(s[ri])throw s[ri];d.write(p)||await u()}d.end()}catch(p){d.destroy(p)}finally{s.off("close",l).off("drain",l)}}var ab=class{constructor({abort:e,socket:r,request:n,contentLength:s,client:o,expectsPayload:i,header:a}){this.socket=r,this.request=n,this.contentLength=s,this.client=o,this.bytesWritten=0,this.expectsPayload=i,this.header=a,this.abort=e,r[Vu]=!0}write(e){let{socket:r,request:n,contentLength:s,client:o,bytesWritten:i,expectsPayload:a,header:c}=this;if(r[ri])throw r[ri];if(r.destroyed)return!1;let l=Buffer.byteLength(e);if(!l)return!0;if(s!==null&&i+l>s){if(o[yM])throw new Fp;process.emitWarning(new Fp)}r.cork(),i===0&&(!a&&n.reset!==!1&&(r[Os]=!0),s===null?r.write(`${c}transfer-encoding: chunked\r -`,"latin1"):r.write(`${c}content-length: ${s}\r +`,"latin1"),s.write(l),s.uncork(),n.onBodySent(l),n.onRequestSent(),!c&&n.reset!==!1&&(s[Ms]=!0),r[Vu]()}catch(l){t(l)}}i(yqe,"writeBlob");async function v7(t,e,r,n,s,o,a,c){Le(o!==0||r[$n]===0,"iterator body cannot be pipelined");let l=null;function u(){if(l){let m=l;l=null,m()}}i(u,"onDrain");let d=i(()=>new Promise((m,f)=>{Le(l===null),s[ni]?f(s[ni]):l=m}),"waitForDrain");s.on("close",u).on("drain",u);let p=new cb({abort:t,socket:s,request:n,contentLength:o,client:r,expectsPayload:c,header:a});try{for await(let m of e){if(s[ni])throw s[ni];p.write(m)||await d()}p.end()}catch(m){p.destroy(m)}finally{s.off("close",u).off("drain",u)}}i(v7,"writeIterable");var cb=class{static{i(this,"AsyncWriter")}constructor({abort:e,socket:r,request:n,contentLength:s,client:o,expectsPayload:a,header:c}){this.socket=r,this.request=n,this.contentLength=s,this.client=o,this.bytesWritten=0,this.expectsPayload=a,this.header=c,this.abort=e,r[Yu]=!0}write(e){let{socket:r,request:n,contentLength:s,client:o,bytesWritten:a,expectsPayload:c,header:l}=this;if(r[ni])throw r[ni];if(r.destroyed)return!1;let u=Buffer.byteLength(e);if(!u)return!0;if(s!==null&&a+u>s){if(o[EM])throw new Up;process.emitWarning(new Up)}r.cork(),a===0&&(!c&&n.reset!==!1&&(r[Ms]=!0),s===null?r.write(`${l}transfer-encoding: chunked\r +`,"latin1"):r.write(`${l}content-length: ${s}\r \r `,"latin1")),s===null&&r.write(`\r -${l.toString(16)}\r -`,"latin1"),this.bytesWritten+=l;let u=r.write(e);return r.uncork(),n.onBodySent(e),u||r[Er].timeout&&r[Er].timeoutType===IA&&r[Er].timeout.refresh&&r[Er].timeout.refresh(),u}end(){let{socket:e,contentLength:r,client:n,bytesWritten:s,expectsPayload:o,header:i,request:a}=this;if(a.onRequestSent(),e[Vu]=!1,e[ri])throw e[ri];if(!e.destroyed){if(s===0?o?e.write(`${i}content-length: 0\r +${u.toString(16)}\r +`,"latin1"),this.bytesWritten+=u;let d=r.write(e);return r.uncork(),n.onBodySent(e),d||r[Cr].timeout&&r[Cr].timeoutType===xA&&r[Cr].timeout.refresh&&r[Cr].timeout.refresh(),d}end(){let{socket:e,contentLength:r,client:n,bytesWritten:s,expectsPayload:o,header:a,request:c}=this;if(c.onRequestSent(),e[Yu]=!1,e[ni])throw e[ni];if(!e.destroyed){if(s===0?o?e.write(`${a}content-length: 0\r \r -`,"latin1"):e.write(`${i}\r +`,"latin1"):e.write(`${a}\r `,"latin1"):r===null&&e.write(`\r 0\r \r -`,"latin1"),r!==null&&s!==r){if(n[yM])throw new Fp;process.emitWarning(new Fp)}e[Er].timeout&&e[Er].timeoutType===IA&&e[Er].timeout.refresh&&e[Er].timeout.refresh(),n[zu]()}}destroy(e){let{socket:r,client:n,abort:s}=this;r[Vu]=!1,e&&(ke(n[qn]<=1,"pipeline should only contain this request"),s(e))}};D7.exports=dqe});var G7=w((VFt,$7)=>{"use strict";var ni=require("node:assert"),{pipeline:gqe}=require("node:stream"),mt=lt(),{RequestContentLengthMismatchError:xM,RequestAbortedError:L7,SocketError:aE,InformationalError:wM}=wt(),{kUrl:cb,kReset:ub,kClient:xA,kRunning:db,kPending:yqe,kQueue:Yu,kPendingIdx:bM,kRunningIdx:Ji,kError:Xi,kSocket:fn,kStrictContentLength:Eqe,kOnError:SM,kMaxConcurrentStreams:q7,kHTTP2Session:Ki,kResume:Wu,kSize:Cqe,kHTTPContext:Iqe}=Xt(),Dl=Symbol("open streams"),O7,M7=!1,lb;try{lb=require("node:http2")}catch{lb={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:xqe,HTTP2_HEADER_METHOD:wqe,HTTP2_HEADER_PATH:bqe,HTTP2_HEADER_SCHEME:Sqe,HTTP2_HEADER_CONTENT_LENGTH:Bqe,HTTP2_HEADER_EXPECT:Rqe,HTTP2_HEADER_STATUS:Nqe}}=lb;function Tqe(t){let e=[];for(let[r,n]of Object.entries(t))if(Array.isArray(n))for(let s of n)e.push(Buffer.from(r),Buffer.from(s));else e.push(Buffer.from(r),Buffer.from(n));return e}async function Pqe(t,e){t[fn]=e,M7||(M7=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=lb.connect(t[cb],{createConnection:()=>e,peerMaxConcurrentStreams:t[q7]});r[Dl]=0,r[xA]=t,r[fn]=e,mt.addListener(r,"error",_qe),mt.addListener(r,"frameError",Qqe),mt.addListener(r,"end",Dqe),mt.addListener(r,"goaway",kqe),mt.addListener(r,"close",function(){let{[xA]:s}=this,{[fn]:o}=s,i=this[fn][Xi]||this[Xi]||new aE("closed",mt.getSocketInfo(o));if(s[Ki]=null,s.destroyed){ni(s[yqe]===0);let a=s[Yu].splice(s[Ji]);for(let c=0;c{n=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return Oqe(t,...s)},resume(){vqe(t)},destroy(s,o){n?queueMicrotask(o):e.destroy(s).on("close",o)},get destroyed(){return e.destroyed},busy(){return!1}}}function vqe(t){let e=t[fn];e?.destroyed===!1&&(t[Cqe]===0&&t[q7]===0?(e.unref(),t[Ki].unref()):(e.ref(),t[Ki].ref()))}function _qe(t){ni(t.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[fn][Xi]=t,this[xA][SM](t)}function Qqe(t,e,r){if(r===0){let n=new wM(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[fn][Xi]=n,this[xA][SM](n)}}function Dqe(){let t=new aE("other side closed",mt.getSocketInfo(this[fn]));this.destroy(t),mt.destroy(this[fn],t)}function kqe(t){let e=this[Xi]||new aE(`HTTP/2: "GOAWAY" frame received with code ${t}`,mt.getSocketInfo(this)),r=this[xA];if(r[fn]=null,r[Iqe]=null,this[Ki]!=null&&(this[Ki].destroy(e),this[Ki]=null),mt.destroy(this[fn],e),r[Ji]{e.aborted||e.completed||(_=_||new L7,mt.errorRequest(t,e,_),p!=null&&mt.destroy(p,_),mt.destroy(u,_),t[Yu][t[Ji]++]=null,t[Wu]())};try{e.onConnect(y)}catch(_){mt.errorRequest(t,e,_)}if(e.aborted)return!1;if(n==="CONNECT")return r.ref(),p=r.request(d,{endStream:!1,signal:c}),p.id&&!p.pending?(e.onUpgrade(null,null,p),++r[Dl],t[Yu][t[Ji]++]=null):p.once("ready",()=>{e.onUpgrade(null,null,p),++r[Dl],t[Yu][t[Ji]++]=null}),p.once("close",()=>{r[Dl]-=1,r[Dl]===0&&r.unref()}),!0;d[bqe]=s,d[Sqe]="https";let I=n==="PUT"||n==="POST"||n==="PATCH";u&&typeof u.read=="function"&&u.read(0);let x=mt.bodyLength(u);if(mt.isFormDataLike(u)){O7??=yA().extractBody;let[_,U]=O7(u);d["content-type"]=U,u=_.stream,x=_.length}if(x==null&&(x=e.contentLength),(x===0||!I)&&(x=null),Lqe(n)&&x>0&&e.contentLength!=null&&e.contentLength!==x){if(t[Eqe])return mt.errorRequest(t,e,new xM),!1;process.emitWarning(new xM)}x!=null&&(ni(u,"no body must not have content length"),d[Bqe]=`${x}`),r.ref();let b=n==="GET"||n==="HEAD"||u===null;return a?(d[Rqe]="100-continue",p=r.request(d,{endStream:b,signal:c}),p.once("continue",T)):(p=r.request(d,{endStream:b,signal:c}),T()),++r[Dl],p.once("response",_=>{let{[Nqe]:U,...O}=_;if(e.onResponseStarted(),e.aborted){let z=new L7;mt.errorRequest(t,e,z),mt.destroy(p,z);return}e.onHeaders(Number(U),Tqe(O),p.resume.bind(p),"")===!1&&p.pause(),p.on("data",z=>{e.onData(z)===!1&&p.pause()})}),p.once("end",()=>{(p.state?.state==null||p.state.state<6)&&e.onComplete([]),r[Dl]===0&&r.unref(),y(new wM("HTTP/2: stream half-closed (remote)")),t[Yu][t[Ji]++]=null,t[bM]=t[Ji],t[Wu]()}),p.once("close",()=>{r[Dl]-=1,r[Dl]===0&&r.unref()}),p.once("error",function(_){y(_)}),p.once("frameError",(_,U)=>{y(new wM(`HTTP/2: "frameError" received - type ${_}, code ${U}`))}),!0;function T(){!u||x===0?F7(y,p,null,t,e,t[fn],x,I):mt.isBuffer(u)?F7(y,p,u,t,e,t[fn],x,I):mt.isBlobLike(u)?typeof u.stream=="function"?U7(y,p,u.stream(),t,e,t[fn],x,I):Fqe(y,p,u,t,e,t[fn],x,I):mt.isStream(u)?Mqe(y,t[fn],I,p,u,t,e,x):mt.isIterable(u)?U7(y,p,u,t,e,t[fn],x,I):ni(!1)}}function F7(t,e,r,n,s,o,i,a){try{r!=null&&mt.isBuffer(r)&&(ni(i===r.byteLength,"buffer body must have content length"),e.cork(),e.write(r),e.uncork(),e.end(),s.onBodySent(r)),a||(o[ub]=!0),s.onRequestSent(),n[Wu]()}catch(c){t(c)}}function Mqe(t,e,r,n,s,o,i,a){ni(a!==0||o[db]===0,"stream body cannot be pipelined");let c=gqe(s,n,u=>{u?(mt.destroy(c,u),t(u)):(mt.removeAllListeners(c),i.onRequestSent(),r||(e[ub]=!0),o[Wu]())});mt.addListener(c,"data",l);function l(u){i.onBodySent(u)}}async function Fqe(t,e,r,n,s,o,i,a){ni(i===r.size,"blob body must have content length");try{if(i!=null&&i!==r.size)throw new xM;let c=Buffer.from(await r.arrayBuffer());e.cork(),e.write(c),e.uncork(),e.end(),s.onBodySent(c),s.onRequestSent(),a||(o[ub]=!0),n[Wu]()}catch(c){t(c)}}async function U7(t,e,r,n,s,o,i,a){ni(i!==0||n[db]===0,"iterator body cannot be pipelined");let c=null;function l(){if(c){let d=c;c=null,d()}}let u=()=>new Promise((d,p)=>{ni(c===null),o[Xi]?p(o[Xi]):c=d});e.on("close",l).on("drain",l);try{for await(let d of r){if(o[Xi])throw o[Xi];let p=e.write(d);s.onBodySent(d),p||await u()}e.end(),s.onRequestSent(),a||(o[ub]=!0),n[Wu]()}catch(d){t(d)}finally{e.off("close",l).off("drain",l)}}$7.exports=Pqe});var mb=w((YFt,V7)=>{"use strict";var za=lt(),{kBodyUsed:cE}=Xt(),RM=require("node:assert"),{InvalidArgumentError:Uqe}=wt(),qqe=require("node:events"),$qe=[300,301,302,303,307,308],H7=Symbol("body"),pb=class{constructor(e){this[H7]=e,this[cE]=!1}async*[Symbol.asyncIterator](){RM(!this[cE],"disturbed"),this[cE]=!0,yield*this[H7]}},BM=class{constructor(e,r,n,s){if(r!=null&&(!Number.isInteger(r)||r<0))throw new Uqe("maxRedirections must be a positive number");za.validateHandler(s,n.method,n.upgrade),this.dispatch=e,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=s,this.history=[],this.redirectionLimitReached=!1,za.isStream(this.opts.body)?(za.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){RM(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[cE]=!1,qqe.prototype.on.call(this.opts.body,"data",function(){this[cE]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new pb(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&za.isIterable(this.opts.body)&&(this.opts.body=new pb(this.opts.body))}onConnect(e){this.abort=e,this.handler.onConnect(e,{history:this.history})}onUpgrade(e,r,n){this.handler.onUpgrade(e,r,n)}onError(e){this.handler.onError(e)}onHeaders(e,r,n,s){if(this.location=this.history.length>=this.maxRedirections||za.isDisturbed(this.opts.body)?null:Gqe(e,r),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,r,n,s);let{origin:o,pathname:i,search:a}=za.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),c=a?`${i}${a}`:i;this.opts.headers=Hqe(this.opts.headers,e===303,this.opts.origin!==o),this.opts.path=c,this.opts.origin=o,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 Gqe(t,e){if($qe.indexOf(t)===-1)return null;for(let r=0;r{"use strict";var zqe=mb();function Vqe({maxRedirections:t}){return e=>function(n,s){let{maxRedirections:o=t}=n;if(!o)return e(n,s);let i=new zqe(e,o,n,s);return n={...n,maxRedirections:0},e(n,i)}}Y7.exports=Vqe});var SA=w((jFt,nZ)=>{"use strict";var kl=require("node:assert"),Z7=require("node:net"),Yqe=require("node:http"),Up=lt(),{channels:wA}=oA(),Wqe=cX(),jqe=lA(),{InvalidArgumentError:Pr,InformationalError:Jqe,ClientDestroyedError:Kqe}=wt(),Xqe=jy(),{kUrl:Va,kServerName:ju,kClient:Zqe,kBusy:NM,kConnect:e$e,kResuming:qp,kRunning:mE,kPending:fE,kSize:pE,kQueue:Zi,kConnected:t$e,kConnecting:bA,kNeedDrain:Ku,kKeepAliveDefaultTimeout:W7,kHostHeader:r$e,kPendingIdx:ea,kRunningIdx:Ll,kError:n$e,kPipelining:Ab,kKeepAliveTimeoutValue:s$e,kMaxHeadersSize:o$e,kKeepAliveMaxTimeout:i$e,kKeepAliveTimeoutThreshold:a$e,kHeadersTimeout:c$e,kBodyTimeout:l$e,kStrictContentLength:u$e,kConnector:lE,kMaxRedirections:d$e,kMaxRequests:TM,kCounter:p$e,kClose:m$e,kDestroy:f$e,kDispatch:A$e,kInterceptors:j7,kLocalAddress:uE,kMaxResponseSize:h$e,kOnError:g$e,kHTTPContext:vr,kMaxConcurrentStreams:y$e,kResume:dE}=Xt(),E$e=k7(),C$e=G7(),J7=!1,Ju=Symbol("kClosedResolve"),K7=()=>{};function eZ(t){return t[Ab]??t[vr]?.defaultPipelining??1}var PM=class extends jqe{constructor(e,{interceptors:r,maxHeaderSize:n,headersTimeout:s,socketTimeout:o,requestTimeout:i,connectTimeout:a,bodyTimeout:c,idleTimeout:l,keepAlive:u,keepAliveTimeout:d,maxKeepAliveTimeout:p,keepAliveMaxTimeout:m,keepAliveTimeoutThreshold:h,socketPath:y,pipelining:I,tls:x,strictContentLength:b,maxCachedSessions:T,maxRedirections:_,connect:U,maxRequestsPerClient:O,localAddress:z,maxResponseSize:de,autoSelectFamily:De,autoSelectFamilyAttemptTimeout:Be,maxConcurrentStreams:ne,allowH2:ge}={}){if(super(),u!==void 0)throw new Pr("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new Pr("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(i!==void 0)throw new Pr("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(l!==void 0)throw new Pr("unsupported idleTimeout, use keepAliveTimeout instead");if(p!==void 0)throw new Pr("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new Pr("invalid maxHeaderSize");if(y!=null&&typeof y!="string")throw new Pr("invalid socketPath");if(a!=null&&(!Number.isFinite(a)||a<0))throw new Pr("invalid connectTimeout");if(d!=null&&(!Number.isFinite(d)||d<=0))throw new Pr("invalid keepAliveTimeout");if(m!=null&&(!Number.isFinite(m)||m<=0))throw new Pr("invalid keepAliveMaxTimeout");if(h!=null&&!Number.isFinite(h))throw new Pr("invalid keepAliveTimeoutThreshold");if(s!=null&&(!Number.isInteger(s)||s<0))throw new Pr("headersTimeout must be a positive integer or zero");if(c!=null&&(!Number.isInteger(c)||c<0))throw new Pr("bodyTimeout must be a positive integer or zero");if(U!=null&&typeof U!="function"&&typeof U!="object")throw new Pr("connect must be a function or an object");if(_!=null&&(!Number.isInteger(_)||_<0))throw new Pr("maxRedirections must be a positive number");if(O!=null&&(!Number.isInteger(O)||O<0))throw new Pr("maxRequestsPerClient must be a positive number");if(z!=null&&(typeof z!="string"||Z7.isIP(z)===0))throw new Pr("localAddress must be valid string IP address");if(de!=null&&(!Number.isInteger(de)||de<-1))throw new Pr("maxResponseSize must be a positive number");if(Be!=null&&(!Number.isInteger(Be)||Be<-1))throw new Pr("autoSelectFamilyAttemptTimeout must be a positive number");if(ge!=null&&typeof ge!="boolean")throw new Pr("allowH2 must be a valid boolean value");if(ne!=null&&(typeof ne!="number"||ne<1))throw new Pr("maxConcurrentStreams must be a positive integer, greater than 0");typeof U!="function"&&(U=Xqe({...x,maxCachedSessions:T,allowH2:ge,socketPath:y,timeout:a,...De?{autoSelectFamily:De,autoSelectFamilyAttemptTimeout:Be}:void 0,...U})),r?.Client&&Array.isArray(r.Client)?(this[j7]=r.Client,J7||(J7=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[j7]=[I$e({maxRedirections:_})],this[Va]=Up.parseOrigin(e),this[lE]=U,this[Ab]=I??1,this[o$e]=n||Yqe.maxHeaderSize,this[W7]=d??4e3,this[i$e]=m??6e5,this[a$e]=h??2e3,this[s$e]=this[W7],this[ju]=null,this[uE]=z??null,this[qp]=0,this[Ku]=0,this[r$e]=`host: ${this[Va].hostname}${this[Va].port?`:${this[Va].port}`:""}\r -`,this[l$e]=c??3e5,this[c$e]=s??3e5,this[u$e]=b??!0,this[d$e]=_,this[TM]=O,this[Ju]=null,this[h$e]=de>-1?de:-1,this[y$e]=ne??100,this[vr]=null,this[Zi]=[],this[Ll]=0,this[ea]=0,this[dE]=G=>vM(this,G),this[g$e]=G=>tZ(this,G)}get pipelining(){return this[Ab]}set pipelining(e){this[Ab]=e,this[dE](!0)}get[fE](){return this[Zi].length-this[ea]}get[mE](){return this[ea]-this[Ll]}get[pE](){return this[Zi].length-this[Ll]}get[t$e](){return!!this[vr]&&!this[bA]&&!this[vr].destroyed}get[NM](){return!!(this[vr]?.busy(null)||this[pE]>=(eZ(this)||1)||this[fE]>0)}[e$e](e){rZ(this),this.once("connect",e)}[A$e](e,r){let n=e.origin||this[Va].origin,s=new Wqe(n,e,r);return this[Zi].push(s),this[qp]||(Up.bodyLength(s.body)==null&&Up.isIterable(s.body)?(this[qp]=1,queueMicrotask(()=>vM(this))):this[dE](!0)),this[qp]&&this[Ku]!==2&&this[NM]&&(this[Ku]=2),this[Ku]<2}async[m$e](){return new Promise(e=>{this[pE]?this[Ju]=e:e(null)})}async[f$e](e){return new Promise(r=>{let n=this[Zi].splice(this[ea]);for(let o=0;o{this[Ju]&&(this[Ju](),this[Ju]=null),r(null)};this[vr]?(this[vr].destroy(e,s),this[vr]=null):queueMicrotask(s),this[dE]()})}},I$e=fb();function tZ(t,e){if(t[mE]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){kl(t[ea]===t[Ll]);let r=t[Zi].splice(t[Ll]);for(let n=0;n{t[lE]({host:e,hostname:r,protocol:n,port:s,servername:t[ju],localAddress:t[uE]},(c,l)=>{c?a(c):i(l)})});if(t.destroyed){Up.destroy(o.on("error",K7),new Kqe);return}kl(o);try{t[vr]=o.alpnProtocol==="h2"?await C$e(t,o):await E$e(t,o)}catch(i){throw o.destroy().on("error",K7),i}t[bA]=!1,o[p$e]=0,o[TM]=t[TM],o[Zqe]=t,o[n$e]=null,wA.connected.hasSubscribers&&wA.connected.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[vr]?.version,servername:t[ju],localAddress:t[uE]},connector:t[lE],socket:o}),t.emit("connect",t[Va],[t])}catch(o){if(t.destroyed)return;if(t[bA]=!1,wA.connectError.hasSubscribers&&wA.connectError.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[vr]?.version,servername:t[ju],localAddress:t[uE]},connector:t[lE],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(kl(t[mE]===0);t[fE]>0&&t[Zi][t[ea]].servername===t[ju];){let i=t[Zi][t[ea]++];Up.errorRequest(t,i,o)}else tZ(t,o);t.emit("connectionError",t[Va],[t],o)}t[dE]()}function X7(t){t[Ku]=0,t.emit("drain",t[Va],[t])}function vM(t,e){t[qp]!==2&&(t[qp]=2,x$e(t,e),t[qp]=0,t[Ll]>256&&(t[Zi].splice(0,t[Ll]),t[ea]-=t[Ll],t[Ll]=0))}function x$e(t,e){for(;;){if(t.destroyed){kl(t[fE]===0);return}if(t[Ju]&&!t[pE]){t[Ju](),t[Ju]=null;return}if(t[vr]&&t[vr].resume(),t[NM])t[Ku]=2;else if(t[Ku]===2){e?(t[Ku]=1,queueMicrotask(()=>X7(t))):X7(t);continue}if(t[fE]===0||t[mE]>=(eZ(t)||1))return;let r=t[Zi][t[ea]];if(t[Va].protocol==="https:"&&t[ju]!==r.servername){if(t[mE]>0)return;t[ju]=r.servername,t[vr]?.destroy(new Jqe("servername changed"),()=>{t[vr]=null,vM(t)})}if(t[bA])return;if(!t[vr]){rZ(t);return}if(t[vr].destroyed||t[vr].busy(r))return;!r.aborted&&t[vr].write(r)?t[ea]++:t[Zi].splice(t[ea],1)}}nZ.exports=PM});var _M=w((KFt,sZ)=>{"use strict";var hb=class{constructor(){this.bottom=0,this.top=0,this.list=new Array(2048),this.next=null}isEmpty(){return this.top===this.bottom}isFull(){return(this.top+1&2047)===this.bottom}push(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)}};sZ.exports=class{constructor(){this.head=this.tail=new hb}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new hb),this.head.push(e)}shift(){let e=this.tail,r=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),r}}});var iZ=w((XFt,oZ)=>{var{kFree:w$e,kConnected:b$e,kPending:S$e,kQueued:B$e,kRunning:R$e,kSize:N$e}=Xt(),$p=Symbol("pool"),QM=class{constructor(e){this[$p]=e}get connected(){return this[$p][b$e]}get free(){return this[$p][w$e]}get pending(){return this[$p][S$e]}get queued(){return this[$p][B$e]}get running(){return this[$p][R$e]}get size(){return this[$p][N$e]}};oZ.exports=QM});var FM=w((ZFt,hZ)=>{"use strict";var T$e=lA(),P$e=_M(),{kConnected:DM,kSize:aZ,kRunning:cZ,kPending:lZ,kQueued:AE,kBusy:v$e,kFree:_$e,kUrl:Q$e,kClose:D$e,kDestroy:k$e,kDispatch:L$e}=Xt(),O$e=iZ(),Ms=Symbol("clients"),ds=Symbol("needDrain"),hE=Symbol("queue"),kM=Symbol("closed resolve"),LM=Symbol("onDrain"),uZ=Symbol("onConnect"),dZ=Symbol("onDisconnect"),pZ=Symbol("onConnectionError"),OM=Symbol("get dispatcher"),fZ=Symbol("add client"),AZ=Symbol("remove client"),mZ=Symbol("stats"),MM=class extends T$e{constructor(){super(),this[hE]=new P$e,this[Ms]=[],this[AE]=0;let e=this;this[LM]=function(n,s){let o=e[hE],i=!1;for(;!i;){let a=o.shift();if(!a)break;e[AE]--,i=!this.dispatch(a.opts,a.handler)}this[ds]=i,!this[ds]&&e[ds]&&(e[ds]=!1,e.emit("drain",n,[e,...s])),e[kM]&&o.isEmpty()&&Promise.all(e[Ms].map(a=>a.close())).then(e[kM])},this[uZ]=(r,n)=>{e.emit("connect",r,[e,...n])},this[dZ]=(r,n,s)=>{e.emit("disconnect",r,[e,...n],s)},this[pZ]=(r,n,s)=>{e.emit("connectionError",r,[e,...n],s)},this[mZ]=new O$e(this)}get[v$e](){return this[ds]}get[DM](){return this[Ms].filter(e=>e[DM]).length}get[_$e](){return this[Ms].filter(e=>e[DM]&&!e[ds]).length}get[lZ](){let e=this[AE];for(let{[lZ]:r}of this[Ms])e+=r;return e}get[cZ](){let e=0;for(let{[cZ]:r}of this[Ms])e+=r;return e}get[aZ](){let e=this[AE];for(let{[aZ]:r}of this[Ms])e+=r;return e}get stats(){return this[mZ]}async[D$e](){this[hE].isEmpty()?await Promise.all(this[Ms].map(e=>e.close())):await new Promise(e=>{this[kM]=e})}async[k$e](e){for(;;){let r=this[hE].shift();if(!r)break;r.handler.onError(e)}await Promise.all(this[Ms].map(r=>r.destroy(e)))}[L$e](e,r){let n=this[OM]();return n?n.dispatch(e,r)||(n[ds]=!0,this[ds]=!this[OM]()):(this[ds]=!0,this[hE].push({opts:e,handler:r}),this[AE]++),!this[ds]}[fZ](e){return e.on("drain",this[LM]).on("connect",this[uZ]).on("disconnect",this[dZ]).on("connectionError",this[pZ]),this[Ms].push(e),this[ds]&&queueMicrotask(()=>{this[ds]&&this[LM](e[Q$e],[this,e])}),this}[AZ](e){e.close(()=>{let r=this[Ms].indexOf(e);r!==-1&&this[Ms].splice(r,1)}),this[ds]=this[Ms].some(r=>!r[ds]&&r.closed!==!0&&r.destroyed!==!0)}};hZ.exports={PoolBase:MM,kClients:Ms,kNeedDrain:ds,kAddClient:fZ,kRemoveClient:AZ,kGetDispatcher:OM}});var BA=w((e1t,CZ)=>{"use strict";var{PoolBase:M$e,kClients:gb,kNeedDrain:F$e,kAddClient:U$e,kGetDispatcher:q$e}=FM(),$$e=SA(),{InvalidArgumentError:UM}=wt(),gZ=lt(),{kUrl:yZ,kInterceptors:G$e}=Xt(),H$e=jy(),qM=Symbol("options"),$M=Symbol("connections"),EZ=Symbol("factory");function z$e(t,e){return new $$e(t,e)}var GM=class extends M$e{constructor(e,{connections:r,factory:n=z$e,connect:s,connectTimeout:o,tls:i,maxCachedSessions:a,socketPath:c,autoSelectFamily:l,autoSelectFamilyAttemptTimeout:u,allowH2:d,...p}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new UM("invalid connections");if(typeof n!="function")throw new UM("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new UM("connect must be a function or an object");typeof s!="function"&&(s=H$e({...i,maxCachedSessions:a,allowH2:d,socketPath:c,timeout:o,...l?{autoSelectFamily:l,autoSelectFamilyAttemptTimeout:u}:void 0,...s})),this[G$e]=p.interceptors?.Pool&&Array.isArray(p.interceptors.Pool)?p.interceptors.Pool:[],this[$M]=r||null,this[yZ]=gZ.parseOrigin(e),this[qM]={...gZ.deepClone(p),connect:s,allowH2:d},this[qM].interceptors=p.interceptors?{...p.interceptors}:void 0,this[EZ]=n,this.on("connectionError",(m,h,y)=>{for(let I of h){let x=this[gb].indexOf(I);x!==-1&&this[gb].splice(x,1)}})}[q$e](){for(let e of this[gb])if(!e[F$e])return e;if(!this[$M]||this[gb].length{"use strict";var{BalancedPoolMissingUpstreamError:V$e,InvalidArgumentError:Y$e}=wt(),{PoolBase:W$e,kClients:$n,kNeedDrain:gE,kAddClient:j$e,kRemoveClient:J$e,kGetDispatcher:K$e}=FM(),X$e=BA(),{kUrl:HM,kInterceptors:Z$e}=Xt(),{parseOrigin:IZ}=lt(),xZ=Symbol("factory"),yb=Symbol("options"),wZ=Symbol("kGreatestCommonDivisor"),Gp=Symbol("kCurrentWeight"),Hp=Symbol("kIndex"),si=Symbol("kWeight"),Eb=Symbol("kMaxWeightPerServer"),Cb=Symbol("kErrorPenalty");function eGe(t,e){if(t===0)return e;for(;e!==0;){let r=e;e=t%e,t=r}return t}function tGe(t,e){return new X$e(t,e)}var zM=class extends W$e{constructor(e=[],{factory:r=tGe,...n}={}){if(super(),this[yb]=n,this[Hp]=-1,this[Gp]=0,this[Eb]=this[yb].maxWeightPerServer||100,this[Cb]=this[yb].errorPenalty||15,Array.isArray(e)||(e=[e]),typeof r!="function")throw new Y$e("factory must be a function.");this[Z$e]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[xZ]=r;for(let s of e)this.addUpstream(s);this._updateBalancedPoolStats()}addUpstream(e){let r=IZ(e).origin;if(this[$n].find(s=>s[HM].origin===r&&s.closed!==!0&&s.destroyed!==!0))return this;let n=this[xZ](r,Object.assign({},this[yb]));this[j$e](n),n.on("connect",()=>{n[si]=Math.min(this[Eb],n[si]+this[Cb])}),n.on("connectionError",()=>{n[si]=Math.max(1,n[si]-this[Cb]),this._updateBalancedPoolStats()}),n.on("disconnect",(...s)=>{let o=s[2];o&&o.code==="UND_ERR_SOCKET"&&(n[si]=Math.max(1,n[si]-this[Cb]),this._updateBalancedPoolStats())});for(let s of this[$n])s[si]=this[Eb];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let r=0;rs[HM].origin===r&&s.closed!==!0&&s.destroyed!==!0);return n&&this[J$e](n),this}get upstreams(){return this[$n].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[HM].origin)}[K$e](){if(this[$n].length===0)throw new V$e;if(!this[$n].find(o=>!o[gE]&&o.closed!==!0&&o.destroyed!==!0)||this[$n].map(o=>o[gE]).reduce((o,i)=>o&&i,!0))return;let n=0,s=this[$n].findIndex(o=>!o[gE]);for(;n++this[$n][s][si]&&!o[gE]&&(s=this[Hp]),this[Hp]===0&&(this[Gp]=this[Gp]-this[wZ],this[Gp]<=0&&(this[Gp]=this[Eb])),o[si]>=this[Gp]&&!o[gE])return o}return this[Gp]=this[$n][s][si],this[Hp]=s,this[$n][s]}};bZ.exports=zM});var RA=w((r1t,_Z)=>{"use strict";var{InvalidArgumentError:Ib}=wt(),{kClients:Xu,kRunning:BZ,kClose:rGe,kDestroy:nGe,kDispatch:sGe,kInterceptors:oGe}=Xt(),iGe=lA(),aGe=BA(),cGe=SA(),lGe=lt(),uGe=fb(),RZ=Symbol("onConnect"),NZ=Symbol("onDisconnect"),TZ=Symbol("onConnectionError"),dGe=Symbol("maxRedirections"),PZ=Symbol("onDrain"),vZ=Symbol("factory"),VM=Symbol("options");function pGe(t,e){return e&&e.connections===1?new cGe(t,e):new aGe(t,e)}var YM=class extends iGe{constructor({factory:e=pGe,maxRedirections:r=0,connect:n,...s}={}){if(super(),typeof e!="function")throw new Ib("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new Ib("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new Ib("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[oGe]=s.interceptors?.Agent&&Array.isArray(s.interceptors.Agent)?s.interceptors.Agent:[uGe({maxRedirections:r})],this[VM]={...lGe.deepClone(s),connect:n},this[VM].interceptors=s.interceptors?{...s.interceptors}:void 0,this[dGe]=r,this[vZ]=e,this[Xu]=new Map,this[PZ]=(o,i)=>{this.emit("drain",o,[this,...i])},this[RZ]=(o,i)=>{this.emit("connect",o,[this,...i])},this[NZ]=(o,i,a)=>{this.emit("disconnect",o,[this,...i],a)},this[TZ]=(o,i,a)=>{this.emit("connectionError",o,[this,...i],a)}}get[BZ](){let e=0;for(let r of this[Xu].values())e+=r[BZ];return e}[sGe](e,r){let n;if(e.origin&&(typeof e.origin=="string"||e.origin instanceof URL))n=String(e.origin);else throw new Ib("opts.origin must be a non-empty string or URL.");let s=this[Xu].get(n);return s||(s=this[vZ](e.origin,this[VM]).on("drain",this[PZ]).on("connect",this[RZ]).on("disconnect",this[NZ]).on("connectionError",this[TZ]),this[Xu].set(n,s)),s.dispatch(e,r)}async[rGe](){let e=[];for(let r of this[Xu].values())e.push(r.close());this[Xu].clear(),await Promise.all(e)}async[nGe](e){let r=[];for(let n of this[Xu].values())r.push(n.destroy(e));this[Xu].clear(),await Promise.all(r)}};_Z.exports=YM});var XM=w((n1t,GZ)=>{"use strict";var{kProxy:WM,kClose:MZ,kDestroy:FZ,kDispatch:QZ,kInterceptors:mGe}=Xt(),{URL:zp}=require("node:url"),fGe=RA(),UZ=BA(),qZ=lA(),{InvalidArgumentError:NA,RequestAbortedError:AGe,SecureProxyConnectionError:hGe}=wt(),DZ=jy(),$Z=SA(),xb=Symbol("proxy agent"),wb=Symbol("proxy client"),Zu=Symbol("proxy headers"),jM=Symbol("request tls settings"),kZ=Symbol("proxy tls settings"),LZ=Symbol("connect endpoint function"),OZ=Symbol("tunnel proxy");function gGe(t){return t==="https:"?443:80}function yGe(t,e){return new UZ(t,e)}var EGe=()=>{};function CGe(t,e){return e.connections===1?new $Z(t,e):new UZ(t,e)}var JM=class extends qZ{#e;constructor(e,{headers:r={},connect:n,factory:s}){if(super(),!e)throw new NA("Proxy URL is mandatory");this[Zu]=r,s?this.#e=s(e,{connect:n}):this.#e=new $Z(e,{connect:n})}[QZ](e,r){let n=r.onHeaders;r.onHeaders=function(a,c,l){if(a===407){typeof r.onError=="function"&&r.onError(new NA("Proxy Authentication Required (407)"));return}n&&n.call(this,a,c,l)};let{origin:s,path:o="/",headers:i={}}=e;if(e.path=s+o,!("host"in i)&&!("Host"in i)){let{host:a}=new zp(s);i.host=a}return e.headers={...this[Zu],...i},this.#e[QZ](e,r)}async[MZ](){return this.#e.close()}async[FZ](e){return this.#e.destroy(e)}},KM=class extends qZ{constructor(e){if(super(),!e||typeof e=="object"&&!(e instanceof zp)&&!e.uri)throw new NA("Proxy uri is mandatory");let{clientFactory:r=yGe}=e;if(typeof r!="function")throw new NA("Proxy opts.clientFactory must be a function.");let{proxyTunnel:n=!0}=e,s=this.#e(e),{href:o,origin:i,port:a,protocol:c,username:l,password:u,hostname:d}=s;if(this[WM]={uri:o,protocol:c},this[mGe]=e.interceptors?.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[],this[jM]=e.requestTls,this[kZ]=e.proxyTls,this[Zu]=e.headers||{},this[OZ]=n,e.auth&&e.token)throw new NA("opts.auth cannot be used in combination with opts.token");e.auth?this[Zu]["proxy-authorization"]=`Basic ${e.auth}`:e.token?this[Zu]["proxy-authorization"]=e.token:l&&u&&(this[Zu]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(l)}:${decodeURIComponent(u)}`).toString("base64")}`);let p=DZ({...e.proxyTls});this[LZ]=DZ({...e.requestTls});let m=e.factory||CGe,h=(y,I)=>{let{protocol:x}=new zp(y);return!this[OZ]&&x==="http:"&&this[WM].protocol==="http:"?new JM(this[WM].uri,{headers:this[Zu],connect:p,factory:m}):m(y,I)};this[wb]=r(s,{connect:p}),this[xb]=new fGe({...e,factory:h,connect:async(y,I)=>{let x=y.host;y.port||(x+=`:${gGe(y.protocol)}`);try{let{socket:b,statusCode:T}=await this[wb].connect({origin:i,port:a,path:x,signal:y.signal,headers:{...this[Zu],host:y.host},servername:this[kZ]?.servername||d});if(T!==200&&(b.on("error",EGe).destroy(),I(new AGe(`Proxy response (${T}) !== 200 when HTTP Tunneling`))),y.protocol!=="https:"){I(null,b);return}let _;this[jM]?_=this[jM].servername:_=y.servername,this[LZ]({...y,servername:_,httpSocket:b},I)}catch(b){b.code==="ERR_TLS_CERT_ALTNAME_INVALID"?I(new hGe(b)):I(b)}}})}dispatch(e,r){let n=IGe(e.headers);if(xGe(n),n&&!("host"in n)&&!("Host"in n)){let{host:s}=new zp(e.origin);n.host=s}return this[xb].dispatch({...e,headers:n},r)}#e(e){return typeof e=="string"?new zp(e):e instanceof zp?e:new zp(e.uri)}async[MZ](){await this[xb].close(),await this[wb].close()}async[FZ](){await this[xb].destroy(),await this[wb].destroy()}};function IGe(t){if(Array.isArray(t)){let e={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new NA("Proxy-Authorization should be sent in ProxyAgent constructor")}GZ.exports=KM});var jZ=w((s1t,WZ)=>{"use strict";var wGe=lA(),{kClose:bGe,kDestroy:SGe,kClosed:HZ,kDestroyed:zZ,kDispatch:BGe,kNoProxyAgent:yE,kHttpProxyAgent:ed,kHttpsProxyAgent:Vp}=Xt(),VZ=XM(),RGe=RA(),NGe={"http:":80,"https:":443},YZ=!1,ZM=class extends wGe{#e=null;#t=null;#s=null;constructor(e={}){super(),this.#s=e,YZ||(YZ=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:s,...o}=e;this[yE]=new RGe(o);let i=r??process.env.http_proxy??process.env.HTTP_PROXY;i?this[ed]=new VZ({...o,uri:i}):this[ed]=this[yE];let a=n??process.env.https_proxy??process.env.HTTPS_PROXY;a?this[Vp]=new VZ({...o,uri:a}):this[Vp]=this[ed],this.#o()}[BGe](e,r){let n=new URL(e.origin);return this.#n(n).dispatch(e,r)}async[bGe](){await this[yE].close(),this[ed][HZ]||await this[ed].close(),this[Vp][HZ]||await this[Vp].close()}async[SGe](e){await this[yE].destroy(e),this[ed][zZ]||await this[ed].destroy(e),this[Vp][zZ]||await this[Vp].destroy(e)}#n(e){let{protocol:r,host:n,port:s}=e;return n=n.replace(/:\d*$/,"").toLowerCase(),s=Number.parseInt(s,10)||NGe[r]||0,this.#r(n,s)?r==="https:"?this[Vp]:this[ed]:this[yE]}#r(e,r){if(this.#i&&this.#o(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var TA=require("node:assert"),{kRetryHandlerDefaultRetry:JZ}=Xt(),{RequestRetryError:EE}=wt(),{isDisturbed:KZ,parseHeaders:TGe,parseRangeHeader:XZ,wrapRequestBody:PGe}=lt();function vGe(t){let e=Date.now();return new Date(t).getTime()-e}var eF=class t{constructor(e,r){let{retryOptions:n,...s}=e,{retry:o,maxRetries:i,maxTimeout:a,minTimeout:c,timeoutFactor:l,methods:u,errorCodes:d,retryAfter:p,statusCodes:m}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...s,body:PGe(e.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??t[JZ],retryAfter:p??!0,maxTimeout:a??30*1e3,minTimeout:c??500,timeoutFactor:l??2,maxRetries:i??5,methods:u??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:m??[500,502,503,504,429],errorCodes:d??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(h=>{this.aborted=!0,this.abort?this.abort(h):this.reason=h})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(e,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(e,r,n)}onConnect(e){this.aborted?e(this.reason):this.abort=e}onBodySent(e){if(this.handler.onBodySent)return this.handler.onBodySent(e)}static[JZ](e,{state:r,opts:n},s){let{statusCode:o,code:i,headers:a}=e,{method:c,retryOptions:l}=n,{maxRetries:u,minTimeout:d,maxTimeout:p,timeoutFactor:m,statusCodes:h,errorCodes:y,methods:I}=l,{counter:x}=r;if(i&&i!=="UND_ERR_REQ_RETRY"&&!y.includes(i)){s(e);return}if(Array.isArray(I)&&!I.includes(c)){s(e);return}if(o!=null&&Array.isArray(h)&&!h.includes(o)){s(e);return}if(x>u){s(e);return}let b=a?.["retry-after"];b&&(b=Number(b),b=Number.isNaN(b)?vGe(b):b*1e3);let T=b>0?Math.min(b,p):Math.min(d*m**(x-1),p);setTimeout(()=>s(null),T)}onHeaders(e,r,n,s){let o=TGe(r);if(this.retryCount+=1,e>=300)return this.retryOpts.statusCodes.includes(e)===!1?this.handler.onHeaders(e,r,n,s):(this.abort(new EE("Request failed",e,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,e!==206&&(this.start>0||e!==200))return this.abort(new EE("server does not support the range header and the payload was partially consumed",e,{headers:o,data:{count:this.retryCount}})),!1;let a=XZ(o["content-range"]);if(!a)return this.abort(new EE("Content-Range mismatch",e,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new EE("ETag mismatch",e,{headers:o,data:{count:this.retryCount}})),!1;let{start:c,size:l,end:u=l-1}=a;return TA(this.start===c,"content-range mismatch"),TA(this.end==null||this.end===u,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(e===206){let a=XZ(o["content-range"]);if(a==null)return this.handler.onHeaders(e,r,n,s);let{start:c,size:l,end:u=l-1}=a;TA(c!=null&&Number.isFinite(c),"content-range mismatch"),TA(u!=null&&Number.isFinite(u),"invalid content-length"),this.start=c,this.end=u}if(this.end==null){let a=o["content-length"];this.end=a!=null?Number(a)-1:null}return TA(Number.isFinite(this.start)),TA(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(e,r,n,s)}let i=new EE("Request failed",e,{headers:o,data:{count:this.retryCount}});return this.abort(i),!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||KZ(this.opts.body))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}},r.bind(this));function r(n){if(n!=null||this.aborted||KZ(this.opts.body))return this.handler.onError(n);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)}}}};ZZ.exports=eF});var tee=w((i1t,eee)=>{"use strict";var _Ge=Yy(),QGe=bb(),tF=class extends _Ge{#e=null;#t=null;constructor(e,r={}){super(r),this.#e=e,this.#t=r}dispatch(e,r){let n=new QGe({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};eee.exports=tF});var aF=w((a1t,uee)=>{"use strict";var iee=require("node:assert"),{Readable:DGe}=require("node:stream"),{RequestAbortedError:aee,NotSupportedError:kGe,InvalidArgumentError:LGe,AbortError:rF}=wt(),cee=lt(),{ReadableStreamFrom:OGe}=lt(),go=Symbol("kConsume"),CE=Symbol("kReading"),td=Symbol("kBody"),ree=Symbol("kAbort"),lee=Symbol("kContentType"),nee=Symbol("kContentLength"),MGe=()=>{},nF=class extends DGe{constructor({resume:e,abort:r,contentType:n="",contentLength:s,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:e,highWaterMark:o}),this._readableState.dataEmitted=!1,this[ree]=r,this[go]=null,this[td]=null,this[lee]=n,this[nee]=s,this[CE]=!1}destroy(e){return!e&&!this._readableState.endEmitted&&(e=new aee),e&&this[ree](),super.destroy(e)}_destroy(e,r){this[CE]?r(e):setImmediate(()=>{r(e)})}on(e,...r){return(e==="data"||e==="readable")&&(this[CE]=!0),super.on(e,...r)}addListener(e,...r){return this.on(e,...r)}off(e,...r){let n=super.off(e,...r);return(e==="data"||e==="readable")&&(this[CE]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(e,...r){return this.off(e,...r)}push(e){return this[go]&&e!==null?(oF(this[go],e),this[CE]?super.push(e):!0):super.push(e)}async text(){return IE(this,"text")}async json(){return IE(this,"json")}async blob(){return IE(this,"blob")}async bytes(){return IE(this,"bytes")}async arrayBuffer(){return IE(this,"arrayBuffer")}async formData(){throw new kGe}get bodyUsed(){return cee.isDisturbed(this)}get body(){return this[td]||(this[td]=OGe(this),this[go]&&(this[td].getReader(),iee(this[td].locked))),this[td]}async dump(e){let r=Number.isFinite(e?.limit)?e.limit:131072,n=e?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new LGe("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((s,o)=>{this[nee]>r&&this.destroy(new rF);let i=()=>{this.destroy(n.reason??new rF)};n?.addEventListener("abort",i),this.on("close",function(){n?.removeEventListener("abort",i),n?.aborted?o(n.reason??new rF):s(null)}).on("error",MGe).on("data",function(a){r-=a.length,r<=0&&this.destroy()}).resume()})}};function FGe(t){return t[td]&&t[td].locked===!0||t[go]}function UGe(t){return cee.isDisturbed(t)||FGe(t)}async function IE(t,e){return iee(!t[go]),new Promise((r,n)=>{if(UGe(t)){let s=t._readableState;s.destroyed&&s.closeEmitted===!1?t.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(s.errored??new TypeError("unusable"))}else queueMicrotask(()=>{t[go]={type:e,stream:t,resolve:r,reject:n,length:0,body:[]},t.on("error",function(s){iF(this[go],s)}).on("close",function(){this[go].body!==null&&iF(this[go],new aee)}),qGe(t[go])})})}function qGe(t){if(t.body===null)return;let{_readableState:e}=t.stream;if(e.bufferIndex){let r=e.bufferIndex,n=e.buffer.length;for(let s=r;s2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(s,n)}function see(t,e){if(t.length===0||e===0)return new Uint8Array(0);if(t.length===1)return new Uint8Array(t[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(e).buffer),n=0;for(let s=0;s{var $Ge=require("node:assert"),{ResponseStatusCodeError:dee}=wt(),{chunksDecode:pee}=aF(),GGe=128*1024;async function HGe({callback:t,body:e,contentType:r,statusCode:n,statusMessage:s,headers:o}){$Ge(e);let i=[],a=0;try{for await(let d of e)if(i.push(d),a+=d.length,a>GGe){i=[],a=0;break}}catch{i=[],a=0}let c=`Response status code ${n}${s?`: ${s}`:""}`;if(n===204||!r||!a){queueMicrotask(()=>t(new dee(c,n,o)));return}let l=Error.stackTraceLimit;Error.stackTraceLimit=0;let u;try{mee(r)?u=JSON.parse(pee(i,a)):fee(r)&&(u=pee(i,a))}catch{}finally{Error.stackTraceLimit=l}queueMicrotask(()=>t(new dee(c,n,o,u)))}var mee=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",fee=t=>t.length>4&&t[4]==="/"&&t[0]==="t"&&t[1]==="e"&&t[2]==="x"&&t[3]==="t";Aee.exports={getResolveErrorBodyCallback:HGe,isContentTypeApplicationJson:mee,isContentTypeText:fee}});var yee=w((l1t,lF)=>{"use strict";var zGe=require("node:assert"),{Readable:VGe}=aF(),{InvalidArgumentError:PA,RequestAbortedError:hee}=wt(),yo=lt(),{getResolveErrorBodyCallback:YGe}=cF(),{AsyncResource:WGe}=require("node:async_hooks"),Sb=class extends WGe{constructor(e,r){if(!e||typeof e!="object")throw new PA("invalid opts");let{signal:n,method:s,opaque:o,body:i,onInfo:a,responseHeaders:c,throwOnError:l,highWaterMark:u}=e;try{if(typeof r!="function")throw new PA("invalid callback");if(u&&(typeof u!="number"||u<0))throw new PA("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new PA("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new PA("invalid method");if(a&&typeof a!="function")throw new PA("invalid onInfo callback");super("UNDICI_REQUEST")}catch(d){throw yo.isStream(i)&&yo.destroy(i.on("error",yo.nop),d),d}this.method=s,this.responseHeaders=c||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=i,this.trailers={},this.context=null,this.onInfo=a||null,this.throwOnError=l,this.highWaterMark=u,this.signal=n,this.reason=null,this.removeAbortListener=null,yo.isStream(i)&&i.on("error",d=>{this.onError(d)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new hee:this.removeAbortListener=yo.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new hee,this.res?yo.destroy(this.res.on("error",yo.nop),this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(e,r){if(this.reason){e(this.reason);return}zGe(this.callback),this.abort=e,this.context=r}onHeaders(e,r,n,s){let{callback:o,opaque:i,abort:a,context:c,responseHeaders:l,highWaterMark:u}=this,d=l==="raw"?yo.parseRawHeaders(r):yo.parseHeaders(r);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:d});return}let p=l==="raw"?yo.parseHeaders(r):d,m=p["content-type"],h=p["content-length"],y=new VGe({resume:n,abort:a,contentType:m,contentLength:this.method!=="HEAD"&&h?Number(h):null,highWaterMark:u});this.removeAbortListener&&y.on("close",this.removeAbortListener),this.callback=null,this.res=y,o!==null&&(this.throwOnError&&e>=400?this.runInAsyncScope(YGe,null,{callback:o,body:y,contentType:m,statusCode:e,statusMessage:s,headers:d}):this.runInAsyncScope(o,null,null,{statusCode:e,headers:d,trailers:this.trailers,opaque:i,body:y,context:c}))}onData(e){return this.res.push(e)}onComplete(e){yo.parseHeaders(e,this.trailers),this.res.push(null)}onError(e){let{res:r,callback:n,body:s,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{yo.destroy(r,e)})),s&&(this.body=null,yo.destroy(s,e)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function gee(t,e){if(e===void 0)return new Promise((r,n)=>{gee.call(this,t,(s,o)=>s?n(s):r(o))});try{this.dispatch(t,new Sb(t,e))}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}lF.exports=gee;lF.exports.RequestHandler=Sb});var xE=w((u1t,Iee)=>{var{addAbortListener:jGe}=lt(),{RequestAbortedError:JGe}=wt(),vA=Symbol("kListener"),Ya=Symbol("kSignal");function Eee(t){t.abort?t.abort(t[Ya]?.reason):t.reason=t[Ya]?.reason??new JGe,Cee(t)}function KGe(t,e){if(t.reason=null,t[Ya]=null,t[vA]=null,!!e){if(e.aborted){Eee(t);return}t[Ya]=e,t[vA]=()=>{Eee(t)},jGe(t[Ya],t[vA])}}function Cee(t){t[Ya]&&("removeEventListener"in t[Ya]?t[Ya].removeEventListener("abort",t[vA]):t[Ya].removeListener("abort",t[vA]),t[Ya]=null,t[vA]=null)}Iee.exports={addSignal:KGe,removeSignal:Cee}});var See=w((d1t,bee)=>{"use strict";var XGe=require("node:assert"),{finished:ZGe,PassThrough:eHe}=require("node:stream"),{InvalidArgumentError:_A,InvalidReturnValueError:tHe}=wt(),ta=lt(),{getResolveErrorBodyCallback:rHe}=cF(),{AsyncResource:nHe}=require("node:async_hooks"),{addSignal:sHe,removeSignal:xee}=xE(),uF=class extends nHe{constructor(e,r,n){if(!e||typeof e!="object")throw new _A("invalid opts");let{signal:s,method:o,opaque:i,body:a,onInfo:c,responseHeaders:l,throwOnError:u}=e;try{if(typeof n!="function")throw new _A("invalid callback");if(typeof r!="function")throw new _A("invalid factory");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new _A("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new _A("invalid method");if(c&&typeof c!="function")throw new _A("invalid onInfo callback");super("UNDICI_STREAM")}catch(d){throw ta.isStream(a)&&ta.destroy(a.on("error",ta.nop),d),d}this.responseHeaders=l||null,this.opaque=i||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=a,this.onInfo=c||null,this.throwOnError=u||!1,ta.isStream(a)&&a.on("error",d=>{this.onError(d)}),sHe(this,s)}onConnect(e,r){if(this.reason){e(this.reason);return}XGe(this.callback),this.abort=e,this.context=r}onHeaders(e,r,n,s){let{factory:o,opaque:i,context:a,callback:c,responseHeaders:l}=this,u=l==="raw"?ta.parseRawHeaders(r):ta.parseHeaders(r);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:u});return}this.factory=null;let d;if(this.throwOnError&&e>=400){let h=(l==="raw"?ta.parseHeaders(r):u)["content-type"];d=new eHe,this.callback=null,this.runInAsyncScope(rHe,null,{callback:c,body:d,contentType:h,statusCode:e,statusMessage:s,headers:u})}else{if(o===null)return;if(d=this.runInAsyncScope(o,null,{statusCode:e,headers:u,opaque:i,context:a}),!d||typeof d.write!="function"||typeof d.end!="function"||typeof d.on!="function")throw new tHe("expected Writable");ZGe(d,{readable:!1},m=>{let{callback:h,res:y,opaque:I,trailers:x,abort:b}=this;this.res=null,(m||!y.readable)&&ta.destroy(y,m),this.callback=null,this.runInAsyncScope(h,null,m||null,{opaque:I,trailers:x}),m&&b()})}return d.on("drain",n),this.res=d,(d.writableNeedDrain!==void 0?d.writableNeedDrain:d._writableState?.needDrain)!==!0}onData(e){let{res:r}=this;return r?r.write(e):!0}onComplete(e){let{res:r}=this;xee(this),r&&(this.trailers=ta.parseHeaders(e),r.end())}onError(e){let{res:r,callback:n,opaque:s,body:o}=this;xee(this),this.factory=null,r?(this.res=null,ta.destroy(r,e)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:s})})),o&&(this.body=null,ta.destroy(o,e))}};function wee(t,e,r){if(r===void 0)return new Promise((n,s)=>{wee.call(this,t,e,(o,i)=>o?s(o):n(i))});try{this.dispatch(t,new uF(t,e,r))}catch(n){if(typeof r!="function")throw n;let s=t?.opaque;queueMicrotask(()=>r(n,{opaque:s}))}}bee.exports=wee});var Tee=w((p1t,Nee)=>{"use strict";var{Readable:Ree,Duplex:oHe,PassThrough:iHe}=require("node:stream"),{InvalidArgumentError:wE,InvalidReturnValueError:aHe,RequestAbortedError:dF}=wt(),oi=lt(),{AsyncResource:cHe}=require("node:async_hooks"),{addSignal:lHe,removeSignal:uHe}=xE(),Bee=require("node:assert"),QA=Symbol("resume"),pF=class extends Ree{constructor(){super({autoDestroy:!0}),this[QA]=null}_read(){let{[QA]:e}=this;e&&(this[QA]=null,e())}_destroy(e,r){this._read(),r(e)}},mF=class extends Ree{constructor(e){super({autoDestroy:!0}),this[QA]=e}_read(){this[QA]()}_destroy(e,r){!e&&!this._readableState.endEmitted&&(e=new dF),r(e)}},fF=class extends cHe{constructor(e,r){if(!e||typeof e!="object")throw new wE("invalid opts");if(typeof r!="function")throw new wE("invalid handler");let{signal:n,method:s,opaque:o,onInfo:i,responseHeaders:a}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new wE("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new wE("invalid method");if(i&&typeof i!="function")throw new wE("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=a||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=i||null,this.req=new pF().on("error",oi.nop),this.ret=new oHe({readableObjectMode:e.objectMode,autoDestroy:!0,read:()=>{let{body:c}=this;c?.resume&&c.resume()},write:(c,l,u)=>{let{req:d}=this;d.push(c,l)||d._readableState.destroyed?u():d[QA]=u},destroy:(c,l)=>{let{body:u,req:d,res:p,ret:m,abort:h}=this;!c&&!m._readableState.endEmitted&&(c=new dF),h&&c&&h(),oi.destroy(u,c),oi.destroy(d,c),oi.destroy(p,c),uHe(this),l(c)}}).on("prefinish",()=>{let{req:c}=this;c.push(null)}),this.res=null,lHe(this,n)}onConnect(e,r){let{ret:n,res:s}=this;if(this.reason){e(this.reason);return}Bee(!s,"pipeline cannot be retried"),Bee(!n.destroyed),this.abort=e,this.context=r}onHeaders(e,r,n){let{opaque:s,handler:o,context:i}=this;if(e<200){if(this.onInfo){let c=this.responseHeaders==="raw"?oi.parseRawHeaders(r):oi.parseHeaders(r);this.onInfo({statusCode:e,headers:c})}return}this.res=new mF(n);let a;try{this.handler=null;let c=this.responseHeaders==="raw"?oi.parseRawHeaders(r):oi.parseHeaders(r);a=this.runInAsyncScope(o,null,{statusCode:e,headers:c,opaque:s,body:this.res,context:i})}catch(c){throw this.res.on("error",oi.nop),c}if(!a||typeof a.on!="function")throw new aHe("expected Readable");a.on("data",c=>{let{ret:l,body:u}=this;!l.push(c)&&u.pause&&u.pause()}).on("error",c=>{let{ret:l}=this;oi.destroy(l,c)}).on("end",()=>{let{ret:c}=this;c.push(null)}).on("close",()=>{let{ret:c}=this;c._readableState.ended||oi.destroy(c,new dF)}),this.body=a}onData(e){let{res:r}=this;return r.push(e)}onComplete(e){let{res:r}=this;r.push(null)}onError(e){let{ret:r}=this;this.handler=null,oi.destroy(r,e)}};function dHe(t,e){try{let r=new fF(t,e);return this.dispatch({...t,body:r.req},r),r.ret}catch(r){return new iHe().destroy(r)}}Nee.exports=dHe});var kee=w((m1t,Dee)=>{"use strict";var{InvalidArgumentError:AF,SocketError:pHe}=wt(),{AsyncResource:mHe}=require("node:async_hooks"),Pee=lt(),{addSignal:fHe,removeSignal:vee}=xE(),_ee=require("node:assert"),hF=class extends mHe{constructor(e,r){if(!e||typeof e!="object")throw new AF("invalid opts");if(typeof r!="function")throw new AF("invalid callback");let{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new AF("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=s||null,this.callback=r,this.abort=null,this.context=null,fHe(this,n)}onConnect(e,r){if(this.reason){e(this.reason);return}_ee(this.callback),this.abort=e,this.context=null}onHeaders(){throw new pHe("bad upgrade",null)}onUpgrade(e,r,n){_ee(e===101);let{callback:s,opaque:o,context:i}=this;vee(this),this.callback=null;let a=this.responseHeaders==="raw"?Pee.parseRawHeaders(r):Pee.parseHeaders(r);this.runInAsyncScope(s,null,null,{headers:a,socket:n,opaque:o,context:i})}onError(e){let{callback:r,opaque:n}=this;vee(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:n})}))}};function Qee(t,e){if(e===void 0)return new Promise((r,n)=>{Qee.call(this,t,(s,o)=>s?n(s):r(o))});try{let r=new hF(t,e);this.dispatch({...t,method:t.method||"GET",upgrade:t.protocol||"Websocket"},r)}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}Dee.exports=Qee});var Uee=w((f1t,Fee)=>{"use strict";var AHe=require("node:assert"),{AsyncResource:hHe}=require("node:async_hooks"),{InvalidArgumentError:gF,SocketError:gHe}=wt(),Lee=lt(),{addSignal:yHe,removeSignal:Oee}=xE(),yF=class extends hHe{constructor(e,r){if(!e||typeof e!="object")throw new gF("invalid opts");if(typeof r!="function")throw new gF("invalid callback");let{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new gF("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=s||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,yHe(this,n)}onConnect(e,r){if(this.reason){e(this.reason);return}AHe(this.callback),this.abort=e,this.context=r}onHeaders(){throw new gHe("bad connect",null)}onUpgrade(e,r,n){let{callback:s,opaque:o,context:i}=this;Oee(this),this.callback=null;let a=r;a!=null&&(a=this.responseHeaders==="raw"?Lee.parseRawHeaders(r):Lee.parseHeaders(r)),this.runInAsyncScope(s,null,null,{statusCode:e,headers:a,socket:n,opaque:o,context:i})}onError(e){let{callback:r,opaque:n}=this;Oee(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:n})}))}};function Mee(t,e){if(e===void 0)return new Promise((r,n)=>{Mee.call(this,t,(s,o)=>s?n(s):r(o))});try{let r=new yF(t,e);this.dispatch({...t,method:"CONNECT"},r)}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}Fee.exports=Mee});var qee=w((A1t,DA)=>{"use strict";DA.exports.request=yee();DA.exports.stream=See();DA.exports.pipeline=Tee();DA.exports.upgrade=kee();DA.exports.connect=Uee()});var CF=w((h1t,Gee)=>{"use strict";var{UndiciError:EHe}=wt(),$ee=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),EF=class t extends EHe{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[$ee]===!0}[$ee]=!0};Gee.exports={MockNotMatchedError:EF}});var kA=w((g1t,Hee)=>{"use strict";Hee.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 bE=w((y1t,tte)=>{"use strict";var{MockNotMatchedError:Yp}=CF(),{kDispatches:Bb,kMockAgent:CHe,kOriginalDispatch:IHe,kOrigin:xHe,kGetNetConnect:wHe}=kA(),{buildURL:bHe}=lt(),{STATUS_CODES:SHe}=require("node:http"),{types:{isPromise:BHe}}=require("node:util");function Ol(t,e){return typeof t=="string"?t===e:t instanceof RegExp?t.test(e):typeof t=="function"?t(e)===!0:!1}function Vee(t){return Object.fromEntries(Object.entries(t).map(([e,r])=>[e.toLocaleLowerCase(),r]))}function Yee(t,e){if(Array.isArray(t)){for(let r=0;r"u")return!0;if(typeof e!="object"||typeof t.headers!="object")return!1;for(let[r,n]of Object.entries(t.headers)){let s=Yee(e,r);if(!Ol(n,s))return!1}return!0}function zee(t){if(typeof t!="string")return t;let e=t.split("?");if(e.length!==2)return t;let r=new URLSearchParams(e.pop());return r.sort(),[...e,r.toString()].join("?")}function RHe(t,{path:e,method:r,body:n,headers:s}){let o=Ol(t.path,e),i=Ol(t.method,r),a=typeof t.body<"u"?Ol(t.body,n):!0,c=Wee(t,s);return o&&i&&a&&c}function jee(t){return Buffer.isBuffer(t)||t instanceof Uint8Array||t instanceof ArrayBuffer?t:typeof t=="object"?JSON.stringify(t):t.toString()}function Jee(t,e){let r=e.query?bHe(e.path,e.query):e.path,n=typeof r=="string"?zee(r):r,s=t.filter(({consumed:o})=>!o).filter(({path:o})=>Ol(zee(o),n));if(s.length===0)throw new Yp(`Mock dispatch not matched for path '${n}'`);if(s=s.filter(({method:o})=>Ol(o,e.method)),s.length===0)throw new Yp(`Mock dispatch not matched for method '${e.method}' on path '${n}'`);if(s=s.filter(({body:o})=>typeof o<"u"?Ol(o,e.body):!0),s.length===0)throw new Yp(`Mock dispatch not matched for body '${e.body}' on path '${n}'`);if(s=s.filter(o=>Wee(o,e.headers)),s.length===0){let o=typeof e.headers=="object"?JSON.stringify(e.headers):e.headers;throw new Yp(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return s[0]}function NHe(t,e,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},s=typeof r=="function"?{callback:r}:{...r},o={...n,...e,pending:!0,data:{error:null,...s}};return t.push(o),o}function IF(t,e){let r=t.findIndex(n=>n.consumed?RHe(n,e):!1);r!==-1&&t.splice(r,1)}function Kee(t){let{path:e,method:r,body:n,headers:s,query:o}=t;return{path:e,method:r,body:n,headers:s,query:o}}function xF(t){let e=Object.keys(t),r=[];for(let n=0;n=p,n.pending=d0?setTimeout(()=>{m(this[Bb])},l):m(this[Bb]);function m(y,I=o){let x=Array.isArray(t.headers)?wF(t.headers):t.headers,b=typeof I=="function"?I({...t,headers:x}):I;if(BHe(b)){b.then(O=>m(y,O));return}let T=jee(b),_=xF(i),U=xF(a);e.onConnect?.(O=>e.onError(O),null),e.onHeaders?.(s,_,h,Xee(s)),e.onData?.(Buffer.from(T)),e.onComplete?.(U),IF(y,r)}function h(){}return!0}function PHe(){let t=this[CHe],e=this[xHe],r=this[IHe];return function(s,o){if(t.isMockActive)try{Zee.call(this,s,o)}catch(i){if(i instanceof Yp){let a=t[wHe]();if(a===!1)throw new Yp(`${i.message}: subsequent request to origin ${e} was not allowed (net.connect disabled)`);if(ete(a,e))r.call(this,s,o);else throw new Yp(`${i.message}: subsequent request to origin ${e} was not allowed (net.connect is not enabled for this origin)`)}else throw i}else r.call(this,s,o)}}function ete(t,e){let r=new URL(e);return t===!0?!0:!!(Array.isArray(t)&&t.some(n=>Ol(n,r.host)))}function vHe(t){if(t){let{agent:e,...r}=t;return r}}tte.exports={getResponseData:jee,getMockDispatch:Jee,addMockDispatch:NHe,deleteMockDispatch:IF,buildKey:Kee,generateKeyValues:xF,matchValue:Ol,getResponse:THe,getStatusText:Xee,mockDispatch:Zee,buildMockDispatch:PHe,checkNetConnect:ete,buildMockOptions:vHe,getHeaderByName:Yee,buildHeadersFromArray:wF}});var PF=w((E1t,TF)=>{"use strict";var{getResponseData:_He,buildKey:QHe,addMockDispatch:bF}=bE(),{kDispatches:Rb,kDispatchKey:Nb,kDefaultHeaders:SF,kDefaultTrailers:BF,kContentLength:RF,kMockDispatch:Tb}=kA(),{InvalidArgumentError:Wa}=wt(),{buildURL:DHe}=lt(),LA=class{constructor(e){this[Tb]=e}delay(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new Wa("waitInMs must be a valid integer > 0");return this[Tb].delay=e,this}persist(){return this[Tb].persist=!0,this}times(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new Wa("repeatTimes must be a valid integer > 0");return this[Tb].times=e,this}},NF=class{constructor(e,r){if(typeof e!="object")throw new Wa("opts must be an object");if(typeof e.path>"u")throw new Wa("opts.path must be defined");if(typeof e.method>"u"&&(e.method="GET"),typeof e.path=="string")if(e.query)e.path=DHe(e.path,e.query);else{let n=new URL(e.path,"data://");e.path=n.pathname+n.search}typeof e.method=="string"&&(e.method=e.method.toUpperCase()),this[Nb]=QHe(e),this[Rb]=r,this[SF]={},this[BF]={},this[RF]=!1}createMockScopeDispatchData({statusCode:e,data:r,responseOptions:n}){let s=_He(r),o=this[RF]?{"content-length":s.length}:{},i={...this[SF],...o,...n.headers},a={...this[BF],...n.trailers};return{statusCode:e,data:r,headers:i,trailers:a}}validateReplyParameters(e){if(typeof e.statusCode>"u")throw new Wa("statusCode must be defined");if(typeof e.responseOptions!="object"||e.responseOptions===null)throw new Wa("responseOptions must be an object")}reply(e){if(typeof e=="function"){let o=a=>{let c=e(a);if(typeof c!="object"||c===null)throw new Wa("reply options callback must return an object");let l={data:"",responseOptions:{},...c};return this.validateReplyParameters(l),{...this.createMockScopeDispatchData(l)}},i=bF(this[Rb],this[Nb],o);return new LA(i)}let r={statusCode:e,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),s=bF(this[Rb],this[Nb],n);return new LA(s)}replyWithError(e){if(typeof e>"u")throw new Wa("error must be defined");let r=bF(this[Rb],this[Nb],{error:e});return new LA(r)}defaultReplyHeaders(e){if(typeof e>"u")throw new Wa("headers must be defined");return this[SF]=e,this}defaultReplyTrailers(e){if(typeof e>"u")throw new Wa("trailers must be defined");return this[BF]=e,this}replyContentLength(){return this[RF]=!0,this}};TF.exports.MockInterceptor=NF;TF.exports.MockScope=LA});var QF=w((C1t,cte)=>{"use strict";var{promisify:kHe}=require("node:util"),LHe=SA(),{buildMockDispatch:OHe}=bE(),{kDispatches:rte,kMockAgent:nte,kClose:ste,kOriginalClose:ote,kOrigin:ite,kOriginalDispatch:MHe,kConnected:vF}=kA(),{MockInterceptor:FHe}=PF(),ate=Xt(),{InvalidArgumentError:UHe}=wt(),_F=class extends LHe{constructor(e,r){if(super(e,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new UHe("Argument opts.agent must implement Agent");this[nte]=r.agent,this[ite]=e,this[rte]=[],this[vF]=1,this[MHe]=this.dispatch,this[ote]=this.close.bind(this),this.dispatch=OHe.call(this),this.close=this[ste]}get[ate.kConnected](){return this[vF]}intercept(e){return new FHe(e,this[rte])}async[ste](){await kHe(this[ote])(),this[vF]=0,this[nte][ate.kClients].delete(this[ite])}};cte.exports=_F});var LF=w((I1t,Ate)=>{"use strict";var{promisify:qHe}=require("node:util"),$He=BA(),{buildMockDispatch:GHe}=bE(),{kDispatches:lte,kMockAgent:ute,kClose:dte,kOriginalClose:pte,kOrigin:mte,kOriginalDispatch:HHe,kConnected:DF}=kA(),{MockInterceptor:zHe}=PF(),fte=Xt(),{InvalidArgumentError:VHe}=wt(),kF=class extends $He{constructor(e,r){if(super(e,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new VHe("Argument opts.agent must implement Agent");this[ute]=r.agent,this[mte]=e,this[lte]=[],this[DF]=1,this[HHe]=this.dispatch,this[pte]=this.close.bind(this),this.dispatch=GHe.call(this),this.close=this[dte]}get[fte.kConnected](){return this[DF]}intercept(e){return new zHe(e,this[lte])}async[dte](){await qHe(this[pte])(),this[DF]=0,this[ute][fte.kClients].delete(this[mte])}};Ate.exports=kF});var gte=w((w1t,hte)=>{"use strict";var YHe={pronoun:"it",is:"is",was:"was",this:"this"},WHe={pronoun:"they",is:"are",was:"were",this:"these"};hte.exports=class{constructor(e,r){this.singular=e,this.plural=r}pluralize(e){let r=e===1,n=r?YHe:WHe,s=r?this.singular:this.plural;return{...n,count:e,noun:s}}}});var Ete=w((S1t,yte)=>{"use strict";var{Transform:jHe}=require("node:stream"),{Console:JHe}=require("node:console"),KHe=process.versions.icu?"\u2705":"Y ",XHe=process.versions.icu?"\u274C":"N ";yte.exports=class{constructor({disableColors:e}={}){this.transform=new jHe({transform(r,n,s){s(null,r)}}),this.logger=new JHe({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let r=e.map(({method:n,path:s,data:{statusCode:o},persist:i,times:a,timesInvoked:c,origin:l})=>({Method:n,Origin:l,Path:s,"Status code":o,Persistent:i?KHe:XHe,Invocations:c,Remaining:i?1/0:a-c}));return this.logger.table(r),this.transform.read().toString()}}});var wte=w((B1t,xte)=>{"use strict";var{kClients:Wp}=Xt(),ZHe=RA(),{kAgent:OF,kMockAgentSet:Pb,kMockAgentGet:Cte,kDispatches:MF,kIsMockActive:vb,kNetConnect:jp,kGetNetConnect:eze,kOptions:_b,kFactory:Qb}=kA(),tze=QF(),rze=LF(),{matchValue:nze,buildMockOptions:sze}=bE(),{InvalidArgumentError:Ite,UndiciError:oze}=wt(),ize=Yy(),aze=gte(),cze=Ete(),FF=class extends ize{constructor(e){if(super(e),this[jp]=!0,this[vb]=!0,e?.agent&&typeof e.agent.dispatch!="function")throw new Ite("Argument opts.agent must implement Agent");let r=e?.agent?e.agent:new ZHe(e);this[OF]=r,this[Wp]=r[Wp],this[_b]=sze(e)}get(e){let r=this[Cte](e);return r||(r=this[Qb](e),this[Pb](e,r)),r}dispatch(e,r){return this.get(e.origin),this[OF].dispatch(e,r)}async close(){await this[OF].close(),this[Wp].clear()}deactivate(){this[vb]=!1}activate(){this[vb]=!0}enableNetConnect(e){if(typeof e=="string"||typeof e=="function"||e instanceof RegExp)Array.isArray(this[jp])?this[jp].push(e):this[jp]=[e];else if(typeof e>"u")this[jp]=!0;else throw new Ite("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[jp]=!1}get isMockActive(){return this[vb]}[Pb](e,r){this[Wp].set(e,r)}[Qb](e){let r=Object.assign({agent:this},this[_b]);return this[_b]&&this[_b].connections===1?new tze(e,r):new rze(e,r)}[Cte](e){let r=this[Wp].get(e);if(r)return r;if(typeof e!="string"){let n=this[Qb]("http://localhost:9999");return this[Pb](e,n),n}for(let[n,s]of Array.from(this[Wp]))if(s&&typeof n!="string"&&nze(n,e)){let o=this[Qb](e);return this[Pb](e,o),o[MF]=s[MF],o}}[eze](){return this[jp]}pendingInterceptors(){let e=this[Wp];return Array.from(e.entries()).flatMap(([r,n])=>n[MF].map(s=>({...s,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new cze}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new aze("interceptor","interceptors").pluralize(r.length);throw new oze(` +`,"latin1"),r!==null&&s!==r){if(n[EM])throw new Up;process.emitWarning(new Up)}e[Cr].timeout&&e[Cr].timeoutType===xA&&e[Cr].timeout.refresh&&e[Cr].timeout.refresh(),n[Vu]()}}destroy(e){let{socket:r,client:n,abort:s}=this;r[Yu]=!1,e&&(Le(n[$n]<=1,"pipeline should only contain this request"),s(e))}};k7.exports=mqe});var H7=b((A1t,G7)=>{"use strict";var si=require("node:assert"),{pipeline:Eqe}=require("node:stream"),ft=ut(),{RequestContentLengthMismatchError:wM,RequestAbortedError:O7,SocketError:lE,InformationalError:bM}=bt(),{kUrl:lb,kReset:db,kClient:wA,kRunning:pb,kPending:Cqe,kQueue:Wu,kPendingIdx:SM,kRunningIdx:Ki,kError:Zi,kSocket:An,kStrictContentLength:Iqe,kOnError:BM,kMaxConcurrentStreams:$7,kHTTP2Session:Xi,kResume:ju,kSize:xqe,kHTTPContext:wqe}=Zt(),kl=Symbol("open streams"),M7,F7=!1,ub;try{ub=require("node:http2")}catch{ub={constants:{}}}var{constants:{HTTP2_HEADER_AUTHORITY:bqe,HTTP2_HEADER_METHOD:Sqe,HTTP2_HEADER_PATH:Bqe,HTTP2_HEADER_SCHEME:Rqe,HTTP2_HEADER_CONTENT_LENGTH:Nqe,HTTP2_HEADER_EXPECT:Tqe,HTTP2_HEADER_STATUS:Pqe}}=ub;function vqe(t){let e=[];for(let[r,n]of Object.entries(t))if(Array.isArray(n))for(let s of n)e.push(Buffer.from(r),Buffer.from(s));else e.push(Buffer.from(r),Buffer.from(n));return e}i(vqe,"parseH2Headers");async function _qe(t,e){t[An]=e,F7||(F7=!0,process.emitWarning("H2 support is experimental, expect them to change at any time.",{code:"UNDICI-H2"}));let r=ub.connect(t[lb],{createConnection:i(()=>e,"createConnection"),peerMaxConcurrentStreams:t[$7]});r[kl]=0,r[wA]=t,r[An]=e,ft.addListener(r,"error",Dqe),ft.addListener(r,"frameError",kqe),ft.addListener(r,"end",Lqe),ft.addListener(r,"goaway",Oqe),ft.addListener(r,"close",function(){let{[wA]:s}=this,{[An]:o}=s,a=this[An][Zi]||this[Zi]||new lE("closed",ft.getSocketInfo(o));if(s[Xi]=null,s.destroyed){si(s[Cqe]===0);let c=s[Wu].splice(s[Ki]);for(let l=0;l{n=!0}),{version:"h2",defaultPipelining:1/0,write(...s){return Fqe(t,...s)},resume(){Qqe(t)},destroy(s,o){n?queueMicrotask(o):e.destroy(s).on("close",o)},get destroyed(){return e.destroyed},busy(){return!1}}}i(_qe,"connectH2");function Qqe(t){let e=t[An];e?.destroyed===!1&&(t[xqe]===0&&t[$7]===0?(e.unref(),t[Xi].unref()):(e.ref(),t[Xi].ref()))}i(Qqe,"resumeH2");function Dqe(t){si(t.code!=="ERR_TLS_CERT_ALTNAME_INVALID"),this[An][Zi]=t,this[wA][BM](t)}i(Dqe,"onHttp2SessionError");function kqe(t,e,r){if(r===0){let n=new bM(`HTTP/2: "frameError" received - type ${t}, code ${e}`);this[An][Zi]=n,this[wA][BM](n)}}i(kqe,"onHttp2FrameError");function Lqe(){let t=new lE("other side closed",ft.getSocketInfo(this[An]));this.destroy(t),ft.destroy(this[An],t)}i(Lqe,"onHttp2SessionEnd");function Oqe(t){let e=this[Zi]||new lE(`HTTP/2: "GOAWAY" frame received with code ${t}`,ft.getSocketInfo(this)),r=this[wA];if(r[An]=null,r[wqe]=null,this[Xi]!=null&&(this[Xi].destroy(e),this[Xi]=null),ft.destroy(this[An],e),r[Ki]{e.aborted||e.completed||(Q=Q||new O7,ft.errorRequest(t,e,Q),m!=null&&ft.destroy(m,Q),ft.destroy(d,Q),t[Wu][t[Ki]++]=null,t[ju]())},"abort");try{e.onConnect(E)}catch(Q){ft.errorRequest(t,e,Q)}if(e.aborted)return!1;if(n==="CONNECT")return r.ref(),m=r.request(p,{endStream:!1,signal:l}),m.id&&!m.pending?(e.onUpgrade(null,null,m),++r[kl],t[Wu][t[Ki]++]=null):m.once("ready",()=>{e.onUpgrade(null,null,m),++r[kl],t[Wu][t[Ki]++]=null}),m.once("close",()=>{r[kl]-=1,r[kl]===0&&r.unref()}),!0;p[Bqe]=s,p[Rqe]="https";let x=n==="PUT"||n==="POST"||n==="PATCH";d&&typeof d.read=="function"&&d.read(0);let w=ft.bodyLength(d);if(ft.isFormDataLike(d)){M7??=EA().extractBody;let[Q,q]=M7(d);p["content-type"]=q,d=Q.stream,w=Q.length}if(w==null&&(w=e.contentLength),(w===0||!x)&&(w=null),Mqe(n)&&w>0&&e.contentLength!=null&&e.contentLength!==w){if(t[Iqe])return ft.errorRequest(t,e,new wM),!1;process.emitWarning(new wM)}w!=null&&(si(d,"no body must not have content length"),p[Nqe]=`${w}`),r.ref();let S=n==="GET"||n==="HEAD"||d===null;return c?(p[Tqe]="100-continue",m=r.request(p,{endStream:S,signal:l}),m.once("continue",P)):(m=r.request(p,{endStream:S,signal:l}),P()),++r[kl],m.once("response",Q=>{let{[Pqe]:q,...M}=Q;if(e.onResponseStarted(),e.aborted){let V=new O7;ft.errorRequest(t,e,V),ft.destroy(m,V);return}e.onHeaders(Number(q),vqe(M),m.resume.bind(m),"")===!1&&m.pause(),m.on("data",V=>{e.onData(V)===!1&&m.pause()})}),m.once("end",()=>{(m.state?.state==null||m.state.state<6)&&e.onComplete([]),r[kl]===0&&r.unref(),E(new bM("HTTP/2: stream half-closed (remote)")),t[Wu][t[Ki]++]=null,t[SM]=t[Ki],t[ju]()}),m.once("close",()=>{r[kl]-=1,r[kl]===0&&r.unref()}),m.once("error",function(Q){E(Q)}),m.once("frameError",(Q,q)=>{E(new bM(`HTTP/2: "frameError" received - type ${Q}, code ${q}`))}),!0;function P(){!d||w===0?U7(E,m,null,t,e,t[An],w,x):ft.isBuffer(d)?U7(E,m,d,t,e,t[An],w,x):ft.isBlobLike(d)?typeof d.stream=="function"?q7(E,m,d.stream(),t,e,t[An],w,x):qqe(E,m,d,t,e,t[An],w,x):ft.isStream(d)?Uqe(E,t[An],x,m,d,t,e,w):ft.isIterable(d)?q7(E,m,d,t,e,t[An],w,x):si(!1)}i(P,"writeBodyH2")}i(Fqe,"writeH2");function U7(t,e,r,n,s,o,a,c){try{r!=null&&ft.isBuffer(r)&&(si(a===r.byteLength,"buffer body must have content length"),e.cork(),e.write(r),e.uncork(),e.end(),s.onBodySent(r)),c||(o[db]=!0),s.onRequestSent(),n[ju]()}catch(l){t(l)}}i(U7,"writeBuffer");function Uqe(t,e,r,n,s,o,a,c){si(c!==0||o[pb]===0,"stream body cannot be pipelined");let l=Eqe(s,n,d=>{d?(ft.destroy(l,d),t(d)):(ft.removeAllListeners(l),a.onRequestSent(),r||(e[db]=!0),o[ju]())});ft.addListener(l,"data",u);function u(d){a.onBodySent(d)}i(u,"onPipeData")}i(Uqe,"writeStream");async function qqe(t,e,r,n,s,o,a,c){si(a===r.size,"blob body must have content length");try{if(a!=null&&a!==r.size)throw new wM;let l=Buffer.from(await r.arrayBuffer());e.cork(),e.write(l),e.uncork(),e.end(),s.onBodySent(l),s.onRequestSent(),c||(o[db]=!0),n[ju]()}catch(l){t(l)}}i(qqe,"writeBlob");async function q7(t,e,r,n,s,o,a,c){si(a!==0||n[pb]===0,"iterator body cannot be pipelined");let l=null;function u(){if(l){let p=l;l=null,p()}}i(u,"onDrain");let d=i(()=>new Promise((p,m)=>{si(l===null),o[Zi]?m(o[Zi]):l=p}),"waitForDrain");e.on("close",u).on("drain",u);try{for await(let p of r){if(o[Zi])throw o[Zi];let m=e.write(p);s.onBodySent(p),m||await d()}e.end(),s.onRequestSent(),c||(o[db]=!0),n[ju]()}catch(p){t(p)}finally{e.off("close",u).off("drain",u)}}i(q7,"writeIterable");G7.exports=_qe});var fb=b((g1t,Y7)=>{"use strict";var Va=ut(),{kBodyUsed:uE}=Zt(),NM=require("node:assert"),{InvalidArgumentError:$qe}=bt(),Gqe=require("node:events"),Hqe=[300,301,302,303,307,308],z7=Symbol("body"),mb=class{static{i(this,"BodyAsyncIterable")}constructor(e){this[z7]=e,this[uE]=!1}async*[Symbol.asyncIterator](){NM(!this[uE],"disturbed"),this[uE]=!0,yield*this[z7]}},RM=class{static{i(this,"RedirectHandler")}constructor(e,r,n,s){if(r!=null&&(!Number.isInteger(r)||r<0))throw new $qe("maxRedirections must be a positive number");Va.validateHandler(s,n.method,n.upgrade),this.dispatch=e,this.location=null,this.abort=null,this.opts={...n,maxRedirections:0},this.maxRedirections=r,this.handler=s,this.history=[],this.redirectionLimitReached=!1,Va.isStream(this.opts.body)?(Va.bodyLength(this.opts.body)===0&&this.opts.body.on("data",function(){NM(!1)}),typeof this.opts.body.readableDidRead!="boolean"&&(this.opts.body[uE]=!1,Gqe.prototype.on.call(this.opts.body,"data",function(){this[uE]=!0}))):this.opts.body&&typeof this.opts.body.pipeTo=="function"?this.opts.body=new mb(this.opts.body):this.opts.body&&typeof this.opts.body!="string"&&!ArrayBuffer.isView(this.opts.body)&&Va.isIterable(this.opts.body)&&(this.opts.body=new mb(this.opts.body))}onConnect(e){this.abort=e,this.handler.onConnect(e,{history:this.history})}onUpgrade(e,r,n){this.handler.onUpgrade(e,r,n)}onError(e){this.handler.onError(e)}onHeaders(e,r,n,s){if(this.location=this.history.length>=this.maxRedirections||Va.isDisturbed(this.opts.body)?null:zqe(e,r),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,r,n,s);let{origin:o,pathname:a,search:c}=Va.parseURL(new URL(this.location,this.opts.origin&&new URL(this.opts.path,this.opts.origin))),l=c?`${a}${c}`:a;this.opts.headers=Vqe(this.opts.headers,e===303,this.opts.origin!==o),this.opts.path=l,this.opts.origin=o,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 zqe(t,e){if(Hqe.indexOf(t)===-1)return null;for(let r=0;r{"use strict";var Yqe=fb();function Wqe({maxRedirections:t}){return e=>i(function(n,s){let{maxRedirections:o=t}=n;if(!o)return e(n,s);let a=new Yqe(e,o,n,s);return n={...n,maxRedirections:0},e(n,a)},"Intercept")}i(Wqe,"createRedirectInterceptor");W7.exports=Wqe});var BA=b((I1t,sZ)=>{"use strict";var Ll=require("node:assert"),eZ=require("node:net"),jqe=require("node:http"),qp=ut(),{channels:bA}=iA(),Jqe=lX(),Kqe=uA(),{InvalidArgumentError:vr,InformationalError:Xqe,ClientDestroyedError:Zqe}=bt(),e$e=Ky(),{kUrl:Ya,kServerName:Ju,kClient:t$e,kBusy:TM,kConnect:r$e,kResuming:$p,kRunning:AE,kPending:hE,kSize:fE,kQueue:ea,kConnected:n$e,kConnecting:SA,kNeedDrain:Xu,kKeepAliveDefaultTimeout:j7,kHostHeader:s$e,kPendingIdx:ta,kRunningIdx:Ol,kError:o$e,kPipelining:hb,kKeepAliveTimeoutValue:i$e,kMaxHeadersSize:a$e,kKeepAliveMaxTimeout:c$e,kKeepAliveTimeoutThreshold:l$e,kHeadersTimeout:u$e,kBodyTimeout:d$e,kStrictContentLength:p$e,kConnector:dE,kMaxRedirections:m$e,kMaxRequests:PM,kCounter:f$e,kClose:A$e,kDestroy:h$e,kDispatch:g$e,kInterceptors:J7,kLocalAddress:pE,kMaxResponseSize:y$e,kOnError:E$e,kHTTPContext:_r,kMaxConcurrentStreams:C$e,kResume:mE}=Zt(),I$e=L7(),x$e=H7(),K7=!1,Ku=Symbol("kClosedResolve"),X7=i(()=>{},"noop");function tZ(t){return t[hb]??t[_r]?.defaultPipelining??1}i(tZ,"getPipelining");var vM=class extends Kqe{static{i(this,"Client")}constructor(e,{interceptors:r,maxHeaderSize:n,headersTimeout:s,socketTimeout:o,requestTimeout:a,connectTimeout:c,bodyTimeout:l,idleTimeout:u,keepAlive:d,keepAliveTimeout:p,maxKeepAliveTimeout:m,keepAliveMaxTimeout:f,keepAliveTimeoutThreshold:g,socketPath:E,pipelining:x,tls:w,strictContentLength:S,maxCachedSessions:P,maxRedirections:Q,connect:q,maxRequestsPerClient:M,localAddress:V,maxResponseSize:pe,autoSelectFamily:ke,autoSelectFamilyAttemptTimeout:Re,maxConcurrentStreams:se,allowH2:ye}={}){if(super(),d!==void 0)throw new vr("unsupported keepAlive, use pipelining=0 instead");if(o!==void 0)throw new vr("unsupported socketTimeout, use headersTimeout & bodyTimeout instead");if(a!==void 0)throw new vr("unsupported requestTimeout, use headersTimeout & bodyTimeout instead");if(u!==void 0)throw new vr("unsupported idleTimeout, use keepAliveTimeout instead");if(m!==void 0)throw new vr("unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead");if(n!=null&&!Number.isFinite(n))throw new vr("invalid maxHeaderSize");if(E!=null&&typeof E!="string")throw new vr("invalid socketPath");if(c!=null&&(!Number.isFinite(c)||c<0))throw new vr("invalid connectTimeout");if(p!=null&&(!Number.isFinite(p)||p<=0))throw new vr("invalid keepAliveTimeout");if(f!=null&&(!Number.isFinite(f)||f<=0))throw new vr("invalid keepAliveMaxTimeout");if(g!=null&&!Number.isFinite(g))throw new vr("invalid keepAliveTimeoutThreshold");if(s!=null&&(!Number.isInteger(s)||s<0))throw new vr("headersTimeout must be a positive integer or zero");if(l!=null&&(!Number.isInteger(l)||l<0))throw new vr("bodyTimeout must be a positive integer or zero");if(q!=null&&typeof q!="function"&&typeof q!="object")throw new vr("connect must be a function or an object");if(Q!=null&&(!Number.isInteger(Q)||Q<0))throw new vr("maxRedirections must be a positive number");if(M!=null&&(!Number.isInteger(M)||M<0))throw new vr("maxRequestsPerClient must be a positive number");if(V!=null&&(typeof V!="string"||eZ.isIP(V)===0))throw new vr("localAddress must be valid string IP address");if(pe!=null&&(!Number.isInteger(pe)||pe<-1))throw new vr("maxResponseSize must be a positive number");if(Re!=null&&(!Number.isInteger(Re)||Re<-1))throw new vr("autoSelectFamilyAttemptTimeout must be a positive number");if(ye!=null&&typeof ye!="boolean")throw new vr("allowH2 must be a valid boolean value");if(se!=null&&(typeof se!="number"||se<1))throw new vr("maxConcurrentStreams must be a positive integer, greater than 0");typeof q!="function"&&(q=e$e({...w,maxCachedSessions:P,allowH2:ye,socketPath:E,timeout:c,...ke?{autoSelectFamily:ke,autoSelectFamilyAttemptTimeout:Re}:void 0,...q})),r?.Client&&Array.isArray(r.Client)?(this[J7]=r.Client,K7||(K7=!0,process.emitWarning("Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.",{code:"UNDICI-CLIENT-INTERCEPTOR-DEPRECATED"}))):this[J7]=[w$e({maxRedirections:Q})],this[Ya]=qp.parseOrigin(e),this[dE]=q,this[hb]=x??1,this[a$e]=n||jqe.maxHeaderSize,this[j7]=p??4e3,this[c$e]=f??6e5,this[l$e]=g??2e3,this[i$e]=this[j7],this[Ju]=null,this[pE]=V??null,this[$p]=0,this[Xu]=0,this[s$e]=`host: ${this[Ya].hostname}${this[Ya].port?`:${this[Ya].port}`:""}\r +`,this[d$e]=l??3e5,this[u$e]=s??3e5,this[p$e]=S??!0,this[m$e]=Q,this[PM]=M,this[Ku]=null,this[y$e]=pe>-1?pe:-1,this[C$e]=se??100,this[_r]=null,this[ea]=[],this[Ol]=0,this[ta]=0,this[mE]=H=>_M(this,H),this[E$e]=H=>rZ(this,H)}get pipelining(){return this[hb]}set pipelining(e){this[hb]=e,this[mE](!0)}get[hE](){return this[ea].length-this[ta]}get[AE](){return this[ta]-this[Ol]}get[fE](){return this[ea].length-this[Ol]}get[n$e](){return!!this[_r]&&!this[SA]&&!this[_r].destroyed}get[TM](){return!!(this[_r]?.busy(null)||this[fE]>=(tZ(this)||1)||this[hE]>0)}[r$e](e){nZ(this),this.once("connect",e)}[g$e](e,r){let n=e.origin||this[Ya].origin,s=new Jqe(n,e,r);return this[ea].push(s),this[$p]||(qp.bodyLength(s.body)==null&&qp.isIterable(s.body)?(this[$p]=1,queueMicrotask(()=>_M(this))):this[mE](!0)),this[$p]&&this[Xu]!==2&&this[TM]&&(this[Xu]=2),this[Xu]<2}async[A$e](){return new Promise(e=>{this[fE]?this[Ku]=e:e(null)})}async[h$e](e){return new Promise(r=>{let n=this[ea].splice(this[ta]);for(let o=0;o{this[Ku]&&(this[Ku](),this[Ku]=null),r(null)},"callback");this[_r]?(this[_r].destroy(e,s),this[_r]=null):queueMicrotask(s),this[mE]()})}},w$e=Ab();function rZ(t,e){if(t[AE]===0&&e.code!=="UND_ERR_INFO"&&e.code!=="UND_ERR_SOCKET"){Ll(t[ta]===t[Ol]);let r=t[ea].splice(t[Ol]);for(let n=0;n{t[dE]({host:e,hostname:r,protocol:n,port:s,servername:t[Ju],localAddress:t[pE]},(l,u)=>{l?c(l):a(u)})});if(t.destroyed){qp.destroy(o.on("error",X7),new Zqe);return}Ll(o);try{t[_r]=o.alpnProtocol==="h2"?await x$e(t,o):await I$e(t,o)}catch(a){throw o.destroy().on("error",X7),a}t[SA]=!1,o[f$e]=0,o[PM]=t[PM],o[t$e]=t,o[o$e]=null,bA.connected.hasSubscribers&&bA.connected.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[_r]?.version,servername:t[Ju],localAddress:t[pE]},connector:t[dE],socket:o}),t.emit("connect",t[Ya],[t])}catch(o){if(t.destroyed)return;if(t[SA]=!1,bA.connectError.hasSubscribers&&bA.connectError.publish({connectParams:{host:e,hostname:r,protocol:n,port:s,version:t[_r]?.version,servername:t[Ju],localAddress:t[pE]},connector:t[dE],error:o}),o.code==="ERR_TLS_CERT_ALTNAME_INVALID")for(Ll(t[AE]===0);t[hE]>0&&t[ea][t[ta]].servername===t[Ju];){let a=t[ea][t[ta]++];qp.errorRequest(t,a,o)}else rZ(t,o);t.emit("connectionError",t[Ya],[t],o)}t[mE]()}i(nZ,"connect");function Z7(t){t[Xu]=0,t.emit("drain",t[Ya],[t])}i(Z7,"emitDrain");function _M(t,e){t[$p]!==2&&(t[$p]=2,b$e(t,e),t[$p]=0,t[Ol]>256&&(t[ea].splice(0,t[Ol]),t[ta]-=t[Ol],t[Ol]=0))}i(_M,"resume");function b$e(t,e){for(;;){if(t.destroyed){Ll(t[hE]===0);return}if(t[Ku]&&!t[fE]){t[Ku](),t[Ku]=null;return}if(t[_r]&&t[_r].resume(),t[TM])t[Xu]=2;else if(t[Xu]===2){e?(t[Xu]=1,queueMicrotask(()=>Z7(t))):Z7(t);continue}if(t[hE]===0||t[AE]>=(tZ(t)||1))return;let r=t[ea][t[ta]];if(t[Ya].protocol==="https:"&&t[Ju]!==r.servername){if(t[AE]>0)return;t[Ju]=r.servername,t[_r]?.destroy(new Xqe("servername changed"),()=>{t[_r]=null,_M(t)})}if(t[SA])return;if(!t[_r]){nZ(t);return}if(t[_r].destroyed||t[_r].busy(r))return;!r.aborted&&t[_r].write(r)?t[ta]++:t[ea].splice(t[ta],1)}}i(b$e,"_resume");sZ.exports=vM});var QM=b((b1t,oZ)=>{"use strict";var gb=class{static{i(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)}};oZ.exports=class{static{i(this,"FixedQueue")}constructor(){this.head=this.tail=new gb}isEmpty(){return this.head.isEmpty()}push(e){this.head.isFull()&&(this.head=this.head.next=new gb),this.head.push(e)}shift(){let e=this.tail,r=e.shift();return e.isEmpty()&&e.next!==null&&(this.tail=e.next),r}}});var aZ=b((B1t,iZ)=>{var{kFree:S$e,kConnected:B$e,kPending:R$e,kQueued:N$e,kRunning:T$e,kSize:P$e}=Zt(),Gp=Symbol("pool"),DM=class{static{i(this,"PoolStats")}constructor(e){this[Gp]=e}get connected(){return this[Gp][B$e]}get free(){return this[Gp][S$e]}get pending(){return this[Gp][R$e]}get queued(){return this[Gp][N$e]}get running(){return this[Gp][T$e]}get size(){return this[Gp][P$e]}};iZ.exports=DM});var UM=b((N1t,gZ)=>{"use strict";var v$e=uA(),_$e=QM(),{kConnected:kM,kSize:cZ,kRunning:lZ,kPending:uZ,kQueued:gE,kBusy:Q$e,kFree:D$e,kUrl:k$e,kClose:L$e,kDestroy:O$e,kDispatch:M$e}=Zt(),F$e=aZ(),Fs=Symbol("clients"),ps=Symbol("needDrain"),yE=Symbol("queue"),LM=Symbol("closed resolve"),OM=Symbol("onDrain"),dZ=Symbol("onConnect"),pZ=Symbol("onDisconnect"),mZ=Symbol("onConnectionError"),MM=Symbol("get dispatcher"),AZ=Symbol("add client"),hZ=Symbol("remove client"),fZ=Symbol("stats"),FM=class extends v$e{static{i(this,"PoolBase")}constructor(){super(),this[yE]=new _$e,this[Fs]=[],this[gE]=0;let e=this;this[OM]=i(function(n,s){let o=e[yE],a=!1;for(;!a;){let c=o.shift();if(!c)break;e[gE]--,a=!this.dispatch(c.opts,c.handler)}this[ps]=a,!this[ps]&&e[ps]&&(e[ps]=!1,e.emit("drain",n,[e,...s])),e[LM]&&o.isEmpty()&&Promise.all(e[Fs].map(c=>c.close())).then(e[LM])},"onDrain"),this[dZ]=(r,n)=>{e.emit("connect",r,[e,...n])},this[pZ]=(r,n,s)=>{e.emit("disconnect",r,[e,...n],s)},this[mZ]=(r,n,s)=>{e.emit("connectionError",r,[e,...n],s)},this[fZ]=new F$e(this)}get[Q$e](){return this[ps]}get[kM](){return this[Fs].filter(e=>e[kM]).length}get[D$e](){return this[Fs].filter(e=>e[kM]&&!e[ps]).length}get[uZ](){let e=this[gE];for(let{[uZ]:r}of this[Fs])e+=r;return e}get[lZ](){let e=0;for(let{[lZ]:r}of this[Fs])e+=r;return e}get[cZ](){let e=this[gE];for(let{[cZ]:r}of this[Fs])e+=r;return e}get stats(){return this[fZ]}async[L$e](){this[yE].isEmpty()?await Promise.all(this[Fs].map(e=>e.close())):await new Promise(e=>{this[LM]=e})}async[O$e](e){for(;;){let r=this[yE].shift();if(!r)break;r.handler.onError(e)}await Promise.all(this[Fs].map(r=>r.destroy(e)))}[M$e](e,r){let n=this[MM]();return n?n.dispatch(e,r)||(n[ps]=!0,this[ps]=!this[MM]()):(this[ps]=!0,this[yE].push({opts:e,handler:r}),this[gE]++),!this[ps]}[AZ](e){return e.on("drain",this[OM]).on("connect",this[dZ]).on("disconnect",this[pZ]).on("connectionError",this[mZ]),this[Fs].push(e),this[ps]&&queueMicrotask(()=>{this[ps]&&this[OM](e[k$e],[this,e])}),this}[hZ](e){e.close(()=>{let r=this[Fs].indexOf(e);r!==-1&&this[Fs].splice(r,1)}),this[ps]=this[Fs].some(r=>!r[ps]&&r.closed!==!0&&r.destroyed!==!0)}};gZ.exports={PoolBase:FM,kClients:Fs,kNeedDrain:ps,kAddClient:AZ,kRemoveClient:hZ,kGetDispatcher:MM}});var RA=b((P1t,IZ)=>{"use strict";var{PoolBase:U$e,kClients:yb,kNeedDrain:q$e,kAddClient:$$e,kGetDispatcher:G$e}=UM(),H$e=BA(),{InvalidArgumentError:qM}=bt(),yZ=ut(),{kUrl:EZ,kInterceptors:z$e}=Zt(),V$e=Ky(),$M=Symbol("options"),GM=Symbol("connections"),CZ=Symbol("factory");function Y$e(t,e){return new H$e(t,e)}i(Y$e,"defaultFactory");var HM=class extends U$e{static{i(this,"Pool")}constructor(e,{connections:r,factory:n=Y$e,connect:s,connectTimeout:o,tls:a,maxCachedSessions:c,socketPath:l,autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d,allowH2:p,...m}={}){if(super(),r!=null&&(!Number.isFinite(r)||r<0))throw new qM("invalid connections");if(typeof n!="function")throw new qM("factory must be a function.");if(s!=null&&typeof s!="function"&&typeof s!="object")throw new qM("connect must be a function or an object");typeof s!="function"&&(s=V$e({...a,maxCachedSessions:c,allowH2:p,socketPath:l,timeout:o,...u?{autoSelectFamily:u,autoSelectFamilyAttemptTimeout:d}:void 0,...s})),this[z$e]=m.interceptors?.Pool&&Array.isArray(m.interceptors.Pool)?m.interceptors.Pool:[],this[GM]=r||null,this[EZ]=yZ.parseOrigin(e),this[$M]={...yZ.deepClone(m),connect:s,allowH2:p},this[$M].interceptors=m.interceptors?{...m.interceptors}:void 0,this[CZ]=n,this.on("connectionError",(f,g,E)=>{for(let x of g){let w=this[yb].indexOf(x);w!==-1&&this[yb].splice(w,1)}})}[G$e](){for(let e of this[yb])if(!e[q$e])return e;if(!this[GM]||this[yb].length{"use strict";var{BalancedPoolMissingUpstreamError:W$e,InvalidArgumentError:j$e}=bt(),{PoolBase:J$e,kClients:Gn,kNeedDrain:EE,kAddClient:K$e,kRemoveClient:X$e,kGetDispatcher:Z$e}=UM(),eGe=RA(),{kUrl:zM,kInterceptors:tGe}=Zt(),{parseOrigin:xZ}=ut(),wZ=Symbol("factory"),Eb=Symbol("options"),bZ=Symbol("kGreatestCommonDivisor"),Hp=Symbol("kCurrentWeight"),zp=Symbol("kIndex"),oi=Symbol("kWeight"),Cb=Symbol("kMaxWeightPerServer"),Ib=Symbol("kErrorPenalty");function rGe(t,e){if(t===0)return e;for(;e!==0;){let r=e;e=t%e,t=r}return t}i(rGe,"getGreatestCommonDivisor");function nGe(t,e){return new eGe(t,e)}i(nGe,"defaultFactory");var VM=class extends J$e{static{i(this,"BalancedPool")}constructor(e=[],{factory:r=nGe,...n}={}){if(super(),this[Eb]=n,this[zp]=-1,this[Hp]=0,this[Cb]=this[Eb].maxWeightPerServer||100,this[Ib]=this[Eb].errorPenalty||15,Array.isArray(e)||(e=[e]),typeof r!="function")throw new j$e("factory must be a function.");this[tGe]=n.interceptors?.BalancedPool&&Array.isArray(n.interceptors.BalancedPool)?n.interceptors.BalancedPool:[],this[wZ]=r;for(let s of e)this.addUpstream(s);this._updateBalancedPoolStats()}addUpstream(e){let r=xZ(e).origin;if(this[Gn].find(s=>s[zM].origin===r&&s.closed!==!0&&s.destroyed!==!0))return this;let n=this[wZ](r,Object.assign({},this[Eb]));this[K$e](n),n.on("connect",()=>{n[oi]=Math.min(this[Cb],n[oi]+this[Ib])}),n.on("connectionError",()=>{n[oi]=Math.max(1,n[oi]-this[Ib]),this._updateBalancedPoolStats()}),n.on("disconnect",(...s)=>{let o=s[2];o&&o.code==="UND_ERR_SOCKET"&&(n[oi]=Math.max(1,n[oi]-this[Ib]),this._updateBalancedPoolStats())});for(let s of this[Gn])s[oi]=this[Cb];return this._updateBalancedPoolStats(),this}_updateBalancedPoolStats(){let e=0;for(let r=0;rs[zM].origin===r&&s.closed!==!0&&s.destroyed!==!0);return n&&this[X$e](n),this}get upstreams(){return this[Gn].filter(e=>e.closed!==!0&&e.destroyed!==!0).map(e=>e[zM].origin)}[Z$e](){if(this[Gn].length===0)throw new W$e;if(!this[Gn].find(o=>!o[EE]&&o.closed!==!0&&o.destroyed!==!0)||this[Gn].map(o=>o[EE]).reduce((o,a)=>o&&a,!0))return;let n=0,s=this[Gn].findIndex(o=>!o[EE]);for(;n++this[Gn][s][oi]&&!o[EE]&&(s=this[zp]),this[zp]===0&&(this[Hp]=this[Hp]-this[bZ],this[Hp]<=0&&(this[Hp]=this[Cb])),o[oi]>=this[Hp]&&!o[EE])return o}return this[Hp]=this[Gn][s][oi],this[zp]=s,this[Gn][s]}};SZ.exports=VM});var NA=b((D1t,QZ)=>{"use strict";var{InvalidArgumentError:xb}=bt(),{kClients:Zu,kRunning:RZ,kClose:sGe,kDestroy:oGe,kDispatch:iGe,kInterceptors:aGe}=Zt(),cGe=uA(),lGe=RA(),uGe=BA(),dGe=ut(),pGe=Ab(),NZ=Symbol("onConnect"),TZ=Symbol("onDisconnect"),PZ=Symbol("onConnectionError"),mGe=Symbol("maxRedirections"),vZ=Symbol("onDrain"),_Z=Symbol("factory"),YM=Symbol("options");function fGe(t,e){return e&&e.connections===1?new uGe(t,e):new lGe(t,e)}i(fGe,"defaultFactory");var WM=class extends cGe{static{i(this,"Agent")}constructor({factory:e=fGe,maxRedirections:r=0,connect:n,...s}={}){if(super(),typeof e!="function")throw new xb("factory must be a function.");if(n!=null&&typeof n!="function"&&typeof n!="object")throw new xb("connect must be a function or an object");if(!Number.isInteger(r)||r<0)throw new xb("maxRedirections must be a positive number");n&&typeof n!="function"&&(n={...n}),this[aGe]=s.interceptors?.Agent&&Array.isArray(s.interceptors.Agent)?s.interceptors.Agent:[pGe({maxRedirections:r})],this[YM]={...dGe.deepClone(s),connect:n},this[YM].interceptors=s.interceptors?{...s.interceptors}:void 0,this[mGe]=r,this[_Z]=e,this[Zu]=new Map,this[vZ]=(o,a)=>{this.emit("drain",o,[this,...a])},this[NZ]=(o,a)=>{this.emit("connect",o,[this,...a])},this[TZ]=(o,a,c)=>{this.emit("disconnect",o,[this,...a],c)},this[PZ]=(o,a,c)=>{this.emit("connectionError",o,[this,...a],c)}}get[RZ](){let e=0;for(let r of this[Zu].values())e+=r[RZ];return e}[iGe](e,r){let n;if(e.origin&&(typeof e.origin=="string"||e.origin instanceof URL))n=String(e.origin);else throw new xb("opts.origin must be a non-empty string or URL.");let s=this[Zu].get(n);return s||(s=this[_Z](e.origin,this[YM]).on("drain",this[vZ]).on("connect",this[NZ]).on("disconnect",this[TZ]).on("connectionError",this[PZ]),this[Zu].set(n,s)),s.dispatch(e,r)}async[sGe](){let e=[];for(let r of this[Zu].values())e.push(r.close());this[Zu].clear(),await Promise.all(e)}async[oGe](e){let r=[];for(let n of this[Zu].values())r.push(n.destroy(e));this[Zu].clear(),await Promise.all(r)}};QZ.exports=WM});var ZM=b((L1t,HZ)=>{"use strict";var{kProxy:jM,kClose:FZ,kDestroy:UZ,kDispatch:DZ,kInterceptors:AGe}=Zt(),{URL:Vp}=require("node:url"),hGe=NA(),qZ=RA(),$Z=uA(),{InvalidArgumentError:TA,RequestAbortedError:gGe,SecureProxyConnectionError:yGe}=bt(),kZ=Ky(),GZ=BA(),wb=Symbol("proxy agent"),bb=Symbol("proxy client"),ed=Symbol("proxy headers"),JM=Symbol("request tls settings"),LZ=Symbol("proxy tls settings"),OZ=Symbol("connect endpoint function"),MZ=Symbol("tunnel proxy");function EGe(t){return t==="https:"?443:80}i(EGe,"defaultProtocolPort");function CGe(t,e){return new qZ(t,e)}i(CGe,"defaultFactory");var IGe=i(()=>{},"noop");function xGe(t,e){return e.connections===1?new GZ(t,e):new qZ(t,e)}i(xGe,"defaultAgentFactory");var KM=class extends $Z{static{i(this,"Http1ProxyWrapper")}#e;constructor(e,{headers:r={},connect:n,factory:s}){if(super(),!e)throw new TA("Proxy URL is mandatory");this[ed]=r,s?this.#e=s(e,{connect:n}):this.#e=new GZ(e,{connect:n})}[DZ](e,r){let n=r.onHeaders;r.onHeaders=function(c,l,u){if(c===407){typeof r.onError=="function"&&r.onError(new TA("Proxy Authentication Required (407)"));return}n&&n.call(this,c,l,u)};let{origin:s,path:o="/",headers:a={}}=e;if(e.path=s+o,!("host"in a)&&!("Host"in a)){let{host:c}=new Vp(s);a.host=c}return e.headers={...this[ed],...a},this.#e[DZ](e,r)}async[FZ](){return this.#e.close()}async[UZ](e){return this.#e.destroy(e)}},XM=class extends $Z{static{i(this,"ProxyAgent")}constructor(e){if(super(),!e||typeof e=="object"&&!(e instanceof Vp)&&!e.uri)throw new TA("Proxy uri is mandatory");let{clientFactory:r=CGe}=e;if(typeof r!="function")throw new TA("Proxy opts.clientFactory must be a function.");let{proxyTunnel:n=!0}=e,s=this.#e(e),{href:o,origin:a,port:c,protocol:l,username:u,password:d,hostname:p}=s;if(this[jM]={uri:o,protocol:l},this[AGe]=e.interceptors?.ProxyAgent&&Array.isArray(e.interceptors.ProxyAgent)?e.interceptors.ProxyAgent:[],this[JM]=e.requestTls,this[LZ]=e.proxyTls,this[ed]=e.headers||{},this[MZ]=n,e.auth&&e.token)throw new TA("opts.auth cannot be used in combination with opts.token");e.auth?this[ed]["proxy-authorization"]=`Basic ${e.auth}`:e.token?this[ed]["proxy-authorization"]=e.token:u&&d&&(this[ed]["proxy-authorization"]=`Basic ${Buffer.from(`${decodeURIComponent(u)}:${decodeURIComponent(d)}`).toString("base64")}`);let m=kZ({...e.proxyTls});this[OZ]=kZ({...e.requestTls});let f=e.factory||xGe,g=i((E,x)=>{let{protocol:w}=new Vp(E);return!this[MZ]&&w==="http:"&&this[jM].protocol==="http:"?new KM(this[jM].uri,{headers:this[ed],connect:m,factory:f}):f(E,x)},"factory");this[bb]=r(s,{connect:m}),this[wb]=new hGe({...e,factory:g,connect:i(async(E,x)=>{let w=E.host;E.port||(w+=`:${EGe(E.protocol)}`);try{let{socket:S,statusCode:P}=await this[bb].connect({origin:a,port:c,path:w,signal:E.signal,headers:{...this[ed],host:E.host},servername:this[LZ]?.servername||p});if(P!==200&&(S.on("error",IGe).destroy(),x(new gGe(`Proxy response (${P}) !== 200 when HTTP Tunneling`))),E.protocol!=="https:"){x(null,S);return}let Q;this[JM]?Q=this[JM].servername:Q=E.servername,this[OZ]({...E,servername:Q,httpSocket:S},x)}catch(S){S.code==="ERR_TLS_CERT_ALTNAME_INVALID"?x(new yGe(S)):x(S)}},"connect")})}dispatch(e,r){let n=wGe(e.headers);if(bGe(n),n&&!("host"in n)&&!("Host"in n)){let{host:s}=new Vp(e.origin);n.host=s}return this[wb].dispatch({...e,headers:n},r)}#e(e){return typeof e=="string"?new Vp(e):e instanceof Vp?e:new Vp(e.uri)}async[FZ](){await this[wb].close(),await this[bb].close()}async[UZ](){await this[wb].destroy(),await this[bb].destroy()}};function wGe(t){if(Array.isArray(t)){let e={};for(let r=0;rr.toLowerCase()==="proxy-authorization"))throw new TA("Proxy-Authorization should be sent in ProxyAgent constructor")}i(bGe,"throwIfProxyAuthIsSent");HZ.exports=XM});var JZ=b((M1t,jZ)=>{"use strict";var SGe=uA(),{kClose:BGe,kDestroy:RGe,kClosed:zZ,kDestroyed:VZ,kDispatch:NGe,kNoProxyAgent:CE,kHttpProxyAgent:td,kHttpsProxyAgent:Yp}=Zt(),YZ=ZM(),TGe=NA(),PGe={"http:":80,"https:":443},WZ=!1,eF=class extends SGe{static{i(this,"EnvHttpProxyAgent")}#e=null;#t=null;#s=null;constructor(e={}){super(),this.#s=e,WZ||(WZ=!0,process.emitWarning("EnvHttpProxyAgent is experimental, expect them to change at any time.",{code:"UNDICI-EHPA"}));let{httpProxy:r,httpsProxy:n,noProxy:s,...o}=e;this[CE]=new TGe(o);let a=r??process.env.http_proxy??process.env.HTTP_PROXY;a?this[td]=new YZ({...o,uri:a}):this[td]=this[CE];let c=n??process.env.https_proxy??process.env.HTTPS_PROXY;c?this[Yp]=new YZ({...o,uri:c}):this[Yp]=this[td],this.#o()}[NGe](e,r){let n=new URL(e.origin);return this.#n(n).dispatch(e,r)}async[BGe](){await this[CE].close(),this[td][zZ]||await this[td].close(),this[Yp][zZ]||await this[Yp].close()}async[RGe](e){await this[CE].destroy(e),this[td][VZ]||await this[td].destroy(e),this[Yp][VZ]||await this[Yp].destroy(e)}#n(e){let{protocol:r,host:n,port:s}=e;return n=n.replace(/:\d*$/,"").toLowerCase(),s=Number.parseInt(s,10)||PGe[r]||0,this.#r(n,s)?r==="https:"?this[Yp]:this[td]:this[CE]}#r(e,r){if(this.#i&&this.#o(),this.#t.length===0)return!0;if(this.#e==="*")return!1;for(let n=0;n{"use strict";var PA=require("node:assert"),{kRetryHandlerDefaultRetry:KZ}=Zt(),{RequestRetryError:IE}=bt(),{isDisturbed:XZ,parseHeaders:vGe,parseRangeHeader:ZZ,wrapRequestBody:_Ge}=ut();function QGe(t){let e=Date.now();return new Date(t).getTime()-e}i(QGe,"calculateRetryAfterHeader");var tF=class t{static{i(this,"RetryHandler")}constructor(e,r){let{retryOptions:n,...s}=e,{retry:o,maxRetries:a,maxTimeout:c,minTimeout:l,timeoutFactor:u,methods:d,errorCodes:p,retryAfter:m,statusCodes:f}=n??{};this.dispatch=r.dispatch,this.handler=r.handler,this.opts={...s,body:_Ge(e.body)},this.abort=null,this.aborted=!1,this.retryOpts={retry:o??t[KZ],retryAfter:m??!0,maxTimeout:c??30*1e3,minTimeout:l??500,timeoutFactor:u??2,maxRetries:a??5,methods:d??["GET","HEAD","OPTIONS","PUT","DELETE","TRACE"],statusCodes:f??[500,502,503,504,429],errorCodes:p??["ECONNRESET","ECONNREFUSED","ENOTFOUND","ENETDOWN","ENETUNREACH","EHOSTDOWN","EHOSTUNREACH","EPIPE","UND_ERR_SOCKET"]},this.retryCount=0,this.retryCountCheckpoint=0,this.start=0,this.end=null,this.etag=null,this.resume=null,this.handler.onConnect(g=>{this.aborted=!0,this.abort?this.abort(g):this.reason=g})}onRequestSent(){this.handler.onRequestSent&&this.handler.onRequestSent()}onUpgrade(e,r,n){this.handler.onUpgrade&&this.handler.onUpgrade(e,r,n)}onConnect(e){this.aborted?e(this.reason):this.abort=e}onBodySent(e){if(this.handler.onBodySent)return this.handler.onBodySent(e)}static[KZ](e,{state:r,opts:n},s){let{statusCode:o,code:a,headers:c}=e,{method:l,retryOptions:u}=n,{maxRetries:d,minTimeout:p,maxTimeout:m,timeoutFactor:f,statusCodes:g,errorCodes:E,methods:x}=u,{counter:w}=r;if(a&&a!=="UND_ERR_REQ_RETRY"&&!E.includes(a)){s(e);return}if(Array.isArray(x)&&!x.includes(l)){s(e);return}if(o!=null&&Array.isArray(g)&&!g.includes(o)){s(e);return}if(w>d){s(e);return}let S=c?.["retry-after"];S&&(S=Number(S),S=Number.isNaN(S)?QGe(S):S*1e3);let P=S>0?Math.min(S,m):Math.min(p*f**(w-1),m);setTimeout(()=>s(null),P)}onHeaders(e,r,n,s){let o=vGe(r);if(this.retryCount+=1,e>=300)return this.retryOpts.statusCodes.includes(e)===!1?this.handler.onHeaders(e,r,n,s):(this.abort(new IE("Request failed",e,{headers:o,data:{count:this.retryCount}})),!1);if(this.resume!=null){if(this.resume=null,e!==206&&(this.start>0||e!==200))return this.abort(new IE("server does not support the range header and the payload was partially consumed",e,{headers:o,data:{count:this.retryCount}})),!1;let c=ZZ(o["content-range"]);if(!c)return this.abort(new IE("Content-Range mismatch",e,{headers:o,data:{count:this.retryCount}})),!1;if(this.etag!=null&&this.etag!==o.etag)return this.abort(new IE("ETag mismatch",e,{headers:o,data:{count:this.retryCount}})),!1;let{start:l,size:u,end:d=u-1}=c;return PA(this.start===l,"content-range mismatch"),PA(this.end==null||this.end===d,"content-range mismatch"),this.resume=n,!0}if(this.end==null){if(e===206){let c=ZZ(o["content-range"]);if(c==null)return this.handler.onHeaders(e,r,n,s);let{start:l,size:u,end:d=u-1}=c;PA(l!=null&&Number.isFinite(l),"content-range mismatch"),PA(d!=null&&Number.isFinite(d),"invalid content-length"),this.start=l,this.end=d}if(this.end==null){let c=o["content-length"];this.end=c!=null?Number(c)-1:null}return PA(Number.isFinite(this.start)),PA(this.end==null||Number.isFinite(this.end),"invalid content-length"),this.resume=n,this.etag=o.etag!=null?o.etag:null,this.etag!=null&&this.etag.startsWith("W/")&&(this.etag=null),this.handler.onHeaders(e,r,n,s)}let a=new IE("Request failed",e,{headers:o,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||XZ(this.opts.body))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}},r.bind(this));function r(n){if(n!=null||this.aborted||XZ(this.opts.body))return this.handler.onError(n);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)}}i(r,"onRetry")}};eee.exports=tF});var ree=b(($1t,tee)=>{"use strict";var DGe=jy(),kGe=Sb(),rF=class extends DGe{static{i(this,"RetryAgent")}#e=null;#t=null;constructor(e,r={}){super(r),this.#e=e,this.#t=r}dispatch(e,r){let n=new kGe({...e,retryOptions:this.#t},{dispatch:this.#e.dispatch.bind(this.#e),handler:r});return this.#e.dispatch(e,n)}close(){return this.#e.close()}destroy(){return this.#e.destroy()}};tee.exports=rF});var cF=b((H1t,dee)=>{"use strict";var aee=require("node:assert"),{Readable:LGe}=require("node:stream"),{RequestAbortedError:cee,NotSupportedError:OGe,InvalidArgumentError:MGe,AbortError:nF}=bt(),lee=ut(),{ReadableStreamFrom:FGe}=ut(),yo=Symbol("kConsume"),xE=Symbol("kReading"),rd=Symbol("kBody"),nee=Symbol("kAbort"),uee=Symbol("kContentType"),see=Symbol("kContentLength"),UGe=i(()=>{},"noop"),sF=class extends LGe{static{i(this,"BodyReadable")}constructor({resume:e,abort:r,contentType:n="",contentLength:s,highWaterMark:o=64*1024}){super({autoDestroy:!0,read:e,highWaterMark:o}),this._readableState.dataEmitted=!1,this[nee]=r,this[yo]=null,this[rd]=null,this[uee]=n,this[see]=s,this[xE]=!1}destroy(e){return!e&&!this._readableState.endEmitted&&(e=new cee),e&&this[nee](),super.destroy(e)}_destroy(e,r){this[xE]?r(e):setImmediate(()=>{r(e)})}on(e,...r){return(e==="data"||e==="readable")&&(this[xE]=!0),super.on(e,...r)}addListener(e,...r){return this.on(e,...r)}off(e,...r){let n=super.off(e,...r);return(e==="data"||e==="readable")&&(this[xE]=this.listenerCount("data")>0||this.listenerCount("readable")>0),n}removeListener(e,...r){return this.off(e,...r)}push(e){return this[yo]&&e!==null?(iF(this[yo],e),this[xE]?super.push(e):!0):super.push(e)}async text(){return wE(this,"text")}async json(){return wE(this,"json")}async blob(){return wE(this,"blob")}async bytes(){return wE(this,"bytes")}async arrayBuffer(){return wE(this,"arrayBuffer")}async formData(){throw new OGe}get bodyUsed(){return lee.isDisturbed(this)}get body(){return this[rd]||(this[rd]=FGe(this),this[yo]&&(this[rd].getReader(),aee(this[rd].locked))),this[rd]}async dump(e){let r=Number.isFinite(e?.limit)?e.limit:131072,n=e?.signal;if(n!=null&&(typeof n!="object"||!("aborted"in n)))throw new MGe("signal must be an AbortSignal");return n?.throwIfAborted(),this._readableState.closeEmitted?null:await new Promise((s,o)=>{this[see]>r&&this.destroy(new nF);let a=i(()=>{this.destroy(n.reason??new nF)},"onAbort");n?.addEventListener("abort",a),this.on("close",function(){n?.removeEventListener("abort",a),n?.aborted?o(n.reason??new nF):s(null)}).on("error",UGe).on("data",function(c){r-=c.length,r<=0&&this.destroy()}).resume()})}};function qGe(t){return t[rd]&&t[rd].locked===!0||t[yo]}i(qGe,"isLocked");function $Ge(t){return lee.isDisturbed(t)||qGe(t)}i($Ge,"isUnusable");async function wE(t,e){return aee(!t[yo]),new Promise((r,n)=>{if($Ge(t)){let s=t._readableState;s.destroyed&&s.closeEmitted===!1?t.on("error",o=>{n(o)}).on("close",()=>{n(new TypeError("unusable"))}):n(s.errored??new TypeError("unusable"))}else queueMicrotask(()=>{t[yo]={type:e,stream:t,resolve:r,reject:n,length:0,body:[]},t.on("error",function(s){aF(this[yo],s)}).on("close",function(){this[yo].body!==null&&aF(this[yo],new cee)}),GGe(t[yo])})})}i(wE,"consume");function GGe(t){if(t.body===null)return;let{_readableState:e}=t.stream;if(e.bufferIndex){let r=e.bufferIndex,n=e.buffer.length;for(let s=r;s2&&r[0]===239&&r[1]===187&&r[2]===191?3:0;return r.utf8Slice(s,n)}i(oF,"chunksDecode");function oee(t,e){if(t.length===0||e===0)return new Uint8Array(0);if(t.length===1)return new Uint8Array(t[0]);let r=new Uint8Array(Buffer.allocUnsafeSlow(e).buffer),n=0;for(let s=0;s{var HGe=require("node:assert"),{ResponseStatusCodeError:pee}=bt(),{chunksDecode:mee}=cF(),zGe=128*1024;async function VGe({callback:t,body:e,contentType:r,statusCode:n,statusMessage:s,headers:o}){HGe(e);let a=[],c=0;try{for await(let p of e)if(a.push(p),c+=p.length,c>zGe){a=[],c=0;break}}catch{a=[],c=0}let l=`Response status code ${n}${s?`: ${s}`:""}`;if(n===204||!r||!c){queueMicrotask(()=>t(new pee(l,n,o)));return}let u=Error.stackTraceLimit;Error.stackTraceLimit=0;let d;try{fee(r)?d=JSON.parse(mee(a,c)):Aee(r)&&(d=mee(a,c))}catch{}finally{Error.stackTraceLimit=u}queueMicrotask(()=>t(new pee(l,n,o,d)))}i(VGe,"getResolveErrorBodyCallback");var fee=i(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"),Aee=i(t=>t.length>4&&t[4]==="/"&&t[0]==="t"&&t[1]==="e"&&t[2]==="x"&&t[3]==="t","isContentTypeText");hee.exports={getResolveErrorBodyCallback:VGe,isContentTypeApplicationJson:fee,isContentTypeText:Aee}});var Eee=b((W1t,uF)=>{"use strict";var YGe=require("node:assert"),{Readable:WGe}=cF(),{InvalidArgumentError:vA,RequestAbortedError:gee}=bt(),Eo=ut(),{getResolveErrorBodyCallback:jGe}=lF(),{AsyncResource:JGe}=require("node:async_hooks"),Bb=class extends JGe{static{i(this,"RequestHandler")}constructor(e,r){if(!e||typeof e!="object")throw new vA("invalid opts");let{signal:n,method:s,opaque:o,body:a,onInfo:c,responseHeaders:l,throwOnError:u,highWaterMark:d}=e;try{if(typeof r!="function")throw new vA("invalid callback");if(d&&(typeof d!="number"||d<0))throw new vA("invalid highWaterMark");if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new vA("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new vA("invalid method");if(c&&typeof c!="function")throw new vA("invalid onInfo callback");super("UNDICI_REQUEST")}catch(p){throw Eo.isStream(a)&&Eo.destroy(a.on("error",Eo.nop),p),p}this.method=s,this.responseHeaders=l||null,this.opaque=o||null,this.callback=r,this.res=null,this.abort=null,this.body=a,this.trailers={},this.context=null,this.onInfo=c||null,this.throwOnError=u,this.highWaterMark=d,this.signal=n,this.reason=null,this.removeAbortListener=null,Eo.isStream(a)&&a.on("error",p=>{this.onError(p)}),this.signal&&(this.signal.aborted?this.reason=this.signal.reason??new gee:this.removeAbortListener=Eo.addAbortListener(this.signal,()=>{this.reason=this.signal.reason??new gee,this.res?Eo.destroy(this.res.on("error",Eo.nop),this.reason):this.abort&&this.abort(this.reason),this.removeAbortListener&&(this.res?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}))}onConnect(e,r){if(this.reason){e(this.reason);return}YGe(this.callback),this.abort=e,this.context=r}onHeaders(e,r,n,s){let{callback:o,opaque:a,abort:c,context:l,responseHeaders:u,highWaterMark:d}=this,p=u==="raw"?Eo.parseRawHeaders(r):Eo.parseHeaders(r);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:p});return}let m=u==="raw"?Eo.parseHeaders(r):p,f=m["content-type"],g=m["content-length"],E=new WGe({resume:n,abort:c,contentType:f,contentLength:this.method!=="HEAD"&&g?Number(g):null,highWaterMark:d});this.removeAbortListener&&E.on("close",this.removeAbortListener),this.callback=null,this.res=E,o!==null&&(this.throwOnError&&e>=400?this.runInAsyncScope(jGe,null,{callback:o,body:E,contentType:f,statusCode:e,statusMessage:s,headers:p}):this.runInAsyncScope(o,null,null,{statusCode:e,headers:p,trailers:this.trailers,opaque:a,body:E,context:l}))}onData(e){return this.res.push(e)}onComplete(e){Eo.parseHeaders(e,this.trailers),this.res.push(null)}onError(e){let{res:r,callback:n,body:s,opaque:o}=this;n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:o})})),r&&(this.res=null,queueMicrotask(()=>{Eo.destroy(r,e)})),s&&(this.body=null,Eo.destroy(s,e)),this.removeAbortListener&&(r?.off("close",this.removeAbortListener),this.removeAbortListener(),this.removeAbortListener=null)}};function yee(t,e){if(e===void 0)return new Promise((r,n)=>{yee.call(this,t,(s,o)=>s?n(s):r(o))});try{this.dispatch(t,new Bb(t,e))}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}i(yee,"request");uF.exports=yee;uF.exports.RequestHandler=Bb});var bE=b((J1t,xee)=>{var{addAbortListener:KGe}=ut(),{RequestAbortedError:XGe}=bt(),_A=Symbol("kListener"),Wa=Symbol("kSignal");function Cee(t){t.abort?t.abort(t[Wa]?.reason):t.reason=t[Wa]?.reason??new XGe,Iee(t)}i(Cee,"abort");function ZGe(t,e){if(t.reason=null,t[Wa]=null,t[_A]=null,!!e){if(e.aborted){Cee(t);return}t[Wa]=e,t[_A]=()=>{Cee(t)},KGe(t[Wa],t[_A])}}i(ZGe,"addSignal");function Iee(t){t[Wa]&&("removeEventListener"in t[Wa]?t[Wa].removeEventListener("abort",t[_A]):t[Wa].removeListener("abort",t[_A]),t[Wa]=null,t[_A]=null)}i(Iee,"removeSignal");xee.exports={addSignal:ZGe,removeSignal:Iee}});var Bee=b((X1t,See)=>{"use strict";var eHe=require("node:assert"),{finished:tHe,PassThrough:rHe}=require("node:stream"),{InvalidArgumentError:QA,InvalidReturnValueError:nHe}=bt(),ra=ut(),{getResolveErrorBodyCallback:sHe}=lF(),{AsyncResource:oHe}=require("node:async_hooks"),{addSignal:iHe,removeSignal:wee}=bE(),dF=class extends oHe{static{i(this,"StreamHandler")}constructor(e,r,n){if(!e||typeof e!="object")throw new QA("invalid opts");let{signal:s,method:o,opaque:a,body:c,onInfo:l,responseHeaders:u,throwOnError:d}=e;try{if(typeof n!="function")throw new QA("invalid callback");if(typeof r!="function")throw new QA("invalid factory");if(s&&typeof s.on!="function"&&typeof s.addEventListener!="function")throw new QA("signal must be an EventEmitter or EventTarget");if(o==="CONNECT")throw new QA("invalid method");if(l&&typeof l!="function")throw new QA("invalid onInfo callback");super("UNDICI_STREAM")}catch(p){throw ra.isStream(c)&&ra.destroy(c.on("error",ra.nop),p),p}this.responseHeaders=u||null,this.opaque=a||null,this.factory=r,this.callback=n,this.res=null,this.abort=null,this.context=null,this.trailers=null,this.body=c,this.onInfo=l||null,this.throwOnError=d||!1,ra.isStream(c)&&c.on("error",p=>{this.onError(p)}),iHe(this,s)}onConnect(e,r){if(this.reason){e(this.reason);return}eHe(this.callback),this.abort=e,this.context=r}onHeaders(e,r,n,s){let{factory:o,opaque:a,context:c,callback:l,responseHeaders:u}=this,d=u==="raw"?ra.parseRawHeaders(r):ra.parseHeaders(r);if(e<200){this.onInfo&&this.onInfo({statusCode:e,headers:d});return}this.factory=null;let p;if(this.throwOnError&&e>=400){let g=(u==="raw"?ra.parseHeaders(r):d)["content-type"];p=new rHe,this.callback=null,this.runInAsyncScope(sHe,null,{callback:l,body:p,contentType:g,statusCode:e,statusMessage:s,headers:d})}else{if(o===null)return;if(p=this.runInAsyncScope(o,null,{statusCode:e,headers:d,opaque:a,context:c}),!p||typeof p.write!="function"||typeof p.end!="function"||typeof p.on!="function")throw new nHe("expected Writable");tHe(p,{readable:!1},f=>{let{callback:g,res:E,opaque:x,trailers:w,abort:S}=this;this.res=null,(f||!E.readable)&&ra.destroy(E,f),this.callback=null,this.runInAsyncScope(g,null,f||null,{opaque:x,trailers:w}),f&&S()})}return p.on("drain",n),this.res=p,(p.writableNeedDrain!==void 0?p.writableNeedDrain:p._writableState?.needDrain)!==!0}onData(e){let{res:r}=this;return r?r.write(e):!0}onComplete(e){let{res:r}=this;wee(this),r&&(this.trailers=ra.parseHeaders(e),r.end())}onError(e){let{res:r,callback:n,opaque:s,body:o}=this;wee(this),this.factory=null,r?(this.res=null,ra.destroy(r,e)):n&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(n,null,e,{opaque:s})})),o&&(this.body=null,ra.destroy(o,e))}};function bee(t,e,r){if(r===void 0)return new Promise((n,s)=>{bee.call(this,t,e,(o,a)=>o?s(o):n(a))});try{this.dispatch(t,new dF(t,e,r))}catch(n){if(typeof r!="function")throw n;let s=t?.opaque;queueMicrotask(()=>r(n,{opaque:s}))}}i(bee,"stream");See.exports=bee});var Pee=b((eUt,Tee)=>{"use strict";var{Readable:Nee,Duplex:aHe,PassThrough:cHe}=require("node:stream"),{InvalidArgumentError:SE,InvalidReturnValueError:lHe,RequestAbortedError:pF}=bt(),ii=ut(),{AsyncResource:uHe}=require("node:async_hooks"),{addSignal:dHe,removeSignal:pHe}=bE(),Ree=require("node:assert"),DA=Symbol("resume"),mF=class extends Nee{static{i(this,"PipelineRequest")}constructor(){super({autoDestroy:!0}),this[DA]=null}_read(){let{[DA]:e}=this;e&&(this[DA]=null,e())}_destroy(e,r){this._read(),r(e)}},fF=class extends Nee{static{i(this,"PipelineResponse")}constructor(e){super({autoDestroy:!0}),this[DA]=e}_read(){this[DA]()}_destroy(e,r){!e&&!this._readableState.endEmitted&&(e=new pF),r(e)}},AF=class extends uHe{static{i(this,"PipelineHandler")}constructor(e,r){if(!e||typeof e!="object")throw new SE("invalid opts");if(typeof r!="function")throw new SE("invalid handler");let{signal:n,method:s,opaque:o,onInfo:a,responseHeaders:c}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new SE("signal must be an EventEmitter or EventTarget");if(s==="CONNECT")throw new SE("invalid method");if(a&&typeof a!="function")throw new SE("invalid onInfo callback");super("UNDICI_PIPELINE"),this.opaque=o||null,this.responseHeaders=c||null,this.handler=r,this.abort=null,this.context=null,this.onInfo=a||null,this.req=new mF().on("error",ii.nop),this.ret=new aHe({readableObjectMode:e.objectMode,autoDestroy:!0,read:i(()=>{let{body:l}=this;l?.resume&&l.resume()},"read"),write:i((l,u,d)=>{let{req:p}=this;p.push(l,u)||p._readableState.destroyed?d():p[DA]=d},"write"),destroy:i((l,u)=>{let{body:d,req:p,res:m,ret:f,abort:g}=this;!l&&!f._readableState.endEmitted&&(l=new pF),g&&l&&g(),ii.destroy(d,l),ii.destroy(p,l),ii.destroy(m,l),pHe(this),u(l)},"destroy")}).on("prefinish",()=>{let{req:l}=this;l.push(null)}),this.res=null,dHe(this,n)}onConnect(e,r){let{ret:n,res:s}=this;if(this.reason){e(this.reason);return}Ree(!s,"pipeline cannot be retried"),Ree(!n.destroyed),this.abort=e,this.context=r}onHeaders(e,r,n){let{opaque:s,handler:o,context:a}=this;if(e<200){if(this.onInfo){let l=this.responseHeaders==="raw"?ii.parseRawHeaders(r):ii.parseHeaders(r);this.onInfo({statusCode:e,headers:l})}return}this.res=new fF(n);let c;try{this.handler=null;let l=this.responseHeaders==="raw"?ii.parseRawHeaders(r):ii.parseHeaders(r);c=this.runInAsyncScope(o,null,{statusCode:e,headers:l,opaque:s,body:this.res,context:a})}catch(l){throw this.res.on("error",ii.nop),l}if(!c||typeof c.on!="function")throw new lHe("expected Readable");c.on("data",l=>{let{ret:u,body:d}=this;!u.push(l)&&d.pause&&d.pause()}).on("error",l=>{let{ret:u}=this;ii.destroy(u,l)}).on("end",()=>{let{ret:l}=this;l.push(null)}).on("close",()=>{let{ret:l}=this;l._readableState.ended||ii.destroy(l,new pF)}),this.body=c}onData(e){let{res:r}=this;return r.push(e)}onComplete(e){let{res:r}=this;r.push(null)}onError(e){let{ret:r}=this;this.handler=null,ii.destroy(r,e)}};function mHe(t,e){try{let r=new AF(t,e);return this.dispatch({...t,body:r.req},r),r.ret}catch(r){return new cHe().destroy(r)}}i(mHe,"pipeline");Tee.exports=mHe});var Lee=b((rUt,kee)=>{"use strict";var{InvalidArgumentError:hF,SocketError:fHe}=bt(),{AsyncResource:AHe}=require("node:async_hooks"),vee=ut(),{addSignal:hHe,removeSignal:_ee}=bE(),Qee=require("node:assert"),gF=class extends AHe{static{i(this,"UpgradeHandler")}constructor(e,r){if(!e||typeof e!="object")throw new hF("invalid opts");if(typeof r!="function")throw new hF("invalid callback");let{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new hF("signal must be an EventEmitter or EventTarget");super("UNDICI_UPGRADE"),this.responseHeaders=o||null,this.opaque=s||null,this.callback=r,this.abort=null,this.context=null,hHe(this,n)}onConnect(e,r){if(this.reason){e(this.reason);return}Qee(this.callback),this.abort=e,this.context=null}onHeaders(){throw new fHe("bad upgrade",null)}onUpgrade(e,r,n){Qee(e===101);let{callback:s,opaque:o,context:a}=this;_ee(this),this.callback=null;let c=this.responseHeaders==="raw"?vee.parseRawHeaders(r):vee.parseHeaders(r);this.runInAsyncScope(s,null,null,{headers:c,socket:n,opaque:o,context:a})}onError(e){let{callback:r,opaque:n}=this;_ee(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:n})}))}};function Dee(t,e){if(e===void 0)return new Promise((r,n)=>{Dee.call(this,t,(s,o)=>s?n(s):r(o))});try{let r=new gF(t,e);this.dispatch({...t,method:t.method||"GET",upgrade:t.protocol||"Websocket"},r)}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}i(Dee,"upgrade");kee.exports=Dee});var qee=b((sUt,Uee)=>{"use strict";var gHe=require("node:assert"),{AsyncResource:yHe}=require("node:async_hooks"),{InvalidArgumentError:yF,SocketError:EHe}=bt(),Oee=ut(),{addSignal:CHe,removeSignal:Mee}=bE(),EF=class extends yHe{static{i(this,"ConnectHandler")}constructor(e,r){if(!e||typeof e!="object")throw new yF("invalid opts");if(typeof r!="function")throw new yF("invalid callback");let{signal:n,opaque:s,responseHeaders:o}=e;if(n&&typeof n.on!="function"&&typeof n.addEventListener!="function")throw new yF("signal must be an EventEmitter or EventTarget");super("UNDICI_CONNECT"),this.opaque=s||null,this.responseHeaders=o||null,this.callback=r,this.abort=null,CHe(this,n)}onConnect(e,r){if(this.reason){e(this.reason);return}gHe(this.callback),this.abort=e,this.context=r}onHeaders(){throw new EHe("bad connect",null)}onUpgrade(e,r,n){let{callback:s,opaque:o,context:a}=this;Mee(this),this.callback=null;let c=r;c!=null&&(c=this.responseHeaders==="raw"?Oee.parseRawHeaders(r):Oee.parseHeaders(r)),this.runInAsyncScope(s,null,null,{statusCode:e,headers:c,socket:n,opaque:o,context:a})}onError(e){let{callback:r,opaque:n}=this;Mee(this),r&&(this.callback=null,queueMicrotask(()=>{this.runInAsyncScope(r,null,e,{opaque:n})}))}};function Fee(t,e){if(e===void 0)return new Promise((r,n)=>{Fee.call(this,t,(s,o)=>s?n(s):r(o))});try{let r=new EF(t,e);this.dispatch({...t,method:"CONNECT"},r)}catch(r){if(typeof e!="function")throw r;let n=t?.opaque;queueMicrotask(()=>e(r,{opaque:n}))}}i(Fee,"connect");Uee.exports=Fee});var $ee=b((iUt,kA)=>{"use strict";kA.exports.request=Eee();kA.exports.stream=Bee();kA.exports.pipeline=Pee();kA.exports.upgrade=Lee();kA.exports.connect=qee()});var IF=b((aUt,Hee)=>{"use strict";var{UndiciError:IHe}=bt(),Gee=Symbol.for("undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED"),CF=class t extends IHe{static{i(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[Gee]===!0}[Gee]=!0};Hee.exports={MockNotMatchedError:CF}});var LA=b((lUt,zee)=>{"use strict";zee.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 BE=b((uUt,rte)=>{"use strict";var{MockNotMatchedError:Wp}=IF(),{kDispatches:Rb,kMockAgent:xHe,kOriginalDispatch:wHe,kOrigin:bHe,kGetNetConnect:SHe}=LA(),{buildURL:BHe}=ut(),{STATUS_CODES:RHe}=require("node:http"),{types:{isPromise:NHe}}=require("node:util");function Ml(t,e){return typeof t=="string"?t===e:t instanceof RegExp?t.test(e):typeof t=="function"?t(e)===!0:!1}i(Ml,"matchValue");function Yee(t){return Object.fromEntries(Object.entries(t).map(([e,r])=>[e.toLocaleLowerCase(),r]))}i(Yee,"lowerCaseEntries");function Wee(t,e){if(Array.isArray(t)){for(let r=0;r"u")return!0;if(typeof e!="object"||typeof t.headers!="object")return!1;for(let[r,n]of Object.entries(t.headers)){let s=Wee(e,r);if(!Ml(n,s))return!1}return!0}i(jee,"matchHeaders");function Vee(t){if(typeof t!="string")return t;let e=t.split("?");if(e.length!==2)return t;let r=new URLSearchParams(e.pop());return r.sort(),[...e,r.toString()].join("?")}i(Vee,"safeUrl");function THe(t,{path:e,method:r,body:n,headers:s}){let o=Ml(t.path,e),a=Ml(t.method,r),c=typeof t.body<"u"?Ml(t.body,n):!0,l=jee(t,s);return o&&a&&c&&l}i(THe,"matchKey");function Jee(t){return Buffer.isBuffer(t)||t instanceof Uint8Array||t instanceof ArrayBuffer?t:typeof t=="object"?JSON.stringify(t):t.toString()}i(Jee,"getResponseData");function Kee(t,e){let r=e.query?BHe(e.path,e.query):e.path,n=typeof r=="string"?Vee(r):r,s=t.filter(({consumed:o})=>!o).filter(({path:o})=>Ml(Vee(o),n));if(s.length===0)throw new Wp(`Mock dispatch not matched for path '${n}'`);if(s=s.filter(({method:o})=>Ml(o,e.method)),s.length===0)throw new Wp(`Mock dispatch not matched for method '${e.method}' on path '${n}'`);if(s=s.filter(({body:o})=>typeof o<"u"?Ml(o,e.body):!0),s.length===0)throw new Wp(`Mock dispatch not matched for body '${e.body}' on path '${n}'`);if(s=s.filter(o=>jee(o,e.headers)),s.length===0){let o=typeof e.headers=="object"?JSON.stringify(e.headers):e.headers;throw new Wp(`Mock dispatch not matched for headers '${o}' on path '${n}'`)}return s[0]}i(Kee,"getMockDispatch");function PHe(t,e,r){let n={timesInvoked:0,times:1,persist:!1,consumed:!1},s=typeof r=="function"?{callback:r}:{...r},o={...n,...e,pending:!0,data:{error:null,...s}};return t.push(o),o}i(PHe,"addMockDispatch");function xF(t,e){let r=t.findIndex(n=>n.consumed?THe(n,e):!1);r!==-1&&t.splice(r,1)}i(xF,"deleteMockDispatch");function Xee(t){let{path:e,method:r,body:n,headers:s,query:o}=t;return{path:e,method:r,body:n,headers:s,query:o}}i(Xee,"buildKey");function wF(t){let e=Object.keys(t),r=[];for(let n=0;n=m,n.pending=p0?setTimeout(()=>{f(this[Rb])},u):f(this[Rb]);function f(E,x=o){let w=Array.isArray(t.headers)?bF(t.headers):t.headers,S=typeof x=="function"?x({...t,headers:w}):x;if(NHe(S)){S.then(M=>f(E,M));return}let P=Jee(S),Q=wF(a),q=wF(c);e.onConnect?.(M=>e.onError(M),null),e.onHeaders?.(s,Q,g,Zee(s)),e.onData?.(Buffer.from(P)),e.onComplete?.(q),xF(E,r)}i(f,"handleReply");function g(){}return i(g,"resume"),!0}i(ete,"mockDispatch");function _He(){let t=this[xHe],e=this[bHe],r=this[wHe];return i(function(s,o){if(t.isMockActive)try{ete.call(this,s,o)}catch(a){if(a instanceof Wp){let c=t[SHe]();if(c===!1)throw new Wp(`${a.message}: subsequent request to origin ${e} was not allowed (net.connect disabled)`);if(tte(c,e))r.call(this,s,o);else throw new Wp(`${a.message}: subsequent request to origin ${e} was not allowed (net.connect is not enabled for this origin)`)}else throw a}else r.call(this,s,o)},"dispatch")}i(_He,"buildMockDispatch");function tte(t,e){let r=new URL(e);return t===!0?!0:!!(Array.isArray(t)&&t.some(n=>Ml(n,r.host)))}i(tte,"checkNetConnect");function QHe(t){if(t){let{agent:e,...r}=t;return r}}i(QHe,"buildMockOptions");rte.exports={getResponseData:Jee,getMockDispatch:Kee,addMockDispatch:PHe,deleteMockDispatch:xF,buildKey:Xee,generateKeyValues:wF,matchValue:Ml,getResponse:vHe,getStatusText:Zee,mockDispatch:ete,buildMockDispatch:_He,checkNetConnect:tte,buildMockOptions:QHe,getHeaderByName:Wee,buildHeadersFromArray:bF}});var vF=b((pUt,PF)=>{"use strict";var{getResponseData:DHe,buildKey:kHe,addMockDispatch:SF}=BE(),{kDispatches:Nb,kDispatchKey:Tb,kDefaultHeaders:BF,kDefaultTrailers:RF,kContentLength:NF,kMockDispatch:Pb}=LA(),{InvalidArgumentError:ja}=bt(),{buildURL:LHe}=ut(),OA=class{static{i(this,"MockScope")}constructor(e){this[Pb]=e}delay(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new ja("waitInMs must be a valid integer > 0");return this[Pb].delay=e,this}persist(){return this[Pb].persist=!0,this}times(e){if(typeof e!="number"||!Number.isInteger(e)||e<=0)throw new ja("repeatTimes must be a valid integer > 0");return this[Pb].times=e,this}},TF=class{static{i(this,"MockInterceptor")}constructor(e,r){if(typeof e!="object")throw new ja("opts must be an object");if(typeof e.path>"u")throw new ja("opts.path must be defined");if(typeof e.method>"u"&&(e.method="GET"),typeof e.path=="string")if(e.query)e.path=LHe(e.path,e.query);else{let n=new URL(e.path,"data://");e.path=n.pathname+n.search}typeof e.method=="string"&&(e.method=e.method.toUpperCase()),this[Tb]=kHe(e),this[Nb]=r,this[BF]={},this[RF]={},this[NF]=!1}createMockScopeDispatchData({statusCode:e,data:r,responseOptions:n}){let s=DHe(r),o=this[NF]?{"content-length":s.length}:{},a={...this[BF],...o,...n.headers},c={...this[RF],...n.trailers};return{statusCode:e,data:r,headers:a,trailers:c}}validateReplyParameters(e){if(typeof e.statusCode>"u")throw new ja("statusCode must be defined");if(typeof e.responseOptions!="object"||e.responseOptions===null)throw new ja("responseOptions must be an object")}reply(e){if(typeof e=="function"){let o=i(c=>{let l=e(c);if(typeof l!="object"||l===null)throw new ja("reply options callback must return an object");let u={data:"",responseOptions:{},...l};return this.validateReplyParameters(u),{...this.createMockScopeDispatchData(u)}},"wrappedDefaultsCallback"),a=SF(this[Nb],this[Tb],o);return new OA(a)}let r={statusCode:e,data:arguments[1]===void 0?"":arguments[1],responseOptions:arguments[2]===void 0?{}:arguments[2]};this.validateReplyParameters(r);let n=this.createMockScopeDispatchData(r),s=SF(this[Nb],this[Tb],n);return new OA(s)}replyWithError(e){if(typeof e>"u")throw new ja("error must be defined");let r=SF(this[Nb],this[Tb],{error:e});return new OA(r)}defaultReplyHeaders(e){if(typeof e>"u")throw new ja("headers must be defined");return this[BF]=e,this}defaultReplyTrailers(e){if(typeof e>"u")throw new ja("trailers must be defined");return this[RF]=e,this}replyContentLength(){return this[NF]=!0,this}};PF.exports.MockInterceptor=TF;PF.exports.MockScope=OA});var DF=b((fUt,lte)=>{"use strict";var{promisify:OHe}=require("node:util"),MHe=BA(),{buildMockDispatch:FHe}=BE(),{kDispatches:nte,kMockAgent:ste,kClose:ote,kOriginalClose:ite,kOrigin:ate,kOriginalDispatch:UHe,kConnected:_F}=LA(),{MockInterceptor:qHe}=vF(),cte=Zt(),{InvalidArgumentError:$He}=bt(),QF=class extends MHe{static{i(this,"MockClient")}constructor(e,r){if(super(e,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new $He("Argument opts.agent must implement Agent");this[ste]=r.agent,this[ate]=e,this[nte]=[],this[_F]=1,this[UHe]=this.dispatch,this[ite]=this.close.bind(this),this.dispatch=FHe.call(this),this.close=this[ote]}get[cte.kConnected](){return this[_F]}intercept(e){return new qHe(e,this[nte])}async[ote](){await OHe(this[ite])(),this[_F]=0,this[ste][cte.kClients].delete(this[ate])}};lte.exports=QF});var OF=b((hUt,hte)=>{"use strict";var{promisify:GHe}=require("node:util"),HHe=RA(),{buildMockDispatch:zHe}=BE(),{kDispatches:ute,kMockAgent:dte,kClose:pte,kOriginalClose:mte,kOrigin:fte,kOriginalDispatch:VHe,kConnected:kF}=LA(),{MockInterceptor:YHe}=vF(),Ate=Zt(),{InvalidArgumentError:WHe}=bt(),LF=class extends HHe{static{i(this,"MockPool")}constructor(e,r){if(super(e,r),!r||!r.agent||typeof r.agent.dispatch!="function")throw new WHe("Argument opts.agent must implement Agent");this[dte]=r.agent,this[fte]=e,this[ute]=[],this[kF]=1,this[VHe]=this.dispatch,this[mte]=this.close.bind(this),this.dispatch=zHe.call(this),this.close=this[pte]}get[Ate.kConnected](){return this[kF]}intercept(e){return new YHe(e,this[ute])}async[pte](){await GHe(this[mte])(),this[kF]=0,this[dte][Ate.kClients].delete(this[fte])}};hte.exports=LF});var yte=b((EUt,gte)=>{"use strict";var jHe={pronoun:"it",is:"is",was:"was",this:"this"},JHe={pronoun:"they",is:"are",was:"were",this:"these"};gte.exports=class{static{i(this,"Pluralizer")}constructor(e,r){this.singular=e,this.plural=r}pluralize(e){let r=e===1,n=r?jHe:JHe,s=r?this.singular:this.plural;return{...n,count:e,noun:s}}}});var Cte=b((xUt,Ete)=>{"use strict";var{Transform:KHe}=require("node:stream"),{Console:XHe}=require("node:console"),ZHe=process.versions.icu?"\u2705":"Y ",eze=process.versions.icu?"\u274C":"N ";Ete.exports=class{static{i(this,"PendingInterceptorsFormatter")}constructor({disableColors:e}={}){this.transform=new KHe({transform(r,n,s){s(null,r)}}),this.logger=new XHe({stdout:this.transform,inspectOptions:{colors:!e&&!process.env.CI}})}format(e){let r=e.map(({method:n,path:s,data:{statusCode:o},persist:a,times:c,timesInvoked:l,origin:u})=>({Method:n,Origin:u,Path:s,"Status code":o,Persistent:a?ZHe:eze,Invocations:l,Remaining:a?1/0:c-l}));return this.logger.table(r),this.transform.read().toString()}}});var bte=b((bUt,wte)=>{"use strict";var{kClients:jp}=Zt(),tze=NA(),{kAgent:MF,kMockAgentSet:vb,kMockAgentGet:Ite,kDispatches:FF,kIsMockActive:_b,kNetConnect:Jp,kGetNetConnect:rze,kOptions:Qb,kFactory:Db}=LA(),nze=DF(),sze=OF(),{matchValue:oze,buildMockOptions:ize}=BE(),{InvalidArgumentError:xte,UndiciError:aze}=bt(),cze=jy(),lze=yte(),uze=Cte(),UF=class extends cze{static{i(this,"MockAgent")}constructor(e){if(super(e),this[Jp]=!0,this[_b]=!0,e?.agent&&typeof e.agent.dispatch!="function")throw new xte("Argument opts.agent must implement Agent");let r=e?.agent?e.agent:new tze(e);this[MF]=r,this[jp]=r[jp],this[Qb]=ize(e)}get(e){let r=this[Ite](e);return r||(r=this[Db](e),this[vb](e,r)),r}dispatch(e,r){return this.get(e.origin),this[MF].dispatch(e,r)}async close(){await this[MF].close(),this[jp].clear()}deactivate(){this[_b]=!1}activate(){this[_b]=!0}enableNetConnect(e){if(typeof e=="string"||typeof e=="function"||e instanceof RegExp)Array.isArray(this[Jp])?this[Jp].push(e):this[Jp]=[e];else if(typeof e>"u")this[Jp]=!0;else throw new xte("Unsupported matcher. Must be one of String|Function|RegExp.")}disableNetConnect(){this[Jp]=!1}get isMockActive(){return this[_b]}[vb](e,r){this[jp].set(e,r)}[Db](e){let r=Object.assign({agent:this},this[Qb]);return this[Qb]&&this[Qb].connections===1?new nze(e,r):new sze(e,r)}[Ite](e){let r=this[jp].get(e);if(r)return r;if(typeof e!="string"){let n=this[Db]("http://localhost:9999");return this[vb](e,n),n}for(let[n,s]of Array.from(this[jp]))if(s&&typeof n!="string"&&oze(n,e)){let o=this[Db](e);return this[vb](e,o),o[FF]=s[FF],o}}[rze](){return this[Jp]}pendingInterceptors(){let e=this[jp];return Array.from(e.entries()).flatMap(([r,n])=>n[FF].map(s=>({...s,origin:r}))).filter(({pending:r})=>r)}assertNoPendingInterceptors({pendingInterceptorsFormatter:e=new uze}={}){let r=this.pendingInterceptors();if(r.length===0)return;let n=new lze("interceptor","interceptors").pluralize(r.length);throw new aze(` ${n.count} ${n.noun} ${n.is} pending: ${e.format(r)} -`.trim())}};xte.exports=FF});var Db=w((R1t,Rte)=>{"use strict";var bte=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:lze}=wt(),uze=RA();Bte()===void 0&&Ste(new uze);function Ste(t){if(!t||typeof t.dispatch!="function")throw new lze("Argument agent must implement Agent");Object.defineProperty(globalThis,bte,{value:t,writable:!0,enumerable:!1,configurable:!1})}function Bte(){return globalThis[bte]}Rte.exports={setGlobalDispatcher:Ste,getGlobalDispatcher:Bte}});var kb=w((T1t,Nte)=>{"use strict";Nte.exports=class{#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 Pte=w((P1t,Tte)=>{"use strict";var dze=mb();Tte.exports=t=>{let e=t?.maxRedirections;return r=>function(s,o){let{maxRedirections:i=e,...a}=s;if(!i)return r(s,o);let c=new dze(r,i,s,o);return r(a,c)}}});var _te=w((v1t,vte)=>{"use strict";var pze=bb();vte.exports=t=>e=>function(n,s){return e(n,new pze({...n,retryOptions:{...t,...n.retryOptions}},{handler:s,dispatch:e}))}});var Dte=w((_1t,Qte)=>{"use strict";var mze=lt(),{InvalidArgumentError:fze,RequestAbortedError:Aze}=wt(),hze=kb(),UF=class extends hze{#e=1024*1024;#t=null;#s=!1;#n=!1;#r=0;#o=null;#i=null;constructor({maxSize:e},r){if(super(r),e!=null&&(!Number.isFinite(e)||e<1))throw new fze("maxSize must be a number greater than 0");this.#e=e??this.#e,this.#i=r}onConnect(e){this.#t=e,this.#i.onConnect(this.#a.bind(this))}#a(e){this.#n=!0,this.#o=e}onHeaders(e,r,n,s){let i=mze.parseHeaders(r)["content-length"];if(i!=null&&i>this.#e)throw new Aze(`Response size (${i}) larger than maxSize (${this.#e})`);return this.#n?!0:this.#i.onHeaders(e,r,n,s)}onError(e){this.#s||(e=this.#o??e,this.#i.onError(e))}onData(e){return this.#r=this.#r+e.length,this.#r>=this.#e&&(this.#s=!0,this.#n?this.#i.onError(this.#o):this.#i.onComplete([])),!0}onComplete(e){if(!this.#s){if(this.#n){this.#i.onError(this.reason);return}this.#i.onComplete(e)}}};function gze({maxSize:t}={maxSize:1024*1024}){return e=>function(n,s){let{dumpMaxSize:o=t}=n,i=new UF({maxSize:o},s);return e(n,i)}}Qte.exports=gze});var Ote=w((Q1t,Lte)=>{"use strict";var{isIP:yze}=require("node:net"),{lookup:Eze}=require("node:dns"),Cze=kb(),{InvalidArgumentError:OA,InformationalError:Ize}=wt(),kte=Math.pow(2,31)-1,qF=class{#e=0;#t=0;#s=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.#n,this.pick=e.pick??this.#r}get full(){return this.#s.size===this.#t}runLookup(e,r,n){let s=this.#s.get(e.hostname);if(s==null&&this.full){n(null,e.origin);return}let o={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...r.dns,maxTTL:this.#e,maxItems:this.#t};if(s==null)this.lookup(e,o,(i,a)=>{if(i||a==null||a.length===0){n(i??new Ize("No DNS entries found"));return}this.setRecords(e,a);let c=this.#s.get(e.hostname),l=this.pick(e,c,o.affinity),u;typeof l.port=="number"?u=`:${l.port}`:e.port!==""?u=`:${e.port}`:u="",n(null,`${e.protocol}//${l.family===6?`[${l.address}]`:l.address}${u}`)});else{let i=this.pick(e,s,o.affinity);if(i==null){this.#s.delete(e.hostname),this.runLookup(e,r,n);return}let a;typeof i.port=="number"?a=`:${i.port}`:e.port!==""?a=`:${e.port}`:a="",n(null,`${e.protocol}//${i.family===6?`[${i.address}]`:i.address}${a}`)}}#n(e,r,n){Eze(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(s,o)=>{if(s)return n(s);let i=new Map;for(let a of o)i.set(`${a.address}:${a.family}`,a);n(null,i.values())})}#r(e,r,n){let s=null,{records:o,offset:i}=r,a;if(this.dualStack?(n==null&&(i==null||i===kte?(r.offset=0,n=4):(r.offset++,n=(r.offset&1)===1?6:4)),o[n]!=null&&o[n].ips.length>0?a=o[n]:a=o[n===4?6:4]):a=o[n],a==null||a.ips.length===0)return s;a.offset==null||a.offset===kte?a.offset=0:a.offset++;let c=a.offset%a.ips.length;return s=a.ips[c]??null,s==null?s:Date.now()-s.timestamp>s.ttl?(a.ips.splice(c,1),this.pick(e,r,n)):s}setRecords(e,r){let n=Date.now(),s={records:{4:null,6:null}};for(let o of r){o.timestamp=n,typeof o.ttl=="number"?o.ttl=Math.min(o.ttl,this.#e):o.ttl=this.#e;let i=s.records[o.family]??{ips:[]};i.ips.push(o),s.records[o.family]=i}this.#s.set(e.hostname,s)}getHandler(e,r){return new $F(this,e,r)}},$F=class extends Cze{#e=null;#t=null;#s=null;#n=null;#r=null;constructor(e,{origin:r,handler:n,dispatch:s},o){super(n),this.#r=r,this.#n=n,this.#t={...o},this.#e=e,this.#s=s}onError(e){switch(e.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#e.dualStack){this.#e.runLookup(this.#r,this.#t,(r,n)=>{if(r)return this.#n.onError(r);let s={...this.#t,origin:n};this.#s(s,this)});return}this.#n.onError(e);return}case"ENOTFOUND":this.#e.deleteRecord(this.#r);default:this.#n.onError(e);break}}};Lte.exports=t=>{if(t?.maxTTL!=null&&(typeof t?.maxTTL!="number"||t?.maxTTL<0))throw new OA("Invalid maxTTL. Must be a positive number");if(t?.maxItems!=null&&(typeof t?.maxItems!="number"||t?.maxItems<1))throw new OA("Invalid maxItems. Must be a positive number and greater than zero");if(t?.affinity!=null&&t?.affinity!==4&&t?.affinity!==6)throw new OA("Invalid affinity. Must be either 4 or 6");if(t?.dualStack!=null&&typeof t?.dualStack!="boolean")throw new OA("Invalid dualStack. Must be a boolean");if(t?.lookup!=null&&typeof t?.lookup!="function")throw new OA("Invalid lookup. Must be a function");if(t?.pick!=null&&typeof t?.pick!="function")throw new OA("Invalid pick. Must be a function");let e=t?.dualStack??!0,r;e?r=t?.affinity??null:r=t?.affinity??4;let n={maxTTL:t?.maxTTL??1e4,lookup:t?.lookup??null,pick:t?.pick??null,dualStack:e,affinity:r,maxItems:t?.maxItems??1/0},s=new qF(n);return o=>function(a,c){let l=a.origin.constructor===URL?a.origin:new URL(a.origin);return yze(l.hostname)!==0?o(a,c):(s.runLookup(l,a,(u,d)=>{if(u)return c.onError(u);let p=null;p={...a,servername:l.hostname,origin:d,headers:{host:l.hostname,...a.headers}},o(p,s.getHandler({origin:l,dispatch:o,handler:c},a))}),!0)}}});var Jp=w((D1t,Hte)=>{"use strict";var{kConstruct:xze}=Xt(),{kEnumerableProperty:MA}=lt(),{iteratorMixin:wze,isValidHeaderName:SE,isValidHeaderValue:Fte}=ho(),{webidl:At}=Bn(),GF=require("node:assert"),Lb=require("node:util"),zr=Symbol("headers map"),Eo=Symbol("headers map sorted");function Mte(t){return t===10||t===13||t===9||t===32}function Ute(t){let e=0,r=t.length;for(;r>e&&Mte(t.charCodeAt(r-1));)--r;for(;r>e&&Mte(t.charCodeAt(e));)++e;return e===0&&r===t.length?t:t.substring(e,r)}function qte(t,e){if(Array.isArray(e))for(let r=0;r>","record"]})}function HF(t,e,r){if(r=Ute(r),SE(e)){if(!Fte(r))throw At.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw At.errors.invalidArgument({prefix:"Headers.append",value:e,type:"header name"});if(Gte(t)==="immutable")throw new TypeError("immutable");return zF(t).append(e,r,!1)}function $te(t,e){return t[0]>1),r[l][0]<=u[0]?c=l+1:a=l;if(o!==l){for(i=o;i>c;)r[i]=r[--i];r[c]=u}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:s,1:{value:o}}of this[zr])r[n++]=[s,o],GF(o!==null);return r.sort($te)}}},ra=class t{#e;#t;constructor(e=void 0){At.util.markAsUncloneable(this),e!==xze&&(this.#t=new Ob,this.#e="none",e!==void 0&&(e=At.converters.HeadersInit(e,"Headers contructor","init"),qte(this,e)))}append(e,r){At.brandCheck(this,t),At.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return e=At.converters.ByteString(e,n,"name"),r=At.converters.ByteString(r,n,"value"),HF(this,e,r)}delete(e){if(At.brandCheck(this,t),At.argumentLengthCheck(arguments,1,"Headers.delete"),e=At.converters.ByteString(e,"Headers.delete","name"),!SE(e))throw At.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){At.brandCheck(this,t),At.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(e=At.converters.ByteString(e,r,"name"),!SE(e))throw At.errors.invalidArgument({prefix:r,value:e,type:"header name"});return this.#t.get(e,!1)}has(e){At.brandCheck(this,t),At.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(e=At.converters.ByteString(e,r,"name"),!SE(e))throw At.errors.invalidArgument({prefix:r,value:e,type:"header name"});return this.#t.contains(e,!1)}set(e,r){At.brandCheck(this,t),At.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(e=At.converters.ByteString(e,n,"name"),r=At.converters.ByteString(r,n,"value"),r=Ute(r),SE(e)){if(!Fte(r))throw At.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw At.errors.invalidArgument({prefix:n,value:e,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(e,r,!1)}getSetCookie(){At.brandCheck(this,t);let e=this.#t.cookies;return e?[...e]:[]}get[Eo](){if(this.#t[Eo])return this.#t[Eo];let e=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[Eo]=r;for(let s=0;s>"](t,e,r,n.bind(t)):At.converters["record"](t,e,r)}throw At.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};Hte.exports={fill:qte,compareHeaderName:$te,Headers:ra,HeadersList:Ob,getHeadersGuard:Gte,setHeadersGuard:bze,setHeadersList:Sze,getHeadersList:zF}});var RE=w((k1t,rre)=>{"use strict";var{Headers:Jte,HeadersList:zte,fill:Bze,getHeadersGuard:Rze,setHeadersGuard:Kte,setHeadersList:Xte}=Jp(),{extractBody:Vte,cloneBody:Nze,mixinBody:Tze,hasFinalizationRegistry:Zte,streamRegistry:ere,bodyUnusable:Pze}=yA(),VF=lt(),Yte=require("node:util"),{kEnumerableProperty:Co}=VF,{isValidReasonPhrase:vze,isCancelled:_ze,isAborted:Qze,isBlobLike:Dze,serializeJavascriptValueToJSONString:kze,isErrorLike:Lze,isomorphicEncode:Oze,environmentSettingsObject:Mze}=ho(),{redirectStatusSet:Fze,nullBodyStatus:Uze}=Jy(),{kState:er,kHeaders:Ml}=Hu(),{webidl:st}=Bn(),{FormData:qze}=rE(),{URLSerializer:Wte}=Ls(),{kConstruct:Fb}=Xt(),YF=require("node:assert"),{types:$ze}=require("node:util"),Gze=new TextEncoder("utf-8"),Kp=class t{static error(){return BE(Ub(),"immutable")}static json(e,r={}){st.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=st.converters.ResponseInit(r));let n=Gze.encode(kze(e)),s=Vte(n),o=BE(FA({}),"response");return jte(o,r,{body:s[0],type:"application/json"}),o}static redirect(e,r=302){st.argumentLengthCheck(arguments,1,"Response.redirect"),e=st.converters.USVString(e),r=st.converters["unsigned short"](r);let n;try{n=new URL(e,Mze.settingsObject.baseUrl)}catch(i){throw new TypeError(`Failed to parse URL from ${e}`,{cause:i})}if(!Fze.has(r))throw new RangeError(`Invalid status code ${r}`);let s=BE(FA({}),"immutable");s[er].status=r;let o=Oze(Wte(n));return s[er].headersList.append("location",o,!0),s}constructor(e=null,r={}){if(st.util.markAsUncloneable(this),e===Fb)return;e!==null&&(e=st.converters.BodyInit(e)),r=st.converters.ResponseInit(r),this[er]=FA({}),this[Ml]=new Jte(Fb),Kte(this[Ml],"response"),Xte(this[Ml],this[er].headersList);let n=null;if(e!=null){let[s,o]=Vte(e);n={body:s,type:o}}jte(this,r,n)}get type(){return st.brandCheck(this,t),this[er].type}get url(){st.brandCheck(this,t);let e=this[er].urlList,r=e[e.length-1]??null;return r===null?"":Wte(r,!0)}get redirected(){return st.brandCheck(this,t),this[er].urlList.length>1}get status(){return st.brandCheck(this,t),this[er].status}get ok(){return st.brandCheck(this,t),this[er].status>=200&&this[er].status<=299}get statusText(){return st.brandCheck(this,t),this[er].statusText}get headers(){return st.brandCheck(this,t),this[Ml]}get body(){return st.brandCheck(this,t),this[er].body?this[er].body.stream:null}get bodyUsed(){return st.brandCheck(this,t),!!this[er].body&&VF.isDisturbed(this[er].body.stream)}clone(){if(st.brandCheck(this,t),Pze(this))throw st.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let e=WF(this[er]);return Zte&&this[er].body?.stream&&ere.register(this,new WeakRef(this[er].body.stream)),BE(e,Rze(this[Ml]))}[Yte.inspect.custom](e,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={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 ${Yte.formatWithOptions(r,n)}`}};Tze(Kp);Object.defineProperties(Kp.prototype,{type:Co,url:Co,status:Co,ok:Co,redirected:Co,statusText:Co,headers:Co,clone:Co,body:Co,bodyUsed:Co,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Kp,{json:Co,redirect:Co,error:Co});function WF(t){if(t.internalResponse)return tre(WF(t.internalResponse),t.type);let e=FA({...t,body:null});return t.body!=null&&(e.body=Nze(e,t.body)),e}function FA(t){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...t,headersList:t?.headersList?new zte(t?.headersList):new zte,urlList:t?.urlList?[...t.urlList]:[]}}function Ub(t){let e=Lze(t);return FA({type:"error",status:0,error:e?t:new Error(t&&String(t)),aborted:t&&t.name==="AbortError"})}function Hze(t){return t.type==="error"&&t.status===0}function Mb(t,e){return e={internalResponse:t,...e},new Proxy(t,{get(r,n){return n in e?e[n]:r[n]},set(r,n,s){return YF(!(n in e)),r[n]=s,!0}})}function tre(t,e){if(e==="basic")return Mb(t,{type:"basic",headersList:t.headersList});if(e==="cors")return Mb(t,{type:"cors",headersList:t.headersList});if(e==="opaque")return Mb(t,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(e==="opaqueredirect")return Mb(t,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});YF(!1)}function zze(t,e=null){return YF(_ze(t)),Qze(t)?Ub(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:e})):Ub(Object.assign(new DOMException("Request was cancelled."),{cause:e}))}function jte(t,e,r){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&&!vze(String(e.statusText)))throw new TypeError("Invalid statusText");if("status"in e&&e.status!=null&&(t[er].status=e.status),"statusText"in e&&e.statusText!=null&&(t[er].statusText=e.statusText),"headers"in e&&e.headers!=null&&Bze(t[Ml],e.headers),r){if(Uze.includes(t.status))throw st.errors.exception({header:"Response constructor",message:`Invalid response status code ${t.status}`});t[er].body=r.body,r.type!=null&&!t[er].headersList.contains("content-type",!0)&&t[er].headersList.append("content-type",r.type,!0)}}function BE(t,e){let r=new Kp(Fb);return r[er]=t,r[Ml]=new Jte(Fb),Xte(r[Ml],t.headersList),Kte(r[Ml],e),Zte&&t.body?.stream&&ere.register(r,new WeakRef(t.body.stream)),r}st.converters.ReadableStream=st.interfaceConverter(ReadableStream);st.converters.FormData=st.interfaceConverter(qze);st.converters.URLSearchParams=st.interfaceConverter(URLSearchParams);st.converters.XMLHttpRequestBodyInit=function(t,e,r){return typeof t=="string"?st.converters.USVString(t,e,r):Dze(t)?st.converters.Blob(t,e,r,{strict:!1}):ArrayBuffer.isView(t)||$ze.isArrayBuffer(t)?st.converters.BufferSource(t,e,r):VF.isFormDataLike(t)?st.converters.FormData(t,e,r,{strict:!1}):t instanceof URLSearchParams?st.converters.URLSearchParams(t,e,r):st.converters.DOMString(t,e,r)};st.converters.BodyInit=function(t,e,r){return t instanceof ReadableStream?st.converters.ReadableStream(t,e,r):t?.[Symbol.asyncIterator]?t:st.converters.XMLHttpRequestBodyInit(t,e,r)};st.converters.ResponseInit=st.dictionaryConverter([{key:"status",converter:st.converters["unsigned short"],defaultValue:()=>200},{key:"statusText",converter:st.converters.ByteString,defaultValue:()=>""},{key:"headers",converter:st.converters.HeadersInit}]);rre.exports={isNetworkError:Hze,makeNetworkError:Ub,makeResponse:FA,makeAppropriateNetworkError:zze,filterResponse:tre,Response:Kp,cloneResponse:WF,fromInnerResponse:BE}});var ire=w((L1t,ore)=>{"use strict";var{kConnected:nre,kSize:sre}=Xt(),jF=class{constructor(e){this.value=e}deref(){return this.value[nre]===0&&this.value[sre]===0?void 0:this.value}},JF=class{constructor(e){this.finalizer=e}register(e,r){e.on&&e.on("disconnect",()=>{e[nre]===0&&e[sre]===0&&this.finalizer(r)})}unregister(e){}};ore.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:jF,FinalizationRegistry:JF}):{WeakRef,FinalizationRegistry}}});var UA=w((O1t,Ire)=>{"use strict";var{extractBody:Vze,mixinBody:Yze,cloneBody:Wze,bodyUnusable:are}=yA(),{Headers:hre,fill:jze,HeadersList:Hb,setHeadersGuard:XF,getHeadersGuard:Jze,setHeadersList:gre,getHeadersList:cre}=Jp(),{FinalizationRegistry:Kze}=ire()(),$b=lt(),lre=require("node:util"),{isValidHTTPToken:Xze,sameOrigin:ure,environmentSettingsObject:qb}=ho(),{forbiddenMethodsSet:Zze,corsSafeListedMethodsSet:e3e,referrerPolicy:t3e,requestRedirect:r3e,requestMode:n3e,requestCredentials:s3e,requestCache:o3e,requestDuplex:i3e}=Jy(),{kEnumerableProperty:Vr,normalizedMethodRecordsBase:a3e,normalizedMethodRecords:c3e}=$b,{kHeaders:Io,kSignal:Gb,kState:zt,kDispatcher:KF}=Hu(),{webidl:Le}=Bn(),{URLSerializer:l3e}=Ls(),{kConstruct:zb}=Xt(),u3e=require("node:assert"),{getMaxListeners:dre,setMaxListeners:pre,getEventListeners:d3e,defaultMaxListeners:mre}=require("node:events"),p3e=Symbol("abortController"),yre=new Kze(({signal:t,abort:e})=>{t.removeEventListener("abort",e)}),Vb=new WeakMap;function fre(t){return e;function e(){let r=t.deref();if(r!==void 0){yre.unregister(e),this.removeEventListener("abort",e),r.abort(this.reason);let n=Vb.get(r.signal);if(n!==void 0){if(n.size!==0){for(let s of n){let o=s.deref();o!==void 0&&o.abort(this.reason)}n.clear()}Vb.delete(r.signal)}}}}var Are=!1,rd=class t{constructor(e,r={}){if(Le.util.markAsUncloneable(this),e===zb)return;let n="Request constructor";Le.argumentLengthCheck(arguments,1,n),e=Le.converters.RequestInfo(e,n,"input"),r=Le.converters.RequestInit(r,n,"init");let s=null,o=null,i=qb.settingsObject.baseUrl,a=null;if(typeof e=="string"){this[KF]=r.dispatcher;let x;try{x=new URL(e,i)}catch(b){throw new TypeError("Failed to parse URL from "+e,{cause:b})}if(x.username||x.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e);s=Yb({urlList:[x]}),o="cors"}else this[KF]=r.dispatcher||e[KF],u3e(e instanceof t),s=e[zt],a=e[Gb];let c=qb.settingsObject.origin,l="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&ure(s.window,c)&&(l=s.window),r.window!=null)throw new TypeError(`'window' option '${l}' must be null`);"window"in r&&(l="no-window"),s=Yb({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:qb.settingsObject,window:l,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 u=Object.keys(r).length!==0;if(u&&(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]),r.referrer!==void 0){let x=r.referrer;if(x==="")s.referrer="no-referrer";else{let b;try{b=new URL(x,i)}catch(T){throw new TypeError(`Referrer "${x}" is not a valid URL.`,{cause:T})}b.protocol==="about:"&&b.hostname==="client"||c&&!ure(b,qb.settingsObject.baseUrl)?s.referrer="client":s.referrer=b}}r.referrerPolicy!==void 0&&(s.referrerPolicy=r.referrerPolicy);let d;if(r.mode!==void 0?d=r.mode:d=o,d==="navigate")throw Le.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(d!=null&&(s.mode=d),r.credentials!==void 0&&(s.credentials=r.credentials),r.cache!==void 0&&(s.cache=r.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(r.redirect!==void 0&&(s.redirect=r.redirect),r.integrity!=null&&(s.integrity=String(r.integrity)),r.keepalive!==void 0&&(s.keepalive=!!r.keepalive),r.method!==void 0){let x=r.method,b=c3e[x];if(b!==void 0)s.method=b;else{if(!Xze(x))throw new TypeError(`'${x}' is not a valid HTTP method.`);let T=x.toUpperCase();if(Zze.has(T))throw new TypeError(`'${x}' HTTP method is unsupported.`);x=a3e[T]??x,s.method=x}!Are&&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"}),Are=!0)}r.signal!==void 0&&(a=r.signal),this[zt]=s;let p=new AbortController;if(this[Gb]=p.signal,a!=null){if(!a||typeof a.aborted!="boolean"||typeof a.addEventListener!="function")throw new TypeError("Failed to construct 'Request': member signal is not of type AbortSignal.");if(a.aborted)p.abort(a.reason);else{this[p3e]=p;let x=new WeakRef(p),b=fre(x);try{(typeof dre=="function"&&dre(a)===mre||d3e(a,"abort").length>=mre)&&pre(1500,a)}catch{}$b.addAbortListener(a,b),yre.register(p,{signal:a,abort:b},b)}}if(this[Io]=new hre(zb),gre(this[Io],s.headersList),XF(this[Io],"request"),d==="no-cors"){if(!e3e.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);XF(this[Io],"request-no-cors")}if(u){let x=cre(this[Io]),b=r.headers!==void 0?r.headers:new Hb(x);if(x.clear(),b instanceof Hb){for(let{name:T,value:_}of b.rawValues())x.append(T,_,!1);x.cookies=b.cookies}else jze(this[Io],b)}let m=e instanceof t?e[zt].body:null;if((r.body!=null||m!=null)&&(s.method==="GET"||s.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let h=null;if(r.body!=null){let[x,b]=Vze(r.body,s.keepalive);h=x,b&&!cre(this[Io]).contains("content-type",!0)&&this[Io].append("content-type",b)}let y=h??m;if(y!=null&&y.source==null){if(h!=null&&r.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 I=y;if(h==null&&m!=null){if(are(e))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let x=new TransformStream;m.stream.pipeThrough(x),I={source:m.source,length:m.length,stream:x.readable}}this[zt].body=I}get method(){return Le.brandCheck(this,t),this[zt].method}get url(){return Le.brandCheck(this,t),l3e(this[zt].url)}get headers(){return Le.brandCheck(this,t),this[Io]}get destination(){return Le.brandCheck(this,t),this[zt].destination}get referrer(){return Le.brandCheck(this,t),this[zt].referrer==="no-referrer"?"":this[zt].referrer==="client"?"about:client":this[zt].referrer.toString()}get referrerPolicy(){return Le.brandCheck(this,t),this[zt].referrerPolicy}get mode(){return Le.brandCheck(this,t),this[zt].mode}get credentials(){return this[zt].credentials}get cache(){return Le.brandCheck(this,t),this[zt].cache}get redirect(){return Le.brandCheck(this,t),this[zt].redirect}get integrity(){return Le.brandCheck(this,t),this[zt].integrity}get keepalive(){return Le.brandCheck(this,t),this[zt].keepalive}get isReloadNavigation(){return Le.brandCheck(this,t),this[zt].reloadNavigation}get isHistoryNavigation(){return Le.brandCheck(this,t),this[zt].historyNavigation}get signal(){return Le.brandCheck(this,t),this[Gb]}get body(){return Le.brandCheck(this,t),this[zt].body?this[zt].body.stream:null}get bodyUsed(){return Le.brandCheck(this,t),!!this[zt].body&&$b.isDisturbed(this[zt].body.stream)}get duplex(){return Le.brandCheck(this,t),"half"}clone(){if(Le.brandCheck(this,t),are(this))throw new TypeError("unusable");let e=Ere(this[zt]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=Vb.get(this.signal);n===void 0&&(n=new Set,Vb.set(this.signal,n));let s=new WeakRef(r);n.add(s),$b.addAbortListener(r.signal,fre(s))}return Cre(e,r.signal,Jze(this[Io]))}[lre.inspect.custom](e,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={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 ${lre.formatWithOptions(r,n)}`}};Yze(rd);function Yb(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 Hb(t.headersList):new Hb}}function Ere(t){let e=Yb({...t,body:null});return t.body!=null&&(e.body=Wze(e,t.body)),e}function Cre(t,e,r){let n=new rd(zb);return n[zt]=t,n[Gb]=e,n[Io]=new hre(zb),gre(n[Io],t.headersList),XF(n[Io],r),n}Object.defineProperties(rd.prototype,{method:Vr,url:Vr,headers:Vr,redirect:Vr,clone:Vr,signal:Vr,duplex:Vr,destination:Vr,body:Vr,bodyUsed:Vr,isHistoryNavigation:Vr,isReloadNavigation:Vr,keepalive:Vr,integrity:Vr,cache:Vr,credentials:Vr,attribute:Vr,referrerPolicy:Vr,referrer:Vr,mode:Vr,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Le.converters.Request=Le.interfaceConverter(rd);Le.converters.RequestInfo=function(t,e,r){return typeof t=="string"?Le.converters.USVString(t,e,r):t instanceof rd?Le.converters.Request(t,e,r):Le.converters.USVString(t,e,r)};Le.converters.AbortSignal=Le.interfaceConverter(AbortSignal);Le.converters.RequestInit=Le.dictionaryConverter([{key:"method",converter:Le.converters.ByteString},{key:"headers",converter:Le.converters.HeadersInit},{key:"body",converter:Le.nullableConverter(Le.converters.BodyInit)},{key:"referrer",converter:Le.converters.USVString},{key:"referrerPolicy",converter:Le.converters.DOMString,allowedValues:t3e},{key:"mode",converter:Le.converters.DOMString,allowedValues:n3e},{key:"credentials",converter:Le.converters.DOMString,allowedValues:s3e},{key:"cache",converter:Le.converters.DOMString,allowedValues:o3e},{key:"redirect",converter:Le.converters.DOMString,allowedValues:r3e},{key:"integrity",converter:Le.converters.DOMString},{key:"keepalive",converter:Le.converters.boolean},{key:"signal",converter:Le.nullableConverter(t=>Le.converters.AbortSignal(t,"RequestInit","signal",{strict:!1}))},{key:"window",converter:Le.converters.any},{key:"duplex",converter:Le.converters.DOMString,allowedValues:i3e},{key:"dispatcher",converter:Le.converters.any}]);Ire.exports={Request:rd,makeRequest:Yb,fromInnerRequest:Cre,cloneRequest:Ere}});var TE=w((M1t,Lre)=>{"use strict";var{makeNetworkError:_t,makeAppropriateNetworkError:Wb,filterResponse:ZF,makeResponse:jb,fromInnerResponse:m3e}=RE(),{HeadersList:xre}=Jp(),{Request:f3e,cloneRequest:A3e}=UA(),nd=require("node:zlib"),{bytesMatch:h3e,makePolicyContainer:g3e,clonePolicyContainer:y3e,requestBadPort:E3e,TAOCheck:C3e,appendRequestOriginHeader:I3e,responseLocationURL:x3e,requestCurrentURL:ja,setRequestReferrerPolicyOnRedirect:w3e,tryUpgradeRequestToAPotentiallyTrustworthyURL:b3e,createOpaqueTimingInfo:s1,appendFetchMetadata:S3e,corsCheck:B3e,crossOriginResourcePolicyCheck:R3e,determineRequestsReferrer:N3e,coarsenedSharedCurrentTime:NE,createDeferredPromise:T3e,isBlobLike:P3e,sameOrigin:n1,isCancelled:Xp,isAborted:wre,isErrorLike:v3e,fullyReadBody:_3e,readableStreamClose:Q3e,isomorphicEncode:Jb,urlIsLocal:D3e,urlIsHttpHttpsScheme:o1,urlHasHttpsScheme:k3e,clampAndCoarsenConnectionTimingInfo:L3e,simpleRangeHeaderValue:O3e,buildContentRange:M3e,createInflate:F3e,extractMimeType:U3e}=ho(),{kState:Rre,kDispatcher:q3e}=Hu(),Zp=require("node:assert"),{safelyExtractBody:i1,extractBody:bre}=yA(),{redirectStatusSet:Nre,nullBodyStatus:Tre,safeMethodsSet:$3e,requestBodyHeader:G3e,subresourceSet:H3e}=Jy(),z3e=require("node:events"),{Readable:V3e,pipeline:Y3e,finished:W3e}=require("node:stream"),{addAbortListener:j3e,isErrored:J3e,isReadable:Kb,bufferToLowerCasedHeaderName:Sre}=lt(),{dataURLProcessor:K3e,serializeAMimeType:X3e,minimizeSupportedMimeType:Z3e}=Ls(),{getGlobalDispatcher:eVe}=Db(),{webidl:tVe}=Bn(),{STATUS_CODES:rVe}=require("node:http"),nVe=["GET","HEAD"],sVe=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",e1,Xb=class extends z3e{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 oVe(t){Pre(t,"fetch")}function iVe(t,e=void 0){tVe.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=T3e(),n;try{n=new f3e(t,e)}catch(u){return r.reject(u),r.promise}let s=n[Rre];if(n.signal.aborted)return t1(r,s,null,n.signal.reason),r.promise;s.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(s.serviceWorkers="none");let i=null,a=!1,c=null;return j3e(n.signal,()=>{a=!0,Zp(c!=null),c.abort(n.signal.reason);let u=i?.deref();t1(r,s,u,n.signal.reason)}),c=_re({request:s,processResponseEndOfBody:oVe,processResponse:u=>{if(!a){if(u.aborted){t1(r,s,i,c.serializedAbortReason);return}if(u.type==="error"){r.reject(new TypeError("fetch failed",{cause:u.error}));return}i=new WeakRef(m3e(u,"immutable")),r.resolve(i.deref()),r=null}},dispatcher:n[q3e]}),r.promise}function Pre(t,e="other"){if(t.type==="error"&&t.aborted||!t.urlList?.length)return;let r=t.urlList[0],n=t.timingInfo,s=t.cacheState;o1(r)&&n!==null&&(t.timingAllowPassed||(n=s1({startTime:n.startTime}),s=""),n.endTime=NE(),t.timingInfo=n,vre(n,r.href,e,globalThis,s))}var vre=performance.markResourceTiming;function t1(t,e,r,n){if(t&&t.reject(n),e.body!=null&&Kb(e.body?.stream)&&e.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let s=r[Rre];s.body!=null&&Kb(s.body?.stream)&&s.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}function _re({request:t,processRequestBodyChunkLength:e,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:s,processResponseConsumeBody:o,useParallelQueue:i=!1,dispatcher:a=eVe()}){Zp(a);let c=null,l=!1;t.client!=null&&(c=t.client.globalObject,l=t.client.crossOriginIsolatedCapability);let u=NE(l),d=s1({startTime:u}),p={controller:new Xb(a),request:t,timingInfo:d,processRequestBodyChunkLength:e,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:s,taskDestination:c,crossOriginIsolatedCapability:l};return Zp(!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=y3e(t.client.policyContainer):t.policyContainer=g3e()),t.headersList.contains("accept",!0)||t.headersList.append("accept","*/*",!0),t.headersList.contains("accept-language",!0)||t.headersList.append("accept-language","*",!0),t.priority,H3e.has(t.destination),Qre(p).catch(m=>{p.controller.terminate(m)}),p.controller}async function Qre(t,e=!1){let r=t.request,n=null;if(r.localURLsOnly&&!D3e(ja(r))&&(n=_t("local URLs only")),b3e(r),E3e(r)==="blocked"&&(n=_t("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=N3e(r)),n===null&&(n=await(async()=>{let o=ja(r);return n1(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await Bre(t)):r.mode==="same-origin"?_t('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?_t('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await Bre(t)):o1(ja(r))?(r.responseTainting="cors",await Dre(t)):_t("URL scheme must be a HTTP(S) scheme")})()),e)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=ZF(n,"basic"):r.responseTainting==="cors"?n=ZF(n,"cors"):r.responseTainting==="opaque"?n=ZF(n,"opaque"):Zp(!1));let s=n.status===0?n:n.internalResponse;if(s.urlList.length===0&&s.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&s.status===206&&s.rangeRequested&&!r.headers.contains("range",!0)&&(n=s=_t()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||Tre.includes(s.status))&&(s.body=null,t.controller.dump=!0),r.integrity){let o=a=>r1(t,_t(a));if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let i=a=>{if(!h3e(a,r.integrity)){o("integrity mismatch");return}n.body=i1(a)[0],r1(t,n)};await _3e(n.body,i,o)}else r1(t,n)}function Bre(t){if(Xp(t)&&t.request.redirectCount===0)return Promise.resolve(Wb(t));let{request:e}=t,{protocol:r}=ja(e);switch(r){case"about:":return Promise.resolve(_t("about scheme is not supported"));case"blob:":{e1||(e1=require("node:buffer").resolveObjectURL);let n=ja(e);if(n.search.length!==0)return Promise.resolve(_t("NetworkError when attempting to fetch resource."));let s=e1(n.toString());if(e.method!=="GET"||!P3e(s))return Promise.resolve(_t("invalid method"));let o=jb(),i=s.size,a=Jb(`${i}`),c=s.type;if(e.headersList.contains("range",!0)){o.rangeRequested=!0;let l=e.headersList.get("range",!0),u=O3e(l,!0);if(u==="failure")return Promise.resolve(_t("failed to fetch the data URL"));let{rangeStartValue:d,rangeEndValue:p}=u;if(d===null)d=i-p,p=d+p-1;else{if(d>=i)return Promise.resolve(_t("Range start is greater than the blob's size."));(p===null||p>=i)&&(p=i-1)}let m=s.slice(d,p,c),h=bre(m);o.body=h[0];let y=Jb(`${m.size}`),I=M3e(d,p,i);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",y,!0),o.headersList.set("content-type",c,!0),o.headersList.set("content-range",I,!0)}else{let l=bre(s);o.statusText="OK",o.body=l[0],o.headersList.set("content-length",a,!0),o.headersList.set("content-type",c,!0)}return Promise.resolve(o)}case"data:":{let n=ja(e),s=K3e(n);if(s==="failure")return Promise.resolve(_t("failed to fetch the data URL"));let o=X3e(s.mimeType);return Promise.resolve(jb({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:i1(s.body)[0]}))}case"file:":return Promise.resolve(_t("not implemented... yet..."));case"http:":case"https:":return Dre(t).catch(n=>_t(n));default:return Promise.resolve(_t("unknown scheme"))}}function aVe(t,e){t.request.done=!0,t.processResponseDone!=null&&queueMicrotask(()=>t.processResponseDone(e))}function r1(t,e){let r=t.timingInfo,n=()=>{let o=Date.now();t.request.destination==="document"&&(t.controller.fullTimingInfo=r),t.controller.reportTimingSteps=()=>{if(t.request.url.protocol!=="https:")return;r.endTime=o;let a=e.cacheState,c=e.bodyInfo;e.timingAllowPassed||(r=s1(r),a="");let l=0;if(t.request.mode!=="navigator"||!e.hasCrossOriginRedirects){l=e.status;let u=U3e(e.headersList);u!=="failure"&&(c.contentType=Z3e(u))}t.request.initiatorType!=null&&vre(r,t.request.url.href,t.request.initiatorType,globalThis,a,c,l)};let i=()=>{t.request.done=!0,t.processResponseEndOfBody!=null&&queueMicrotask(()=>t.processResponseEndOfBody(e)),t.request.initiatorType!=null&&t.controller.reportTimingSteps()};queueMicrotask(()=>i())};t.processResponse!=null&&queueMicrotask(()=>{t.processResponse(e),t.processResponse=null});let s=e.type==="error"?e:e.internalResponse??e;s.body==null?n():W3e(s.body.stream,()=>{n()})}async function Dre(t){let e=t.request,r=null,n=null,s=t.timingInfo;if(e.serviceWorkers,r===null){if(e.redirect==="follow"&&(e.serviceWorkers="none"),n=r=await kre(t),e.responseTainting==="cors"&&B3e(e,r)==="failure")return _t("cors failure");C3e(e,r)==="failure"&&(e.timingAllowFailed=!0)}return(e.responseTainting==="opaque"||r.type==="opaque")&&R3e(e.origin,e.client,e.destination,n)==="blocked"?_t("blocked"):(Nre.has(n.status)&&(e.redirect!=="manual"&&t.controller.connection.destroy(void 0,!1),e.redirect==="error"?r=_t("unexpected redirect"):e.redirect==="manual"?r=n:e.redirect==="follow"?r=await cVe(t,r):Zp(!1)),r.timingInfo=s,r)}function cVe(t,e){let r=t.request,n=e.internalResponse?e.internalResponse:e,s;try{if(s=x3e(n,ja(r).hash),s==null)return e}catch(i){return Promise.resolve(_t(i))}if(!o1(s))return Promise.resolve(_t("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(_t("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(s.username||s.password)&&!n1(r,s))return Promise.resolve(_t('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(s.username||s.password))return Promise.resolve(_t('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(_t());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!nVe.includes(r.method)){r.method="GET",r.body=null;for(let i of G3e)r.headersList.delete(i)}n1(ja(r),s)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(Zp(r.body.source!=null),r.body=i1(r.body.source)[0]);let o=t.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=NE(t.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(s),w3e(r,n),Qre(t,!0)}async function kre(t,e=!1,r=!1){let n=t.request,s=null,o=null,i=null,a=null,c=!1;n.window==="no-window"&&n.redirect==="error"?(s=t,o=n):(o=A3e(n),s={...t},s.request=o);let l=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",u=o.body?o.body.length:null,d=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(d="0"),u!=null&&(d=Jb(`${u}`)),d!=null&&o.headersList.append("content-length",d,!0),u!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",Jb(o.referrer.href),!0),I3e(o),S3e(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",sVe),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(k3e(ja(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),a==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,i==null){if(o.cache==="only-if-cached")return _t("only if cached");let p=await lVe(s,l,r);!$3e.has(o.method)&&p.status>=200&&p.status<=399,c&&p.status,i==null&&(i=p)}if(i.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(i.rangeRequested=!0),i.requestIncludesCredentials=l,i.status===407)return n.window==="no-window"?_t():Xp(t)?Wb(t):_t("proxy authentication required");if(i.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Xp(t))return Wb(t);t.controller.connection.destroy(),i=await kre(t,e,!0)}return i}async function lVe(t,e=!1,r=!1){Zp(!t.controller.connection||t.controller.connection.destroyed),t.controller.connection={abort:null,destroyed:!1,destroy(h,y=!0){this.destroyed||(this.destroyed=!0,y&&this.abort?.(h??new DOMException("The operation was aborted.","AbortError")))}};let n=t.request,s=null,o=t.timingInfo;null==null&&(n.cache="no-store");let a=r?"yes":"no";n.mode;let c=null;if(n.body==null&&t.processRequestEndOfBody)queueMicrotask(()=>t.processRequestEndOfBody());else if(n.body!=null){let h=async function*(x){Xp(t)||(yield x,t.processRequestBodyChunkLength?.(x.byteLength))},y=()=>{Xp(t)||t.processRequestEndOfBody&&t.processRequestEndOfBody()},I=x=>{Xp(t)||(x.name==="AbortError"?t.controller.abort():t.controller.terminate(x))};c=(async function*(){try{for await(let x of n.body.stream)yield*h(x);y()}catch(x){I(x)}})()}try{let{body:h,status:y,statusText:I,headersList:x,socket:b}=await m({body:c});if(b)s=jb({status:y,statusText:I,headersList:x,socket:b});else{let T=h[Symbol.asyncIterator]();t.controller.next=()=>T.next(),s=jb({status:y,statusText:I,headersList:x})}}catch(h){return h.name==="AbortError"?(t.controller.connection.destroy(),Wb(t,h)):_t(h)}let l=async()=>{await t.controller.resume()},u=h=>{Xp(t)||t.controller.abort(h)},d=new ReadableStream({async start(h){t.controller.controller=h},async pull(h){await l(h)},async cancel(h){await u(h)},type:"bytes"});s.body={stream:d,source:null,length:null},t.controller.onAborted=p,t.controller.on("terminated",p),t.controller.resume=async()=>{for(;;){let h,y;try{let{done:x,value:b}=await t.controller.next();if(wre(t))break;h=x?void 0:b}catch(x){t.controller.ended&&!o.encodedBodySize?h=void 0:(h=x,y=!0)}if(h===void 0){Q3e(t.controller.controller),aVe(t,s);return}if(o.decodedBodySize+=h?.byteLength??0,y){t.controller.terminate(h);return}let I=new Uint8Array(h);if(I.byteLength&&t.controller.controller.enqueue(I),J3e(d)){t.controller.terminate();return}if(t.controller.controller.desiredSize<=0)return}};function p(h){wre(t)?(s.aborted=!0,Kb(d)&&t.controller.controller.error(t.controller.serializedAbortReason)):Kb(d)&&t.controller.controller.error(new TypeError("terminated",{cause:v3e(h)?h:void 0})),t.controller.connection.destroy()}return s;function m({body:h}){let y=ja(n),I=t.controller.dispatcher;return new Promise((x,b)=>I.dispatch({path:y.pathname+y.search,origin:y.origin,method:n.method,body:I.isMockActive?n.body&&(n.body.source||n.body.stream):h,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(T){let{connection:_}=t.controller;o.finalConnectionTimingInfo=L3e(void 0,o.postRedirectStartTime,t.crossOriginIsolatedCapability),_.destroyed?T(new DOMException("The operation was aborted.","AbortError")):(t.controller.on("terminated",T),this.abort=_.abort=T),o.finalNetworkRequestStartTime=NE(t.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=NE(t.crossOriginIsolatedCapability)},onHeaders(T,_,U,O){if(T<200)return;let z="",de=new xre;for(let ge=0;ge<_.length;ge+=2)de.append(Sre(_[ge]),_[ge+1].toString("latin1"),!0);z=de.get("location",!0),this.body=new V3e({read:U});let De=[],Be=z&&n.redirect==="follow"&&Nre.has(T);if(n.method!=="HEAD"&&n.method!=="CONNECT"&&!Tre.includes(T)&&!Be){let ge=de.get("content-encoding",!0),G=ge?ge.toLowerCase().split(","):[],se=5;if(G.length>se)return b(new Error(`too many content-encodings in response: ${G.length}, maximum allowed is ${se}`)),!0;for(let Ct=G.length-1;Ct>=0;--Ct){let it=G[Ct].trim();if(it==="x-gzip"||it==="gzip")De.push(nd.createGunzip({flush:nd.constants.Z_SYNC_FLUSH,finishFlush:nd.constants.Z_SYNC_FLUSH}));else if(it==="deflate")De.push(F3e({flush:nd.constants.Z_SYNC_FLUSH,finishFlush:nd.constants.Z_SYNC_FLUSH}));else if(it==="br")De.push(nd.createBrotliDecompress({flush:nd.constants.BROTLI_OPERATION_FLUSH,finishFlush:nd.constants.BROTLI_OPERATION_FLUSH}));else{De.length=0;break}}}let ne=this.onError.bind(this);return x({status:T,statusText:O,headersList:de,body:De.length?Y3e(this.body,...De,ge=>{ge&&this.onError(ge)}).on("error",ne):this.body.on("error",ne)}),!0},onData(T){if(t.controller.dump)return;let _=T;return o.encodedBodySize+=_.byteLength,this.body.push(_)},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(T){this.abort&&t.controller.off("terminated",this.abort),this.body?.destroy(T),t.controller.terminate(T),b(T)},onUpgrade(T,_,U){if(T!==101)return;let O=new xre;for(let z=0;z<_.length;z+=2)O.append(Sre(_[z]),_[z+1].toString("latin1"),!0);return x({status:T,statusText:rVe[T],headersList:O,socket:U}),!0}}))}}Lre.exports={fetch:iVe,Fetch:Xb,fetching:_re,finalizeAndReportTiming:Pre}});var a1=w((F1t,Ore)=>{"use strict";Ore.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 Fre=w((U1t,Mre)=>{"use strict";var{webidl:xo}=Bn(),Zb=Symbol("ProgressEvent state"),c1=class t extends Event{constructor(e,r={}){e=xo.converters.DOMString(e,"ProgressEvent constructor","type"),r=xo.converters.ProgressEventInit(r??{}),super(e,r),this[Zb]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return xo.brandCheck(this,t),this[Zb].lengthComputable}get loaded(){return xo.brandCheck(this,t),this[Zb].loaded}get total(){return xo.brandCheck(this,t),this[Zb].total}};xo.converters.ProgressEventInit=xo.dictionaryConverter([{key:"lengthComputable",converter:xo.converters.boolean,defaultValue:()=>!1},{key:"loaded",converter:xo.converters["unsigned long long"],defaultValue:()=>0},{key:"total",converter:xo.converters["unsigned long long"],defaultValue:()=>0},{key:"bubbles",converter:xo.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:xo.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:xo.converters.boolean,defaultValue:()=>!1}]);Mre.exports={ProgressEvent:c1}});var qre=w((q1t,Ure)=>{"use strict";function uVe(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"}}Ure.exports={getEncoding:uVe}});var jre=w(($1t,Wre)=>{"use strict";var{kState:qA,kError:l1,kResult:$re,kAborted:PE,kLastProgressEventFired:u1}=a1(),{ProgressEvent:dVe}=Fre(),{getEncoding:Gre}=qre(),{serializeAMimeType:pVe,parseMIMEType:Hre}=Ls(),{types:mVe}=require("node:util"),{StringDecoder:zre}=require("string_decoder"),{btoa:Vre}=require("node:buffer"),fVe={enumerable:!0,writable:!1,configurable:!1};function AVe(t,e,r,n){if(t[qA]==="loading")throw new DOMException("Invalid state","InvalidStateError");t[qA]="loading",t[$re]=null,t[l1]=null;let o=e.stream().getReader(),i=[],a=o.read(),c=!0;(async()=>{for(;!t[PE];)try{let{done:l,value:u}=await a;if(c&&!t[PE]&&queueMicrotask(()=>{sd("loadstart",t)}),c=!1,!l&&mVe.isUint8Array(u))i.push(u),(t[u1]===void 0||Date.now()-t[u1]>=50)&&!t[PE]&&(t[u1]=Date.now(),queueMicrotask(()=>{sd("progress",t)})),a=o.read();else if(l){queueMicrotask(()=>{t[qA]="done";try{let d=hVe(i,r,e.type,n);if(t[PE])return;t[$re]=d,sd("load",t)}catch(d){t[l1]=d,sd("error",t)}t[qA]!=="loading"&&sd("loadend",t)});break}}catch(l){if(t[PE])return;queueMicrotask(()=>{t[qA]="done",t[l1]=l,sd("error",t),t[qA]!=="loading"&&sd("loadend",t)});break}})()}function sd(t,e){let r=new dVe(t,{bubbles:!1,cancelable:!1});e.dispatchEvent(r)}function hVe(t,e,r,n){switch(e){case"DataURL":{let s="data:",o=Hre(r||"application/octet-stream");o!=="failure"&&(s+=pVe(o)),s+=";base64,";let i=new zre("latin1");for(let a of t)s+=Vre(i.write(a));return s+=Vre(i.end()),s}case"Text":{let s="failure";if(n&&(s=Gre(n)),s==="failure"&&r){let o=Hre(r);o!=="failure"&&(s=Gre(o.parameters.get("charset")))}return s==="failure"&&(s="UTF-8"),gVe(t,s)}case"ArrayBuffer":return Yre(t).buffer;case"BinaryString":{let s="",o=new zre("latin1");for(let i of t)s+=o.write(i);return s+=o.end(),s}}}function gVe(t,e){let r=Yre(t),n=yVe(r),s=0;n!==null&&(e=n,s=n==="UTF-8"?3:2);let o=r.slice(s);return new TextDecoder(e).decode(o)}function yVe(t){let[e,r,n]=t;return e===239&&r===187&&n===191?"UTF-8":e===254&&r===255?"UTF-16BE":e===255&&r===254?"UTF-16LE":null}function Yre(t){let e=t.reduce((n,s)=>n+s.byteLength,0),r=0;return t.reduce((n,s)=>(n.set(s,r),r+=s.byteLength,n),new Uint8Array(e))}Wre.exports={staticPropertyDescriptors:fVe,readOperation:AVe,fireAProgressEvent:sd}});var Zre=w((G1t,Xre)=>{"use strict";var{staticPropertyDescriptors:$A,readOperation:eS,fireAProgressEvent:Jre}=jre(),{kState:em,kError:Kre,kResult:tS,kEvents:St,kAborted:EVe}=a1(),{webidl:Dt}=Bn(),{kEnumerableProperty:Fs}=lt(),na=class t extends EventTarget{constructor(){super(),this[em]="empty",this[tS]=null,this[Kre]=null,this[St]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){Dt.brandCheck(this,t),Dt.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),e=Dt.converters.Blob(e,{strict:!1}),eS(this,e,"ArrayBuffer")}readAsBinaryString(e){Dt.brandCheck(this,t),Dt.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),e=Dt.converters.Blob(e,{strict:!1}),eS(this,e,"BinaryString")}readAsText(e,r=void 0){Dt.brandCheck(this,t),Dt.argumentLengthCheck(arguments,1,"FileReader.readAsText"),e=Dt.converters.Blob(e,{strict:!1}),r!==void 0&&(r=Dt.converters.DOMString(r,"FileReader.readAsText","encoding")),eS(this,e,"Text",r)}readAsDataURL(e){Dt.brandCheck(this,t),Dt.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),e=Dt.converters.Blob(e,{strict:!1}),eS(this,e,"DataURL")}abort(){if(this[em]==="empty"||this[em]==="done"){this[tS]=null;return}this[em]==="loading"&&(this[em]="done",this[tS]=null),this[EVe]=!0,Jre("abort",this),this[em]!=="loading"&&Jre("loadend",this)}get readyState(){switch(Dt.brandCheck(this,t),this[em]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return Dt.brandCheck(this,t),this[tS]}get error(){return Dt.brandCheck(this,t),this[Kre]}get onloadend(){return Dt.brandCheck(this,t),this[St].loadend}set onloadend(e){Dt.brandCheck(this,t),this[St].loadend&&this.removeEventListener("loadend",this[St].loadend),typeof e=="function"?(this[St].loadend=e,this.addEventListener("loadend",e)):this[St].loadend=null}get onerror(){return Dt.brandCheck(this,t),this[St].error}set onerror(e){Dt.brandCheck(this,t),this[St].error&&this.removeEventListener("error",this[St].error),typeof e=="function"?(this[St].error=e,this.addEventListener("error",e)):this[St].error=null}get onloadstart(){return Dt.brandCheck(this,t),this[St].loadstart}set onloadstart(e){Dt.brandCheck(this,t),this[St].loadstart&&this.removeEventListener("loadstart",this[St].loadstart),typeof e=="function"?(this[St].loadstart=e,this.addEventListener("loadstart",e)):this[St].loadstart=null}get onprogress(){return Dt.brandCheck(this,t),this[St].progress}set onprogress(e){Dt.brandCheck(this,t),this[St].progress&&this.removeEventListener("progress",this[St].progress),typeof e=="function"?(this[St].progress=e,this.addEventListener("progress",e)):this[St].progress=null}get onload(){return Dt.brandCheck(this,t),this[St].load}set onload(e){Dt.brandCheck(this,t),this[St].load&&this.removeEventListener("load",this[St].load),typeof e=="function"?(this[St].load=e,this.addEventListener("load",e)):this[St].load=null}get onabort(){return Dt.brandCheck(this,t),this[St].abort}set onabort(e){Dt.brandCheck(this,t),this[St].abort&&this.removeEventListener("abort",this[St].abort),typeof e=="function"?(this[St].abort=e,this.addEventListener("abort",e)):this[St].abort=null}};na.EMPTY=na.prototype.EMPTY=0;na.LOADING=na.prototype.LOADING=1;na.DONE=na.prototype.DONE=2;Object.defineProperties(na.prototype,{EMPTY:$A,LOADING:$A,DONE:$A,readAsArrayBuffer:Fs,readAsBinaryString:Fs,readAsText:Fs,readAsDataURL:Fs,abort:Fs,readyState:Fs,result:Fs,error:Fs,onloadstart:Fs,onprogress:Fs,onload:Fs,onabort:Fs,onerror:Fs,onloadend:Fs,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(na,{EMPTY:$A,LOADING:$A,DONE:$A});Xre.exports={FileReader:na}});var rS=w((H1t,ene)=>{"use strict";ene.exports={kConstruct:Xt().kConstruct}});var nne=w((z1t,rne)=>{"use strict";var CVe=require("node:assert"),{URLSerializer:tne}=Ls(),{isValidHeaderName:IVe}=ho();function xVe(t,e,r=!1){let n=tne(t,r),s=tne(e,r);return n===s}function wVe(t){CVe(t!==null);let e=[];for(let r of t.split(","))r=r.trim(),IVe(r)&&e.push(r);return e}rne.exports={urlEquals:xVe,getFieldValues:wVe}});var ine=w((V1t,one)=>{"use strict";var{kConstruct:bVe}=rS(),{urlEquals:SVe,getFieldValues:d1}=nne(),{kEnumerableProperty:tm,isDisturbed:BVe}=lt(),{webidl:Re}=Bn(),{Response:RVe,cloneResponse:NVe,fromInnerResponse:TVe}=RE(),{Request:Fl,fromInnerRequest:PVe}=UA(),{kState:sa}=Hu(),{fetching:vVe}=TE(),{urlIsHttpHttpsScheme:nS,createDeferredPromise:GA,readAllBytes:_Ve}=ho(),p1=require("node:assert"),sS=class t{#e;constructor(){arguments[0]!==bVe&&Re.illegalConstructor(),Re.util.markAsUncloneable(this),this.#e=arguments[1]}async match(e,r={}){Re.brandCheck(this,t);let n="Cache.match";Re.argumentLengthCheck(arguments,1,n),e=Re.converters.RequestInfo(e,n,"request"),r=Re.converters.CacheQueryOptions(r,n,"options");let s=this.#r(e,r,1);if(s.length!==0)return s[0]}async matchAll(e=void 0,r={}){Re.brandCheck(this,t);let n="Cache.matchAll";return e!==void 0&&(e=Re.converters.RequestInfo(e,n,"request")),r=Re.converters.CacheQueryOptions(r,n,"options"),this.#r(e,r)}async add(e){Re.brandCheck(this,t);let r="Cache.add";Re.argumentLengthCheck(arguments,1,r),e=Re.converters.RequestInfo(e,r,"request");let n=[e];return await this.addAll(n)}async addAll(e){Re.brandCheck(this,t);let r="Cache.addAll";Re.argumentLengthCheck(arguments,1,r);let n=[],s=[];for(let p of e){if(p===void 0)throw Re.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(p=Re.converters.RequestInfo(p),typeof p=="string")continue;let m=p[sa];if(!nS(m.url)||m.method!=="GET")throw Re.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let p of e){let m=new Fl(p)[sa];if(!nS(m.url))throw Re.errors.exception({header:r,message:"Expected http/s scheme."});m.initiator="fetch",m.destination="subresource",s.push(m);let h=GA();o.push(vVe({request:m,processResponse(y){if(y.type==="error"||y.status===206||y.status<200||y.status>299)h.reject(Re.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(y.headersList.contains("vary")){let I=d1(y.headersList.get("vary"));for(let x of I)if(x==="*"){h.reject(Re.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let b of o)b.abort();return}}},processResponseEndOfBody(y){if(y.aborted){h.reject(new DOMException("aborted","AbortError"));return}h.resolve(y)}})),n.push(h.promise)}let a=await Promise.all(n),c=[],l=0;for(let p of a){let m={type:"put",request:s[l],response:p};c.push(m),l++}let u=GA(),d=null;try{this.#t(c)}catch(p){d=p}return queueMicrotask(()=>{d===null?u.resolve(void 0):u.reject(d)}),u.promise}async put(e,r){Re.brandCheck(this,t);let n="Cache.put";Re.argumentLengthCheck(arguments,2,n),e=Re.converters.RequestInfo(e,n,"request"),r=Re.converters.Response(r,n,"response");let s=null;if(e instanceof Fl?s=e[sa]:s=new Fl(e)[sa],!nS(s.url)||s.method!=="GET")throw Re.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[sa];if(o.status===206)throw Re.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let m=d1(o.headersList.get("vary"));for(let h of m)if(h==="*")throw Re.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(BVe(o.body.stream)||o.body.stream.locked))throw Re.errors.exception({header:n,message:"Response body is locked or disturbed"});let i=NVe(o),a=GA();if(o.body!=null){let h=o.body.stream.getReader();_Ve(h).then(a.resolve,a.reject)}else a.resolve(void 0);let c=[],l={type:"put",request:s,response:i};c.push(l);let u=await a.promise;i.body!=null&&(i.body.source=u);let d=GA(),p=null;try{this.#t(c)}catch(m){p=m}return queueMicrotask(()=>{p===null?d.resolve():d.reject(p)}),d.promise}async delete(e,r={}){Re.brandCheck(this,t);let n="Cache.delete";Re.argumentLengthCheck(arguments,1,n),e=Re.converters.RequestInfo(e,n,"request"),r=Re.converters.CacheQueryOptions(r,n,"options");let s=null;if(e instanceof Fl){if(s=e[sa],s.method!=="GET"&&!r.ignoreMethod)return!1}else p1(typeof e=="string"),s=new Fl(e)[sa];let o=[],i={type:"delete",request:s,options:r};o.push(i);let a=GA(),c=null,l;try{l=this.#t(o)}catch(u){c=u}return queueMicrotask(()=>{c===null?a.resolve(!!l?.length):a.reject(c)}),a.promise}async keys(e=void 0,r={}){Re.brandCheck(this,t);let n="Cache.keys";e!==void 0&&(e=Re.converters.RequestInfo(e,n,"request")),r=Re.converters.CacheQueryOptions(r,n,"options");let s=null;if(e!==void 0)if(e instanceof Fl){if(s=e[sa],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof e=="string"&&(s=new Fl(e)[sa]);let o=GA(),i=[];if(e===void 0)for(let a of this.#e)i.push(a[0]);else{let a=this.#s(s,r);for(let c of a)i.push(c[0])}return queueMicrotask(()=>{let a=[];for(let c of i){let l=PVe(c,new AbortController().signal,"immutable");a.push(l)}o.resolve(Object.freeze(a))}),o.promise}#t(e){let r=this.#e,n=[...r],s=[],o=[];try{for(let i of e){if(i.type!=="delete"&&i.type!=="put")throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(i.type==="delete"&&i.response!=null)throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#s(i.request,i.options,s).length)throw new DOMException("???","InvalidStateError");let a;if(i.type==="delete"){if(a=this.#s(i.request,i.options),a.length===0)return[];for(let c of a){let l=r.indexOf(c);p1(l!==-1),r.splice(l,1)}}else if(i.type==="put"){if(i.response==null)throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let c=i.request;if(!nS(c.url))throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(c.method!=="GET")throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(i.options!=null)throw Re.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});a=this.#s(i.request);for(let l of a){let u=r.indexOf(l);p1(u!==-1),r.splice(u,1)}r.push([i.request,i.response]),s.push([i.request,i.response])}o.push([i.request,i.response])}return o}catch(i){throw this.#e.length=0,this.#e=n,i}}#s(e,r,n){let s=[],o=n??this.#e;for(let i of o){let[a,c]=i;this.#n(e,a,c,r)&&s.push(i)}return s}#n(e,r,n=null,s){let o=new URL(e.url),i=new URL(r.url);if(s?.ignoreSearch&&(i.search="",o.search=""),!SVe(o,i,!0))return!1;if(n==null||s?.ignoreVary||!n.headersList.contains("vary"))return!0;let a=d1(n.headersList.get("vary"));for(let c of a){if(c==="*")return!1;let l=r.headersList.get(c),u=e.headersList.get(c);if(l!==u)return!1}return!0}#r(e,r,n=1/0){let s=null;if(e!==void 0)if(e instanceof Fl){if(s=e[sa],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof e=="string"&&(s=new Fl(e)[sa]);let o=[];if(e===void 0)for(let a of this.#e)o.push(a[1]);else{let a=this.#s(s,r);for(let c of a)o.push(c[1])}let i=[];for(let a of o){let c=TVe(a,"immutable");if(i.push(c.clone()),i.length>=n)break}return Object.freeze(i)}};Object.defineProperties(sS.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:tm,matchAll:tm,add:tm,addAll:tm,put:tm,delete:tm,keys:tm});var sne=[{key:"ignoreSearch",converter:Re.converters.boolean,defaultValue:()=>!1},{key:"ignoreMethod",converter:Re.converters.boolean,defaultValue:()=>!1},{key:"ignoreVary",converter:Re.converters.boolean,defaultValue:()=>!1}];Re.converters.CacheQueryOptions=Re.dictionaryConverter(sne);Re.converters.MultiCacheQueryOptions=Re.dictionaryConverter([...sne,{key:"cacheName",converter:Re.converters.DOMString}]);Re.converters.Response=Re.interfaceConverter(RVe);Re.converters["sequence"]=Re.sequenceConverter(Re.converters.RequestInfo);one.exports={Cache:sS}});var cne=w((Y1t,ane)=>{"use strict";var{kConstruct:vE}=rS(),{Cache:oS}=ine(),{webidl:Gn}=Bn(),{kEnumerableProperty:_E}=lt(),iS=class t{#e=new Map;constructor(){arguments[0]!==vE&&Gn.illegalConstructor(),Gn.util.markAsUncloneable(this)}async match(e,r={}){if(Gn.brandCheck(this,t),Gn.argumentLengthCheck(arguments,1,"CacheStorage.match"),e=Gn.converters.RequestInfo(e),r=Gn.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new oS(vE,n).match(e,r)}}else for(let n of this.#e.values()){let o=await new oS(vE,n).match(e,r);if(o!==void 0)return o}}async has(e){Gn.brandCheck(this,t);let r="CacheStorage.has";return Gn.argumentLengthCheck(arguments,1,r),e=Gn.converters.DOMString(e,r,"cacheName"),this.#e.has(e)}async open(e){Gn.brandCheck(this,t);let r="CacheStorage.open";if(Gn.argumentLengthCheck(arguments,1,r),e=Gn.converters.DOMString(e,r,"cacheName"),this.#e.has(e)){let s=this.#e.get(e);return new oS(vE,s)}let n=[];return this.#e.set(e,n),new oS(vE,n)}async delete(e){Gn.brandCheck(this,t);let r="CacheStorage.delete";return Gn.argumentLengthCheck(arguments,1,r),e=Gn.converters.DOMString(e,r,"cacheName"),this.#e.delete(e)}async keys(){return Gn.brandCheck(this,t),[...this.#e.keys()]}};Object.defineProperties(iS.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:_E,has:_E,open:_E,delete:_E,keys:_E});ane.exports={CacheStorage:iS}});var une=w((W1t,lne)=>{"use strict";lne.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var m1=w((j1t,Ane)=>{"use strict";function QVe(t){for(let e=0;e=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}function dne(t){for(let e=0;e126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}function pne(t){let e=t.length,r=0;if(t[0]==='"'){if(e===1||t[e-1]!=='"')throw new Error("Invalid cookie value");--e,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}function mne(t){for(let e=0;ee.toString().padStart(2,"0"));function fne(t){return typeof t=="number"&&(t=new Date(t)),`${kVe[t.getUTCDay()]}, ${aS[t.getUTCDate()]} ${LVe[t.getUTCMonth()]} ${t.getUTCFullYear()} ${aS[t.getUTCHours()]}:${aS[t.getUTCMinutes()]}:${aS[t.getUTCSeconds()]} GMT`}function OVe(t){if(t<0)throw new Error("Invalid cookie max-age")}function MVe(t){if(t.name.length===0)return null;dne(t.name),pne(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"&&(OVe(t.maxAge),e.push(`Max-Age=${t.maxAge}`)),t.domain&&(DVe(t.domain),e.push(`Domain=${t.domain}`)),t.path&&(mne(t.path),e.push(`Path=${t.path}`)),t.expires&&t.expires.toString()!=="Invalid Date"&&e.push(`Expires=${fne(t.expires)}`),t.sameSite&&e.push(`SameSite=${t.sameSite}`);for(let r of t.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...s]=r.split("=");e.push(`${n.trim()}=${s.join("=")}`)}return e.join("; ")}Ane.exports={isCTLExcludingHtab:QVe,validateCookieName:dne,validateCookiePath:mne,validateCookieValue:pne,toIMFDate:fne,stringify:MVe}});var gne=w((J1t,hne)=>{"use strict";var{maxNameValuePairSize:FVe,maxAttributeValueSize:UVe}=une(),{isCTLExcludingHtab:qVe}=m1(),{collectASequenceOfCodePointsFast:cS}=Ls(),$Ve=require("node:assert");function GVe(t){if(qVe(t))return null;let e="",r="",n="",s="";if(t.includes(";")){let o={position:0};e=cS(";",t,o),r=t.slice(o.position)}else e=t;if(!e.includes("="))s=e;else{let o={position:0};n=cS("=",e,o),s=e.slice(o.position+1)}return n=n.trim(),s=s.trim(),n.length+s.length>FVe?null:{name:n,value:s,...HA(r)}}function HA(t,e={}){if(t.length===0)return e;$Ve(t[0]===";"),t=t.slice(1);let r="";t.includes(";")?(r=cS(";",t,{position:0}),t=t.slice(r.length)):(r=t,t="");let n="",s="";if(r.includes("=")){let i={position:0};n=cS("=",r,i),s=r.slice(i.position+1)}else n=r;if(n=n.trim(),s=s.trim(),s.length>UVe)return HA(t,e);let o=n.toLowerCase();if(o==="expires"){let i=new Date(s);e.expires=i}else if(o==="max-age"){let i=s.charCodeAt(0);if((i<48||i>57)&&s[0]!=="-"||!/^\d+$/.test(s))return HA(t,e);let a=Number(s);e.maxAge=a}else if(o==="domain"){let i=s;i[0]==="."&&(i=i.slice(1)),i=i.toLowerCase(),e.domain=i}else if(o==="path"){let i="";s.length===0||s[0]!=="/"?i="/":i=s,e.path=i}else if(o==="secure")e.secure=!0;else if(o==="httponly")e.httpOnly=!0;else if(o==="samesite"){let i="Default",a=s.toLowerCase();a.includes("none")&&(i="None"),a.includes("strict")&&(i="Strict"),a.includes("lax")&&(i="Lax"),e.sameSite=i}else e.unparsed??=[],e.unparsed.push(`${n}=${s}`);return HA(t,e)}hne.exports={parseSetCookie:GVe,parseUnparsedAttributes:HA}});var Cne=w((K1t,Ene)=>{"use strict";var{parseSetCookie:HVe}=gne(),{stringify:zVe}=m1(),{webidl:ft}=Bn(),{Headers:lS}=Jp();function VVe(t){ft.argumentLengthCheck(arguments,1,"getCookies"),ft.brandCheck(t,lS,{strict:!1});let e=t.get("cookie"),r={};if(!e)return r;for(let n of e.split(";")){let[s,...o]=n.split("=");r[s.trim()]=o.join("=")}return r}function YVe(t,e,r){ft.brandCheck(t,lS,{strict:!1});let n="deleteCookie";ft.argumentLengthCheck(arguments,2,n),e=ft.converters.DOMString(e,n,"name"),r=ft.converters.DeleteCookieAttributes(r),yne(t,{name:e,value:"",expires:new Date(0),...r})}function WVe(t){ft.argumentLengthCheck(arguments,1,"getSetCookies"),ft.brandCheck(t,lS,{strict:!1});let e=t.getSetCookie();return e?e.map(r=>HVe(r)):[]}function yne(t,e){ft.argumentLengthCheck(arguments,2,"setCookie"),ft.brandCheck(t,lS,{strict:!1}),e=ft.converters.Cookie(e);let r=zVe(e);r&&t.append("Set-Cookie",r)}ft.converters.DeleteCookieAttributes=ft.dictionaryConverter([{converter:ft.nullableConverter(ft.converters.DOMString),key:"path",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters.DOMString),key:"domain",defaultValue:()=>null}]);ft.converters.Cookie=ft.dictionaryConverter([{converter:ft.converters.DOMString,key:"name"},{converter:ft.converters.DOMString,key:"value"},{converter:ft.nullableConverter(t=>typeof t=="number"?ft.converters["unsigned long long"](t):new Date(t)),key:"expires",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters["long long"]),key:"maxAge",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters.DOMString),key:"domain",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters.DOMString),key:"path",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters.boolean),key:"secure",defaultValue:()=>null},{converter:ft.nullableConverter(ft.converters.boolean),key:"httpOnly",defaultValue:()=>null},{converter:ft.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:ft.sequenceConverter(ft.converters.DOMString),key:"unparsed",defaultValue:()=>new Array(0)}]);Ene.exports={getCookies:VVe,deleteCookie:YVe,getSetCookies:WVe,setCookie:yne}});var VA=w((X1t,xne)=>{"use strict";var{webidl:we}=Bn(),{kEnumerableProperty:Us}=lt(),{kConstruct:Ine}=Xt(),{MessagePort:jVe}=require("node:worker_threads"),zA=class t extends Event{#e;constructor(e,r={}){if(e===Ine){super(arguments[1],arguments[2]),we.util.markAsUncloneable(this);return}let n="MessageEvent constructor";we.argumentLengthCheck(arguments,1,n),e=we.converters.DOMString(e,n,"type"),r=we.converters.MessageEventInit(r,n,"eventInitDict"),super(e,r),this.#e=r,we.util.markAsUncloneable(this)}get data(){return we.brandCheck(this,t),this.#e.data}get origin(){return we.brandCheck(this,t),this.#e.origin}get lastEventId(){return we.brandCheck(this,t),this.#e.lastEventId}get source(){return we.brandCheck(this,t),this.#e.source}get ports(){return we.brandCheck(this,t),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(e,r=!1,n=!1,s=null,o="",i="",a=null,c=[]){return we.brandCheck(this,t),we.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new t(e,{bubbles:r,cancelable:n,data:s,origin:o,lastEventId:i,source:a,ports:c})}static createFastMessageEvent(e,r){let n=new t(Ine,e,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:JVe}=zA;delete zA.createFastMessageEvent;var uS=class t extends Event{#e;constructor(e,r={}){let n="CloseEvent constructor";we.argumentLengthCheck(arguments,1,n),e=we.converters.DOMString(e,n,"type"),r=we.converters.CloseEventInit(r),super(e,r),this.#e=r,we.util.markAsUncloneable(this)}get wasClean(){return we.brandCheck(this,t),this.#e.wasClean}get code(){return we.brandCheck(this,t),this.#e.code}get reason(){return we.brandCheck(this,t),this.#e.reason}},dS=class t extends Event{#e;constructor(e,r){let n="ErrorEvent constructor";we.argumentLengthCheck(arguments,1,n),super(e,r),we.util.markAsUncloneable(this),e=we.converters.DOMString(e,n,"type"),r=we.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return we.brandCheck(this,t),this.#e.message}get filename(){return we.brandCheck(this,t),this.#e.filename}get lineno(){return we.brandCheck(this,t),this.#e.lineno}get colno(){return we.brandCheck(this,t),this.#e.colno}get error(){return we.brandCheck(this,t),this.#e.error}};Object.defineProperties(zA.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:Us,origin:Us,lastEventId:Us,source:Us,ports:Us,initMessageEvent:Us});Object.defineProperties(uS.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:Us,code:Us,wasClean:Us});Object.defineProperties(dS.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:Us,filename:Us,lineno:Us,colno:Us,error:Us});we.converters.MessagePort=we.interfaceConverter(jVe);we.converters["sequence"]=we.sequenceConverter(we.converters.MessagePort);var f1=[{key:"bubbles",converter:we.converters.boolean,defaultValue:()=>!1},{key:"cancelable",converter:we.converters.boolean,defaultValue:()=>!1},{key:"composed",converter:we.converters.boolean,defaultValue:()=>!1}];we.converters.MessageEventInit=we.dictionaryConverter([...f1,{key:"data",converter:we.converters.any,defaultValue:()=>null},{key:"origin",converter:we.converters.USVString,defaultValue:()=>""},{key:"lastEventId",converter:we.converters.DOMString,defaultValue:()=>""},{key:"source",converter:we.nullableConverter(we.converters.MessagePort),defaultValue:()=>null},{key:"ports",converter:we.converters["sequence"],defaultValue:()=>new Array(0)}]);we.converters.CloseEventInit=we.dictionaryConverter([...f1,{key:"wasClean",converter:we.converters.boolean,defaultValue:()=>!1},{key:"code",converter:we.converters["unsigned short"],defaultValue:()=>0},{key:"reason",converter:we.converters.USVString,defaultValue:()=>""}]);we.converters.ErrorEventInit=we.dictionaryConverter([...f1,{key:"message",converter:we.converters.DOMString,defaultValue:()=>""},{key:"filename",converter:we.converters.USVString,defaultValue:()=>""},{key:"lineno",converter:we.converters["unsigned long"],defaultValue:()=>0},{key:"colno",converter:we.converters["unsigned long"],defaultValue:()=>0},{key:"error",converter:we.converters.any}]);xne.exports={MessageEvent:zA,CloseEvent:uS,ErrorEvent:dS,createFastMessageEvent:JVe}});var rm=w((Z1t,wne)=>{"use strict";var KVe="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",XVe={enumerable:!0,writable:!1,configurable:!1},ZVe={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},e4e={NOT_SENT:0,PROCESSING:1,SENT:2},t4e={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},r4e=2**16-1,n4e={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},s4e=Buffer.allocUnsafe(0),o4e={string:1,typedArray:2,arrayBuffer:3,blob:4};wne.exports={uid:KVe,sentCloseFrameState:e4e,staticPropertyDescriptors:XVe,states:ZVe,opcodes:t4e,maxUnsigned16Bit:r4e,parserStates:n4e,emptyBuffer:s4e,sendHints:o4e}});var QE=w((eUt,bne)=>{"use strict";bne.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 LE=w((tUt,Qne)=>{"use strict";var{kReadyState:DE,kController:i4e,kResponse:a4e,kBinaryType:c4e,kWebSocketURL:l4e}=QE(),{states:kE,opcodes:od}=rm(),{ErrorEvent:u4e,createFastMessageEvent:d4e}=VA(),{isUtf8:p4e}=require("node:buffer"),{collectASequenceOfCodePointsFast:m4e,removeHTTPWhitespace:Sne}=Ls();function f4e(t){return t[DE]===kE.CONNECTING}function A4e(t){return t[DE]===kE.OPEN}function h4e(t){return t[DE]===kE.CLOSING}function g4e(t){return t[DE]===kE.CLOSED}function A1(t,e,r=(s,o)=>new Event(s,o),n={}){let s=r(t,n);e.dispatchEvent(s)}function y4e(t,e,r){if(t[DE]!==kE.OPEN)return;let n;if(e===od.TEXT)try{n=_ne(r)}catch{Rne(t,"Received invalid UTF-8 in text frame.");return}else e===od.BINARY&&(t[c4e]==="blob"?n=new Blob([r]):n=E4e(r));A1("message",t,d4e,{origin:t[l4e].origin,data:n})}function E4e(t){return t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}function C4e(t){if(t.length===0)return!1;for(let e=0;e126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}function I4e(t){return t>=1e3&&t<1015?t!==1004&&t!==1005&&t!==1006:t>=3e3&&t<=4999}function Rne(t,e){let{[i4e]:r,[a4e]:n}=t;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),e&&A1("error",t,(s,o)=>new u4e(s,o),{error:new Error(e),message:e})}function Nne(t){return t===od.CLOSE||t===od.PING||t===od.PONG}function Tne(t){return t===od.CONTINUATION}function Pne(t){return t===od.TEXT||t===od.BINARY}function x4e(t){return Pne(t)||Tne(t)||Nne(t)}function w4e(t){let e={position:0},r=new Map;for(;e.position57)return!1}let e=Number.parseInt(t,10);return e>=8&&e<=15}var vne=typeof process.versions.icu=="string",Bne=vne?new TextDecoder("utf-8",{fatal:!0}):void 0,_ne=vne?Bne.decode.bind(Bne):function(t){if(p4e(t))return t.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};Qne.exports={isConnecting:f4e,isEstablished:A4e,isClosing:h4e,isClosed:g4e,fireEvent:A1,isValidSubprotocol:C4e,isValidStatusCode:I4e,failWebsocketConnection:Rne,websocketMessageReceived:y4e,utf8Decode:_ne,isControlFrame:Nne,isContinuationFrame:Tne,isTextBinaryFrame:Pne,isValidOpcode:x4e,parseExtensions:w4e,isValidClientWindowBits:b4e}});var mS=w((rUt,Dne)=>{"use strict";var{maxUnsigned16Bit:S4e}=rm(),pS=16386,h1,OE=null,YA=pS;try{h1=require("node:crypto")}catch{h1={randomFillSync:function(e,r,n){for(let s=0;sS4e?(i+=8,o=127):s>125&&(i+=2,o=126);let a=Buffer.allocUnsafe(s+i);a[0]=a[1]=0,a[0]|=128,a[0]=(a[0]&240)+e;a[i-4]=n[0],a[i-3]=n[1],a[i-2]=n[2],a[i-1]=n[3],a[1]=o,o===126?a.writeUInt16BE(s,2):o===127&&(a[2]=a[3]=0,a.writeUIntBE(s,4,6)),a[1]|=128;for(let c=0;c{"use strict";var{uid:R4e,states:ME,sentCloseFrameState:fS,emptyBuffer:N4e,opcodes:T4e}=rm(),{kReadyState:FE,kSentClose:AS,kByteParser:Lne,kReceivedClose:kne,kResponse:One}=QE(),{fireEvent:P4e,failWebsocketConnection:id,isClosing:v4e,isClosed:_4e,isEstablished:Q4e,parseExtensions:D4e}=LE(),{channels:WA}=oA(),{CloseEvent:k4e}=VA(),{makeRequest:L4e}=UA(),{fetching:O4e}=TE(),{Headers:M4e,getHeadersList:F4e}=Jp(),{getDecodeSplit:U4e}=ho(),{WebsocketFrameSend:q4e}=mS(),y1;try{y1=require("node:crypto")}catch{}function $4e(t,e,r,n,s,o){let i=t;i.protocol=t.protocol==="ws:"?"http:":"https:";let a=L4e({urlList:[i],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let d=F4e(new M4e(o.headers));a.headersList=d}let c=y1.randomBytes(16).toString("base64");a.headersList.append("sec-websocket-key",c),a.headersList.append("sec-websocket-version","13");for(let d of e)a.headersList.append("sec-websocket-protocol",d);return a.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),O4e({request:a,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(d){if(d.type==="error"||d.status!==101){id(n,"Received network error or non-101 status code.");return}if(e.length!==0&&!d.headersList.get("Sec-WebSocket-Protocol")){id(n,"Server did not respond with sent protocols.");return}if(d.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){id(n,'Server did not set Upgrade header to "websocket".');return}if(d.headersList.get("Connection")?.toLowerCase()!=="upgrade"){id(n,'Server did not set Connection header to "upgrade".');return}let p=d.headersList.get("Sec-WebSocket-Accept"),m=y1.createHash("sha1").update(c+R4e).digest("base64");if(p!==m){id(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let h=d.headersList.get("Sec-WebSocket-Extensions"),y;if(h!==null&&(y=D4e(h),!y.has("permessage-deflate"))){id(n,"Sec-WebSocket-Extensions header does not match.");return}let I=d.headersList.get("Sec-WebSocket-Protocol");if(I!==null&&!U4e("sec-websocket-protocol",a.headersList).includes(I)){id(n,"Protocol was not set in the opening handshake.");return}d.socket.on("data",Mne),d.socket.on("close",Fne),d.socket.on("error",Une),WA.open.hasSubscribers&&WA.open.publish({address:d.socket.address(),protocol:I,extensions:h}),s(d,y)}})}function G4e(t,e,r,n){if(!(v4e(t)||_4e(t)))if(!Q4e(t))id(t,"Connection was closed before it was established."),t[FE]=ME.CLOSING;else if(t[AS]===fS.NOT_SENT){t[AS]=fS.PROCESSING;let s=new q4e;e!==void 0&&r===void 0?(s.frameData=Buffer.allocUnsafe(2),s.frameData.writeUInt16BE(e,0)):e!==void 0&&r!==void 0?(s.frameData=Buffer.allocUnsafe(2+n),s.frameData.writeUInt16BE(e,0),s.frameData.write(r,2,"utf-8")):s.frameData=N4e,t[One].socket.write(s.createFrame(T4e.CLOSE)),t[AS]=fS.SENT,t[FE]=ME.CLOSING}else t[FE]=ME.CLOSING}function Mne(t){this.ws[Lne].write(t)||this.pause()}function Fne(){let{ws:t}=this,{[One]:e}=t;e.socket.off("data",Mne),e.socket.off("close",Fne),e.socket.off("error",Une);let r=t[AS]===fS.SENT&&t[kne],n=1005,s="",o=t[Lne].closingInfo;o&&!o.error?(n=o.code??1005,s=o.reason):t[kne]||(n=1006),t[FE]=ME.CLOSED,P4e("close",t,(i,a)=>new k4e(i,a),{wasClean:r,code:n,reason:s}),WA.close.hasSubscribers&&WA.close.publish({websocket:t,code:n,reason:s})}function Une(t){let{ws:e}=this;e[FE]=ME.CLOSING,WA.socketError.hasSubscribers&&WA.socketError.publish(t),this.destroy()}qne.exports={establishWebSocketConnection:$4e,closeWebSocketConnection:G4e}});var Hne=w((sUt,Gne)=>{"use strict";var{createInflateRaw:H4e,Z_DEFAULT_WINDOWBITS:z4e}=require("node:zlib"),{isValidClientWindowBits:V4e}=LE(),{MessageSizeExceededError:$ne}=wt(),Y4e=Buffer.from([0,0,255,255]),hS=Symbol("kBuffer"),UE=Symbol("kLength"),W4e=4*1024*1024,C1=class{#e;#t={};#s=!1;#n=null;constructor(e){this.#t.serverNoContextTakeover=e.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=e.get("server_max_window_bits")}decompress(e,r,n){if(this.#s){n(new $ne);return}if(!this.#e){let s=z4e;if(this.#t.serverMaxWindowBits){if(!V4e(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}s=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=H4e({windowBits:s})}catch(o){n(o);return}this.#e[hS]=[],this.#e[UE]=0,this.#e.on("data",o=>{if(!this.#s){if(this.#e[UE]+=o.length,this.#e[UE]>W4e){if(this.#s=!0,this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null,this.#n){let i=this.#n;this.#n=null,i(new $ne)}return}this.#e[hS].push(o)}}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#n=n,this.#e.write(e),r&&this.#e.write(Y4e),this.#e.flush(()=>{if(this.#s||!this.#e)return;let s=Buffer.concat(this.#e[hS],this.#e[UE]);this.#e[hS].length=0,this.#e[UE]=0,this.#n=null,n(null,s)})}};Gne.exports={PerMessageDeflate:C1}});var ese=w((oUt,Zne)=>{"use strict";var{Writable:j4e}=require("node:stream"),J4e=require("node:assert"),{parserStates:qs,opcodes:jA,states:K4e,emptyBuffer:zne,sentCloseFrameState:Vne}=rm(),{kReadyState:X4e,kSentClose:Yne,kResponse:Wne,kReceivedClose:jne}=QE(),{channels:gS}=oA(),{isValidStatusCode:Z4e,isValidOpcode:eYe,failWebsocketConnection:wo,websocketMessageReceived:Jne,utf8Decode:tYe,isControlFrame:Kne,isTextBinaryFrame:I1,isContinuationFrame:rYe}=LE(),{WebsocketFrameSend:Xne}=mS(),{closeWebSocketConnection:nYe}=E1(),{PerMessageDeflate:sYe}=Hne(),x1=class extends j4e{#e=[];#t=0;#s=!1;#n=qs.INFO;#r={};#o=[];#i;constructor(e,r){super(),this.ws=e,this.#i=r??new Map,this.#i.has("permessage-deflate")&&this.#i.set("permessage-deflate",new sYe(r))}_write(e,r,n){this.#e.push(e),this.#t+=e.length,this.#s=!0,this.run(n)}run(e){for(;this.#s;)if(this.#n===qs.INFO){if(this.#t<2)return e();let r=this.consume(2),n=(r[0]&128)!==0,s=r[0]&15,o=(r[1]&128)===128,i=!n&&s!==jA.CONTINUATION,a=r[1]&127,c=r[0]&64,l=r[0]&32,u=r[0]&16;if(!eYe(s))return wo(this.ws,"Invalid opcode received"),e();if(o)return wo(this.ws,"Frame cannot be masked"),e();if(c!==0&&!this.#i.has("permessage-deflate")){wo(this.ws,"Expected RSV1 to be clear.");return}if(l!==0||u!==0){wo(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(i&&!I1(s)){wo(this.ws,"Invalid frame type was fragmented.");return}if(I1(s)&&this.#o.length>0){wo(this.ws,"Expected continuation frame");return}if(this.#r.fragmented&&i){wo(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((a>125||i)&&Kne(s)){wo(this.ws,"Control frame either too large or fragmented");return}if(rYe(s)&&this.#o.length===0&&!this.#r.compressed){wo(this.ws,"Unexpected continuation frame");return}a<=125?(this.#r.payloadLength=a,this.#n=qs.READ_DATA):a===126?this.#n=qs.PAYLOADLENGTH_16:a===127&&(this.#n=qs.PAYLOADLENGTH_64),I1(s)&&(this.#r.binaryType=s,this.#r.compressed=c!==0),this.#r.opcode=s,this.#r.masked=o,this.#r.fin=n,this.#r.fragmented=i}else if(this.#n===qs.PAYLOADLENGTH_16){if(this.#t<2)return e();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=qs.READ_DATA}else if(this.#n===qs.PAYLOADLENGTH_64){if(this.#t<8)return e();let r=this.consume(8),n=r.readUInt32BE(0),s=r.readUInt32BE(4);if(n!==0||s>2**31-1){wo(this.ws,"Received payload length > 2^31 bytes.");return}this.#r.payloadLength=s,this.#n=qs.READ_DATA}else if(this.#n===qs.READ_DATA){if(this.#t{if(n){wo(this.ws,n.message);return}if(this.#o.push(s),!this.#r.fin){this.#n=qs.INFO,this.#s=!0,this.run(e);return}Jne(this.ws,this.#r.binaryType,Buffer.concat(this.#o)),this.#s=!0,this.#n=qs.INFO,this.#o.length=0,this.run(e)}),this.#s=!1;break}else{if(this.#o.push(r),!this.#r.fragmented&&this.#r.fin){let n=Buffer.concat(this.#o);Jne(this.ws,this.#r.binaryType,n),this.#o.length=0}this.#n=qs.INFO}}}consume(e){if(e>this.#t)throw new Error("Called consume() before buffers satiated.");if(e===0)return zne;if(this.#e[0].length===e)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(e),n=0;for(;n!==e;){let s=this.#e[0],{length:o}=s;if(o+n===e){r.set(this.#e.shift(),n);break}else if(o+n>e){r.set(s.subarray(0,e-n),n),this.#e[0]=s.subarray(e-n);break}else r.set(this.#e.shift(),n),n+=s.length}return this.#t-=e,r}parseCloseBody(e){J4e(e.length!==1);let r;if(e.length>=2&&(r=e.readUInt16BE(0)),r!==void 0&&!Z4e(r))return{code:1002,reason:"Invalid status code",error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=tYe(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(e){let{opcode:r,payloadLength:n}=this.#r;if(r===jA.CLOSE){if(n===1)return wo(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:o}=this.#r.closeInfo;return nYe(this.ws,s,o,o.length),wo(this.ws,o),!1}if(this.ws[Yne]!==Vne.SENT){let s=zne;this.#r.closeInfo.code&&(s=Buffer.allocUnsafe(2),s.writeUInt16BE(this.#r.closeInfo.code,0));let o=new Xne(s);this.ws[Wne].socket.write(o.createFrame(jA.CLOSE),i=>{i||(this.ws[Yne]=Vne.SENT)})}return this.ws[X4e]=K4e.CLOSING,this.ws[jne]=!0,!1}else if(r===jA.PING){if(!this.ws[jne]){let s=new Xne(e);this.ws[Wne].socket.write(s.createFrame(jA.PONG)),gS.ping.hasSubscribers&&gS.ping.publish({payload:e})}}else r===jA.PONG&&gS.pong.hasSubscribers&&gS.pong.publish({payload:e});return!0}get closingInfo(){return this.#r.closeInfo}};Zne.exports={ByteParser:x1}});var ose=w((iUt,sse)=>{"use strict";var{WebsocketFrameSend:oYe}=mS(),{opcodes:tse,sendHints:JA}=rm(),iYe=_M(),rse=Buffer[Symbol.species],w1=class{#e=new iYe;#t=!1;#s;constructor(e){this.#s=e}add(e,r,n){if(n!==JA.blob){let o=nse(e,n);if(!this.#t)this.#s.write(o,r);else{let i={promise:null,callback:r,frame:o};this.#e.push(i)}return}let s={promise:e.arrayBuffer().then(o=>{s.promise=null,s.frame=nse(o,n)}),callback:r,frame:null};this.#e.push(s),this.#t||this.#n()}async#n(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let r=e.shift();r.promise!==null&&await r.promise,this.#s.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function nse(t,e){return new oYe(aYe(t,e)).createFrame(e===JA.string?tse.TEXT:tse.BINARY)}function aYe(t,e){switch(e){case JA.string:return Buffer.from(t);case JA.arrayBuffer:case JA.blob:return new rse(t);case JA.typedArray:return new rse(t.buffer,t.byteOffset,t.byteLength)}}sse.exports={SendQueue:w1}});var fse=w((aUt,mse)=>{"use strict";var{webidl:Ue}=Bn(),{URLSerializer:cYe}=Ls(),{environmentSettingsObject:ise}=ho(),{staticPropertyDescriptors:ad,states:qE,sentCloseFrameState:lYe,sendHints:yS}=rm(),{kWebSocketURL:ase,kReadyState:b1,kController:uYe,kBinaryType:ES,kResponse:cse,kSentClose:dYe,kByteParser:pYe}=QE(),{isConnecting:mYe,isEstablished:fYe,isClosing:AYe,isValidSubprotocol:hYe,fireEvent:lse}=LE(),{establishWebSocketConnection:gYe,closeWebSocketConnection:use}=E1(),{ByteParser:yYe}=ese(),{kEnumerableProperty:ii,isBlobLike:dse}=lt(),{getGlobalDispatcher:EYe}=Db(),{types:pse}=require("node:util"),{ErrorEvent:CYe,CloseEvent:IYe}=VA(),{SendQueue:xYe}=ose(),bo=class t extends EventTarget{#e={open:null,error:null,close:null,message:null};#t=0;#s="";#n="";#r;constructor(e,r=[]){super(),Ue.util.markAsUncloneable(this);let n="WebSocket constructor";Ue.argumentLengthCheck(arguments,1,n);let s=Ue.converters["DOMString or sequence or WebSocketInit"](r,n,"options");e=Ue.converters.USVString(e,n,"url"),r=s.protocols;let o=ise.settingsObject.baseUrl,i;try{i=new URL(e,o)}catch(c){throw new DOMException(c,"SyntaxError")}if(i.protocol==="http:"?i.protocol="ws:":i.protocol==="https:"&&(i.protocol="wss:"),i.protocol!=="ws:"&&i.protocol!=="wss:")throw new DOMException(`Expected a ws: or wss: protocol, got ${i.protocol}`,"SyntaxError");if(i.hash||i.href.endsWith("#"))throw new DOMException("Got fragment","SyntaxError");if(typeof r=="string"&&(r=[r]),r.length!==new Set(r.map(c=>c.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(c=>hYe(c)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[ase]=new URL(i.href);let a=ise.settingsObject;this[uYe]=gYe(i,r,a,this,(c,l)=>this.#o(c,l),s),this[b1]=t.CONNECTING,this[dYe]=lYe.NOT_SENT,this[ES]="blob"}close(e=void 0,r=void 0){Ue.brandCheck(this,t);let n="WebSocket.close";if(e!==void 0&&(e=Ue.converters["unsigned short"](e,n,"code",{clamp:!0})),r!==void 0&&(r=Ue.converters.USVString(r,n,"reason")),e!==void 0&&e!==1e3&&(e<3e3||e>4999))throw new DOMException("invalid code","InvalidAccessError");let s=0;if(r!==void 0&&(s=Buffer.byteLength(r),s>123))throw new DOMException(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError");use(this,e,r,s)}send(e){Ue.brandCheck(this,t);let r="WebSocket.send";if(Ue.argumentLengthCheck(arguments,1,r),e=Ue.converters.WebSocketSendData(e,r,"data"),mYe(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!fYe(this)||AYe(this)))if(typeof e=="string"){let n=Buffer.byteLength(e);this.#t+=n,this.#r.add(e,()=>{this.#t-=n},yS.string)}else pse.isArrayBuffer(e)?(this.#t+=e.byteLength,this.#r.add(e,()=>{this.#t-=e.byteLength},yS.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#r.add(e,()=>{this.#t-=e.byteLength},yS.typedArray)):dse(e)&&(this.#t+=e.size,this.#r.add(e,()=>{this.#t-=e.size},yS.blob))}get readyState(){return Ue.brandCheck(this,t),this[b1]}get bufferedAmount(){return Ue.brandCheck(this,t),this.#t}get url(){return Ue.brandCheck(this,t),cYe(this[ase])}get extensions(){return Ue.brandCheck(this,t),this.#n}get protocol(){return Ue.brandCheck(this,t),this.#s}get onopen(){return Ue.brandCheck(this,t),this.#e.open}set onopen(e){Ue.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 Ue.brandCheck(this,t),this.#e.error}set onerror(e){Ue.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 Ue.brandCheck(this,t),this.#e.close}set onclose(e){Ue.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 Ue.brandCheck(this,t),this.#e.message}set onmessage(e){Ue.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 Ue.brandCheck(this,t),this[ES]}set binaryType(e){Ue.brandCheck(this,t),e!=="blob"&&e!=="arraybuffer"?this[ES]="blob":this[ES]=e}#o(e,r){this[cse]=e;let n=new yYe(this,r);n.on("drain",wYe),n.on("error",bYe.bind(this)),e.socket.ws=this,this[pYe]=n,this.#r=new xYe(e.socket),this[b1]=qE.OPEN;let s=e.headersList.get("sec-websocket-extensions");s!==null&&(this.#n=s);let o=e.headersList.get("sec-websocket-protocol");o!==null&&(this.#s=o),lse("open",this)}};bo.CONNECTING=bo.prototype.CONNECTING=qE.CONNECTING;bo.OPEN=bo.prototype.OPEN=qE.OPEN;bo.CLOSING=bo.prototype.CLOSING=qE.CLOSING;bo.CLOSED=bo.prototype.CLOSED=qE.CLOSED;Object.defineProperties(bo.prototype,{CONNECTING:ad,OPEN:ad,CLOSING:ad,CLOSED:ad,url:ii,readyState:ii,bufferedAmount:ii,onopen:ii,onerror:ii,onclose:ii,close:ii,onmessage:ii,binaryType:ii,send:ii,extensions:ii,protocol:ii,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(bo,{CONNECTING:ad,OPEN:ad,CLOSING:ad,CLOSED:ad});Ue.converters["sequence"]=Ue.sequenceConverter(Ue.converters.DOMString);Ue.converters["DOMString or sequence"]=function(t,e,r){return Ue.util.Type(t)==="Object"&&Symbol.iterator in t?Ue.converters["sequence"](t):Ue.converters.DOMString(t,e,r)};Ue.converters.WebSocketInit=Ue.dictionaryConverter([{key:"protocols",converter:Ue.converters["DOMString or sequence"],defaultValue:()=>new Array(0)},{key:"dispatcher",converter:Ue.converters.any,defaultValue:()=>EYe()},{key:"headers",converter:Ue.nullableConverter(Ue.converters.HeadersInit)}]);Ue.converters["DOMString or sequence or WebSocketInit"]=function(t){return Ue.util.Type(t)==="Object"&&!(Symbol.iterator in t)?Ue.converters.WebSocketInit(t):{protocols:Ue.converters["DOMString or sequence"](t)}};Ue.converters.WebSocketSendData=function(t){if(Ue.util.Type(t)==="Object"){if(dse(t))return Ue.converters.Blob(t,{strict:!1});if(ArrayBuffer.isView(t)||pse.isArrayBuffer(t))return Ue.converters.BufferSource(t)}return Ue.converters.USVString(t)};function wYe(){this.ws[cse].socket.resume()}function bYe(t){let e,r;t instanceof IYe?(e=t.reason,r=t.code):e=t.message,lse("error",this,()=>new CYe("error",{error:t,message:e})),use(this,r)}mse.exports={WebSocket:bo}});var S1=w((cUt,Ase)=>{"use strict";function SYe(t){return t.indexOf("\0")===-1}function BYe(t){if(t.length===0)return!1;for(let e=0;e57)return!1;return!0}function RYe(t){return new Promise(e=>{setTimeout(e,t).unref()})}Ase.exports={isValidLastEventId:SYe,isASCIINumber:BYe,delay:RYe}});var Ese=w((lUt,yse)=>{"use strict";var{Transform:NYe}=require("node:stream"),{isASCIINumber:hse,isValidLastEventId:gse}=S1(),Ul=[239,187,191],B1=10,CS=13,TYe=58,PYe=32,R1=class extends NYe{state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},e.push&&(this.push=e.push)}_transform(e,r,n){if(e.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,e]):this.buffer=e,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===Ul[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===Ul[0]&&this.buffer[1]===Ul[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===Ul[0]&&this.buffer[1]===Ul[1]&&this.buffer[2]===Ul[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===Ul[0]&&this.buffer[1]===Ul[1]&&this.buffer[2]===Ul[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[s]=o);break}}processEvent(e){e.retry&&hse(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&gse(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,event:void 0,id:void 0,retry:void 0}}};yse.exports={EventSourceStream:R1}});var Rse=w((uUt,Bse)=>{"use strict";var{pipeline:vYe}=require("node:stream"),{fetching:_Ye}=TE(),{makeRequest:QYe}=UA(),{webidl:ql}=Bn(),{EventSourceStream:DYe}=Ese(),{parseMIMEType:kYe}=Ls(),{createFastMessageEvent:LYe}=VA(),{isNetworkError:Cse}=RE(),{delay:OYe}=S1(),{kEnumerableProperty:nm}=lt(),{environmentSettingsObject:Ise}=ho(),xse=!1,wse=3e3,$E=0,bse=1,GE=2,MYe="anonymous",FYe="use-credentials",KA=class t extends EventTarget{#e={open:null,error:null,message:null};#t=null;#s=!1;#n=$E;#r=null;#o=null;#i;#a;constructor(e,r={}){super(),ql.util.markAsUncloneable(this);let n="EventSource constructor";ql.argumentLengthCheck(arguments,1,n),xse||(xse=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=ql.converters.USVString(e,n,"url"),r=ql.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#i=r.dispatcher,this.#a={lastEventId:"",reconnectionTime:wse};let s=Ise,o;try{o=new URL(e,s.settingsObject.baseUrl),this.#a.origin=o.origin}catch(c){throw new DOMException(c,"SyntaxError")}this.#t=o.href;let i=MYe;r.withCredentials&&(i=FYe,this.#s=!0);let a={redirect:"follow",keepalive:!0,mode:"cors",credentials:i==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};a.client=Ise.settingsObject,a.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],a.cache="no-store",a.initiator="other",a.urlList=[new URL(this.#t)],this.#r=QYe(a),this.#c()}get readyState(){return this.#n}get url(){return this.#t}get withCredentials(){return this.#s}#c(){if(this.#n===GE)return;this.#n=$E;let e={request:this.#r,dispatcher:this.#i},r=n=>{Cse(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#l()};e.processResponseEndOfBody=r,e.processResponse=n=>{if(Cse(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#l();return}let s=n.headersList.get("content-type",!0),o=s!==null?kYe(s):"failure",i=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||i===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#n=bse,this.dispatchEvent(new Event("open")),this.#a.origin=n.urlList[n.urlList.length-1].origin;let a=new DYe({eventSourceSettings:this.#a,push:c=>{this.dispatchEvent(LYe(c.type,c.options))}});vYe(n.body.stream,a,c=>{c?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#o=_Ye(e)}async#l(){this.#n!==GE&&(this.#n=$E,this.dispatchEvent(new Event("error")),await OYe(this.#a.reconnectionTime),this.#n===$E&&(this.#a.lastEventId.length&&this.#r.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#c()))}close(){ql.brandCheck(this,t),this.#n!==GE&&(this.#n=GE,this.#o.abort(),this.#r=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}},Sse={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:$E,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:bse,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:GE,writable:!1}};Object.defineProperties(KA,Sse);Object.defineProperties(KA.prototype,Sse);Object.defineProperties(KA.prototype,{close:nm,onerror:nm,onmessage:nm,onopen:nm,readyState:nm,url:nm,withCredentials:nm});ql.converters.EventSourceInitDict=ql.dictionaryConverter([{key:"withCredentials",converter:ql.converters.boolean,defaultValue:()=>!1},{key:"dispatcher",converter:ql.converters.any}]);Bse.exports={EventSource:KA,defaultReconnectionTime:wse}});var ZA=w((dUt,Me)=>{"use strict";var UYe=SA(),Nse=Yy(),qYe=BA(),$Ye=SZ(),GYe=RA(),HYe=XM(),zYe=jZ(),VYe=tee(),Tse=wt(),xS=lt(),{InvalidArgumentError:IS}=Tse,XA=qee(),YYe=jy(),WYe=QF(),jYe=wte(),JYe=LF(),KYe=CF(),XYe=bb(),{getGlobalDispatcher:Pse,setGlobalDispatcher:ZYe}=Db(),eWe=kb(),tWe=mb(),rWe=fb();Object.assign(Nse.prototype,XA);Me.exports.Dispatcher=Nse;Me.exports.Client=UYe;Me.exports.Pool=qYe;Me.exports.BalancedPool=$Ye;Me.exports.Agent=GYe;Me.exports.ProxyAgent=HYe;Me.exports.EnvHttpProxyAgent=zYe;Me.exports.RetryAgent=VYe;Me.exports.RetryHandler=XYe;Me.exports.DecoratorHandler=eWe;Me.exports.RedirectHandler=tWe;Me.exports.createRedirectInterceptor=rWe;Me.exports.interceptors={redirect:Pte(),retry:_te(),dump:Dte(),dns:Ote()};Me.exports.buildConnector=YYe;Me.exports.errors=Tse;Me.exports.util={parseHeaders:xS.parseHeaders,headerNameToString:xS.headerNameToString};function HE(t){return(e,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!e||typeof e!="string"&&typeof e!="object"&&!(e instanceof URL))throw new IS("invalid url");if(r!=null&&typeof r!="object")throw new IS("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new IS("invalid opts.path");let i=r.path;r.path.startsWith("/")||(i=`/${i}`),e=new URL(xS.parseOrigin(e).origin+i)}else r||(r=typeof e=="object"?e:{}),e=xS.parseURL(e);let{agent:s,dispatcher:o=Pse()}=r;if(s)throw new IS("unsupported opts.agent. Did you mean opts.client?");return t.call(o,{...r,origin:e.origin,path:e.search?`${e.pathname}${e.search}`:e.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}Me.exports.setGlobalDispatcher=ZYe;Me.exports.getGlobalDispatcher=Pse;var nWe=TE().fetch;Me.exports.fetch=async function(e,r=void 0){try{return await nWe(e,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}};Me.exports.Headers=Jp().Headers;Me.exports.Response=RE().Response;Me.exports.Request=UA().Request;Me.exports.FormData=rE().FormData;Me.exports.File=globalThis.File??require("node:buffer").File;Me.exports.FileReader=Zre().FileReader;var{setGlobalOrigin:sWe,getGlobalOrigin:oWe}=ZO();Me.exports.setGlobalOrigin=sWe;Me.exports.getGlobalOrigin=oWe;var{CacheStorage:iWe}=cne(),{kConstruct:aWe}=rS();Me.exports.caches=new iWe(aWe);var{deleteCookie:cWe,getCookies:lWe,getSetCookies:uWe,setCookie:dWe}=Cne();Me.exports.deleteCookie=cWe;Me.exports.getCookies=lWe;Me.exports.getSetCookies=uWe;Me.exports.setCookie=dWe;var{parseMIMEType:pWe,serializeAMimeType:mWe}=Ls();Me.exports.parseMIMEType=pWe;Me.exports.serializeAMimeType=mWe;var{CloseEvent:fWe,ErrorEvent:AWe,MessageEvent:hWe}=VA();Me.exports.WebSocket=fse().WebSocket;Me.exports.CloseEvent=fWe;Me.exports.ErrorEvent=AWe;Me.exports.MessageEvent=hWe;Me.exports.request=HE(XA.request);Me.exports.stream=HE(XA.stream);Me.exports.pipeline=HE(XA.pipeline);Me.exports.connect=HE(XA.connect);Me.exports.upgrade=HE(XA.upgrade);Me.exports.MockClient=WYe;Me.exports.MockPool=JYe;Me.exports.MockAgent=jYe;Me.exports.mockErrors=KYe;var{EventSource:gWe}=Rse();Me.exports.EventSource=gWe});var ZE=w((C2t,uoe)=>{"use strict";var MWe="2.0.0",FWe=Number.MAX_SAFE_INTEGER||9007199254740991,UWe=16,qWe=250,$We=["major","premajor","minor","preminor","patch","prepatch","prerelease"];uoe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:UWe,MAX_SAFE_BUILD_LENGTH:qWe,MAX_SAFE_INTEGER:FWe,RELEASE_TYPES:$We,SEMVER_SPEC_VERSION:MWe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var eC=w((I2t,doe)=>{"use strict";var GWe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};doe.exports=GWe});var nh=w((Xa,poe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:V1,MAX_SAFE_BUILD_LENGTH:HWe,MAX_LENGTH:zWe}=ZE(),VWe=eC();Xa=poe.exports={};var YWe=Xa.re=[],WWe=Xa.safeRe=[],oe=Xa.src=[],jWe=Xa.safeSrc=[],ie=Xa.t={},JWe=0,Y1="[a-zA-Z0-9-]",KWe=[["\\s",1],["\\d",zWe],[Y1,HWe]],XWe=t=>{for(let[e,r]of KWe)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Ke=(t,e,r)=>{let n=XWe(e),s=JWe++;VWe(t,s,e),ie[t]=s,oe[s]=e,jWe[s]=n,YWe[s]=new RegExp(e,r?"g":void 0),WWe[s]=new RegExp(n,r?"g":void 0)};Ke("NUMERICIDENTIFIER","0|[1-9]\\d*");Ke("NUMERICIDENTIFIERLOOSE","\\d+");Ke("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${Y1}*`);Ke("MAINVERSION",`(${oe[ie.NUMERICIDENTIFIER]})\\.(${oe[ie.NUMERICIDENTIFIER]})\\.(${oe[ie.NUMERICIDENTIFIER]})`);Ke("MAINVERSIONLOOSE",`(${oe[ie.NUMERICIDENTIFIERLOOSE]})\\.(${oe[ie.NUMERICIDENTIFIERLOOSE]})\\.(${oe[ie.NUMERICIDENTIFIERLOOSE]})`);Ke("PRERELEASEIDENTIFIER",`(?:${oe[ie.NONNUMERICIDENTIFIER]}|${oe[ie.NUMERICIDENTIFIER]})`);Ke("PRERELEASEIDENTIFIERLOOSE",`(?:${oe[ie.NONNUMERICIDENTIFIER]}|${oe[ie.NUMERICIDENTIFIERLOOSE]})`);Ke("PRERELEASE",`(?:-(${oe[ie.PRERELEASEIDENTIFIER]}(?:\\.${oe[ie.PRERELEASEIDENTIFIER]})*))`);Ke("PRERELEASELOOSE",`(?:-?(${oe[ie.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${oe[ie.PRERELEASEIDENTIFIERLOOSE]})*))`);Ke("BUILDIDENTIFIER",`${Y1}+`);Ke("BUILD",`(?:\\+(${oe[ie.BUILDIDENTIFIER]}(?:\\.${oe[ie.BUILDIDENTIFIER]})*))`);Ke("FULLPLAIN",`v?${oe[ie.MAINVERSION]}${oe[ie.PRERELEASE]}?${oe[ie.BUILD]}?`);Ke("FULL",`^${oe[ie.FULLPLAIN]}$`);Ke("LOOSEPLAIN",`[v=\\s]*${oe[ie.MAINVERSIONLOOSE]}${oe[ie.PRERELEASELOOSE]}?${oe[ie.BUILD]}?`);Ke("LOOSE",`^${oe[ie.LOOSEPLAIN]}$`);Ke("GTLT","((?:<|>)?=?)");Ke("XRANGEIDENTIFIERLOOSE",`${oe[ie.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Ke("XRANGEIDENTIFIER",`${oe[ie.NUMERICIDENTIFIER]}|x|X|\\*`);Ke("XRANGEPLAIN",`[v=\\s]*(${oe[ie.XRANGEIDENTIFIER]})(?:\\.(${oe[ie.XRANGEIDENTIFIER]})(?:\\.(${oe[ie.XRANGEIDENTIFIER]})(?:${oe[ie.PRERELEASE]})?${oe[ie.BUILD]}?)?)?`);Ke("XRANGEPLAINLOOSE",`[v=\\s]*(${oe[ie.XRANGEIDENTIFIERLOOSE]})(?:\\.(${oe[ie.XRANGEIDENTIFIERLOOSE]})(?:\\.(${oe[ie.XRANGEIDENTIFIERLOOSE]})(?:${oe[ie.PRERELEASELOOSE]})?${oe[ie.BUILD]}?)?)?`);Ke("XRANGE",`^${oe[ie.GTLT]}\\s*${oe[ie.XRANGEPLAIN]}$`);Ke("XRANGELOOSE",`^${oe[ie.GTLT]}\\s*${oe[ie.XRANGEPLAINLOOSE]}$`);Ke("COERCEPLAIN",`(^|[^\\d])(\\d{1,${V1}})(?:\\.(\\d{1,${V1}}))?(?:\\.(\\d{1,${V1}}))?`);Ke("COERCE",`${oe[ie.COERCEPLAIN]}(?:$|[^\\d])`);Ke("COERCEFULL",oe[ie.COERCEPLAIN]+`(?:${oe[ie.PRERELEASE]})?(?:${oe[ie.BUILD]})?(?:$|[^\\d])`);Ke("COERCERTL",oe[ie.COERCE],!0);Ke("COERCERTLFULL",oe[ie.COERCEFULL],!0);Ke("LONETILDE","(?:~>?)");Ke("TILDETRIM",`(\\s*)${oe[ie.LONETILDE]}\\s+`,!0);Xa.tildeTrimReplace="$1~";Ke("TILDE",`^${oe[ie.LONETILDE]}${oe[ie.XRANGEPLAIN]}$`);Ke("TILDELOOSE",`^${oe[ie.LONETILDE]}${oe[ie.XRANGEPLAINLOOSE]}$`);Ke("LONECARET","(?:\\^)");Ke("CARETTRIM",`(\\s*)${oe[ie.LONECARET]}\\s+`,!0);Xa.caretTrimReplace="$1^";Ke("CARET",`^${oe[ie.LONECARET]}${oe[ie.XRANGEPLAIN]}$`);Ke("CARETLOOSE",`^${oe[ie.LONECARET]}${oe[ie.XRANGEPLAINLOOSE]}$`);Ke("COMPARATORLOOSE",`^${oe[ie.GTLT]}\\s*(${oe[ie.LOOSEPLAIN]})$|^$`);Ke("COMPARATOR",`^${oe[ie.GTLT]}\\s*(${oe[ie.FULLPLAIN]})$|^$`);Ke("COMPARATORTRIM",`(\\s*)${oe[ie.GTLT]}\\s*(${oe[ie.LOOSEPLAIN]}|${oe[ie.XRANGEPLAIN]})`,!0);Xa.comparatorTrimReplace="$1$2$3";Ke("HYPHENRANGE",`^\\s*(${oe[ie.XRANGEPLAIN]})\\s+-\\s+(${oe[ie.XRANGEPLAIN]})\\s*$`);Ke("HYPHENRANGELOOSE",`^\\s*(${oe[ie.XRANGEPLAINLOOSE]})\\s+-\\s+(${oe[ie.XRANGEPLAINLOOSE]})\\s*$`);Ke("STAR","(<|>)?=?\\s*\\*");Ke("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Ke("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var NS=w((x2t,moe)=>{"use strict";var ZWe=Object.freeze({loose:!0}),e8e=Object.freeze({}),t8e=t=>t?typeof t!="object"?ZWe:t:e8e;moe.exports=t8e});var W1=w((w2t,hoe)=>{"use strict";var foe=/^[0-9]+$/,Aoe=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tAoe(e,t);hoe.exports={compareIdentifiers:Aoe,rcompareIdentifiers:r8e}});var Hn=w((b2t,yoe)=>{"use strict";var TS=eC(),{MAX_LENGTH:goe,MAX_SAFE_INTEGER:PS}=ZE(),{safeRe:vS,t:_S}=nh(),n8e=NS(),{compareIdentifiers:j1}=W1(),J1=class t{constructor(e,r){if(r=n8e(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>goe)throw new TypeError(`version is longer than ${goe} characters`);TS("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?vS[_S.LOOSE]:vS[_S.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>PS||this.major<0)throw new TypeError("Invalid major version");if(this.minor>PS||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>PS||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(TS("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return j1(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(TS("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return j1(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?vS[_S.PRERELEASELOOSE]:vS[_S.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),j1(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};yoe.exports=J1});var lm=w((S2t,Coe)=>{"use strict";var Eoe=Hn(),s8e=(t,e,r=!1)=>{if(t instanceof Eoe)return t;try{return new Eoe(t,e)}catch(n){if(!r)return null;throw n}};Coe.exports=s8e});var xoe=w((B2t,Ioe)=>{"use strict";var o8e=lm(),i8e=(t,e)=>{let r=o8e(t,e);return r?r.version:null};Ioe.exports=i8e});var boe=w((R2t,woe)=>{"use strict";var a8e=lm(),c8e=(t,e)=>{let r=a8e(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};woe.exports=c8e});var Roe=w((N2t,Boe)=>{"use strict";var Soe=Hn(),l8e=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new Soe(t instanceof Soe?t.version:t,r).inc(e,n,s).version}catch{return null}};Boe.exports=l8e});var Poe=w((T2t,Toe)=>{"use strict";var Noe=lm(),u8e=(t,e)=>{let r=Noe(t,null,!0),n=Noe(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,i=o?r:n,a=o?n:r,c=!!i.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(i)===0)return a.minor&&!a.patch?"minor":"patch"}let u=c?"pre":"";return r.major!==n.major?u+"major":r.minor!==n.minor?u+"minor":r.patch!==n.patch?u+"patch":"prerelease"};Toe.exports=u8e});var _oe=w((P2t,voe)=>{"use strict";var d8e=Hn(),p8e=(t,e)=>new d8e(t,e).major;voe.exports=p8e});var Doe=w((v2t,Qoe)=>{"use strict";var m8e=Hn(),f8e=(t,e)=>new m8e(t,e).minor;Qoe.exports=f8e});var Loe=w((_2t,koe)=>{"use strict";var A8e=Hn(),h8e=(t,e)=>new A8e(t,e).patch;koe.exports=h8e});var Moe=w((Q2t,Ooe)=>{"use strict";var g8e=lm(),y8e=(t,e)=>{let r=g8e(t,e);return r&&r.prerelease.length?r.prerelease:null};Ooe.exports=y8e});var ai=w((D2t,Uoe)=>{"use strict";var Foe=Hn(),E8e=(t,e,r)=>new Foe(t,r).compare(new Foe(e,r));Uoe.exports=E8e});var $oe=w((k2t,qoe)=>{"use strict";var C8e=ai(),I8e=(t,e,r)=>C8e(e,t,r);qoe.exports=I8e});var Hoe=w((L2t,Goe)=>{"use strict";var x8e=ai(),w8e=(t,e)=>x8e(t,e,!0);Goe.exports=w8e});var QS=w((O2t,Voe)=>{"use strict";var zoe=Hn(),b8e=(t,e,r)=>{let n=new zoe(t,r),s=new zoe(e,r);return n.compare(s)||n.compareBuild(s)};Voe.exports=b8e});var Woe=w((M2t,Yoe)=>{"use strict";var S8e=QS(),B8e=(t,e)=>t.sort((r,n)=>S8e(r,n,e));Yoe.exports=B8e});var Joe=w((F2t,joe)=>{"use strict";var R8e=QS(),N8e=(t,e)=>t.sort((r,n)=>R8e(n,r,e));joe.exports=N8e});var tC=w((U2t,Koe)=>{"use strict";var T8e=ai(),P8e=(t,e,r)=>T8e(t,e,r)>0;Koe.exports=P8e});var DS=w((q2t,Xoe)=>{"use strict";var v8e=ai(),_8e=(t,e,r)=>v8e(t,e,r)<0;Xoe.exports=_8e});var K1=w(($2t,Zoe)=>{"use strict";var Q8e=ai(),D8e=(t,e,r)=>Q8e(t,e,r)===0;Zoe.exports=D8e});var X1=w((G2t,eie)=>{"use strict";var k8e=ai(),L8e=(t,e,r)=>k8e(t,e,r)!==0;eie.exports=L8e});var kS=w((H2t,tie)=>{"use strict";var O8e=ai(),M8e=(t,e,r)=>O8e(t,e,r)>=0;tie.exports=M8e});var LS=w((z2t,rie)=>{"use strict";var F8e=ai(),U8e=(t,e,r)=>F8e(t,e,r)<=0;rie.exports=U8e});var Z1=w((V2t,nie)=>{"use strict";var q8e=K1(),$8e=X1(),G8e=tC(),H8e=kS(),z8e=DS(),V8e=LS(),Y8e=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return q8e(t,r,n);case"!=":return $8e(t,r,n);case">":return G8e(t,r,n);case">=":return H8e(t,r,n);case"<":return z8e(t,r,n);case"<=":return V8e(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};nie.exports=Y8e});var oie=w((Y2t,sie)=>{"use strict";var W8e=Hn(),j8e=lm(),{safeRe:OS,t:MS}=nh(),J8e=(t,e)=>{if(t instanceof W8e)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?OS[MS.COERCEFULL]:OS[MS.COERCE]);else{let c=e.includePrerelease?OS[MS.COERCERTLFULL]:OS[MS.COERCERTL],l;for(;(l=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||l.index+l[0].length!==r.index+r[0].length)&&(r=l),c.lastIndex=l.index+l[1].length+l[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",i=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return j8e(`${n}.${s}.${o}${i}${a}`,e)};sie.exports=J8e});var aie=w((W2t,iie)=>{"use strict";var eU=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};iie.exports=eU});var ci=w((j2t,die)=>{"use strict";var K8e=/\s+/g,tU=class t{constructor(e,r){if(r=Z8e(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof rU)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(K8e," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!lie(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&ije(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let n=((this.options.includePrerelease&&sje)|(this.options.loose&&oje))+":"+e,s=cie.get(n);if(s)return s;let o=this.options.loose,i=o?ms[zn.HYPHENRANGELOOSE]:ms[zn.HYPHENRANGE];e=e.replace(i,hje(this.options.includePrerelease)),Vt("hyphen replace",e),e=e.replace(ms[zn.COMPARATORTRIM],tje),Vt("comparator trim",e),e=e.replace(ms[zn.TILDETRIM],rje),Vt("tilde trim",e),e=e.replace(ms[zn.CARETTRIM],nje),Vt("caret trim",e);let a=e.split(" ").map(d=>aje(d,this.options)).join(" ").split(/\s+/).map(d=>Aje(d,this.options));o&&(a=a.filter(d=>(Vt("loose invalid filter",d,this.options),!!d.match(ms[zn.COMPARATORLOOSE])))),Vt("range list",a);let c=new Map,l=a.map(d=>new rU(d,this.options));for(let d of l){if(lie(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let u=[...c.values()];return cie.set(n,u),u}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>uie(n,r)&&e.set.some(s=>uie(s,r)&&n.every(o=>s.every(i=>o.intersects(i,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new eje(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",ije=t=>t.value==="",uie=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},aje=(t,e)=>(t=t.replace(ms[zn.BUILD],""),Vt("comp",t,e),t=uje(t,e),Vt("caret",t),t=cje(t,e),Vt("tildes",t),t=pje(t,e),Vt("xrange",t),t=fje(t,e),Vt("stars",t),t),fs=t=>!t||t.toLowerCase()==="x"||t==="*",cje=(t,e)=>t.trim().split(/\s+/).map(r=>lje(r,e)).join(" "),lje=(t,e)=>{let r=e.loose?ms[zn.TILDELOOSE]:ms[zn.TILDE];return t.replace(r,(n,s,o,i,a)=>{Vt("tilde",t,n,s,o,i,a);let c;return fs(s)?c="":fs(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:fs(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(Vt("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,Vt("tilde return",c),c})},uje=(t,e)=>t.trim().split(/\s+/).map(r=>dje(r,e)).join(" "),dje=(t,e)=>{Vt("caret",t,e);let r=e.loose?ms[zn.CARETLOOSE]:ms[zn.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,i,a,c)=>{Vt("caret",t,s,o,i,a,c);let l;return fs(o)?l="":fs(i)?l=`>=${o}.0.0${n} <${+o+1}.0.0-0`:fs(a)?o==="0"?l=`>=${o}.${i}.0${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.0${n} <${+o+1}.0.0-0`:c?(Vt("replaceCaret pr",c),o==="0"?i==="0"?l=`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(Vt("no pr"),o==="0"?i==="0"?l=`>=${o}.${i}.${a}${n} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a} <${+o+1}.0.0-0`),Vt("caret return",l),l})},pje=(t,e)=>(Vt("replaceXRanges",t,e),t.split(/\s+/).map(r=>mje(r,e)).join(" ")),mje=(t,e)=>{t=t.trim();let r=e.loose?ms[zn.XRANGELOOSE]:ms[zn.XRANGE];return t.replace(r,(n,s,o,i,a,c)=>{Vt("xRange",t,n,s,o,i,a,c);let l=fs(o),u=l||fs(i),d=u||fs(a),p=d;return s==="="&&p&&(s=""),c=e.includePrerelease?"-0":"",l?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&p?(u&&(i=0),a=0,s===">"?(s=">=",u?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",u?o=+o+1:i=+i+1),s==="<"&&(c="-0"),n=`${s+o}.${i}.${a}${c}`):u?n=`>=${o}.0.0${c} <${+o+1}.0.0-0`:d&&(n=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),Vt("xRange return",n),n})},fje=(t,e)=>(Vt("replaceStars",t,e),t.trim().replace(ms[zn.STAR],"")),Aje=(t,e)=>(Vt("replaceGTE0",t,e),t.trim().replace(ms[e.includePrerelease?zn.GTE0PRE:zn.GTE0],"")),hje=t=>(e,r,n,s,o,i,a,c,l,u,d,p)=>(fs(n)?r="":fs(s)?r=`>=${n}.0.0${t?"-0":""}`:fs(o)?r=`>=${n}.${s}.0${t?"-0":""}`:i?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,fs(l)?c="":fs(u)?c=`<${+l+1}.0.0-0`:fs(d)?c=`<${l}.${+u+1}.0-0`:p?c=`<=${l}.${u}.${d}-${p}`:t?c=`<${l}.${u}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),gje=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var rC=w((J2t,gie)=>{"use strict";var nC=Symbol("SemVer ANY"),oU=class t{static get ANY(){return nC}constructor(e,r){if(r=pie(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),sU("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===nC?this.value="":this.value=this.operator+this.semver.version,sU("comp",this)}parse(e){let r=this.options.loose?mie[fie.COMPARATORLOOSE]:mie[fie.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Aie(n[2],this.options.loose):this.semver=nC}toString(){return this.value}test(e){if(sU("Comparator.test",e,this.options.loose),this.semver===nC||e===nC)return!0;if(typeof e=="string")try{e=new Aie(e,this.options)}catch{return!1}return nU(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new hie(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new hie(this.value,r).test(e.semver):(r=pie(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||nU(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||nU(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};gie.exports=oU;var pie=NS(),{safeRe:mie,t:fie}=nh(),nU=Z1(),sU=eC(),Aie=Hn(),hie=ci()});var sC=w((K2t,yie)=>{"use strict";var yje=ci(),Eje=(t,e,r)=>{try{e=new yje(e,r)}catch{return!1}return e.test(t)};yie.exports=Eje});var Cie=w((X2t,Eie)=>{"use strict";var Cje=ci(),Ije=(t,e)=>new Cje(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Eie.exports=Ije});var xie=w((Z2t,Iie)=>{"use strict";var xje=Hn(),wje=ci(),bje=(t,e,r)=>{let n=null,s=null,o=null;try{o=new wje(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===-1)&&(n=i,s=new xje(n,r))}),n};Iie.exports=bje});var bie=w((eqt,wie)=>{"use strict";var Sje=Hn(),Bje=ci(),Rje=(t,e,r)=>{let n=null,s=null,o=null;try{o=new Bje(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===1)&&(n=i,s=new Sje(n,r))}),n};wie.exports=Rje});var Rie=w((tqt,Bie)=>{"use strict";var iU=Hn(),Nje=ci(),Sie=tC(),Tje=(t,e)=>{t=new Nje(t,e);let r=new iU("0.0.0");if(t.test(r)||(r=new iU("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let a=new iU(i.semver.version);switch(i.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!o||Sie(a,o))&&(o=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${i.operator}`)}}),o&&(!r||Sie(r,o))&&(r=o)}return r&&t.test(r)?r:null};Bie.exports=Tje});var Tie=w((rqt,Nie)=>{"use strict";var Pje=ci(),vje=(t,e)=>{try{return new Pje(t,e).range||"*"}catch{return null}};Nie.exports=vje});var FS=w((nqt,Qie)=>{"use strict";var _je=Hn(),_ie=rC(),{ANY:Qje}=_ie,Dje=ci(),kje=sC(),Pie=tC(),vie=DS(),Lje=LS(),Oje=kS(),Mje=(t,e,r,n)=>{t=new _je(t,n),e=new Dje(e,n);let s,o,i,a,c;switch(r){case">":s=Pie,o=Lje,i=vie,a=">",c=">=";break;case"<":s=vie,o=Oje,i=Pie,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(kje(t,e,n))return!1;for(let l=0;l{m.semver===Qje&&(m=new _ie(">=0.0.0")),d=d||m,p=p||m,s(m.semver,d.semver,n)?d=m:i(m.semver,p.semver,n)&&(p=m)}),d.operator===a||d.operator===c||(!p.operator||p.operator===a)&&o(t,p.semver))return!1;if(p.operator===c&&i(t,p.semver))return!1}return!0};Qie.exports=Mje});var kie=w((sqt,Die)=>{"use strict";var Fje=FS(),Uje=(t,e,r)=>Fje(t,e,">",r);Die.exports=Uje});var Oie=w((oqt,Lie)=>{"use strict";var qje=FS(),$je=(t,e,r)=>qje(t,e,"<",r);Lie.exports=$je});var Uie=w((iqt,Fie)=>{"use strict";var Mie=ci(),Gje=(t,e,r)=>(t=new Mie(t,r),e=new Mie(e,r),t.intersects(e,r));Fie.exports=Gje});var $ie=w((aqt,qie)=>{"use strict";var Hje=sC(),zje=ai();qie.exports=(t,e,r)=>{let n=[],s=null,o=null,i=t.sort((u,d)=>zje(u,d,r));for(let u of i)Hje(u,e,r)?(o=u,s||(s=u)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let a=[];for(let[u,d]of n)u===d?a.push(u):!d&&u===i[0]?a.push("*"):d?u===i[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);let c=a.join(" || "),l=typeof e.raw=="string"?e.raw:String(e);return c.length{"use strict";var Gie=ci(),cU=rC(),{ANY:aU}=cU,oC=sC(),lU=ai(),Vje=(t,e,r={})=>{if(t===e)return!0;t=new Gie(t,r),e=new Gie(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let i=Wje(s,o,r);if(n=n||i!==null,i)continue e}if(n)return!1}return!0},Yje=[new cU(">=0.0.0-0")],Hie=[new cU(">=0.0.0")],Wje=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===aU){if(e.length===1&&e[0].semver===aU)return!0;r.includePrerelease?t=Yje:t=Hie}if(e.length===1&&e[0].semver===aU){if(r.includePrerelease)return!0;e=Hie}let n=new Set,s,o;for(let m of t)m.operator===">"||m.operator===">="?s=zie(s,m,r):m.operator==="<"||m.operator==="<="?o=Vie(o,m,r):n.add(m.semver);if(n.size>1)return null;let i;if(s&&o){if(i=lU(s.semver,o.semver,r),i>0)return null;if(i===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let m of n){if(s&&!oC(m,String(s),r)||o&&!oC(m,String(o),r))return null;for(let h of e)if(!oC(m,String(h),r))return!1;return!0}let a,c,l,u,d=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,p=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&o.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let m of e){if(u=u||m.operator===">"||m.operator===">=",l=l||m.operator==="<"||m.operator==="<=",s){if(p&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===p.major&&m.semver.minor===p.minor&&m.semver.patch===p.patch&&(p=!1),m.operator===">"||m.operator===">="){if(a=zie(s,m,r),a===m&&a!==s)return!1}else if(s.operator===">="&&!oC(s.semver,String(m),r))return!1}if(o){if(d&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===d.major&&m.semver.minor===d.minor&&m.semver.patch===d.patch&&(d=!1),m.operator==="<"||m.operator==="<="){if(c=Vie(o,m,r),c===m&&c!==o)return!1}else if(o.operator==="<="&&!oC(o.semver,String(m),r))return!1}if(!m.operator&&(o||s)&&i!==0)return!1}return!(s&&l&&!o&&i!==0||o&&u&&!s&&i!==0||p||d)},zie=(t,e,r)=>{if(!t)return e;let n=lU(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Vie=(t,e,r)=>{if(!t)return e;let n=lU(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Yie.exports=Vje});var dU=w((lqt,Kie)=>{"use strict";var uU=nh(),jie=ZE(),jje=Hn(),Jie=W1(),Jje=lm(),Kje=xoe(),Xje=boe(),Zje=Roe(),eJe=Poe(),tJe=_oe(),rJe=Doe(),nJe=Loe(),sJe=Moe(),oJe=ai(),iJe=$oe(),aJe=Hoe(),cJe=QS(),lJe=Woe(),uJe=Joe(),dJe=tC(),pJe=DS(),mJe=K1(),fJe=X1(),AJe=kS(),hJe=LS(),gJe=Z1(),yJe=oie(),EJe=rC(),CJe=ci(),IJe=sC(),xJe=Cie(),wJe=xie(),bJe=bie(),SJe=Rie(),BJe=Tie(),RJe=FS(),NJe=kie(),TJe=Oie(),PJe=Uie(),vJe=$ie(),_Je=Wie();Kie.exports={parse:Jje,valid:Kje,clean:Xje,inc:Zje,diff:eJe,major:tJe,minor:rJe,patch:nJe,prerelease:sJe,compare:oJe,rcompare:iJe,compareLoose:aJe,compareBuild:cJe,sort:lJe,rsort:uJe,gt:dJe,lt:pJe,eq:mJe,neq:fJe,gte:AJe,lte:hJe,cmp:gJe,coerce:yJe,Comparator:EJe,Range:CJe,satisfies:IJe,toComparators:xJe,maxSatisfying:wJe,minSatisfying:bJe,minVersion:SJe,validRange:BJe,outside:RJe,gtr:NJe,ltr:TJe,intersects:PJe,simplifyRange:vJe,subset:_Je,SemVer:jje,re:uU.re,src:uU.src,tokens:uU.t,SEMVER_SPEC_VERSION:jie.SEMVER_SPEC_VERSION,RELEASE_TYPES:jie.RELEASE_TYPES,compareIdentifiers:Jie.compareIdentifiers,rcompareIdentifiers:Jie.rcompareIdentifiers}});var pae=w((e$t,dae)=>{dae.exports=function(t,e){for(var r=[],n=0;n{"use strict";hae.exports=fae;function fae(t,e,r){t instanceof RegExp&&(t=mae(t,r)),e instanceof RegExp&&(e=mae(e,r));var n=Aae(t,e,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+t.length,n[1]),post:r.slice(n[1]+e.length)}}function mae(t,e){var r=e.match(t);return r?r[0]:null}fae.range=Aae;function Aae(t,e,r){var n,s,o,i,a,c=r.indexOf(t),l=r.indexOf(e,c+1),u=c;if(c>=0&&l>0){if(t===e)return[c,l];for(n=[],o=r.length;u>=0&&!a;)u==c?(n.push(u),c=r.indexOf(t,u+1)):n.length==1?a=[n.pop(),l]:(s=n.pop(),s=0?c:l;n.length&&(a=[o,i])}return a}});var Sae=w((r$t,bae)=>{var jJe=pae(),yae=gae();bae.exports=XJe;var Eae="\0SLASH"+Math.random()+"\0",Cae="\0OPEN"+Math.random()+"\0",xU="\0CLOSE"+Math.random()+"\0",Iae="\0COMMA"+Math.random()+"\0",xae="\0PERIOD"+Math.random()+"\0";function IU(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}function JJe(t){return t.split("\\\\").join(Eae).split("\\{").join(Cae).split("\\}").join(xU).split("\\,").join(Iae).split("\\.").join(xae)}function KJe(t){return t.split(Eae).join("\\").split(Cae).join("{").split(xU).join("}").split(Iae).join(",").split(xae).join(".")}function wae(t){if(!t)return[""];var e=[],r=yae("{","}",t);if(!r)return t.split(",");var n=r.pre,s=r.body,o=r.post,i=n.split(",");i[i.length-1]+="{"+s+"}";var a=wae(o);return o.length&&(i[i.length-1]+=a.shift(),i.push.apply(i,a)),e.push.apply(e,i),e}function XJe(t){return t?(t.substr(0,2)==="{}"&&(t="\\{\\}"+t.substr(2)),oh(JJe(t),!0).map(KJe)):[]}function ZJe(t){return"{"+t+"}"}function e5e(t){return/^-?0\d/.test(t)}function t5e(t,e){return t<=e}function r5e(t,e){return t>=e}function oh(t,e){var r=[],n=yae("{","}",t);if(!n||/\$$/.test(n.pre))return[t];var s=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(n.body),o=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(n.body),i=s||o,a=n.body.indexOf(",")>=0;if(!i&&!a)return n.post.match(/,(?!,).*\}/)?(t=n.pre+"{"+n.body+xU+n.post,oh(t)):[t];var c;if(i)c=n.body.split(/\.\./);else if(c=wae(n.body),c.length===1&&(c=oh(c[0],!1).map(ZJe),c.length===1)){var u=n.post.length?oh(n.post,!1):[""];return u.map(function(ne){return n.pre+c[0]+ne})}var l=n.pre,u=n.post.length?oh(n.post,!1):[""],d;if(i){var p=IU(c[0]),m=IU(c[1]),h=Math.max(c[0].length,c[1].length),y=c.length==3?Math.max(Math.abs(IU(c[2])),1):1,I=t5e,x=m0){var O=new Array(U+1).join("0");T<0?_="-"+O+_.slice(1):_=O+_}}d.push(_)}}else d=jJe(c,function(Be){return oh(Be,!1)});for(var z=0;z{Pae.exports=Ro;Ro.Minimatch=Yr;var uC=(function(){try{return require("path")}catch{}})()||{sep:"/"};Ro.sep=uC.sep;var um=Ro.GLOBSTAR=Yr.GLOBSTAR={},n5e=Sae(),Bae={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},wU="[^/]",bU=wU+"*?",s5e="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",o5e="(?:(?!(?:\\/|^)\\.).)*?",Rae=i5e("().*{}+?[]^$\\!");function i5e(t){return t.split("").reduce(function(e,r){return e[r]=!0,e},{})}var Nae=/\/+/;Ro.filter=a5e;function a5e(t,e){return e=e||{},function(r,n,s){return Ro(r,t,e)}}function md(t,e){e=e||{};var r={};return Object.keys(t).forEach(function(n){r[n]=t[n]}),Object.keys(e).forEach(function(n){r[n]=e[n]}),r}Ro.defaults=function(t){if(!t||typeof t!="object"||!Object.keys(t).length)return Ro;var e=Ro,r=function(s,o,i){return e(s,o,md(t,i))};return r.Minimatch=function(s,o){return new e.Minimatch(s,md(t,o))},r.Minimatch.defaults=function(s){return e.defaults(md(t,s)).Minimatch},r.filter=function(s,o){return e.filter(s,md(t,o))},r.defaults=function(s){return e.defaults(md(t,s))},r.makeRe=function(s,o){return e.makeRe(s,md(t,o))},r.braceExpand=function(s,o){return e.braceExpand(s,md(t,o))},r.match=function(n,s,o){return e.match(n,s,md(t,o))},r};Yr.defaults=function(t){return Ro.defaults(t).Minimatch};function Ro(t,e,r){return HS(e),r||(r={}),!r.nocomment&&e.charAt(0)==="#"?!1:new Yr(e,r).match(t)}function Yr(t,e){if(!(this instanceof Yr))return new Yr(t,e);HS(t),e||(e={}),t=t.trim(),!e.allowWindowsEscape&&uC.sep!=="/"&&(t=t.split(uC.sep).join("/")),this.options=e,this.maxGlobstarRecursion=e.maxGlobstarRecursion!==void 0?e.maxGlobstarRecursion:200,this.set=[],this.pattern=t,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.make()}Yr.prototype.debug=function(){};Yr.prototype.make=c5e;function c5e(){var t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate();var r=this.globSet=this.braceExpand();e.debug&&(this.debug=function(){console.error.apply(console,arguments)}),this.debug(this.pattern,r),r=this.globParts=r.map(function(n){return n.split(Nae)}),this.debug(this.pattern,r),r=r.map(function(n,s,o){return n.map(this.parse,this)},this),this.debug(this.pattern,r),r=r.filter(function(n){return n.indexOf(!1)===-1}),this.debug(this.pattern,r),this.set=r}Yr.prototype.parseNegate=l5e;function l5e(){var t=this.pattern,e=!1,r=this.options,n=0;if(!r.nonegate){for(var s=0,o=t.length;s"u"?this.pattern:t,HS(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:n5e(t)}var u5e=1024*64,HS=function(t){if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>u5e)throw new TypeError("pattern is too long")};Yr.prototype.parse=d5e;var GS={};function d5e(t,e){HS(t);var r=this.options;if(t==="**")if(r.noglobstar)t="*";else return um;if(t==="")return"";var n="",s=!!r.nocase,o=!1,i=[],a=[],c,l=!1,u=-1,d=-1,p=t.charAt(0)==="."?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",m=this;function h(){if(c){switch(c){case"*":n+=bU,s=!0;break;case"?":n+=wU,s=!0;break;default:n+="\\"+c;break}m.debug("clearStateChar %j %j",c,n),c=!1}}for(var y=0,I=t.length,x;y-1;de--){var De=a[de],Be=n.slice(0,De.reStart),ne=n.slice(De.reStart,De.reEnd-8),ge=n.slice(De.reEnd-8,De.reEnd),G=n.slice(De.reEnd);ge+=G;var se=Be.split("(").length-1,Ct=G;for(y=0;y"u"&&(r=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;var n=this.options;uC.sep!=="/"&&(e=e.split(uC.sep).join("/")),e=e.split(Nae),this.debug(this.pattern,"split",e);var s=this.set;this.debug(this.pattern,"set",s);var o,i;for(i=e.length-1;i>=0&&(o=e[i],!o);i--);for(i=0;i=0;o--)if(e[o]===um){a=o;break}var c=e.slice(s,i),l=r?e.slice(i+1):e.slice(i+1,a),u=r?[]:e.slice(a+1);if(c.length){var d=t.slice(n,n+c.length);if(!this._matchOne(d,c,r,0,0))return!1;n+=c.length}var p=0;if(u.length){if(u.length+n>t.length)return!1;var m=t.length-u.length;if(this._matchOne(t,u,r,m,0))p=u.length;else{if(t[t.length-1]!==""||n+u.length===t.length||(m--,!this._matchOne(t,u,r,m,0)))return!1;p=u.length+1}}if(!l.length){var h=!!p;for(o=n;o{"use strict";var x5e="2.0.0",w5e=Number.MAX_SAFE_INTEGER||9007199254740991,b5e=16,S5e=250,B5e=["major","premajor","minor","preminor","patch","prepatch","prerelease"];kae.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:b5e,MAX_SAFE_BUILD_LENGTH:S5e,MAX_SAFE_INTEGER:w5e,RELEASE_TYPES:B5e,SEMVER_SPEC_VERSION:x5e,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var mC=w((E$t,Lae)=>{"use strict";var R5e=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Lae.exports=R5e});var uh=w((Za,Oae)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:BU,MAX_SAFE_BUILD_LENGTH:N5e,MAX_LENGTH:T5e}=lh(),P5e=mC();Za=Oae.exports={};var v5e=Za.re=[],_5e=Za.safeRe=[],ae=Za.src=[],Q5e=Za.safeSrc=[],ce=Za.t={},D5e=0,RU="[a-zA-Z0-9-]",k5e=[["\\s",1],["\\d",T5e],[RU,N5e]],L5e=t=>{for(let[e,r]of k5e)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},Xe=(t,e,r)=>{let n=L5e(e),s=D5e++;P5e(t,s,e),ce[t]=s,ae[s]=e,Q5e[s]=n,v5e[s]=new RegExp(e,r?"g":void 0),_5e[s]=new RegExp(n,r?"g":void 0)};Xe("NUMERICIDENTIFIER","0|[1-9]\\d*");Xe("NUMERICIDENTIFIERLOOSE","\\d+");Xe("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${RU}*`);Xe("MAINVERSION",`(${ae[ce.NUMERICIDENTIFIER]})\\.(${ae[ce.NUMERICIDENTIFIER]})\\.(${ae[ce.NUMERICIDENTIFIER]})`);Xe("MAINVERSIONLOOSE",`(${ae[ce.NUMERICIDENTIFIERLOOSE]})\\.(${ae[ce.NUMERICIDENTIFIERLOOSE]})\\.(${ae[ce.NUMERICIDENTIFIERLOOSE]})`);Xe("PRERELEASEIDENTIFIER",`(?:${ae[ce.NONNUMERICIDENTIFIER]}|${ae[ce.NUMERICIDENTIFIER]})`);Xe("PRERELEASEIDENTIFIERLOOSE",`(?:${ae[ce.NONNUMERICIDENTIFIER]}|${ae[ce.NUMERICIDENTIFIERLOOSE]})`);Xe("PRERELEASE",`(?:-(${ae[ce.PRERELEASEIDENTIFIER]}(?:\\.${ae[ce.PRERELEASEIDENTIFIER]})*))`);Xe("PRERELEASELOOSE",`(?:-?(${ae[ce.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ae[ce.PRERELEASEIDENTIFIERLOOSE]})*))`);Xe("BUILDIDENTIFIER",`${RU}+`);Xe("BUILD",`(?:\\+(${ae[ce.BUILDIDENTIFIER]}(?:\\.${ae[ce.BUILDIDENTIFIER]})*))`);Xe("FULLPLAIN",`v?${ae[ce.MAINVERSION]}${ae[ce.PRERELEASE]}?${ae[ce.BUILD]}?`);Xe("FULL",`^${ae[ce.FULLPLAIN]}$`);Xe("LOOSEPLAIN",`[v=\\s]*${ae[ce.MAINVERSIONLOOSE]}${ae[ce.PRERELEASELOOSE]}?${ae[ce.BUILD]}?`);Xe("LOOSE",`^${ae[ce.LOOSEPLAIN]}$`);Xe("GTLT","((?:<|>)?=?)");Xe("XRANGEIDENTIFIERLOOSE",`${ae[ce.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Xe("XRANGEIDENTIFIER",`${ae[ce.NUMERICIDENTIFIER]}|x|X|\\*`);Xe("XRANGEPLAIN",`[v=\\s]*(${ae[ce.XRANGEIDENTIFIER]})(?:\\.(${ae[ce.XRANGEIDENTIFIER]})(?:\\.(${ae[ce.XRANGEIDENTIFIER]})(?:${ae[ce.PRERELEASE]})?${ae[ce.BUILD]}?)?)?`);Xe("XRANGEPLAINLOOSE",`[v=\\s]*(${ae[ce.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ae[ce.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ae[ce.XRANGEIDENTIFIERLOOSE]})(?:${ae[ce.PRERELEASELOOSE]})?${ae[ce.BUILD]}?)?)?`);Xe("XRANGE",`^${ae[ce.GTLT]}\\s*${ae[ce.XRANGEPLAIN]}$`);Xe("XRANGELOOSE",`^${ae[ce.GTLT]}\\s*${ae[ce.XRANGEPLAINLOOSE]}$`);Xe("COERCEPLAIN",`(^|[^\\d])(\\d{1,${BU}})(?:\\.(\\d{1,${BU}}))?(?:\\.(\\d{1,${BU}}))?`);Xe("COERCE",`${ae[ce.COERCEPLAIN]}(?:$|[^\\d])`);Xe("COERCEFULL",ae[ce.COERCEPLAIN]+`(?:${ae[ce.PRERELEASE]})?(?:${ae[ce.BUILD]})?(?:$|[^\\d])`);Xe("COERCERTL",ae[ce.COERCE],!0);Xe("COERCERTLFULL",ae[ce.COERCEFULL],!0);Xe("LONETILDE","(?:~>?)");Xe("TILDETRIM",`(\\s*)${ae[ce.LONETILDE]}\\s+`,!0);Za.tildeTrimReplace="$1~";Xe("TILDE",`^${ae[ce.LONETILDE]}${ae[ce.XRANGEPLAIN]}$`);Xe("TILDELOOSE",`^${ae[ce.LONETILDE]}${ae[ce.XRANGEPLAINLOOSE]}$`);Xe("LONECARET","(?:\\^)");Xe("CARETTRIM",`(\\s*)${ae[ce.LONECARET]}\\s+`,!0);Za.caretTrimReplace="$1^";Xe("CARET",`^${ae[ce.LONECARET]}${ae[ce.XRANGEPLAIN]}$`);Xe("CARETLOOSE",`^${ae[ce.LONECARET]}${ae[ce.XRANGEPLAINLOOSE]}$`);Xe("COMPARATORLOOSE",`^${ae[ce.GTLT]}\\s*(${ae[ce.LOOSEPLAIN]})$|^$`);Xe("COMPARATOR",`^${ae[ce.GTLT]}\\s*(${ae[ce.FULLPLAIN]})$|^$`);Xe("COMPARATORTRIM",`(\\s*)${ae[ce.GTLT]}\\s*(${ae[ce.LOOSEPLAIN]}|${ae[ce.XRANGEPLAIN]})`,!0);Za.comparatorTrimReplace="$1$2$3";Xe("HYPHENRANGE",`^\\s*(${ae[ce.XRANGEPLAIN]})\\s+-\\s+(${ae[ce.XRANGEPLAIN]})\\s*$`);Xe("HYPHENRANGELOOSE",`^\\s*(${ae[ce.XRANGEPLAINLOOSE]})\\s+-\\s+(${ae[ce.XRANGEPLAINLOOSE]})\\s*$`);Xe("STAR","(<|>)?=?\\s*\\*");Xe("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Xe("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var YS=w((C$t,Mae)=>{"use strict";var O5e=Object.freeze({loose:!0}),M5e=Object.freeze({}),F5e=t=>t?typeof t!="object"?O5e:t:M5e;Mae.exports=F5e});var NU=w((I$t,qae)=>{"use strict";var Fae=/^[0-9]+$/,Uae=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tUae(e,t);qae.exports={compareIdentifiers:Uae,rcompareIdentifiers:U5e}});var Rn=w((x$t,Gae)=>{"use strict";var WS=mC(),{MAX_LENGTH:$ae,MAX_SAFE_INTEGER:jS}=lh(),{safeRe:JS,t:KS}=uh(),q5e=YS(),{compareIdentifiers:TU}=NU(),PU=class t{constructor(e,r){if(r=q5e(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>$ae)throw new TypeError(`version is longer than ${$ae} characters`);WS("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?JS[KS.LOOSE]:JS[KS.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>jS||this.major<0)throw new TypeError("Invalid major version");if(this.minor>jS||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>jS||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(WS("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return TU(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(WS("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return TU(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?JS[KS.PRERELEASELOOSE]:JS[KS.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),TU(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Gae.exports=PU});var hd=w((w$t,zae)=>{"use strict";var Hae=Rn(),$5e=(t,e,r=!1)=>{if(t instanceof Hae)return t;try{return new Hae(t,e)}catch(n){if(!r)return null;throw n}};zae.exports=$5e});var Yae=w((b$t,Vae)=>{"use strict";var G5e=hd(),H5e=(t,e)=>{let r=G5e(t,e);return r?r.version:null};Vae.exports=H5e});var jae=w((S$t,Wae)=>{"use strict";var z5e=hd(),V5e=(t,e)=>{let r=z5e(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};Wae.exports=V5e});var Xae=w((B$t,Kae)=>{"use strict";var Jae=Rn(),Y5e=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new Jae(t instanceof Jae?t.version:t,r).inc(e,n,s).version}catch{return null}};Kae.exports=Y5e});var tce=w((R$t,ece)=>{"use strict";var Zae=hd(),W5e=(t,e)=>{let r=Zae(t,null,!0),n=Zae(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,i=o?r:n,a=o?n:r,c=!!i.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(i)===0)return a.minor&&!a.patch?"minor":"patch"}let u=c?"pre":"";return r.major!==n.major?u+"major":r.minor!==n.minor?u+"minor":r.patch!==n.patch?u+"patch":"prerelease"};ece.exports=W5e});var nce=w((N$t,rce)=>{"use strict";var j5e=Rn(),J5e=(t,e)=>new j5e(t,e).major;rce.exports=J5e});var oce=w((T$t,sce)=>{"use strict";var K5e=Rn(),X5e=(t,e)=>new K5e(t,e).minor;sce.exports=X5e});var ace=w((P$t,ice)=>{"use strict";var Z5e=Rn(),e6e=(t,e)=>new Z5e(t,e).patch;ice.exports=e6e});var lce=w((v$t,cce)=>{"use strict";var t6e=hd(),r6e=(t,e)=>{let r=t6e(t,e);return r&&r.prerelease.length?r.prerelease:null};cce.exports=r6e});var di=w((_$t,dce)=>{"use strict";var uce=Rn(),n6e=(t,e,r)=>new uce(t,r).compare(new uce(e,r));dce.exports=n6e});var mce=w((Q$t,pce)=>{"use strict";var s6e=di(),o6e=(t,e,r)=>s6e(e,t,r);pce.exports=o6e});var Ace=w((D$t,fce)=>{"use strict";var i6e=di(),a6e=(t,e)=>i6e(t,e,!0);fce.exports=a6e});var XS=w((k$t,gce)=>{"use strict";var hce=Rn(),c6e=(t,e,r)=>{let n=new hce(t,r),s=new hce(e,r);return n.compare(s)||n.compareBuild(s)};gce.exports=c6e});var Ece=w((L$t,yce)=>{"use strict";var l6e=XS(),u6e=(t,e)=>t.sort((r,n)=>l6e(r,n,e));yce.exports=u6e});var Ice=w((O$t,Cce)=>{"use strict";var d6e=XS(),p6e=(t,e)=>t.sort((r,n)=>d6e(n,r,e));Cce.exports=p6e});var fC=w((M$t,xce)=>{"use strict";var m6e=di(),f6e=(t,e,r)=>m6e(t,e,r)>0;xce.exports=f6e});var ZS=w((F$t,wce)=>{"use strict";var A6e=di(),h6e=(t,e,r)=>A6e(t,e,r)<0;wce.exports=h6e});var vU=w((U$t,bce)=>{"use strict";var g6e=di(),y6e=(t,e,r)=>g6e(t,e,r)===0;bce.exports=y6e});var _U=w((q$t,Sce)=>{"use strict";var E6e=di(),C6e=(t,e,r)=>E6e(t,e,r)!==0;Sce.exports=C6e});var eB=w(($$t,Bce)=>{"use strict";var I6e=di(),x6e=(t,e,r)=>I6e(t,e,r)>=0;Bce.exports=x6e});var tB=w((G$t,Rce)=>{"use strict";var w6e=di(),b6e=(t,e,r)=>w6e(t,e,r)<=0;Rce.exports=b6e});var QU=w((H$t,Nce)=>{"use strict";var S6e=vU(),B6e=_U(),R6e=fC(),N6e=eB(),T6e=ZS(),P6e=tB(),v6e=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return S6e(t,r,n);case"!=":return B6e(t,r,n);case">":return R6e(t,r,n);case">=":return N6e(t,r,n);case"<":return T6e(t,r,n);case"<=":return P6e(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};Nce.exports=v6e});var Pce=w((z$t,Tce)=>{"use strict";var _6e=Rn(),Q6e=hd(),{safeRe:rB,t:nB}=uh(),D6e=(t,e)=>{if(t instanceof _6e)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?rB[nB.COERCEFULL]:rB[nB.COERCE]);else{let c=e.includePrerelease?rB[nB.COERCERTLFULL]:rB[nB.COERCERTL],l;for(;(l=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||l.index+l[0].length!==r.index+r[0].length)&&(r=l),c.lastIndex=l.index+l[1].length+l[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",i=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Q6e(`${n}.${s}.${o}${i}${a}`,e)};Tce.exports=D6e});var _ce=w((V$t,vce)=>{"use strict";var k6e=hd(),L6e=lh(),O6e=Rn(),M6e=(t,e,r)=>{if(!L6e.RELEASE_TYPES.includes(e))return null;let n=F6e(t,r);return n&&U6e(n,e)},F6e=(t,e)=>{let r=t instanceof O6e?t.version:t;return k6e(r,e)},U6e=(t,e)=>{if(q6e(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},q6e=t=>t.startsWith("pre");vce.exports=M6e});var Dce=w((Y$t,Qce)=>{"use strict";var DU=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Qce.exports=DU});var pi=w((W$t,Mce)=>{"use strict";var $6e=/\s+/g,kU=class t{constructor(e,r){if(r=H6e(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof LU)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace($6e," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Lce(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&Z6e(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(X6e,"");let n=((this.options.includePrerelease&&J6e)|(this.options.loose&&K6e))+":"+e,s=kce.get(n);if(s)return s;let o=this.options.loose,i=o?As[Nn.HYPHENRANGELOOSE]:As[Nn.HYPHENRANGE];e=e.replace(i,l9e(this.options.includePrerelease)),Yt("hyphen replace",e),e=e.replace(As[Nn.COMPARATORTRIM],Y6e),Yt("comparator trim",e),e=e.replace(As[Nn.TILDETRIM],W6e),Yt("tilde trim",e),e=e.replace(As[Nn.CARETTRIM],j6e),Yt("caret trim",e);let a=e.split(" ").map(d=>e9e(d,this.options)).join(" ").split(/\s+/).map(d=>c9e(d,this.options));o&&(a=a.filter(d=>(Yt("loose invalid filter",d,this.options),!!d.match(As[Nn.COMPARATORLOOSE])))),Yt("range list",a);let c=new Map,l=a.map(d=>new LU(d,this.options));for(let d of l){if(Lce(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let u=[...c.values()];return kce.set(n,u),u}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Oce(n,r)&&e.set.some(s=>Oce(s,r)&&n.every(o=>s.every(i=>o.intersects(i,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new z6e(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",Z6e=t=>t.value==="",Oce=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},e9e=(t,e)=>(t=t.replace(As[Nn.BUILD],""),Yt("comp",t,e),t=n9e(t,e),Yt("caret",t),t=t9e(t,e),Yt("tildes",t),t=o9e(t,e),Yt("xrange",t),t=a9e(t,e),Yt("stars",t),t),hs=t=>!t||t.toLowerCase()==="x"||t==="*",t9e=(t,e)=>t.trim().split(/\s+/).map(r=>r9e(r,e)).join(" "),r9e=(t,e)=>{let r=e.loose?As[Nn.TILDELOOSE]:As[Nn.TILDE];return t.replace(r,(n,s,o,i,a)=>{Yt("tilde",t,n,s,o,i,a);let c;return hs(s)?c="":hs(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:hs(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(Yt("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,Yt("tilde return",c),c})},n9e=(t,e)=>t.trim().split(/\s+/).map(r=>s9e(r,e)).join(" "),s9e=(t,e)=>{Yt("caret",t,e);let r=e.loose?As[Nn.CARETLOOSE]:As[Nn.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,i,a,c)=>{Yt("caret",t,s,o,i,a,c);let l;return hs(o)?l="":hs(i)?l=`>=${o}.0.0${n} <${+o+1}.0.0-0`:hs(a)?o==="0"?l=`>=${o}.${i}.0${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.0${n} <${+o+1}.0.0-0`:c?(Yt("replaceCaret pr",c),o==="0"?i==="0"?l=`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(Yt("no pr"),o==="0"?i==="0"?l=`>=${o}.${i}.${a}${n} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a} <${+o+1}.0.0-0`),Yt("caret return",l),l})},o9e=(t,e)=>(Yt("replaceXRanges",t,e),t.split(/\s+/).map(r=>i9e(r,e)).join(" ")),i9e=(t,e)=>{t=t.trim();let r=e.loose?As[Nn.XRANGELOOSE]:As[Nn.XRANGE];return t.replace(r,(n,s,o,i,a,c)=>{Yt("xRange",t,n,s,o,i,a,c);let l=hs(o),u=l||hs(i),d=u||hs(a),p=d;return s==="="&&p&&(s=""),c=e.includePrerelease?"-0":"",l?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&p?(u&&(i=0),a=0,s===">"?(s=">=",u?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",u?o=+o+1:i=+i+1),s==="<"&&(c="-0"),n=`${s+o}.${i}.${a}${c}`):u?n=`>=${o}.0.0${c} <${+o+1}.0.0-0`:d&&(n=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),Yt("xRange return",n),n})},a9e=(t,e)=>(Yt("replaceStars",t,e),t.trim().replace(As[Nn.STAR],"")),c9e=(t,e)=>(Yt("replaceGTE0",t,e),t.trim().replace(As[e.includePrerelease?Nn.GTE0PRE:Nn.GTE0],"")),l9e=t=>(e,r,n,s,o,i,a,c,l,u,d,p)=>(hs(n)?r="":hs(s)?r=`>=${n}.0.0${t?"-0":""}`:hs(o)?r=`>=${n}.${s}.0${t?"-0":""}`:i?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,hs(l)?c="":hs(u)?c=`<${+l+1}.0.0-0`:hs(d)?c=`<${l}.${+u+1}.0-0`:p?c=`<=${l}.${u}.${d}-${p}`:t?c=`<${l}.${u}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),u9e=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var AC=w((j$t,Hce)=>{"use strict";var hC=Symbol("SemVer ANY"),FU=class t{static get ANY(){return hC}constructor(e,r){if(r=Fce(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),MU("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===hC?this.value="":this.value=this.operator+this.semver.version,MU("comp",this)}parse(e){let r=this.options.loose?Uce[qce.COMPARATORLOOSE]:Uce[qce.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new $ce(n[2],this.options.loose):this.semver=hC}toString(){return this.value}test(e){if(MU("Comparator.test",e,this.options.loose),this.semver===hC||e===hC)return!0;if(typeof e=="string")try{e=new $ce(e,this.options)}catch{return!1}return OU(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Gce(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new Gce(this.value,r).test(e.semver):(r=Fce(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||OU(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||OU(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};Hce.exports=FU;var Fce=YS(),{safeRe:Uce,t:qce}=uh(),OU=QU(),MU=mC(),$ce=Rn(),Gce=pi()});var gC=w((J$t,zce)=>{"use strict";var d9e=pi(),p9e=(t,e,r)=>{try{e=new d9e(e,r)}catch{return!1}return e.test(t)};zce.exports=p9e});var Yce=w((K$t,Vce)=>{"use strict";var m9e=pi(),f9e=(t,e)=>new m9e(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));Vce.exports=f9e});var jce=w((X$t,Wce)=>{"use strict";var A9e=Rn(),h9e=pi(),g9e=(t,e,r)=>{let n=null,s=null,o=null;try{o=new h9e(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===-1)&&(n=i,s=new A9e(n,r))}),n};Wce.exports=g9e});var Kce=w((Z$t,Jce)=>{"use strict";var y9e=Rn(),E9e=pi(),C9e=(t,e,r)=>{let n=null,s=null,o=null;try{o=new E9e(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===1)&&(n=i,s=new y9e(n,r))}),n};Jce.exports=C9e});var ele=w((eGt,Zce)=>{"use strict";var UU=Rn(),I9e=pi(),Xce=fC(),x9e=(t,e)=>{t=new I9e(t,e);let r=new UU("0.0.0");if(t.test(r)||(r=new UU("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let a=new UU(i.semver.version);switch(i.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!o||Xce(a,o))&&(o=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${i.operator}`)}}),o&&(!r||Xce(r,o))&&(r=o)}return r&&t.test(r)?r:null};Zce.exports=x9e});var rle=w((tGt,tle)=>{"use strict";var w9e=pi(),b9e=(t,e)=>{try{return new w9e(t,e).range||"*"}catch{return null}};tle.exports=b9e});var sB=w((rGt,ile)=>{"use strict";var S9e=Rn(),ole=AC(),{ANY:B9e}=ole,R9e=pi(),N9e=gC(),nle=fC(),sle=ZS(),T9e=tB(),P9e=eB(),v9e=(t,e,r,n)=>{t=new S9e(t,n),e=new R9e(e,n);let s,o,i,a,c;switch(r){case">":s=nle,o=T9e,i=sle,a=">",c=">=";break;case"<":s=sle,o=P9e,i=nle,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(N9e(t,e,n))return!1;for(let l=0;l{m.semver===B9e&&(m=new ole(">=0.0.0")),d=d||m,p=p||m,s(m.semver,d.semver,n)?d=m:i(m.semver,p.semver,n)&&(p=m)}),d.operator===a||d.operator===c||(!p.operator||p.operator===a)&&o(t,p.semver))return!1;if(p.operator===c&&i(t,p.semver))return!1}return!0};ile.exports=v9e});var cle=w((nGt,ale)=>{"use strict";var _9e=sB(),Q9e=(t,e,r)=>_9e(t,e,">",r);ale.exports=Q9e});var ule=w((sGt,lle)=>{"use strict";var D9e=sB(),k9e=(t,e,r)=>D9e(t,e,"<",r);lle.exports=k9e});var mle=w((oGt,ple)=>{"use strict";var dle=pi(),L9e=(t,e,r)=>(t=new dle(t,r),e=new dle(e,r),t.intersects(e,r));ple.exports=L9e});var Ale=w((iGt,fle)=>{"use strict";var O9e=gC(),M9e=di();fle.exports=(t,e,r)=>{let n=[],s=null,o=null,i=t.sort((u,d)=>M9e(u,d,r));for(let u of i)O9e(u,e,r)?(o=u,s||(s=u)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let a=[];for(let[u,d]of n)u===d?a.push(u):!d&&u===i[0]?a.push("*"):d?u===i[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);let c=a.join(" || "),l=typeof e.raw=="string"?e.raw:String(e);return c.length{"use strict";var hle=pi(),GU=AC(),{ANY:qU}=GU,$U=gC(),HU=di(),F9e=(t,e,r={})=>{if(t===e)return!0;t=new hle(t,r),e=new hle(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let i=q9e(s,o,r);if(n=n||i!==null,i)continue e}if(n)return!1}return!0},U9e=[new GU(">=0.0.0-0")],gle=[new GU(">=0.0.0")],q9e=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===qU){if(e.length===1&&e[0].semver===qU)return!0;r.includePrerelease?t=U9e:t=gle}if(e.length===1&&e[0].semver===qU){if(r.includePrerelease)return!0;e=gle}let n=new Set,s,o;for(let m of t)m.operator===">"||m.operator===">="?s=yle(s,m,r):m.operator==="<"||m.operator==="<="?o=Ele(o,m,r):n.add(m.semver);if(n.size>1)return null;let i;if(s&&o){if(i=HU(s.semver,o.semver,r),i>0)return null;if(i===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let m of n){if(s&&!$U(m,String(s),r)||o&&!$U(m,String(o),r))return null;for(let h of e)if(!$U(m,String(h),r))return!1;return!0}let a,c,l,u,d=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,p=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&o.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let m of e){if(u=u||m.operator===">"||m.operator===">=",l=l||m.operator==="<"||m.operator==="<=",s){if(p&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===p.major&&m.semver.minor===p.minor&&m.semver.patch===p.patch&&(p=!1),m.operator===">"||m.operator===">="){if(a=yle(s,m,r),a===m&&a!==s)return!1}else if(s.operator===">="&&!m.test(s.semver))return!1}if(o){if(d&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===d.major&&m.semver.minor===d.minor&&m.semver.patch===d.patch&&(d=!1),m.operator==="<"||m.operator==="<="){if(c=Ele(o,m,r),c===m&&c!==o)return!1}else if(o.operator==="<="&&!m.test(o.semver))return!1}if(!m.operator&&(o||s)&&i!==0)return!1}return!(s&&l&&!o&&i!==0||o&&u&&!s&&i!==0||p||d)},yle=(t,e,r)=>{if(!t)return e;let n=HU(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Ele=(t,e,r)=>{if(!t)return e;let n=HU(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Cle.exports=F9e});var Sle=w((cGt,ble)=>{"use strict";var zU=uh(),xle=lh(),$9e=Rn(),wle=NU(),G9e=hd(),H9e=Yae(),z9e=jae(),V9e=Xae(),Y9e=tce(),W9e=nce(),j9e=oce(),J9e=ace(),K9e=lce(),X9e=di(),Z9e=mce(),eKe=Ace(),tKe=XS(),rKe=Ece(),nKe=Ice(),sKe=fC(),oKe=ZS(),iKe=vU(),aKe=_U(),cKe=eB(),lKe=tB(),uKe=QU(),dKe=Pce(),pKe=_ce(),mKe=AC(),fKe=pi(),AKe=gC(),hKe=Yce(),gKe=jce(),yKe=Kce(),EKe=ele(),CKe=rle(),IKe=sB(),xKe=cle(),wKe=ule(),bKe=mle(),SKe=Ale(),BKe=Ile();ble.exports={parse:G9e,valid:H9e,clean:z9e,inc:V9e,diff:Y9e,major:W9e,minor:j9e,patch:J9e,prerelease:K9e,compare:X9e,rcompare:Z9e,compareLoose:eKe,compareBuild:tKe,sort:rKe,rsort:nKe,gt:sKe,lt:oKe,eq:iKe,neq:aKe,gte:cKe,lte:lKe,cmp:uKe,coerce:dKe,truncate:pKe,Comparator:mKe,Range:fKe,satisfies:AKe,toComparators:hKe,maxSatisfying:gKe,minSatisfying:yKe,minVersion:EKe,validRange:CKe,outside:IKe,gtr:xKe,ltr:wKe,intersects:bKe,simplifyRange:SKe,subset:BKe,SemVer:$9e,re:zU.re,src:zU.src,tokens:zU.t,SEMVER_SPEC_VERSION:xle.SEMVER_SPEC_VERSION,RELEASE_TYPES:xle.RELEASE_TYPES,compareIdentifiers:wle.compareIdentifiers,rcompareIdentifiers:wle.rcompareIdentifiers}});var mue=w((DHt,pue)=>{var gh=1e3,yh=gh*60,Eh=yh*60,Em=Eh*24,cXe=Em*7,lXe=Em*365.25;pue.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return uXe(t);if(r==="number"&&isFinite(t))return e.long?pXe(t):dXe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function uXe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*lXe;case"weeks":case"week":case"w":return r*cXe;case"days":case"day":case"d":return r*Em;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Eh;case"minutes":case"minute":case"mins":case"min":case"m":return r*yh;case"seconds":case"second":case"secs":case"sec":case"s":return r*gh;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}function dXe(t){var e=Math.abs(t);return e>=Em?Math.round(t/Em)+"d":e>=Eh?Math.round(t/Eh)+"h":e>=yh?Math.round(t/yh)+"m":e>=gh?Math.round(t/gh)+"s":t+"ms"}function pXe(t){var e=Math.abs(t);return e>=Em?TB(t,e,Em,"day"):e>=Eh?TB(t,e,Eh,"hour"):e>=yh?TB(t,e,yh,"minute"):e>=gh?TB(t,e,gh,"second"):t+" ms"}function TB(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}});var h2=w((kHt,fue)=>{function mXe(t){r.debug=r,r.default=r,r.coerce=c,r.disable=o,r.enable=s,r.enabled=i,r.humanize=mue(),r.destroy=l,Object.keys(t).forEach(u=>{r[u]=t[u]}),r.names=[],r.skips=[],r.formatters={};function e(u){let d=0;for(let p=0;p{if(O==="%%")return"%";_++;let de=r.formatters[z];if(typeof de=="function"){let De=I[_];O=de.call(x,De),I.splice(_,1),_--}return O}),r.formatArgs.call(x,I),(x.log||r.log).apply(x,I)}return y.namespace=u,y.useColors=r.useColors(),y.color=r.selectColor(u),y.extend=n,y.destroy=r.destroy,Object.defineProperty(y,"enabled",{enumerable:!0,configurable:!1,get:()=>p!==null?p:(m!==r.namespaces&&(m=r.namespaces,h=r.enabled(u)),h),set:I=>{p=I}}),typeof r.init=="function"&&r.init(y),y}function n(u,d){let p=r(this.namespace+(typeof d>"u"?":":d)+u);return p.log=this.log,p}function s(u){r.save(u),r.namespaces=u,r.names=[],r.skips=[];let d,p=(typeof u=="string"?u:"").split(/[\s,]+/),m=p.length;for(d=0;d"-"+d)].join(",");return r.enable(""),u}function i(u){if(u[u.length-1]==="*")return!0;let d,p;for(d=0,p=r.skips.length;d{Po.formatArgs=AXe;Po.save=hXe;Po.load=gXe;Po.useColors=fXe;Po.storage=yXe();Po.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();Po.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function fXe(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}function AXe(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+PB.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}Po.log=console.debug||console.log||(()=>{});function hXe(t){try{t?Po.storage.setItem("debug",t):Po.storage.removeItem("debug")}catch{}}function gXe(){let t;try{t=Po.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}function yXe(){try{return localStorage}catch{}}PB.exports=h2()(Po);var{formatters:EXe}=PB.exports;EXe.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var gue=w((LHt,hue)=>{"use strict";hue.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var CXe=require("os"),yue=require("tty"),fi=gue(),{env:An}=process,Ed;fi("no-color")||fi("no-colors")||fi("color=false")||fi("color=never")?Ed=0:(fi("color")||fi("colors")||fi("color=true")||fi("color=always"))&&(Ed=1);"FORCE_COLOR"in An&&(An.FORCE_COLOR==="true"?Ed=1:An.FORCE_COLOR==="false"?Ed=0:Ed=An.FORCE_COLOR.length===0?1:Math.min(parseInt(An.FORCE_COLOR,10),3));function g2(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}function y2(t,e){if(Ed===0)return 0;if(fi("color=16m")||fi("color=full")||fi("color=truecolor"))return 3;if(fi("color=256"))return 2;if(t&&!e&&Ed===void 0)return 0;let r=Ed||0;if(An.TERM==="dumb")return r;if(process.platform==="win32"){let n=CXe.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in An)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in An)||An.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in An)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(An.TEAMCITY_VERSION)?1:0;if(An.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in An){let n=parseInt((An.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(An.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(An.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(An.TERM)||"COLORTERM"in An?1:r}function IXe(t){let e=y2(t,t&&t.isTTY);return g2(e)}Eue.exports={supportsColor:IXe,stdout:g2(y2(!0,yue.isatty(1))),stderr:g2(y2(!0,yue.isatty(2)))}});var xue=w((Tn,_B)=>{var xXe=require("tty"),vB=require("util");Tn.init=TXe;Tn.log=BXe;Tn.formatArgs=bXe;Tn.save=RXe;Tn.load=NXe;Tn.useColors=wXe;Tn.destroy=vB.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Tn.colors=[6,2,3,4,5,1];try{let t=Cue();t&&(t.stderr||t).level>=2&&(Tn.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Tn.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,o)=>o.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function wXe(){return"colors"in Tn.inspectOpts?!!Tn.inspectOpts.colors:xXe.isatty(process.stderr.fd)}function bXe(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${s};1m${e} \x1B[0m`;t[0]=o+t[0].split(` +`.trim())}};wte.exports=UF});var kb=b((BUt,Nte)=>{"use strict";var Ste=Symbol.for("undici.globalDispatcher.1"),{InvalidArgumentError:dze}=bt(),pze=NA();Rte()===void 0&&Bte(new pze);function Bte(t){if(!t||typeof t.dispatch!="function")throw new dze("Argument agent must implement Agent");Object.defineProperty(globalThis,Ste,{value:t,writable:!0,enumerable:!1,configurable:!1})}i(Bte,"setGlobalDispatcher");function Rte(){return globalThis[Ste]}i(Rte,"getGlobalDispatcher");Nte.exports={setGlobalDispatcher:Bte,getGlobalDispatcher:Rte}});var Lb=b((TUt,Tte)=>{"use strict";Tte.exports=class{static{i(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 vte=b((vUt,Pte)=>{"use strict";var mze=fb();Pte.exports=t=>{let e=t?.maxRedirections;return r=>i(function(s,o){let{maxRedirections:a=e,...c}=s;if(!a)return r(s,o);let l=new mze(r,a,s,o);return r(c,l)},"redirectInterceptor")}});var Qte=b((QUt,_te)=>{"use strict";var fze=Sb();_te.exports=t=>e=>i(function(n,s){return e(n,new fze({...n,retryOptions:{...t,...n.retryOptions}},{handler:s,dispatch:e}))},"retryInterceptor")});var kte=b((kUt,Dte)=>{"use strict";var Aze=ut(),{InvalidArgumentError:hze,RequestAbortedError:gze}=bt(),yze=Lb(),qF=class extends yze{static{i(this,"DumpHandler")}#e=1024*1024;#t=null;#s=!1;#n=!1;#r=0;#o=null;#i=null;constructor({maxSize:e},r){if(super(r),e!=null&&(!Number.isFinite(e)||e<1))throw new hze("maxSize must be a number greater than 0");this.#e=e??this.#e,this.#i=r}onConnect(e){this.#t=e,this.#i.onConnect(this.#a.bind(this))}#a(e){this.#n=!0,this.#o=e}onHeaders(e,r,n,s){let a=Aze.parseHeaders(r)["content-length"];if(a!=null&&a>this.#e)throw new gze(`Response size (${a}) larger than maxSize (${this.#e})`);return this.#n?!0:this.#i.onHeaders(e,r,n,s)}onError(e){this.#s||(e=this.#o??e,this.#i.onError(e))}onData(e){return this.#r=this.#r+e.length,this.#r>=this.#e&&(this.#s=!0,this.#n?this.#i.onError(this.#o):this.#i.onComplete([])),!0}onComplete(e){if(!this.#s){if(this.#n){this.#i.onError(this.reason);return}this.#i.onComplete(e)}}};function Eze({maxSize:t}={maxSize:1024*1024}){return e=>i(function(n,s){let{dumpMaxSize:o=t}=n,a=new qF({maxSize:o},s);return e(n,a)},"Intercept")}i(Eze,"createDumpInterceptor");Dte.exports=Eze});var Mte=b((OUt,Ote)=>{"use strict";var{isIP:Cze}=require("node:net"),{lookup:Ize}=require("node:dns"),xze=Lb(),{InvalidArgumentError:MA,InformationalError:wze}=bt(),Lte=Math.pow(2,31)-1,$F=class{static{i(this,"DNSInstance")}#e=0;#t=0;#s=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.#n,this.pick=e.pick??this.#r}get full(){return this.#s.size===this.#t}runLookup(e,r,n){let s=this.#s.get(e.hostname);if(s==null&&this.full){n(null,e.origin);return}let o={affinity:this.affinity,dualStack:this.dualStack,lookup:this.lookup,pick:this.pick,...r.dns,maxTTL:this.#e,maxItems:this.#t};if(s==null)this.lookup(e,o,(a,c)=>{if(a||c==null||c.length===0){n(a??new wze("No DNS entries found"));return}this.setRecords(e,c);let l=this.#s.get(e.hostname),u=this.pick(e,l,o.affinity),d;typeof u.port=="number"?d=`:${u.port}`:e.port!==""?d=`:${e.port}`:d="",n(null,`${e.protocol}//${u.family===6?`[${u.address}]`:u.address}${d}`)});else{let a=this.pick(e,s,o.affinity);if(a==null){this.#s.delete(e.hostname),this.runLookup(e,r,n);return}let c;typeof a.port=="number"?c=`:${a.port}`:e.port!==""?c=`:${e.port}`:c="",n(null,`${e.protocol}//${a.family===6?`[${a.address}]`:a.address}${c}`)}}#n(e,r,n){Ize(e.hostname,{all:!0,family:this.dualStack===!1?this.affinity:0,order:"ipv4first"},(s,o)=>{if(s)return n(s);let a=new Map;for(let c of o)a.set(`${c.address}:${c.family}`,c);n(null,a.values())})}#r(e,r,n){let s=null,{records:o,offset:a}=r,c;if(this.dualStack?(n==null&&(a==null||a===Lte?(r.offset=0,n=4):(r.offset++,n=(r.offset&1)===1?6:4)),o[n]!=null&&o[n].ips.length>0?c=o[n]:c=o[n===4?6:4]):c=o[n],c==null||c.ips.length===0)return s;c.offset==null||c.offset===Lte?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,r,n)):s}setRecords(e,r){let n=Date.now(),s={records:{4:null,6:null}};for(let o of r){o.timestamp=n,typeof o.ttl=="number"?o.ttl=Math.min(o.ttl,this.#e):o.ttl=this.#e;let a=s.records[o.family]??{ips:[]};a.ips.push(o),s.records[o.family]=a}this.#s.set(e.hostname,s)}getHandler(e,r){return new GF(this,e,r)}},GF=class extends xze{static{i(this,"DNSDispatchHandler")}#e=null;#t=null;#s=null;#n=null;#r=null;constructor(e,{origin:r,handler:n,dispatch:s},o){super(n),this.#r=r,this.#n=n,this.#t={...o},this.#e=e,this.#s=s}onError(e){switch(e.code){case"ETIMEDOUT":case"ECONNREFUSED":{if(this.#e.dualStack){this.#e.runLookup(this.#r,this.#t,(r,n)=>{if(r)return this.#n.onError(r);let s={...this.#t,origin:n};this.#s(s,this)});return}this.#n.onError(e);return}case"ENOTFOUND":this.#e.deleteRecord(this.#r);default:this.#n.onError(e);break}}};Ote.exports=t=>{if(t?.maxTTL!=null&&(typeof t?.maxTTL!="number"||t?.maxTTL<0))throw new MA("Invalid maxTTL. Must be a positive number");if(t?.maxItems!=null&&(typeof t?.maxItems!="number"||t?.maxItems<1))throw new MA("Invalid maxItems. Must be a positive number and greater than zero");if(t?.affinity!=null&&t?.affinity!==4&&t?.affinity!==6)throw new MA("Invalid affinity. Must be either 4 or 6");if(t?.dualStack!=null&&typeof t?.dualStack!="boolean")throw new MA("Invalid dualStack. Must be a boolean");if(t?.lookup!=null&&typeof t?.lookup!="function")throw new MA("Invalid lookup. Must be a function");if(t?.pick!=null&&typeof t?.pick!="function")throw new MA("Invalid pick. Must be a function");let e=t?.dualStack??!0,r;e?r=t?.affinity??null:r=t?.affinity??4;let n={maxTTL:t?.maxTTL??1e4,lookup:t?.lookup??null,pick:t?.pick??null,dualStack:e,affinity:r,maxItems:t?.maxItems??1/0},s=new $F(n);return o=>i(function(c,l){let u=c.origin.constructor===URL?c.origin:new URL(c.origin);return Cze(u.hostname)!==0?o(c,l):(s.runLookup(u,c,(d,p)=>{if(d)return l.onError(d);let m=null;m={...c,servername:u.hostname,origin:p,headers:{host:u.hostname,...c.headers}},o(m,s.getHandler({origin:u,dispatch:o,handler:l},c))}),!0)},"dnsInterceptor")}});var Kp=b((FUt,zte)=>{"use strict";var{kConstruct:bze}=Zt(),{kEnumerableProperty:FA}=ut(),{iteratorMixin:Sze,isValidHeaderName:RE,isValidHeaderValue:Ute}=go(),{webidl:ht}=Rn(),HF=require("node:assert"),Ob=require("node:util"),Vr=Symbol("headers map"),Co=Symbol("headers map sorted");function Fte(t){return t===10||t===13||t===9||t===32}i(Fte,"isHTTPWhiteSpaceCharCode");function qte(t){let e=0,r=t.length;for(;r>e&&Fte(t.charCodeAt(r-1));)--r;for(;r>e&&Fte(t.charCodeAt(e));)++e;return e===0&&r===t.length?t:t.substring(e,r)}i(qte,"headerValueNormalize");function $te(t,e){if(Array.isArray(e))for(let r=0;r>","record"]})}i($te,"fill");function zF(t,e,r){if(r=qte(r),RE(e)){if(!Ute(r))throw ht.errors.invalidArgument({prefix:"Headers.append",value:r,type:"header value"})}else throw ht.errors.invalidArgument({prefix:"Headers.append",value:e,type:"header name"});if(Hte(t)==="immutable")throw new TypeError("immutable");return VF(t).append(e,r,!1)}i(zF,"appendHeader");function Gte(t,e){return t[0]>1),r[u][0]<=d[0]?l=u+1:c=u;if(o!==u){for(a=o;a>l;)r[a]=r[--a];r[l]=d}}if(!n.next().done)throw new TypeError("Unreachable");return r}else{let n=0;for(let{0:s,1:{value:o}}of this[Vr])r[n++]=[s,o],HF(o!==null);return r.sort(Gte)}}},na=class t{static{i(this,"Headers")}#e;#t;constructor(e=void 0){ht.util.markAsUncloneable(this),e!==bze&&(this.#t=new Mb,this.#e="none",e!==void 0&&(e=ht.converters.HeadersInit(e,"Headers contructor","init"),$te(this,e)))}append(e,r){ht.brandCheck(this,t),ht.argumentLengthCheck(arguments,2,"Headers.append");let n="Headers.append";return e=ht.converters.ByteString(e,n,"name"),r=ht.converters.ByteString(r,n,"value"),zF(this,e,r)}delete(e){if(ht.brandCheck(this,t),ht.argumentLengthCheck(arguments,1,"Headers.delete"),e=ht.converters.ByteString(e,"Headers.delete","name"),!RE(e))throw ht.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){ht.brandCheck(this,t),ht.argumentLengthCheck(arguments,1,"Headers.get");let r="Headers.get";if(e=ht.converters.ByteString(e,r,"name"),!RE(e))throw ht.errors.invalidArgument({prefix:r,value:e,type:"header name"});return this.#t.get(e,!1)}has(e){ht.brandCheck(this,t),ht.argumentLengthCheck(arguments,1,"Headers.has");let r="Headers.has";if(e=ht.converters.ByteString(e,r,"name"),!RE(e))throw ht.errors.invalidArgument({prefix:r,value:e,type:"header name"});return this.#t.contains(e,!1)}set(e,r){ht.brandCheck(this,t),ht.argumentLengthCheck(arguments,2,"Headers.set");let n="Headers.set";if(e=ht.converters.ByteString(e,n,"name"),r=ht.converters.ByteString(r,n,"value"),r=qte(r),RE(e)){if(!Ute(r))throw ht.errors.invalidArgument({prefix:n,value:r,type:"header value"})}else throw ht.errors.invalidArgument({prefix:n,value:e,type:"header name"});if(this.#e==="immutable")throw new TypeError("immutable");this.#t.set(e,r,!1)}getSetCookie(){ht.brandCheck(this,t);let e=this.#t.cookies;return e?[...e]:[]}get[Co](){if(this.#t[Co])return this.#t[Co];let e=[],r=this.#t.toSortedArray(),n=this.#t.cookies;if(n===null||n.length===1)return this.#t[Co]=r;for(let s=0;s>"](t,e,r,n.bind(t)):ht.converters["record"](t,e,r)}throw ht.errors.conversionFailed({prefix:"Headers constructor",argument:"Argument 1",types:["sequence>","record"]})};zte.exports={fill:$te,compareHeaderName:Gte,Headers:na,HeadersList:Mb,getHeadersGuard:Hte,setHeadersGuard:Bze,setHeadersList:Rze,getHeadersList:VF}});var TE=b((qUt,nre)=>{"use strict";var{Headers:Kte,HeadersList:Vte,fill:Nze,getHeadersGuard:Tze,setHeadersGuard:Xte,setHeadersList:Zte}=Kp(),{extractBody:Yte,cloneBody:Pze,mixinBody:vze,hasFinalizationRegistry:ere,streamRegistry:tre,bodyUnusable:_ze}=EA(),YF=ut(),Wte=require("node:util"),{kEnumerableProperty:Io}=YF,{isValidReasonPhrase:Qze,isCancelled:Dze,isAborted:kze,isBlobLike:Lze,serializeJavascriptValueToJSONString:Oze,isErrorLike:Mze,isomorphicEncode:Fze,environmentSettingsObject:Uze}=go(),{redirectStatusSet:qze,nullBodyStatus:$ze}=Xy(),{kState:tr,kHeaders:Fl}=zu(),{webidl:ot}=Rn(),{FormData:Gze}=sE(),{URLSerializer:jte}=Os(),{kConstruct:Ub}=Zt(),WF=require("node:assert"),{types:Hze}=require("node:util"),zze=new TextEncoder("utf-8"),Xp=class t{static{i(this,"Response")}static error(){return NE(qb(),"immutable")}static json(e,r={}){ot.argumentLengthCheck(arguments,1,"Response.json"),r!==null&&(r=ot.converters.ResponseInit(r));let n=zze.encode(Oze(e)),s=Yte(n),o=NE(UA({}),"response");return Jte(o,r,{body:s[0],type:"application/json"}),o}static redirect(e,r=302){ot.argumentLengthCheck(arguments,1,"Response.redirect"),e=ot.converters.USVString(e),r=ot.converters["unsigned short"](r);let n;try{n=new URL(e,Uze.settingsObject.baseUrl)}catch(a){throw new TypeError(`Failed to parse URL from ${e}`,{cause:a})}if(!qze.has(r))throw new RangeError(`Invalid status code ${r}`);let s=NE(UA({}),"immutable");s[tr].status=r;let o=Fze(jte(n));return s[tr].headersList.append("location",o,!0),s}constructor(e=null,r={}){if(ot.util.markAsUncloneable(this),e===Ub)return;e!==null&&(e=ot.converters.BodyInit(e)),r=ot.converters.ResponseInit(r),this[tr]=UA({}),this[Fl]=new Kte(Ub),Xte(this[Fl],"response"),Zte(this[Fl],this[tr].headersList);let n=null;if(e!=null){let[s,o]=Yte(e);n={body:s,type:o}}Jte(this,r,n)}get type(){return ot.brandCheck(this,t),this[tr].type}get url(){ot.brandCheck(this,t);let e=this[tr].urlList,r=e[e.length-1]??null;return r===null?"":jte(r,!0)}get redirected(){return ot.brandCheck(this,t),this[tr].urlList.length>1}get status(){return ot.brandCheck(this,t),this[tr].status}get ok(){return ot.brandCheck(this,t),this[tr].status>=200&&this[tr].status<=299}get statusText(){return ot.brandCheck(this,t),this[tr].statusText}get headers(){return ot.brandCheck(this,t),this[Fl]}get body(){return ot.brandCheck(this,t),this[tr].body?this[tr].body.stream:null}get bodyUsed(){return ot.brandCheck(this,t),!!this[tr].body&&YF.isDisturbed(this[tr].body.stream)}clone(){if(ot.brandCheck(this,t),_ze(this))throw ot.errors.exception({header:"Response.clone",message:"Body has already been consumed."});let e=jF(this[tr]);return ere&&this[tr].body?.stream&&tre.register(this,new WeakRef(this[tr].body.stream)),NE(e,Tze(this[Fl]))}[Wte.inspect.custom](e,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={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 ${Wte.formatWithOptions(r,n)}`}};vze(Xp);Object.defineProperties(Xp.prototype,{type:Io,url:Io,status:Io,ok:Io,redirected:Io,statusText:Io,headers:Io,clone:Io,body:Io,bodyUsed:Io,[Symbol.toStringTag]:{value:"Response",configurable:!0}});Object.defineProperties(Xp,{json:Io,redirect:Io,error:Io});function jF(t){if(t.internalResponse)return rre(jF(t.internalResponse),t.type);let e=UA({...t,body:null});return t.body!=null&&(e.body=Pze(e,t.body)),e}i(jF,"cloneResponse");function UA(t){return{aborted:!1,rangeRequested:!1,timingAllowPassed:!1,requestIncludesCredentials:!1,type:"default",status:200,timingInfo:null,cacheState:"",statusText:"",...t,headersList:t?.headersList?new Vte(t?.headersList):new Vte,urlList:t?.urlList?[...t.urlList]:[]}}i(UA,"makeResponse");function qb(t){let e=Mze(t);return UA({type:"error",status:0,error:e?t:new Error(t&&String(t)),aborted:t&&t.name==="AbortError"})}i(qb,"makeNetworkError");function Vze(t){return t.type==="error"&&t.status===0}i(Vze,"isNetworkError");function Fb(t,e){return e={internalResponse:t,...e},new Proxy(t,{get(r,n){return n in e?e[n]:r[n]},set(r,n,s){return WF(!(n in e)),r[n]=s,!0}})}i(Fb,"makeFilteredResponse");function rre(t,e){if(e==="basic")return Fb(t,{type:"basic",headersList:t.headersList});if(e==="cors")return Fb(t,{type:"cors",headersList:t.headersList});if(e==="opaque")return Fb(t,{type:"opaque",urlList:Object.freeze([]),status:0,statusText:"",body:null});if(e==="opaqueredirect")return Fb(t,{type:"opaqueredirect",status:0,statusText:"",headersList:[],body:null});WF(!1)}i(rre,"filterResponse");function Yze(t,e=null){return WF(Dze(t)),kze(t)?qb(Object.assign(new DOMException("The operation was aborted.","AbortError"),{cause:e})):qb(Object.assign(new DOMException("Request was cancelled."),{cause:e}))}i(Yze,"makeAppropriateNetworkError");function Jte(t,e,r){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&&!Qze(String(e.statusText)))throw new TypeError("Invalid statusText");if("status"in e&&e.status!=null&&(t[tr].status=e.status),"statusText"in e&&e.statusText!=null&&(t[tr].statusText=e.statusText),"headers"in e&&e.headers!=null&&Nze(t[Fl],e.headers),r){if($ze.includes(t.status))throw ot.errors.exception({header:"Response constructor",message:`Invalid response status code ${t.status}`});t[tr].body=r.body,r.type!=null&&!t[tr].headersList.contains("content-type",!0)&&t[tr].headersList.append("content-type",r.type,!0)}}i(Jte,"initializeResponse");function NE(t,e){let r=new Xp(Ub);return r[tr]=t,r[Fl]=new Kte(Ub),Zte(r[Fl],t.headersList),Xte(r[Fl],e),ere&&t.body?.stream&&tre.register(r,new WeakRef(t.body.stream)),r}i(NE,"fromInnerResponse");ot.converters.ReadableStream=ot.interfaceConverter(ReadableStream);ot.converters.FormData=ot.interfaceConverter(Gze);ot.converters.URLSearchParams=ot.interfaceConverter(URLSearchParams);ot.converters.XMLHttpRequestBodyInit=function(t,e,r){return typeof t=="string"?ot.converters.USVString(t,e,r):Lze(t)?ot.converters.Blob(t,e,r,{strict:!1}):ArrayBuffer.isView(t)||Hze.isArrayBuffer(t)?ot.converters.BufferSource(t,e,r):YF.isFormDataLike(t)?ot.converters.FormData(t,e,r,{strict:!1}):t instanceof URLSearchParams?ot.converters.URLSearchParams(t,e,r):ot.converters.DOMString(t,e,r)};ot.converters.BodyInit=function(t,e,r){return t instanceof ReadableStream?ot.converters.ReadableStream(t,e,r):t?.[Symbol.asyncIterator]?t:ot.converters.XMLHttpRequestBodyInit(t,e,r)};ot.converters.ResponseInit=ot.dictionaryConverter([{key:"status",converter:ot.converters["unsigned short"],defaultValue:i(()=>200,"defaultValue")},{key:"statusText",converter:ot.converters.ByteString,defaultValue:i(()=>"","defaultValue")},{key:"headers",converter:ot.converters.HeadersInit}]);nre.exports={isNetworkError:Vze,makeNetworkError:qb,makeResponse:UA,makeAppropriateNetworkError:Yze,filterResponse:rre,Response:Xp,cloneResponse:jF,fromInnerResponse:NE}});var are=b((GUt,ire)=>{"use strict";var{kConnected:sre,kSize:ore}=Zt(),JF=class{static{i(this,"CompatWeakRef")}constructor(e){this.value=e}deref(){return this.value[sre]===0&&this.value[ore]===0?void 0:this.value}},KF=class{static{i(this,"CompatFinalizer")}constructor(e){this.finalizer=e}register(e,r){e.on&&e.on("disconnect",()=>{e[sre]===0&&e[ore]===0&&this.finalizer(r)})}unregister(e){}};ire.exports=function(){return process.env.NODE_V8_COVERAGE&&process.version.startsWith("v18")?(process._rawDebug("Using compatibility WeakRef and FinalizationRegistry"),{WeakRef:JF,FinalizationRegistry:KF}):{WeakRef,FinalizationRegistry}}});var qA=b((zUt,xre)=>{"use strict";var{extractBody:Wze,mixinBody:jze,cloneBody:Jze,bodyUnusable:cre}=EA(),{Headers:gre,fill:Kze,HeadersList:zb,setHeadersGuard:ZF,getHeadersGuard:Xze,setHeadersList:yre,getHeadersList:lre}=Kp(),{FinalizationRegistry:Zze}=are()(),Gb=ut(),ure=require("node:util"),{isValidHTTPToken:e3e,sameOrigin:dre,environmentSettingsObject:$b}=go(),{forbiddenMethodsSet:t3e,corsSafeListedMethodsSet:r3e,referrerPolicy:n3e,requestRedirect:s3e,requestMode:o3e,requestCredentials:i3e,requestCache:a3e,requestDuplex:c3e}=Xy(),{kEnumerableProperty:Yr,normalizedMethodRecordsBase:l3e,normalizedMethodRecords:u3e}=Gb,{kHeaders:xo,kSignal:Hb,kState:Vt,kDispatcher:XF}=zu(),{webidl:Oe}=Rn(),{URLSerializer:d3e}=Os(),{kConstruct:Vb}=Zt(),p3e=require("node:assert"),{getMaxListeners:pre,setMaxListeners:mre,getEventListeners:m3e,defaultMaxListeners:fre}=require("node:events"),f3e=Symbol("abortController"),Ere=new Zze(({signal:t,abort:e})=>{t.removeEventListener("abort",e)}),Yb=new WeakMap;function Are(t){return e;function e(){let r=t.deref();if(r!==void 0){Ere.unregister(e),this.removeEventListener("abort",e),r.abort(this.reason);let n=Yb.get(r.signal);if(n!==void 0){if(n.size!==0){for(let s of n){let o=s.deref();o!==void 0&&o.abort(this.reason)}n.clear()}Yb.delete(r.signal)}}}}i(Are,"buildAbort");var hre=!1,nd=class t{static{i(this,"Request")}constructor(e,r={}){if(Oe.util.markAsUncloneable(this),e===Vb)return;let n="Request constructor";Oe.argumentLengthCheck(arguments,1,n),e=Oe.converters.RequestInfo(e,n,"input"),r=Oe.converters.RequestInit(r,n,"init");let s=null,o=null,a=$b.settingsObject.baseUrl,c=null;if(typeof e=="string"){this[XF]=r.dispatcher;let w;try{w=new URL(e,a)}catch(S){throw new TypeError("Failed to parse URL from "+e,{cause:S})}if(w.username||w.password)throw new TypeError("Request cannot be constructed from a URL that includes credentials: "+e);s=Wb({urlList:[w]}),o="cors"}else this[XF]=r.dispatcher||e[XF],p3e(e instanceof t),s=e[Vt],c=e[Hb];let l=$b.settingsObject.origin,u="client";if(s.window?.constructor?.name==="EnvironmentSettingsObject"&&dre(s.window,l)&&(u=s.window),r.window!=null)throw new TypeError(`'window' option '${u}' must be null`);"window"in r&&(u="no-window"),s=Wb({method:s.method,headersList:s.headersList,unsafeRequest:s.unsafeRequest,client:$b.settingsObject,window:u,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 d=Object.keys(r).length!==0;if(d&&(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]),r.referrer!==void 0){let w=r.referrer;if(w==="")s.referrer="no-referrer";else{let S;try{S=new URL(w,a)}catch(P){throw new TypeError(`Referrer "${w}" is not a valid URL.`,{cause:P})}S.protocol==="about:"&&S.hostname==="client"||l&&!dre(S,$b.settingsObject.baseUrl)?s.referrer="client":s.referrer=S}}r.referrerPolicy!==void 0&&(s.referrerPolicy=r.referrerPolicy);let p;if(r.mode!==void 0?p=r.mode:p=o,p==="navigate")throw Oe.errors.exception({header:"Request constructor",message:"invalid request mode navigate."});if(p!=null&&(s.mode=p),r.credentials!==void 0&&(s.credentials=r.credentials),r.cache!==void 0&&(s.cache=r.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(r.redirect!==void 0&&(s.redirect=r.redirect),r.integrity!=null&&(s.integrity=String(r.integrity)),r.keepalive!==void 0&&(s.keepalive=!!r.keepalive),r.method!==void 0){let w=r.method,S=u3e[w];if(S!==void 0)s.method=S;else{if(!e3e(w))throw new TypeError(`'${w}' is not a valid HTTP method.`);let P=w.toUpperCase();if(t3e.has(P))throw new TypeError(`'${w}' HTTP method is unsupported.`);w=l3e[P]??w,s.method=w}!hre&&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"}),hre=!0)}r.signal!==void 0&&(c=r.signal),this[Vt]=s;let m=new AbortController;if(this[Hb]=m.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)m.abort(c.reason);else{this[f3e]=m;let w=new WeakRef(m),S=Are(w);try{(typeof pre=="function"&&pre(c)===fre||m3e(c,"abort").length>=fre)&&mre(1500,c)}catch{}Gb.addAbortListener(c,S),Ere.register(m,{signal:c,abort:S},S)}}if(this[xo]=new gre(Vb),yre(this[xo],s.headersList),ZF(this[xo],"request"),p==="no-cors"){if(!r3e.has(s.method))throw new TypeError(`'${s.method} is unsupported in no-cors mode.`);ZF(this[xo],"request-no-cors")}if(d){let w=lre(this[xo]),S=r.headers!==void 0?r.headers:new zb(w);if(w.clear(),S instanceof zb){for(let{name:P,value:Q}of S.rawValues())w.append(P,Q,!1);w.cookies=S.cookies}else Kze(this[xo],S)}let f=e instanceof t?e[Vt].body:null;if((r.body!=null||f!=null)&&(s.method==="GET"||s.method==="HEAD"))throw new TypeError("Request with GET/HEAD method cannot have body.");let g=null;if(r.body!=null){let[w,S]=Wze(r.body,s.keepalive);g=w,S&&!lre(this[xo]).contains("content-type",!0)&&this[xo].append("content-type",S)}let E=g??f;if(E!=null&&E.source==null){if(g!=null&&r.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 x=E;if(g==null&&f!=null){if(cre(e))throw new TypeError("Cannot construct a Request with a Request object that has already been used.");let w=new TransformStream;f.stream.pipeThrough(w),x={source:f.source,length:f.length,stream:w.readable}}this[Vt].body=x}get method(){return Oe.brandCheck(this,t),this[Vt].method}get url(){return Oe.brandCheck(this,t),d3e(this[Vt].url)}get headers(){return Oe.brandCheck(this,t),this[xo]}get destination(){return Oe.brandCheck(this,t),this[Vt].destination}get referrer(){return Oe.brandCheck(this,t),this[Vt].referrer==="no-referrer"?"":this[Vt].referrer==="client"?"about:client":this[Vt].referrer.toString()}get referrerPolicy(){return Oe.brandCheck(this,t),this[Vt].referrerPolicy}get mode(){return Oe.brandCheck(this,t),this[Vt].mode}get credentials(){return this[Vt].credentials}get cache(){return Oe.brandCheck(this,t),this[Vt].cache}get redirect(){return Oe.brandCheck(this,t),this[Vt].redirect}get integrity(){return Oe.brandCheck(this,t),this[Vt].integrity}get keepalive(){return Oe.brandCheck(this,t),this[Vt].keepalive}get isReloadNavigation(){return Oe.brandCheck(this,t),this[Vt].reloadNavigation}get isHistoryNavigation(){return Oe.brandCheck(this,t),this[Vt].historyNavigation}get signal(){return Oe.brandCheck(this,t),this[Hb]}get body(){return Oe.brandCheck(this,t),this[Vt].body?this[Vt].body.stream:null}get bodyUsed(){return Oe.brandCheck(this,t),!!this[Vt].body&&Gb.isDisturbed(this[Vt].body.stream)}get duplex(){return Oe.brandCheck(this,t),"half"}clone(){if(Oe.brandCheck(this,t),cre(this))throw new TypeError("unusable");let e=Cre(this[Vt]),r=new AbortController;if(this.signal.aborted)r.abort(this.signal.reason);else{let n=Yb.get(this.signal);n===void 0&&(n=new Set,Yb.set(this.signal,n));let s=new WeakRef(r);n.add(s),Gb.addAbortListener(r.signal,Are(s))}return Ire(e,r.signal,Xze(this[xo]))}[ure.inspect.custom](e,r){r.depth===null&&(r.depth=2),r.colors??=!0;let n={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 ${ure.formatWithOptions(r,n)}`}};jze(nd);function Wb(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 zb(t.headersList):new zb}}i(Wb,"makeRequest");function Cre(t){let e=Wb({...t,body:null});return t.body!=null&&(e.body=Jze(e,t.body)),e}i(Cre,"cloneRequest");function Ire(t,e,r){let n=new nd(Vb);return n[Vt]=t,n[Hb]=e,n[xo]=new gre(Vb),yre(n[xo],t.headersList),ZF(n[xo],r),n}i(Ire,"fromInnerRequest");Object.defineProperties(nd.prototype,{method:Yr,url:Yr,headers:Yr,redirect:Yr,clone:Yr,signal:Yr,duplex:Yr,destination:Yr,body:Yr,bodyUsed:Yr,isHistoryNavigation:Yr,isReloadNavigation:Yr,keepalive:Yr,integrity:Yr,cache:Yr,credentials:Yr,attribute:Yr,referrerPolicy:Yr,referrer:Yr,mode:Yr,[Symbol.toStringTag]:{value:"Request",configurable:!0}});Oe.converters.Request=Oe.interfaceConverter(nd);Oe.converters.RequestInfo=function(t,e,r){return typeof t=="string"?Oe.converters.USVString(t,e,r):t instanceof nd?Oe.converters.Request(t,e,r):Oe.converters.USVString(t,e,r)};Oe.converters.AbortSignal=Oe.interfaceConverter(AbortSignal);Oe.converters.RequestInit=Oe.dictionaryConverter([{key:"method",converter:Oe.converters.ByteString},{key:"headers",converter:Oe.converters.HeadersInit},{key:"body",converter:Oe.nullableConverter(Oe.converters.BodyInit)},{key:"referrer",converter:Oe.converters.USVString},{key:"referrerPolicy",converter:Oe.converters.DOMString,allowedValues:n3e},{key:"mode",converter:Oe.converters.DOMString,allowedValues:o3e},{key:"credentials",converter:Oe.converters.DOMString,allowedValues:i3e},{key:"cache",converter:Oe.converters.DOMString,allowedValues:a3e},{key:"redirect",converter:Oe.converters.DOMString,allowedValues:s3e},{key:"integrity",converter:Oe.converters.DOMString},{key:"keepalive",converter:Oe.converters.boolean},{key:"signal",converter:Oe.nullableConverter(t=>Oe.converters.AbortSignal(t,"RequestInit","signal",{strict:!1}))},{key:"window",converter:Oe.converters.any},{key:"duplex",converter:Oe.converters.DOMString,allowedValues:c3e},{key:"dispatcher",converter:Oe.converters.any}]);xre.exports={Request:nd,makeRequest:Wb,fromInnerRequest:Ire,cloneRequest:Cre}});var vE=b((YUt,Ore)=>{"use strict";var{makeNetworkError:Qt,makeAppropriateNetworkError:jb,filterResponse:e1,makeResponse:Jb,fromInnerResponse:A3e}=TE(),{HeadersList:wre}=Kp(),{Request:h3e,cloneRequest:g3e}=qA(),sd=require("node:zlib"),{bytesMatch:y3e,makePolicyContainer:E3e,clonePolicyContainer:C3e,requestBadPort:I3e,TAOCheck:x3e,appendRequestOriginHeader:w3e,responseLocationURL:b3e,requestCurrentURL:Ja,setRequestReferrerPolicyOnRedirect:S3e,tryUpgradeRequestToAPotentiallyTrustworthyURL:B3e,createOpaqueTimingInfo:o1,appendFetchMetadata:R3e,corsCheck:N3e,crossOriginResourcePolicyCheck:T3e,determineRequestsReferrer:P3e,coarsenedSharedCurrentTime:PE,createDeferredPromise:v3e,isBlobLike:_3e,sameOrigin:s1,isCancelled:Zp,isAborted:bre,isErrorLike:Q3e,fullyReadBody:D3e,readableStreamClose:k3e,isomorphicEncode:Kb,urlIsLocal:L3e,urlIsHttpHttpsScheme:i1,urlHasHttpsScheme:O3e,clampAndCoarsenConnectionTimingInfo:M3e,simpleRangeHeaderValue:F3e,buildContentRange:U3e,createInflate:q3e,extractMimeType:$3e}=go(),{kState:Nre,kDispatcher:G3e}=zu(),em=require("node:assert"),{safelyExtractBody:a1,extractBody:Sre}=EA(),{redirectStatusSet:Tre,nullBodyStatus:Pre,safeMethodsSet:H3e,requestBodyHeader:z3e,subresourceSet:V3e}=Xy(),Y3e=require("node:events"),{Readable:W3e,pipeline:j3e,finished:J3e}=require("node:stream"),{addAbortListener:K3e,isErrored:X3e,isReadable:Xb,bufferToLowerCasedHeaderName:Bre}=ut(),{dataURLProcessor:Z3e,serializeAMimeType:eVe,minimizeSupportedMimeType:tVe}=Os(),{getGlobalDispatcher:rVe}=kb(),{webidl:nVe}=Rn(),{STATUS_CODES:sVe}=require("node:http"),oVe=["GET","HEAD"],iVe=typeof __UNDICI_IS_NODE__<"u"||typeof esbuildDetection<"u"?"node":"undici",t1,Zb=class extends Y3e{static{i(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 aVe(t){vre(t,"fetch")}i(aVe,"handleFetchDone");function cVe(t,e=void 0){nVe.argumentLengthCheck(arguments,1,"globalThis.fetch");let r=v3e(),n;try{n=new h3e(t,e)}catch(d){return r.reject(d),r.promise}let s=n[Nre];if(n.signal.aborted)return r1(r,s,null,n.signal.reason),r.promise;s.client.globalObject?.constructor?.name==="ServiceWorkerGlobalScope"&&(s.serviceWorkers="none");let a=null,c=!1,l=null;return K3e(n.signal,()=>{c=!0,em(l!=null),l.abort(n.signal.reason);let d=a?.deref();r1(r,s,d,n.signal.reason)}),l=Qre({request:s,processResponseEndOfBody:aVe,processResponse:i(d=>{if(!c){if(d.aborted){r1(r,s,a,l.serializedAbortReason);return}if(d.type==="error"){r.reject(new TypeError("fetch failed",{cause:d.error}));return}a=new WeakRef(A3e(d,"immutable")),r.resolve(a.deref()),r=null}},"processResponse"),dispatcher:n[G3e]}),r.promise}i(cVe,"fetch");function vre(t,e="other"){if(t.type==="error"&&t.aborted||!t.urlList?.length)return;let r=t.urlList[0],n=t.timingInfo,s=t.cacheState;i1(r)&&n!==null&&(t.timingAllowPassed||(n=o1({startTime:n.startTime}),s=""),n.endTime=PE(),t.timingInfo=n,_re(n,r.href,e,globalThis,s))}i(vre,"finalizeAndReportTiming");var _re=performance.markResourceTiming;function r1(t,e,r,n){if(t&&t.reject(n),e.body!=null&&Xb(e.body?.stream)&&e.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o}),r==null)return;let s=r[Nre];s.body!=null&&Xb(s.body?.stream)&&s.body.stream.cancel(n).catch(o=>{if(o.code!=="ERR_INVALID_STATE")throw o})}i(r1,"abortFetch");function Qre({request:t,processRequestBodyChunkLength:e,processRequestEndOfBody:r,processResponse:n,processResponseEndOfBody:s,processResponseConsumeBody:o,useParallelQueue:a=!1,dispatcher:c=rVe()}){em(c);let l=null,u=!1;t.client!=null&&(l=t.client.globalObject,u=t.client.crossOriginIsolatedCapability);let d=PE(u),p=o1({startTime:d}),m={controller:new Zb(c),request:t,timingInfo:p,processRequestBodyChunkLength:e,processRequestEndOfBody:r,processResponse:n,processResponseConsumeBody:o,processResponseEndOfBody:s,taskDestination:l,crossOriginIsolatedCapability:u};return em(!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=C3e(t.client.policyContainer):t.policyContainer=E3e()),t.headersList.contains("accept",!0)||t.headersList.append("accept","*/*",!0),t.headersList.contains("accept-language",!0)||t.headersList.append("accept-language","*",!0),t.priority,V3e.has(t.destination),Dre(m).catch(f=>{m.controller.terminate(f)}),m.controller}i(Qre,"fetching");async function Dre(t,e=!1){let r=t.request,n=null;if(r.localURLsOnly&&!L3e(Ja(r))&&(n=Qt("local URLs only")),B3e(r),I3e(r)==="blocked"&&(n=Qt("bad port")),r.referrerPolicy===""&&(r.referrerPolicy=r.policyContainer.referrerPolicy),r.referrer!=="no-referrer"&&(r.referrer=P3e(r)),n===null&&(n=await(async()=>{let o=Ja(r);return s1(o,r.url)&&r.responseTainting==="basic"||o.protocol==="data:"||r.mode==="navigate"||r.mode==="websocket"?(r.responseTainting="basic",await Rre(t)):r.mode==="same-origin"?Qt('request mode cannot be "same-origin"'):r.mode==="no-cors"?r.redirect!=="follow"?Qt('redirect mode cannot be "follow" for "no-cors" request'):(r.responseTainting="opaque",await Rre(t)):i1(Ja(r))?(r.responseTainting="cors",await kre(t)):Qt("URL scheme must be a HTTP(S) scheme")})()),e)return n;n.status!==0&&!n.internalResponse&&(r.responseTainting,r.responseTainting==="basic"?n=e1(n,"basic"):r.responseTainting==="cors"?n=e1(n,"cors"):r.responseTainting==="opaque"?n=e1(n,"opaque"):em(!1));let s=n.status===0?n:n.internalResponse;if(s.urlList.length===0&&s.urlList.push(...r.urlList),r.timingAllowFailed||(n.timingAllowPassed=!0),n.type==="opaque"&&s.status===206&&s.rangeRequested&&!r.headers.contains("range",!0)&&(n=s=Qt()),n.status!==0&&(r.method==="HEAD"||r.method==="CONNECT"||Pre.includes(s.status))&&(s.body=null,t.controller.dump=!0),r.integrity){let o=i(c=>n1(t,Qt(c)),"processBodyError");if(r.responseTainting==="opaque"||n.body==null){o(n.error);return}let a=i(c=>{if(!y3e(c,r.integrity)){o("integrity mismatch");return}n.body=a1(c)[0],n1(t,n)},"processBody");await D3e(n.body,a,o)}else n1(t,n)}i(Dre,"mainFetch");function Rre(t){if(Zp(t)&&t.request.redirectCount===0)return Promise.resolve(jb(t));let{request:e}=t,{protocol:r}=Ja(e);switch(r){case"about:":return Promise.resolve(Qt("about scheme is not supported"));case"blob:":{t1||(t1=require("node:buffer").resolveObjectURL);let n=Ja(e);if(n.search.length!==0)return Promise.resolve(Qt("NetworkError when attempting to fetch resource."));let s=t1(n.toString());if(e.method!=="GET"||!_3e(s))return Promise.resolve(Qt("invalid method"));let o=Jb(),a=s.size,c=Kb(`${a}`),l=s.type;if(e.headersList.contains("range",!0)){o.rangeRequested=!0;let u=e.headersList.get("range",!0),d=F3e(u,!0);if(d==="failure")return Promise.resolve(Qt("failed to fetch the data URL"));let{rangeStartValue:p,rangeEndValue:m}=d;if(p===null)p=a-m,m=p+m-1;else{if(p>=a)return Promise.resolve(Qt("Range start is greater than the blob's size."));(m===null||m>=a)&&(m=a-1)}let f=s.slice(p,m,l),g=Sre(f);o.body=g[0];let E=Kb(`${f.size}`),x=U3e(p,m,a);o.status=206,o.statusText="Partial Content",o.headersList.set("content-length",E,!0),o.headersList.set("content-type",l,!0),o.headersList.set("content-range",x,!0)}else{let u=Sre(s);o.statusText="OK",o.body=u[0],o.headersList.set("content-length",c,!0),o.headersList.set("content-type",l,!0)}return Promise.resolve(o)}case"data:":{let n=Ja(e),s=Z3e(n);if(s==="failure")return Promise.resolve(Qt("failed to fetch the data URL"));let o=eVe(s.mimeType);return Promise.resolve(Jb({statusText:"OK",headersList:[["content-type",{name:"Content-Type",value:o}]],body:a1(s.body)[0]}))}case"file:":return Promise.resolve(Qt("not implemented... yet..."));case"http:":case"https:":return kre(t).catch(n=>Qt(n));default:return Promise.resolve(Qt("unknown scheme"))}}i(Rre,"schemeFetch");function lVe(t,e){t.request.done=!0,t.processResponseDone!=null&&queueMicrotask(()=>t.processResponseDone(e))}i(lVe,"finalizeResponse");function n1(t,e){let r=t.timingInfo,n=i(()=>{let o=Date.now();t.request.destination==="document"&&(t.controller.fullTimingInfo=r),t.controller.reportTimingSteps=()=>{if(t.request.url.protocol!=="https:")return;r.endTime=o;let c=e.cacheState,l=e.bodyInfo;e.timingAllowPassed||(r=o1(r),c="");let u=0;if(t.request.mode!=="navigator"||!e.hasCrossOriginRedirects){u=e.status;let d=$3e(e.headersList);d!=="failure"&&(l.contentType=tVe(d))}t.request.initiatorType!=null&&_re(r,t.request.url.href,t.request.initiatorType,globalThis,c,l,u)};let a=i(()=>{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?n():J3e(s.body.stream,()=>{n()})}i(n1,"fetchFinale");async function kre(t){let e=t.request,r=null,n=null,s=t.timingInfo;if(e.serviceWorkers,r===null){if(e.redirect==="follow"&&(e.serviceWorkers="none"),n=r=await Lre(t),e.responseTainting==="cors"&&N3e(e,r)==="failure")return Qt("cors failure");x3e(e,r)==="failure"&&(e.timingAllowFailed=!0)}return(e.responseTainting==="opaque"||r.type==="opaque")&&T3e(e.origin,e.client,e.destination,n)==="blocked"?Qt("blocked"):(Tre.has(n.status)&&(e.redirect!=="manual"&&t.controller.connection.destroy(void 0,!1),e.redirect==="error"?r=Qt("unexpected redirect"):e.redirect==="manual"?r=n:e.redirect==="follow"?r=await uVe(t,r):em(!1)),r.timingInfo=s,r)}i(kre,"httpFetch");function uVe(t,e){let r=t.request,n=e.internalResponse?e.internalResponse:e,s;try{if(s=b3e(n,Ja(r).hash),s==null)return e}catch(a){return Promise.resolve(Qt(a))}if(!i1(s))return Promise.resolve(Qt("URL scheme must be a HTTP(S) scheme"));if(r.redirectCount===20)return Promise.resolve(Qt("redirect count exceeded"));if(r.redirectCount+=1,r.mode==="cors"&&(s.username||s.password)&&!s1(r,s))return Promise.resolve(Qt('cross origin not allowed for request mode "cors"'));if(r.responseTainting==="cors"&&(s.username||s.password))return Promise.resolve(Qt('URL cannot contain credentials for request mode "cors"'));if(n.status!==303&&r.body!=null&&r.body.source==null)return Promise.resolve(Qt());if([301,302].includes(n.status)&&r.method==="POST"||n.status===303&&!oVe.includes(r.method)){r.method="GET",r.body=null;for(let a of z3e)r.headersList.delete(a)}s1(Ja(r),s)||(r.headersList.delete("authorization",!0),r.headersList.delete("proxy-authorization",!0),r.headersList.delete("cookie",!0),r.headersList.delete("host",!0)),r.body!=null&&(em(r.body.source!=null),r.body=a1(r.body.source)[0]);let o=t.timingInfo;return o.redirectEndTime=o.postRedirectStartTime=PE(t.crossOriginIsolatedCapability),o.redirectStartTime===0&&(o.redirectStartTime=o.startTime),r.urlList.push(s),S3e(r,n),Dre(t,!0)}i(uVe,"httpRedirectFetch");async function Lre(t,e=!1,r=!1){let n=t.request,s=null,o=null,a=null,c=null,l=!1;n.window==="no-window"&&n.redirect==="error"?(s=t,o=n):(o=g3e(n),s={...t},s.request=o);let u=n.credentials==="include"||n.credentials==="same-origin"&&n.responseTainting==="basic",d=o.body?o.body.length:null,p=null;if(o.body==null&&["POST","PUT"].includes(o.method)&&(p="0"),d!=null&&(p=Kb(`${d}`)),p!=null&&o.headersList.append("content-length",p,!0),d!=null&&o.keepalive,o.referrer instanceof URL&&o.headersList.append("referer",Kb(o.referrer.href),!0),w3e(o),R3e(o),o.headersList.contains("user-agent",!0)||o.headersList.append("user-agent",iVe),o.cache==="default"&&(o.headersList.contains("if-modified-since",!0)||o.headersList.contains("if-none-match",!0)||o.headersList.contains("if-unmodified-since",!0)||o.headersList.contains("if-match",!0)||o.headersList.contains("if-range",!0))&&(o.cache="no-store"),o.cache==="no-cache"&&!o.preventNoCacheCacheControlHeaderModification&&!o.headersList.contains("cache-control",!0)&&o.headersList.append("cache-control","max-age=0",!0),(o.cache==="no-store"||o.cache==="reload")&&(o.headersList.contains("pragma",!0)||o.headersList.append("pragma","no-cache",!0),o.headersList.contains("cache-control",!0)||o.headersList.append("cache-control","no-cache",!0)),o.headersList.contains("range",!0)&&o.headersList.append("accept-encoding","identity",!0),o.headersList.contains("accept-encoding",!0)||(O3e(Ja(o))?o.headersList.append("accept-encoding","br, gzip, deflate",!0):o.headersList.append("accept-encoding","gzip, deflate",!0)),o.headersList.delete("host",!0),c==null&&(o.cache="no-store"),o.cache!=="no-store"&&o.cache,a==null){if(o.cache==="only-if-cached")return Qt("only if cached");let m=await dVe(s,u,r);!H3e.has(o.method)&&m.status>=200&&m.status<=399,l&&m.status,a==null&&(a=m)}if(a.urlList=[...o.urlList],o.headersList.contains("range",!0)&&(a.rangeRequested=!0),a.requestIncludesCredentials=u,a.status===407)return n.window==="no-window"?Qt():Zp(t)?jb(t):Qt("proxy authentication required");if(a.status===421&&!r&&(n.body==null||n.body.source!=null)){if(Zp(t))return jb(t);t.controller.connection.destroy(),a=await Lre(t,e,!0)}return a}i(Lre,"httpNetworkOrCacheFetch");async function dVe(t,e=!1,r=!1){em(!t.controller.connection||t.controller.connection.destroyed),t.controller.connection={abort:null,destroyed:!1,destroy(g,E=!0){this.destroyed||(this.destroyed=!0,E&&this.abort?.(g??new DOMException("The operation was aborted.","AbortError")))}};let n=t.request,s=null,o=t.timingInfo;null==null&&(n.cache="no-store");let c=r?"yes":"no";n.mode;let l=null;if(n.body==null&&t.processRequestEndOfBody)queueMicrotask(()=>t.processRequestEndOfBody());else if(n.body!=null){let g=i(async function*(w){Zp(t)||(yield w,t.processRequestBodyChunkLength?.(w.byteLength))},"processBodyChunk"),E=i(()=>{Zp(t)||t.processRequestEndOfBody&&t.processRequestEndOfBody()},"processEndOfBody"),x=i(w=>{Zp(t)||(w.name==="AbortError"?t.controller.abort():t.controller.terminate(w))},"processBodyError");l=(async function*(){try{for await(let w of n.body.stream)yield*g(w);E()}catch(w){x(w)}})()}try{let{body:g,status:E,statusText:x,headersList:w,socket:S}=await f({body:l});if(S)s=Jb({status:E,statusText:x,headersList:w,socket:S});else{let P=g[Symbol.asyncIterator]();t.controller.next=()=>P.next(),s=Jb({status:E,statusText:x,headersList:w})}}catch(g){return g.name==="AbortError"?(t.controller.connection.destroy(),jb(t,g)):Qt(g)}let u=i(async()=>{await t.controller.resume()},"pullAlgorithm"),d=i(g=>{Zp(t)||t.controller.abort(g)},"cancelAlgorithm"),p=new ReadableStream({async start(g){t.controller.controller=g},async pull(g){await u(g)},async cancel(g){await d(g)},type:"bytes"});s.body={stream:p,source:null,length:null},t.controller.onAborted=m,t.controller.on("terminated",m),t.controller.resume=async()=>{for(;;){let g,E;try{let{done:w,value:S}=await t.controller.next();if(bre(t))break;g=w?void 0:S}catch(w){t.controller.ended&&!o.encodedBodySize?g=void 0:(g=w,E=!0)}if(g===void 0){k3e(t.controller.controller),lVe(t,s);return}if(o.decodedBodySize+=g?.byteLength??0,E){t.controller.terminate(g);return}let x=new Uint8Array(g);if(x.byteLength&&t.controller.controller.enqueue(x),X3e(p)){t.controller.terminate();return}if(t.controller.controller.desiredSize<=0)return}};function m(g){bre(t)?(s.aborted=!0,Xb(p)&&t.controller.controller.error(t.controller.serializedAbortReason)):Xb(p)&&t.controller.controller.error(new TypeError("terminated",{cause:Q3e(g)?g:void 0})),t.controller.connection.destroy()}return i(m,"onAborted"),s;function f({body:g}){let E=Ja(n),x=t.controller.dispatcher;return new Promise((w,S)=>x.dispatch({path:E.pathname+E.search,origin:E.origin,method:n.method,body:x.isMockActive?n.body&&(n.body.source||n.body.stream):g,headers:n.headersList.entries,maxRedirections:0,upgrade:n.mode==="websocket"?"websocket":void 0},{body:null,abort:null,onConnect(P){let{connection:Q}=t.controller;o.finalConnectionTimingInfo=M3e(void 0,o.postRedirectStartTime,t.crossOriginIsolatedCapability),Q.destroyed?P(new DOMException("The operation was aborted.","AbortError")):(t.controller.on("terminated",P),this.abort=Q.abort=P),o.finalNetworkRequestStartTime=PE(t.crossOriginIsolatedCapability)},onResponseStarted(){o.finalNetworkResponseStartTime=PE(t.crossOriginIsolatedCapability)},onHeaders(P,Q,q,M){if(P<200)return;let V="",pe=new wre;for(let ye=0;yeoe)return S(new Error(`too many content-encodings in response: ${H.length}, maximum allowed is ${oe}`)),!0;for(let It=H.length-1;It>=0;--It){let at=H[It].trim();if(at==="x-gzip"||at==="gzip")ke.push(sd.createGunzip({flush:sd.constants.Z_SYNC_FLUSH,finishFlush:sd.constants.Z_SYNC_FLUSH}));else if(at==="deflate")ke.push(q3e({flush:sd.constants.Z_SYNC_FLUSH,finishFlush:sd.constants.Z_SYNC_FLUSH}));else if(at==="br")ke.push(sd.createBrotliDecompress({flush:sd.constants.BROTLI_OPERATION_FLUSH,finishFlush:sd.constants.BROTLI_OPERATION_FLUSH}));else{ke.length=0;break}}}let se=this.onError.bind(this);return w({status:P,statusText:M,headersList:pe,body:ke.length?j3e(this.body,...ke,ye=>{ye&&this.onError(ye)}).on("error",se):this.body.on("error",se)}),!0},onData(P){if(t.controller.dump)return;let Q=P;return o.encodedBodySize+=Q.byteLength,this.body.push(Q)},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(P){this.abort&&t.controller.off("terminated",this.abort),this.body?.destroy(P),t.controller.terminate(P),S(P)},onUpgrade(P,Q,q){if(P!==101)return;let M=new wre;for(let V=0;V{"use strict";Mre.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 Ure=b((JUt,Fre)=>{"use strict";var{webidl:wo}=Rn(),eS=Symbol("ProgressEvent state"),l1=class t extends Event{static{i(this,"ProgressEvent")}constructor(e,r={}){e=wo.converters.DOMString(e,"ProgressEvent constructor","type"),r=wo.converters.ProgressEventInit(r??{}),super(e,r),this[eS]={lengthComputable:r.lengthComputable,loaded:r.loaded,total:r.total}}get lengthComputable(){return wo.brandCheck(this,t),this[eS].lengthComputable}get loaded(){return wo.brandCheck(this,t),this[eS].loaded}get total(){return wo.brandCheck(this,t),this[eS].total}};wo.converters.ProgressEventInit=wo.dictionaryConverter([{key:"lengthComputable",converter:wo.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"loaded",converter:wo.converters["unsigned long long"],defaultValue:i(()=>0,"defaultValue")},{key:"total",converter:wo.converters["unsigned long long"],defaultValue:i(()=>0,"defaultValue")},{key:"bubbles",converter:wo.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"cancelable",converter:wo.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"composed",converter:wo.converters.boolean,defaultValue:i(()=>!1,"defaultValue")}]);Fre.exports={ProgressEvent:l1}});var $re=b((XUt,qre)=>{"use strict";function pVe(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"}}i(pVe,"getEncoding");qre.exports={getEncoding:pVe}});var Jre=b((e2t,jre)=>{"use strict";var{kState:$A,kError:u1,kResult:Gre,kAborted:_E,kLastProgressEventFired:d1}=c1(),{ProgressEvent:mVe}=Ure(),{getEncoding:Hre}=$re(),{serializeAMimeType:fVe,parseMIMEType:zre}=Os(),{types:AVe}=require("node:util"),{StringDecoder:Vre}=require("string_decoder"),{btoa:Yre}=require("node:buffer"),hVe={enumerable:!0,writable:!1,configurable:!1};function gVe(t,e,r,n){if(t[$A]==="loading")throw new DOMException("Invalid state","InvalidStateError");t[$A]="loading",t[Gre]=null,t[u1]=null;let o=e.stream().getReader(),a=[],c=o.read(),l=!0;(async()=>{for(;!t[_E];)try{let{done:u,value:d}=await c;if(l&&!t[_E]&&queueMicrotask(()=>{od("loadstart",t)}),l=!1,!u&&AVe.isUint8Array(d))a.push(d),(t[d1]===void 0||Date.now()-t[d1]>=50)&&!t[_E]&&(t[d1]=Date.now(),queueMicrotask(()=>{od("progress",t)})),c=o.read();else if(u){queueMicrotask(()=>{t[$A]="done";try{let p=yVe(a,r,e.type,n);if(t[_E])return;t[Gre]=p,od("load",t)}catch(p){t[u1]=p,od("error",t)}t[$A]!=="loading"&&od("loadend",t)});break}}catch(u){if(t[_E])return;queueMicrotask(()=>{t[$A]="done",t[u1]=u,od("error",t),t[$A]!=="loading"&&od("loadend",t)});break}})()}i(gVe,"readOperation");function od(t,e){let r=new mVe(t,{bubbles:!1,cancelable:!1});e.dispatchEvent(r)}i(od,"fireAProgressEvent");function yVe(t,e,r,n){switch(e){case"DataURL":{let s="data:",o=zre(r||"application/octet-stream");o!=="failure"&&(s+=fVe(o)),s+=";base64,";let a=new Vre("latin1");for(let c of t)s+=Yre(a.write(c));return s+=Yre(a.end()),s}case"Text":{let s="failure";if(n&&(s=Hre(n)),s==="failure"&&r){let o=zre(r);o!=="failure"&&(s=Hre(o.parameters.get("charset")))}return s==="failure"&&(s="UTF-8"),EVe(t,s)}case"ArrayBuffer":return Wre(t).buffer;case"BinaryString":{let s="",o=new Vre("latin1");for(let a of t)s+=o.write(a);return s+=o.end(),s}}}i(yVe,"packageData");function EVe(t,e){let r=Wre(t),n=CVe(r),s=0;n!==null&&(e=n,s=n==="UTF-8"?3:2);let o=r.slice(s);return new TextDecoder(e).decode(o)}i(EVe,"decode");function CVe(t){let[e,r,n]=t;return e===239&&r===187&&n===191?"UTF-8":e===254&&r===255?"UTF-16BE":e===255&&r===254?"UTF-16LE":null}i(CVe,"BOMSniffing");function Wre(t){let e=t.reduce((n,s)=>n+s.byteLength,0),r=0;return t.reduce((n,s)=>(n.set(s,r),r+=s.byteLength,n),new Uint8Array(e))}i(Wre,"combineByteSequences");jre.exports={staticPropertyDescriptors:hVe,readOperation:gVe,fireAProgressEvent:od}});var ene=b((r2t,Zre)=>{"use strict";var{staticPropertyDescriptors:GA,readOperation:tS,fireAProgressEvent:Kre}=Jre(),{kState:tm,kError:Xre,kResult:rS,kEvents:Bt,kAborted:IVe}=c1(),{webidl:kt}=Rn(),{kEnumerableProperty:Us}=ut(),sa=class t extends EventTarget{static{i(this,"FileReader")}constructor(){super(),this[tm]="empty",this[rS]=null,this[Xre]=null,this[Bt]={loadend:null,error:null,abort:null,load:null,progress:null,loadstart:null}}readAsArrayBuffer(e){kt.brandCheck(this,t),kt.argumentLengthCheck(arguments,1,"FileReader.readAsArrayBuffer"),e=kt.converters.Blob(e,{strict:!1}),tS(this,e,"ArrayBuffer")}readAsBinaryString(e){kt.brandCheck(this,t),kt.argumentLengthCheck(arguments,1,"FileReader.readAsBinaryString"),e=kt.converters.Blob(e,{strict:!1}),tS(this,e,"BinaryString")}readAsText(e,r=void 0){kt.brandCheck(this,t),kt.argumentLengthCheck(arguments,1,"FileReader.readAsText"),e=kt.converters.Blob(e,{strict:!1}),r!==void 0&&(r=kt.converters.DOMString(r,"FileReader.readAsText","encoding")),tS(this,e,"Text",r)}readAsDataURL(e){kt.brandCheck(this,t),kt.argumentLengthCheck(arguments,1,"FileReader.readAsDataURL"),e=kt.converters.Blob(e,{strict:!1}),tS(this,e,"DataURL")}abort(){if(this[tm]==="empty"||this[tm]==="done"){this[rS]=null;return}this[tm]==="loading"&&(this[tm]="done",this[rS]=null),this[IVe]=!0,Kre("abort",this),this[tm]!=="loading"&&Kre("loadend",this)}get readyState(){switch(kt.brandCheck(this,t),this[tm]){case"empty":return this.EMPTY;case"loading":return this.LOADING;case"done":return this.DONE}}get result(){return kt.brandCheck(this,t),this[rS]}get error(){return kt.brandCheck(this,t),this[Xre]}get onloadend(){return kt.brandCheck(this,t),this[Bt].loadend}set onloadend(e){kt.brandCheck(this,t),this[Bt].loadend&&this.removeEventListener("loadend",this[Bt].loadend),typeof e=="function"?(this[Bt].loadend=e,this.addEventListener("loadend",e)):this[Bt].loadend=null}get onerror(){return kt.brandCheck(this,t),this[Bt].error}set onerror(e){kt.brandCheck(this,t),this[Bt].error&&this.removeEventListener("error",this[Bt].error),typeof e=="function"?(this[Bt].error=e,this.addEventListener("error",e)):this[Bt].error=null}get onloadstart(){return kt.brandCheck(this,t),this[Bt].loadstart}set onloadstart(e){kt.brandCheck(this,t),this[Bt].loadstart&&this.removeEventListener("loadstart",this[Bt].loadstart),typeof e=="function"?(this[Bt].loadstart=e,this.addEventListener("loadstart",e)):this[Bt].loadstart=null}get onprogress(){return kt.brandCheck(this,t),this[Bt].progress}set onprogress(e){kt.brandCheck(this,t),this[Bt].progress&&this.removeEventListener("progress",this[Bt].progress),typeof e=="function"?(this[Bt].progress=e,this.addEventListener("progress",e)):this[Bt].progress=null}get onload(){return kt.brandCheck(this,t),this[Bt].load}set onload(e){kt.brandCheck(this,t),this[Bt].load&&this.removeEventListener("load",this[Bt].load),typeof e=="function"?(this[Bt].load=e,this.addEventListener("load",e)):this[Bt].load=null}get onabort(){return kt.brandCheck(this,t),this[Bt].abort}set onabort(e){kt.brandCheck(this,t),this[Bt].abort&&this.removeEventListener("abort",this[Bt].abort),typeof e=="function"?(this[Bt].abort=e,this.addEventListener("abort",e)):this[Bt].abort=null}};sa.EMPTY=sa.prototype.EMPTY=0;sa.LOADING=sa.prototype.LOADING=1;sa.DONE=sa.prototype.DONE=2;Object.defineProperties(sa.prototype,{EMPTY:GA,LOADING:GA,DONE:GA,readAsArrayBuffer:Us,readAsBinaryString:Us,readAsText:Us,readAsDataURL:Us,abort:Us,readyState:Us,result:Us,error:Us,onloadstart:Us,onprogress:Us,onload:Us,onabort:Us,onerror:Us,onloadend:Us,[Symbol.toStringTag]:{value:"FileReader",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(sa,{EMPTY:GA,LOADING:GA,DONE:GA});Zre.exports={FileReader:sa}});var nS=b((s2t,tne)=>{"use strict";tne.exports={kConstruct:Zt().kConstruct}});var sne=b((o2t,nne)=>{"use strict";var xVe=require("node:assert"),{URLSerializer:rne}=Os(),{isValidHeaderName:wVe}=go();function bVe(t,e,r=!1){let n=rne(t,r),s=rne(e,r);return n===s}i(bVe,"urlEquals");function SVe(t){xVe(t!==null);let e=[];for(let r of t.split(","))r=r.trim(),wVe(r)&&e.push(r);return e}i(SVe,"getFieldValues");nne.exports={urlEquals:bVe,getFieldValues:SVe}});var ane=b((a2t,ine)=>{"use strict";var{kConstruct:BVe}=nS(),{urlEquals:RVe,getFieldValues:p1}=sne(),{kEnumerableProperty:rm,isDisturbed:NVe}=ut(),{webidl:Ne}=Rn(),{Response:TVe,cloneResponse:PVe,fromInnerResponse:vVe}=TE(),{Request:Ul,fromInnerRequest:_Ve}=qA(),{kState:oa}=zu(),{fetching:QVe}=vE(),{urlIsHttpHttpsScheme:sS,createDeferredPromise:HA,readAllBytes:DVe}=go(),m1=require("node:assert"),oS=class t{static{i(this,"Cache")}#e;constructor(){arguments[0]!==BVe&&Ne.illegalConstructor(),Ne.util.markAsUncloneable(this),this.#e=arguments[1]}async match(e,r={}){Ne.brandCheck(this,t);let n="Cache.match";Ne.argumentLengthCheck(arguments,1,n),e=Ne.converters.RequestInfo(e,n,"request"),r=Ne.converters.CacheQueryOptions(r,n,"options");let s=this.#r(e,r,1);if(s.length!==0)return s[0]}async matchAll(e=void 0,r={}){Ne.brandCheck(this,t);let n="Cache.matchAll";return e!==void 0&&(e=Ne.converters.RequestInfo(e,n,"request")),r=Ne.converters.CacheQueryOptions(r,n,"options"),this.#r(e,r)}async add(e){Ne.brandCheck(this,t);let r="Cache.add";Ne.argumentLengthCheck(arguments,1,r),e=Ne.converters.RequestInfo(e,r,"request");let n=[e];return await this.addAll(n)}async addAll(e){Ne.brandCheck(this,t);let r="Cache.addAll";Ne.argumentLengthCheck(arguments,1,r);let n=[],s=[];for(let m of e){if(m===void 0)throw Ne.errors.conversionFailed({prefix:r,argument:"Argument 1",types:["undefined is not allowed"]});if(m=Ne.converters.RequestInfo(m),typeof m=="string")continue;let f=m[oa];if(!sS(f.url)||f.method!=="GET")throw Ne.errors.exception({header:r,message:"Expected http/s scheme when method is not GET."})}let o=[];for(let m of e){let f=new Ul(m)[oa];if(!sS(f.url))throw Ne.errors.exception({header:r,message:"Expected http/s scheme."});f.initiator="fetch",f.destination="subresource",s.push(f);let g=HA();o.push(QVe({request:f,processResponse(E){if(E.type==="error"||E.status===206||E.status<200||E.status>299)g.reject(Ne.errors.exception({header:"Cache.addAll",message:"Received an invalid status code or the request failed."}));else if(E.headersList.contains("vary")){let x=p1(E.headersList.get("vary"));for(let w of x)if(w==="*"){g.reject(Ne.errors.exception({header:"Cache.addAll",message:"invalid vary field value"}));for(let S of o)S.abort();return}}},processResponseEndOfBody(E){if(E.aborted){g.reject(new DOMException("aborted","AbortError"));return}g.resolve(E)}})),n.push(g.promise)}let c=await Promise.all(n),l=[],u=0;for(let m of c){let f={type:"put",request:s[u],response:m};l.push(f),u++}let d=HA(),p=null;try{this.#t(l)}catch(m){p=m}return queueMicrotask(()=>{p===null?d.resolve(void 0):d.reject(p)}),d.promise}async put(e,r){Ne.brandCheck(this,t);let n="Cache.put";Ne.argumentLengthCheck(arguments,2,n),e=Ne.converters.RequestInfo(e,n,"request"),r=Ne.converters.Response(r,n,"response");let s=null;if(e instanceof Ul?s=e[oa]:s=new Ul(e)[oa],!sS(s.url)||s.method!=="GET")throw Ne.errors.exception({header:n,message:"Expected an http/s scheme when method is not GET"});let o=r[oa];if(o.status===206)throw Ne.errors.exception({header:n,message:"Got 206 status"});if(o.headersList.contains("vary")){let f=p1(o.headersList.get("vary"));for(let g of f)if(g==="*")throw Ne.errors.exception({header:n,message:"Got * vary field value"})}if(o.body&&(NVe(o.body.stream)||o.body.stream.locked))throw Ne.errors.exception({header:n,message:"Response body is locked or disturbed"});let a=PVe(o),c=HA();if(o.body!=null){let g=o.body.stream.getReader();DVe(g).then(c.resolve,c.reject)}else c.resolve(void 0);let l=[],u={type:"put",request:s,response:a};l.push(u);let d=await c.promise;a.body!=null&&(a.body.source=d);let p=HA(),m=null;try{this.#t(l)}catch(f){m=f}return queueMicrotask(()=>{m===null?p.resolve():p.reject(m)}),p.promise}async delete(e,r={}){Ne.brandCheck(this,t);let n="Cache.delete";Ne.argumentLengthCheck(arguments,1,n),e=Ne.converters.RequestInfo(e,n,"request"),r=Ne.converters.CacheQueryOptions(r,n,"options");let s=null;if(e instanceof Ul){if(s=e[oa],s.method!=="GET"&&!r.ignoreMethod)return!1}else m1(typeof e=="string"),s=new Ul(e)[oa];let o=[],a={type:"delete",request:s,options:r};o.push(a);let c=HA(),l=null,u;try{u=this.#t(o)}catch(d){l=d}return queueMicrotask(()=>{l===null?c.resolve(!!u?.length):c.reject(l)}),c.promise}async keys(e=void 0,r={}){Ne.brandCheck(this,t);let n="Cache.keys";e!==void 0&&(e=Ne.converters.RequestInfo(e,n,"request")),r=Ne.converters.CacheQueryOptions(r,n,"options");let s=null;if(e!==void 0)if(e instanceof Ul){if(s=e[oa],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof e=="string"&&(s=new Ul(e)[oa]);let o=HA(),a=[];if(e===void 0)for(let c of this.#e)a.push(c[0]);else{let c=this.#s(s,r);for(let l of c)a.push(l[0])}return queueMicrotask(()=>{let c=[];for(let l of a){let u=_Ve(l,new AbortController().signal,"immutable");c.push(u)}o.resolve(Object.freeze(c))}),o.promise}#t(e){let r=this.#e,n=[...r],s=[],o=[];try{for(let a of e){if(a.type!=="delete"&&a.type!=="put")throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:'operation type does not match "delete" or "put"'});if(a.type==="delete"&&a.response!=null)throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:"delete operation should not have an associated response"});if(this.#s(a.request,a.options,s).length)throw new DOMException("???","InvalidStateError");let c;if(a.type==="delete"){if(c=this.#s(a.request,a.options),c.length===0)return[];for(let l of c){let u=r.indexOf(l);m1(u!==-1),r.splice(u,1)}}else if(a.type==="put"){if(a.response==null)throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:"put operation should have an associated response"});let l=a.request;if(!sS(l.url))throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:"expected http or https scheme"});if(l.method!=="GET")throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:"not get method"});if(a.options!=null)throw Ne.errors.exception({header:"Cache.#batchCacheOperations",message:"options must not be defined"});c=this.#s(a.request);for(let u of c){let d=r.indexOf(u);m1(d!==-1),r.splice(d,1)}r.push([a.request,a.response]),s.push([a.request,a.response])}o.push([a.request,a.response])}return o}catch(a){throw this.#e.length=0,this.#e=n,a}}#s(e,r,n){let s=[],o=n??this.#e;for(let a of o){let[c,l]=a;this.#n(e,c,l,r)&&s.push(a)}return s}#n(e,r,n=null,s){let o=new URL(e.url),a=new URL(r.url);if(s?.ignoreSearch&&(a.search="",o.search=""),!RVe(o,a,!0))return!1;if(n==null||s?.ignoreVary||!n.headersList.contains("vary"))return!0;let c=p1(n.headersList.get("vary"));for(let l of c){if(l==="*")return!1;let u=r.headersList.get(l),d=e.headersList.get(l);if(u!==d)return!1}return!0}#r(e,r,n=1/0){let s=null;if(e!==void 0)if(e instanceof Ul){if(s=e[oa],s.method!=="GET"&&!r.ignoreMethod)return[]}else typeof e=="string"&&(s=new Ul(e)[oa]);let o=[];if(e===void 0)for(let c of this.#e)o.push(c[1]);else{let c=this.#s(s,r);for(let l of c)o.push(l[1])}let a=[];for(let c of o){let l=vVe(c,"immutable");if(a.push(l.clone()),a.length>=n)break}return Object.freeze(a)}};Object.defineProperties(oS.prototype,{[Symbol.toStringTag]:{value:"Cache",configurable:!0},match:rm,matchAll:rm,add:rm,addAll:rm,put:rm,delete:rm,keys:rm});var one=[{key:"ignoreSearch",converter:Ne.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"ignoreMethod",converter:Ne.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"ignoreVary",converter:Ne.converters.boolean,defaultValue:i(()=>!1,"defaultValue")}];Ne.converters.CacheQueryOptions=Ne.dictionaryConverter(one);Ne.converters.MultiCacheQueryOptions=Ne.dictionaryConverter([...one,{key:"cacheName",converter:Ne.converters.DOMString}]);Ne.converters.Response=Ne.interfaceConverter(TVe);Ne.converters["sequence"]=Ne.sequenceConverter(Ne.converters.RequestInfo);ine.exports={Cache:oS}});var lne=b((l2t,cne)=>{"use strict";var{kConstruct:QE}=nS(),{Cache:iS}=ane(),{webidl:Hn}=Rn(),{kEnumerableProperty:DE}=ut(),aS=class t{static{i(this,"CacheStorage")}#e=new Map;constructor(){arguments[0]!==QE&&Hn.illegalConstructor(),Hn.util.markAsUncloneable(this)}async match(e,r={}){if(Hn.brandCheck(this,t),Hn.argumentLengthCheck(arguments,1,"CacheStorage.match"),e=Hn.converters.RequestInfo(e),r=Hn.converters.MultiCacheQueryOptions(r),r.cacheName!=null){if(this.#e.has(r.cacheName)){let n=this.#e.get(r.cacheName);return await new iS(QE,n).match(e,r)}}else for(let n of this.#e.values()){let o=await new iS(QE,n).match(e,r);if(o!==void 0)return o}}async has(e){Hn.brandCheck(this,t);let r="CacheStorage.has";return Hn.argumentLengthCheck(arguments,1,r),e=Hn.converters.DOMString(e,r,"cacheName"),this.#e.has(e)}async open(e){Hn.brandCheck(this,t);let r="CacheStorage.open";if(Hn.argumentLengthCheck(arguments,1,r),e=Hn.converters.DOMString(e,r,"cacheName"),this.#e.has(e)){let s=this.#e.get(e);return new iS(QE,s)}let n=[];return this.#e.set(e,n),new iS(QE,n)}async delete(e){Hn.brandCheck(this,t);let r="CacheStorage.delete";return Hn.argumentLengthCheck(arguments,1,r),e=Hn.converters.DOMString(e,r,"cacheName"),this.#e.delete(e)}async keys(){return Hn.brandCheck(this,t),[...this.#e.keys()]}};Object.defineProperties(aS.prototype,{[Symbol.toStringTag]:{value:"CacheStorage",configurable:!0},match:DE,has:DE,open:DE,delete:DE,keys:DE});cne.exports={CacheStorage:aS}});var dne=b((d2t,une)=>{"use strict";une.exports={maxAttributeValueSize:1024,maxNameValuePairSize:4096}});var f1=b((p2t,hne)=>{"use strict";function kVe(t){for(let e=0;e=0&&r<=8||r>=10&&r<=31||r===127)return!0}return!1}i(kVe,"isCTLExcludingHtab");function pne(t){for(let e=0;e126||r===34||r===40||r===41||r===60||r===62||r===64||r===44||r===59||r===58||r===92||r===47||r===91||r===93||r===63||r===61||r===123||r===125)throw new Error("Invalid cookie name")}}i(pne,"validateCookieName");function mne(t){let e=t.length,r=0;if(t[0]==='"'){if(e===1||t[e-1]!=='"')throw new Error("Invalid cookie value");--e,++r}for(;r126||n===34||n===44||n===59||n===92)throw new Error("Invalid cookie value")}}i(mne,"validateCookieValue");function fne(t){for(let e=0;ee.toString().padStart(2,"0"));function Ane(t){return typeof t=="number"&&(t=new Date(t)),`${OVe[t.getUTCDay()]}, ${cS[t.getUTCDate()]} ${MVe[t.getUTCMonth()]} ${t.getUTCFullYear()} ${cS[t.getUTCHours()]}:${cS[t.getUTCMinutes()]}:${cS[t.getUTCSeconds()]} GMT`}i(Ane,"toIMFDate");function FVe(t){if(t<0)throw new Error("Invalid cookie max-age")}i(FVe,"validateCookieMaxAge");function UVe(t){if(t.name.length===0)return null;pne(t.name),mne(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"&&(FVe(t.maxAge),e.push(`Max-Age=${t.maxAge}`)),t.domain&&(LVe(t.domain),e.push(`Domain=${t.domain}`)),t.path&&(fne(t.path),e.push(`Path=${t.path}`)),t.expires&&t.expires.toString()!=="Invalid Date"&&e.push(`Expires=${Ane(t.expires)}`),t.sameSite&&e.push(`SameSite=${t.sameSite}`);for(let r of t.unparsed){if(!r.includes("="))throw new Error("Invalid unparsed");let[n,...s]=r.split("=");e.push(`${n.trim()}=${s.join("=")}`)}return e.join("; ")}i(UVe,"stringify");hne.exports={isCTLExcludingHtab:kVe,validateCookieName:pne,validateCookiePath:fne,validateCookieValue:mne,toIMFDate:Ane,stringify:UVe}});var yne=b((f2t,gne)=>{"use strict";var{maxNameValuePairSize:qVe,maxAttributeValueSize:$Ve}=dne(),{isCTLExcludingHtab:GVe}=f1(),{collectASequenceOfCodePointsFast:lS}=Os(),HVe=require("node:assert");function zVe(t){if(GVe(t))return null;let e="",r="",n="",s="";if(t.includes(";")){let o={position:0};e=lS(";",t,o),r=t.slice(o.position)}else e=t;if(!e.includes("="))s=e;else{let o={position:0};n=lS("=",e,o),s=e.slice(o.position+1)}return n=n.trim(),s=s.trim(),n.length+s.length>qVe?null:{name:n,value:s,...zA(r)}}i(zVe,"parseSetCookie");function zA(t,e={}){if(t.length===0)return e;HVe(t[0]===";"),t=t.slice(1);let r="";t.includes(";")?(r=lS(";",t,{position:0}),t=t.slice(r.length)):(r=t,t="");let n="",s="";if(r.includes("=")){let a={position:0};n=lS("=",r,a),s=r.slice(a.position+1)}else n=r;if(n=n.trim(),s=s.trim(),s.length>$Ve)return zA(t,e);let o=n.toLowerCase();if(o==="expires"){let a=new Date(s);e.expires=a}else if(o==="max-age"){let a=s.charCodeAt(0);if((a<48||a>57)&&s[0]!=="-"||!/^\d+$/.test(s))return zA(t,e);let c=Number(s);e.maxAge=c}else if(o==="domain"){let a=s;a[0]==="."&&(a=a.slice(1)),a=a.toLowerCase(),e.domain=a}else if(o==="path"){let a="";s.length===0||s[0]!=="/"?a="/":a=s,e.path=a}else if(o==="secure")e.secure=!0;else if(o==="httponly")e.httpOnly=!0;else if(o==="samesite"){let a="Default",c=s.toLowerCase();c.includes("none")&&(a="None"),c.includes("strict")&&(a="Strict"),c.includes("lax")&&(a="Lax"),e.sameSite=a}else e.unparsed??=[],e.unparsed.push(`${n}=${s}`);return zA(t,e)}i(zA,"parseUnparsedAttributes");gne.exports={parseSetCookie:zVe,parseUnparsedAttributes:zA}});var Ine=b((h2t,Cne)=>{"use strict";var{parseSetCookie:VVe}=yne(),{stringify:YVe}=f1(),{webidl:At}=Rn(),{Headers:uS}=Kp();function WVe(t){At.argumentLengthCheck(arguments,1,"getCookies"),At.brandCheck(t,uS,{strict:!1});let e=t.get("cookie"),r={};if(!e)return r;for(let n of e.split(";")){let[s,...o]=n.split("=");r[s.trim()]=o.join("=")}return r}i(WVe,"getCookies");function jVe(t,e,r){At.brandCheck(t,uS,{strict:!1});let n="deleteCookie";At.argumentLengthCheck(arguments,2,n),e=At.converters.DOMString(e,n,"name"),r=At.converters.DeleteCookieAttributes(r),Ene(t,{name:e,value:"",expires:new Date(0),...r})}i(jVe,"deleteCookie");function JVe(t){At.argumentLengthCheck(arguments,1,"getSetCookies"),At.brandCheck(t,uS,{strict:!1});let e=t.getSetCookie();return e?e.map(r=>VVe(r)):[]}i(JVe,"getSetCookies");function Ene(t,e){At.argumentLengthCheck(arguments,2,"setCookie"),At.brandCheck(t,uS,{strict:!1}),e=At.converters.Cookie(e);let r=YVe(e);r&&t.append("Set-Cookie",r)}i(Ene,"setCookie");At.converters.DeleteCookieAttributes=At.dictionaryConverter([{converter:At.nullableConverter(At.converters.DOMString),key:"path",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters.DOMString),key:"domain",defaultValue:i(()=>null,"defaultValue")}]);At.converters.Cookie=At.dictionaryConverter([{converter:At.converters.DOMString,key:"name"},{converter:At.converters.DOMString,key:"value"},{converter:At.nullableConverter(t=>typeof t=="number"?At.converters["unsigned long long"](t):new Date(t)),key:"expires",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters["long long"]),key:"maxAge",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters.DOMString),key:"domain",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters.DOMString),key:"path",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters.boolean),key:"secure",defaultValue:i(()=>null,"defaultValue")},{converter:At.nullableConverter(At.converters.boolean),key:"httpOnly",defaultValue:i(()=>null,"defaultValue")},{converter:At.converters.USVString,key:"sameSite",allowedValues:["Strict","Lax","None"]},{converter:At.sequenceConverter(At.converters.DOMString),key:"unparsed",defaultValue:i(()=>new Array(0),"defaultValue")}]);Cne.exports={getCookies:WVe,deleteCookie:jVe,getSetCookies:JVe,setCookie:Ene}});var YA=b((y2t,wne)=>{"use strict";var{webidl:be}=Rn(),{kEnumerableProperty:qs}=ut(),{kConstruct:xne}=Zt(),{MessagePort:KVe}=require("node:worker_threads"),VA=class t extends Event{static{i(this,"MessageEvent")}#e;constructor(e,r={}){if(e===xne){super(arguments[1],arguments[2]),be.util.markAsUncloneable(this);return}let n="MessageEvent constructor";be.argumentLengthCheck(arguments,1,n),e=be.converters.DOMString(e,n,"type"),r=be.converters.MessageEventInit(r,n,"eventInitDict"),super(e,r),this.#e=r,be.util.markAsUncloneable(this)}get data(){return be.brandCheck(this,t),this.#e.data}get origin(){return be.brandCheck(this,t),this.#e.origin}get lastEventId(){return be.brandCheck(this,t),this.#e.lastEventId}get source(){return be.brandCheck(this,t),this.#e.source}get ports(){return be.brandCheck(this,t),Object.isFrozen(this.#e.ports)||Object.freeze(this.#e.ports),this.#e.ports}initMessageEvent(e,r=!1,n=!1,s=null,o="",a="",c=null,l=[]){return be.brandCheck(this,t),be.argumentLengthCheck(arguments,1,"MessageEvent.initMessageEvent"),new t(e,{bubbles:r,cancelable:n,data:s,origin:o,lastEventId:a,source:c,ports:l})}static createFastMessageEvent(e,r){let n=new t(xne,e,r);return n.#e=r,n.#e.data??=null,n.#e.origin??="",n.#e.lastEventId??="",n.#e.source??=null,n.#e.ports??=[],n}},{createFastMessageEvent:XVe}=VA;delete VA.createFastMessageEvent;var dS=class t extends Event{static{i(this,"CloseEvent")}#e;constructor(e,r={}){let n="CloseEvent constructor";be.argumentLengthCheck(arguments,1,n),e=be.converters.DOMString(e,n,"type"),r=be.converters.CloseEventInit(r),super(e,r),this.#e=r,be.util.markAsUncloneable(this)}get wasClean(){return be.brandCheck(this,t),this.#e.wasClean}get code(){return be.brandCheck(this,t),this.#e.code}get reason(){return be.brandCheck(this,t),this.#e.reason}},pS=class t extends Event{static{i(this,"ErrorEvent")}#e;constructor(e,r){let n="ErrorEvent constructor";be.argumentLengthCheck(arguments,1,n),super(e,r),be.util.markAsUncloneable(this),e=be.converters.DOMString(e,n,"type"),r=be.converters.ErrorEventInit(r??{}),this.#e=r}get message(){return be.brandCheck(this,t),this.#e.message}get filename(){return be.brandCheck(this,t),this.#e.filename}get lineno(){return be.brandCheck(this,t),this.#e.lineno}get colno(){return be.brandCheck(this,t),this.#e.colno}get error(){return be.brandCheck(this,t),this.#e.error}};Object.defineProperties(VA.prototype,{[Symbol.toStringTag]:{value:"MessageEvent",configurable:!0},data:qs,origin:qs,lastEventId:qs,source:qs,ports:qs,initMessageEvent:qs});Object.defineProperties(dS.prototype,{[Symbol.toStringTag]:{value:"CloseEvent",configurable:!0},reason:qs,code:qs,wasClean:qs});Object.defineProperties(pS.prototype,{[Symbol.toStringTag]:{value:"ErrorEvent",configurable:!0},message:qs,filename:qs,lineno:qs,colno:qs,error:qs});be.converters.MessagePort=be.interfaceConverter(KVe);be.converters["sequence"]=be.sequenceConverter(be.converters.MessagePort);var A1=[{key:"bubbles",converter:be.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"cancelable",converter:be.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"composed",converter:be.converters.boolean,defaultValue:i(()=>!1,"defaultValue")}];be.converters.MessageEventInit=be.dictionaryConverter([...A1,{key:"data",converter:be.converters.any,defaultValue:i(()=>null,"defaultValue")},{key:"origin",converter:be.converters.USVString,defaultValue:i(()=>"","defaultValue")},{key:"lastEventId",converter:be.converters.DOMString,defaultValue:i(()=>"","defaultValue")},{key:"source",converter:be.nullableConverter(be.converters.MessagePort),defaultValue:i(()=>null,"defaultValue")},{key:"ports",converter:be.converters["sequence"],defaultValue:i(()=>new Array(0),"defaultValue")}]);be.converters.CloseEventInit=be.dictionaryConverter([...A1,{key:"wasClean",converter:be.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"code",converter:be.converters["unsigned short"],defaultValue:i(()=>0,"defaultValue")},{key:"reason",converter:be.converters.USVString,defaultValue:i(()=>"","defaultValue")}]);be.converters.ErrorEventInit=be.dictionaryConverter([...A1,{key:"message",converter:be.converters.DOMString,defaultValue:i(()=>"","defaultValue")},{key:"filename",converter:be.converters.USVString,defaultValue:i(()=>"","defaultValue")},{key:"lineno",converter:be.converters["unsigned long"],defaultValue:i(()=>0,"defaultValue")},{key:"colno",converter:be.converters["unsigned long"],defaultValue:i(()=>0,"defaultValue")},{key:"error",converter:be.converters.any}]);wne.exports={MessageEvent:VA,CloseEvent:dS,ErrorEvent:pS,createFastMessageEvent:XVe}});var nm=b((C2t,bne)=>{"use strict";var ZVe="258EAFA5-E914-47DA-95CA-C5AB0DC85B11",e4e={enumerable:!0,writable:!1,configurable:!1},t4e={CONNECTING:0,OPEN:1,CLOSING:2,CLOSED:3},r4e={NOT_SENT:0,PROCESSING:1,SENT:2},n4e={CONTINUATION:0,TEXT:1,BINARY:2,CLOSE:8,PING:9,PONG:10},s4e=2**16-1,o4e={INFO:0,PAYLOADLENGTH_16:2,PAYLOADLENGTH_64:3,READ_DATA:4},i4e=Buffer.allocUnsafe(0),a4e={string:1,typedArray:2,arrayBuffer:3,blob:4};bne.exports={uid:ZVe,sentCloseFrameState:r4e,staticPropertyDescriptors:e4e,states:t4e,opcodes:n4e,maxUnsigned16Bit:s4e,parserStates:o4e,emptyBuffer:i4e,sendHints:a4e}});var kE=b((I2t,Sne)=>{"use strict";Sne.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 ME=b((x2t,Dne)=>{"use strict";var{kReadyState:LE,kController:c4e,kResponse:l4e,kBinaryType:u4e,kWebSocketURL:d4e}=kE(),{states:OE,opcodes:id}=nm(),{ErrorEvent:p4e,createFastMessageEvent:m4e}=YA(),{isUtf8:f4e}=require("node:buffer"),{collectASequenceOfCodePointsFast:A4e,removeHTTPWhitespace:Bne}=Os();function h4e(t){return t[LE]===OE.CONNECTING}i(h4e,"isConnecting");function g4e(t){return t[LE]===OE.OPEN}i(g4e,"isEstablished");function y4e(t){return t[LE]===OE.CLOSING}i(y4e,"isClosing");function E4e(t){return t[LE]===OE.CLOSED}i(E4e,"isClosed");function h1(t,e,r=(s,o)=>new Event(s,o),n={}){let s=r(t,n);e.dispatchEvent(s)}i(h1,"fireEvent");function C4e(t,e,r){if(t[LE]!==OE.OPEN)return;let n;if(e===id.TEXT)try{n=Qne(r)}catch{Nne(t,"Received invalid UTF-8 in text frame.");return}else e===id.BINARY&&(t[u4e]==="blob"?n=new Blob([r]):n=I4e(r));h1("message",t,m4e,{origin:t[d4e].origin,data:n})}i(C4e,"websocketMessageReceived");function I4e(t){return t.byteLength===t.buffer.byteLength?t.buffer:t.buffer.slice(t.byteOffset,t.byteOffset+t.byteLength)}i(I4e,"toArrayBuffer");function x4e(t){if(t.length===0)return!1;for(let e=0;e126||r===34||r===40||r===41||r===44||r===47||r===58||r===59||r===60||r===61||r===62||r===63||r===64||r===91||r===92||r===93||r===123||r===125)return!1}return!0}i(x4e,"isValidSubprotocol");function w4e(t){return t>=1e3&&t<1015?t!==1004&&t!==1005&&t!==1006:t>=3e3&&t<=4999}i(w4e,"isValidStatusCode");function Nne(t,e){let{[c4e]:r,[l4e]:n}=t;r.abort(),n?.socket&&!n.socket.destroyed&&n.socket.destroy(),e&&h1("error",t,(s,o)=>new p4e(s,o),{error:new Error(e),message:e})}i(Nne,"failWebsocketConnection");function Tne(t){return t===id.CLOSE||t===id.PING||t===id.PONG}i(Tne,"isControlFrame");function Pne(t){return t===id.CONTINUATION}i(Pne,"isContinuationFrame");function vne(t){return t===id.TEXT||t===id.BINARY}i(vne,"isTextBinaryFrame");function b4e(t){return vne(t)||Pne(t)||Tne(t)}i(b4e,"isValidOpcode");function S4e(t){let e={position:0},r=new Map;for(;e.position57)return!1}let e=Number.parseInt(t,10);return e>=8&&e<=15}i(B4e,"isValidClientWindowBits");var _ne=typeof process.versions.icu=="string",Rne=_ne?new TextDecoder("utf-8",{fatal:!0}):void 0,Qne=_ne?Rne.decode.bind(Rne):function(t){if(f4e(t))return t.toString("utf-8");throw new TypeError("Invalid utf-8 received.")};Dne.exports={isConnecting:h4e,isEstablished:g4e,isClosing:y4e,isClosed:E4e,fireEvent:h1,isValidSubprotocol:x4e,isValidStatusCode:w4e,failWebsocketConnection:Nne,websocketMessageReceived:C4e,utf8Decode:Qne,isControlFrame:Tne,isContinuationFrame:Pne,isTextBinaryFrame:vne,isValidOpcode:b4e,parseExtensions:S4e,isValidClientWindowBits:B4e}});var fS=b((b2t,kne)=>{"use strict";var{maxUnsigned16Bit:R4e}=nm(),mS=16386,g1,FE=null,WA=mS;try{g1=require("node:crypto")}catch{g1={randomFillSync:i(function(e,r,n){for(let s=0;sR4e?(a+=8,o=127):s>125&&(a+=2,o=126);let c=Buffer.allocUnsafe(s+a);c[0]=c[1]=0,c[0]|=128,c[0]=(c[0]&240)+e;c[a-4]=n[0],c[a-3]=n[1],c[a-2]=n[2],c[a-1]=n[3],c[1]=o,o===126?c.writeUInt16BE(s,2):o===127&&(c[2]=c[3]=0,c.writeUIntBE(s,4,6)),c[1]|=128;for(let l=0;l{"use strict";var{uid:T4e,states:UE,sentCloseFrameState:AS,emptyBuffer:P4e,opcodes:v4e}=nm(),{kReadyState:qE,kSentClose:hS,kByteParser:One,kReceivedClose:Lne,kResponse:Mne}=kE(),{fireEvent:_4e,failWebsocketConnection:ad,isClosing:Q4e,isClosed:D4e,isEstablished:k4e,parseExtensions:L4e}=ME(),{channels:jA}=iA(),{CloseEvent:O4e}=YA(),{makeRequest:M4e}=qA(),{fetching:F4e}=vE(),{Headers:U4e,getHeadersList:q4e}=Kp(),{getDecodeSplit:$4e}=go(),{WebsocketFrameSend:G4e}=fS(),E1;try{E1=require("node:crypto")}catch{}function H4e(t,e,r,n,s,o){let a=t;a.protocol=t.protocol==="ws:"?"http:":"https:";let c=M4e({urlList:[a],client:r,serviceWorkers:"none",referrer:"no-referrer",mode:"websocket",credentials:"include",cache:"no-store",redirect:"error"});if(o.headers){let p=q4e(new U4e(o.headers));c.headersList=p}let l=E1.randomBytes(16).toString("base64");c.headersList.append("sec-websocket-key",l),c.headersList.append("sec-websocket-version","13");for(let p of e)c.headersList.append("sec-websocket-protocol",p);return c.headersList.append("sec-websocket-extensions","permessage-deflate; client_max_window_bits"),F4e({request:c,useParallelQueue:!0,dispatcher:o.dispatcher,processResponse(p){if(p.type==="error"||p.status!==101){ad(n,"Received network error or non-101 status code.");return}if(e.length!==0&&!p.headersList.get("Sec-WebSocket-Protocol")){ad(n,"Server did not respond with sent protocols.");return}if(p.headersList.get("Upgrade")?.toLowerCase()!=="websocket"){ad(n,'Server did not set Upgrade header to "websocket".');return}if(p.headersList.get("Connection")?.toLowerCase()!=="upgrade"){ad(n,'Server did not set Connection header to "upgrade".');return}let m=p.headersList.get("Sec-WebSocket-Accept"),f=E1.createHash("sha1").update(l+T4e).digest("base64");if(m!==f){ad(n,"Incorrect hash received in Sec-WebSocket-Accept header.");return}let g=p.headersList.get("Sec-WebSocket-Extensions"),E;if(g!==null&&(E=L4e(g),!E.has("permessage-deflate"))){ad(n,"Sec-WebSocket-Extensions header does not match.");return}let x=p.headersList.get("Sec-WebSocket-Protocol");if(x!==null&&!$4e("sec-websocket-protocol",c.headersList).includes(x)){ad(n,"Protocol was not set in the opening handshake.");return}p.socket.on("data",Fne),p.socket.on("close",Une),p.socket.on("error",qne),jA.open.hasSubscribers&&jA.open.publish({address:p.socket.address(),protocol:x,extensions:g}),s(p,E)}})}i(H4e,"establishWebSocketConnection");function z4e(t,e,r,n){if(!(Q4e(t)||D4e(t)))if(!k4e(t))ad(t,"Connection was closed before it was established."),t[qE]=UE.CLOSING;else if(t[hS]===AS.NOT_SENT){t[hS]=AS.PROCESSING;let s=new G4e;e!==void 0&&r===void 0?(s.frameData=Buffer.allocUnsafe(2),s.frameData.writeUInt16BE(e,0)):e!==void 0&&r!==void 0?(s.frameData=Buffer.allocUnsafe(2+n),s.frameData.writeUInt16BE(e,0),s.frameData.write(r,2,"utf-8")):s.frameData=P4e,t[Mne].socket.write(s.createFrame(v4e.CLOSE)),t[hS]=AS.SENT,t[qE]=UE.CLOSING}else t[qE]=UE.CLOSING}i(z4e,"closeWebSocketConnection");function Fne(t){this.ws[One].write(t)||this.pause()}i(Fne,"onSocketData");function Une(){let{ws:t}=this,{[Mne]:e}=t;e.socket.off("data",Fne),e.socket.off("close",Une),e.socket.off("error",qne);let r=t[hS]===AS.SENT&&t[Lne],n=1005,s="",o=t[One].closingInfo;o&&!o.error?(n=o.code??1005,s=o.reason):t[Lne]||(n=1006),t[qE]=UE.CLOSED,_4e("close",t,(a,c)=>new O4e(a,c),{wasClean:r,code:n,reason:s}),jA.close.hasSubscribers&&jA.close.publish({websocket:t,code:n,reason:s})}i(Une,"onSocketClose");function qne(t){let{ws:e}=this;e[qE]=UE.CLOSING,jA.socketError.hasSubscribers&&jA.socketError.publish(t),this.destroy()}i(qne,"onSocketError");$ne.exports={establishWebSocketConnection:H4e,closeWebSocketConnection:z4e}});var zne=b((N2t,Hne)=>{"use strict";var{createInflateRaw:V4e,Z_DEFAULT_WINDOWBITS:Y4e}=require("node:zlib"),{isValidClientWindowBits:W4e}=ME(),{MessageSizeExceededError:Gne}=bt(),j4e=Buffer.from([0,0,255,255]),gS=Symbol("kBuffer"),$E=Symbol("kLength"),J4e=4*1024*1024,I1=class{static{i(this,"PerMessageDeflate")}#e;#t={};#s=!1;#n=null;constructor(e){this.#t.serverNoContextTakeover=e.has("server_no_context_takeover"),this.#t.serverMaxWindowBits=e.get("server_max_window_bits")}decompress(e,r,n){if(this.#s){n(new Gne);return}if(!this.#e){let s=Y4e;if(this.#t.serverMaxWindowBits){if(!W4e(this.#t.serverMaxWindowBits)){n(new Error("Invalid server_max_window_bits"));return}s=Number.parseInt(this.#t.serverMaxWindowBits)}try{this.#e=V4e({windowBits:s})}catch(o){n(o);return}this.#e[gS]=[],this.#e[$E]=0,this.#e.on("data",o=>{if(!this.#s){if(this.#e[$E]+=o.length,this.#e[$E]>J4e){if(this.#s=!0,this.#e.removeAllListeners(),this.#e.destroy(),this.#e=null,this.#n){let a=this.#n;this.#n=null,a(new Gne)}return}this.#e[gS].push(o)}}),this.#e.on("error",o=>{this.#e=null,n(o)})}this.#n=n,this.#e.write(e),r&&this.#e.write(j4e),this.#e.flush(()=>{if(this.#s||!this.#e)return;let s=Buffer.concat(this.#e[gS],this.#e[$E]);this.#e[gS].length=0,this.#e[$E]=0,this.#n=null,n(null,s)})}};Hne.exports={PerMessageDeflate:I1}});var tse=b((P2t,ese)=>{"use strict";var{Writable:K4e}=require("node:stream"),X4e=require("node:assert"),{parserStates:$s,opcodes:JA,states:Z4e,emptyBuffer:Vne,sentCloseFrameState:Yne}=nm(),{kReadyState:eYe,kSentClose:Wne,kResponse:jne,kReceivedClose:Jne}=kE(),{channels:yS}=iA(),{isValidStatusCode:tYe,isValidOpcode:rYe,failWebsocketConnection:bo,websocketMessageReceived:Kne,utf8Decode:nYe,isControlFrame:Xne,isTextBinaryFrame:x1,isContinuationFrame:sYe}=ME(),{WebsocketFrameSend:Zne}=fS(),{closeWebSocketConnection:oYe}=C1(),{PerMessageDeflate:iYe}=zne(),w1=class extends K4e{static{i(this,"ByteParser")}#e=[];#t=0;#s=!1;#n=$s.INFO;#r={};#o=[];#i;constructor(e,r){super(),this.ws=e,this.#i=r??new Map,this.#i.has("permessage-deflate")&&this.#i.set("permessage-deflate",new iYe(r))}_write(e,r,n){this.#e.push(e),this.#t+=e.length,this.#s=!0,this.run(n)}run(e){for(;this.#s;)if(this.#n===$s.INFO){if(this.#t<2)return e();let r=this.consume(2),n=(r[0]&128)!==0,s=r[0]&15,o=(r[1]&128)===128,a=!n&&s!==JA.CONTINUATION,c=r[1]&127,l=r[0]&64,u=r[0]&32,d=r[0]&16;if(!rYe(s))return bo(this.ws,"Invalid opcode received"),e();if(o)return bo(this.ws,"Frame cannot be masked"),e();if(l!==0&&!this.#i.has("permessage-deflate")){bo(this.ws,"Expected RSV1 to be clear.");return}if(u!==0||d!==0){bo(this.ws,"RSV1, RSV2, RSV3 must be clear");return}if(a&&!x1(s)){bo(this.ws,"Invalid frame type was fragmented.");return}if(x1(s)&&this.#o.length>0){bo(this.ws,"Expected continuation frame");return}if(this.#r.fragmented&&a){bo(this.ws,"Fragmented frame exceeded 125 bytes.");return}if((c>125||a)&&Xne(s)){bo(this.ws,"Control frame either too large or fragmented");return}if(sYe(s)&&this.#o.length===0&&!this.#r.compressed){bo(this.ws,"Unexpected continuation frame");return}c<=125?(this.#r.payloadLength=c,this.#n=$s.READ_DATA):c===126?this.#n=$s.PAYLOADLENGTH_16:c===127&&(this.#n=$s.PAYLOADLENGTH_64),x1(s)&&(this.#r.binaryType=s,this.#r.compressed=l!==0),this.#r.opcode=s,this.#r.masked=o,this.#r.fin=n,this.#r.fragmented=a}else if(this.#n===$s.PAYLOADLENGTH_16){if(this.#t<2)return e();let r=this.consume(2);this.#r.payloadLength=r.readUInt16BE(0),this.#n=$s.READ_DATA}else if(this.#n===$s.PAYLOADLENGTH_64){if(this.#t<8)return e();let r=this.consume(8),n=r.readUInt32BE(0),s=r.readUInt32BE(4);if(n!==0||s>2**31-1){bo(this.ws,"Received payload length > 2^31 bytes.");return}this.#r.payloadLength=s,this.#n=$s.READ_DATA}else if(this.#n===$s.READ_DATA){if(this.#t{if(n){bo(this.ws,n.message);return}if(this.#o.push(s),!this.#r.fin){this.#n=$s.INFO,this.#s=!0,this.run(e);return}Kne(this.ws,this.#r.binaryType,Buffer.concat(this.#o)),this.#s=!0,this.#n=$s.INFO,this.#o.length=0,this.run(e)}),this.#s=!1;break}else{if(this.#o.push(r),!this.#r.fragmented&&this.#r.fin){let n=Buffer.concat(this.#o);Kne(this.ws,this.#r.binaryType,n),this.#o.length=0}this.#n=$s.INFO}}}consume(e){if(e>this.#t)throw new Error("Called consume() before buffers satiated.");if(e===0)return Vne;if(this.#e[0].length===e)return this.#t-=this.#e[0].length,this.#e.shift();let r=Buffer.allocUnsafe(e),n=0;for(;n!==e;){let s=this.#e[0],{length:o}=s;if(o+n===e){r.set(this.#e.shift(),n);break}else if(o+n>e){r.set(s.subarray(0,e-n),n),this.#e[0]=s.subarray(e-n);break}else r.set(this.#e.shift(),n),n+=s.length}return this.#t-=e,r}parseCloseBody(e){X4e(e.length!==1);let r;if(e.length>=2&&(r=e.readUInt16BE(0)),r!==void 0&&!tYe(r))return{code:1002,reason:"Invalid status code",error:!0};let n=e.subarray(2);n[0]===239&&n[1]===187&&n[2]===191&&(n=n.subarray(3));try{n=nYe(n)}catch{return{code:1007,reason:"Invalid UTF-8",error:!0}}return{code:r,reason:n,error:!1}}parseControlFrame(e){let{opcode:r,payloadLength:n}=this.#r;if(r===JA.CLOSE){if(n===1)return bo(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:o}=this.#r.closeInfo;return oYe(this.ws,s,o,o.length),bo(this.ws,o),!1}if(this.ws[Wne]!==Yne.SENT){let s=Vne;this.#r.closeInfo.code&&(s=Buffer.allocUnsafe(2),s.writeUInt16BE(this.#r.closeInfo.code,0));let o=new Zne(s);this.ws[jne].socket.write(o.createFrame(JA.CLOSE),a=>{a||(this.ws[Wne]=Yne.SENT)})}return this.ws[eYe]=Z4e.CLOSING,this.ws[Jne]=!0,!1}else if(r===JA.PING){if(!this.ws[Jne]){let s=new Zne(e);this.ws[jne].socket.write(s.createFrame(JA.PONG)),yS.ping.hasSubscribers&&yS.ping.publish({payload:e})}}else r===JA.PONG&&yS.pong.hasSubscribers&&yS.pong.publish({payload:e});return!0}get closingInfo(){return this.#r.closeInfo}};ese.exports={ByteParser:w1}});var ise=b((_2t,ose)=>{"use strict";var{WebsocketFrameSend:aYe}=fS(),{opcodes:rse,sendHints:KA}=nm(),cYe=QM(),nse=Buffer[Symbol.species],b1=class{static{i(this,"SendQueue")}#e=new cYe;#t=!1;#s;constructor(e){this.#s=e}add(e,r,n){if(n!==KA.blob){let o=sse(e,n);if(!this.#t)this.#s.write(o,r);else{let a={promise:null,callback:r,frame:o};this.#e.push(a)}return}let s={promise:e.arrayBuffer().then(o=>{s.promise=null,s.frame=sse(o,n)}),callback:r,frame:null};this.#e.push(s),this.#t||this.#n()}async#n(){this.#t=!0;let e=this.#e;for(;!e.isEmpty();){let r=e.shift();r.promise!==null&&await r.promise,this.#s.write(r.frame,r.callback),r.callback=r.frame=null}this.#t=!1}};function sse(t,e){return new aYe(lYe(t,e)).createFrame(e===KA.string?rse.TEXT:rse.BINARY)}i(sse,"createFrame");function lYe(t,e){switch(e){case KA.string:return Buffer.from(t);case KA.arrayBuffer:case KA.blob:return new nse(t);case KA.typedArray:return new nse(t.buffer,t.byteOffset,t.byteLength)}}i(lYe,"toBuffer");ose.exports={SendQueue:b1}});var Ase=b((D2t,fse)=>{"use strict";var{webidl:qe}=Rn(),{URLSerializer:uYe}=Os(),{environmentSettingsObject:ase}=go(),{staticPropertyDescriptors:cd,states:GE,sentCloseFrameState:dYe,sendHints:ES}=nm(),{kWebSocketURL:cse,kReadyState:S1,kController:pYe,kBinaryType:CS,kResponse:lse,kSentClose:mYe,kByteParser:fYe}=kE(),{isConnecting:AYe,isEstablished:hYe,isClosing:gYe,isValidSubprotocol:yYe,fireEvent:use}=ME(),{establishWebSocketConnection:EYe,closeWebSocketConnection:dse}=C1(),{ByteParser:CYe}=tse(),{kEnumerableProperty:ai,isBlobLike:pse}=ut(),{getGlobalDispatcher:IYe}=kb(),{types:mse}=require("node:util"),{ErrorEvent:xYe,CloseEvent:wYe}=YA(),{SendQueue:bYe}=ise(),So=class t extends EventTarget{static{i(this,"WebSocket")}#e={open:null,error:null,close:null,message:null};#t=0;#s="";#n="";#r;constructor(e,r=[]){super(),qe.util.markAsUncloneable(this);let n="WebSocket constructor";qe.argumentLengthCheck(arguments,1,n);let s=qe.converters["DOMString or sequence or WebSocketInit"](r,n,"options");e=qe.converters.USVString(e,n,"url"),r=s.protocols;let o=ase.settingsObject.baseUrl,a;try{a=new URL(e,o)}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 r=="string"&&(r=[r]),r.length!==new Set(r.map(l=>l.toLowerCase())).size)throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");if(r.length>0&&!r.every(l=>yYe(l)))throw new DOMException("Invalid Sec-WebSocket-Protocol value","SyntaxError");this[cse]=new URL(a.href);let c=ase.settingsObject;this[pYe]=EYe(a,r,c,this,(l,u)=>this.#o(l,u),s),this[S1]=t.CONNECTING,this[mYe]=dYe.NOT_SENT,this[CS]="blob"}close(e=void 0,r=void 0){qe.brandCheck(this,t);let n="WebSocket.close";if(e!==void 0&&(e=qe.converters["unsigned short"](e,n,"code",{clamp:!0})),r!==void 0&&(r=qe.converters.USVString(r,n,"reason")),e!==void 0&&e!==1e3&&(e<3e3||e>4999))throw new DOMException("invalid code","InvalidAccessError");let s=0;if(r!==void 0&&(s=Buffer.byteLength(r),s>123))throw new DOMException(`Reason must be less than 123 bytes; received ${s}`,"SyntaxError");dse(this,e,r,s)}send(e){qe.brandCheck(this,t);let r="WebSocket.send";if(qe.argumentLengthCheck(arguments,1,r),e=qe.converters.WebSocketSendData(e,r,"data"),AYe(this))throw new DOMException("Sent before connected.","InvalidStateError");if(!(!hYe(this)||gYe(this)))if(typeof e=="string"){let n=Buffer.byteLength(e);this.#t+=n,this.#r.add(e,()=>{this.#t-=n},ES.string)}else mse.isArrayBuffer(e)?(this.#t+=e.byteLength,this.#r.add(e,()=>{this.#t-=e.byteLength},ES.arrayBuffer)):ArrayBuffer.isView(e)?(this.#t+=e.byteLength,this.#r.add(e,()=>{this.#t-=e.byteLength},ES.typedArray)):pse(e)&&(this.#t+=e.size,this.#r.add(e,()=>{this.#t-=e.size},ES.blob))}get readyState(){return qe.brandCheck(this,t),this[S1]}get bufferedAmount(){return qe.brandCheck(this,t),this.#t}get url(){return qe.brandCheck(this,t),uYe(this[cse])}get extensions(){return qe.brandCheck(this,t),this.#n}get protocol(){return qe.brandCheck(this,t),this.#s}get onopen(){return qe.brandCheck(this,t),this.#e.open}set onopen(e){qe.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 qe.brandCheck(this,t),this.#e.error}set onerror(e){qe.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 qe.brandCheck(this,t),this.#e.close}set onclose(e){qe.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 qe.brandCheck(this,t),this.#e.message}set onmessage(e){qe.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 qe.brandCheck(this,t),this[CS]}set binaryType(e){qe.brandCheck(this,t),e!=="blob"&&e!=="arraybuffer"?this[CS]="blob":this[CS]=e}#o(e,r){this[lse]=e;let n=new CYe(this,r);n.on("drain",SYe),n.on("error",BYe.bind(this)),e.socket.ws=this,this[fYe]=n,this.#r=new bYe(e.socket),this[S1]=GE.OPEN;let s=e.headersList.get("sec-websocket-extensions");s!==null&&(this.#n=s);let o=e.headersList.get("sec-websocket-protocol");o!==null&&(this.#s=o),use("open",this)}};So.CONNECTING=So.prototype.CONNECTING=GE.CONNECTING;So.OPEN=So.prototype.OPEN=GE.OPEN;So.CLOSING=So.prototype.CLOSING=GE.CLOSING;So.CLOSED=So.prototype.CLOSED=GE.CLOSED;Object.defineProperties(So.prototype,{CONNECTING:cd,OPEN:cd,CLOSING:cd,CLOSED:cd,url:ai,readyState:ai,bufferedAmount:ai,onopen:ai,onerror:ai,onclose:ai,close:ai,onmessage:ai,binaryType:ai,send:ai,extensions:ai,protocol:ai,[Symbol.toStringTag]:{value:"WebSocket",writable:!1,enumerable:!1,configurable:!0}});Object.defineProperties(So,{CONNECTING:cd,OPEN:cd,CLOSING:cd,CLOSED:cd});qe.converters["sequence"]=qe.sequenceConverter(qe.converters.DOMString);qe.converters["DOMString or sequence"]=function(t,e,r){return qe.util.Type(t)==="Object"&&Symbol.iterator in t?qe.converters["sequence"](t):qe.converters.DOMString(t,e,r)};qe.converters.WebSocketInit=qe.dictionaryConverter([{key:"protocols",converter:qe.converters["DOMString or sequence"],defaultValue:i(()=>new Array(0),"defaultValue")},{key:"dispatcher",converter:qe.converters.any,defaultValue:i(()=>IYe(),"defaultValue")},{key:"headers",converter:qe.nullableConverter(qe.converters.HeadersInit)}]);qe.converters["DOMString or sequence or WebSocketInit"]=function(t){return qe.util.Type(t)==="Object"&&!(Symbol.iterator in t)?qe.converters.WebSocketInit(t):{protocols:qe.converters["DOMString or sequence"](t)}};qe.converters.WebSocketSendData=function(t){if(qe.util.Type(t)==="Object"){if(pse(t))return qe.converters.Blob(t,{strict:!1});if(ArrayBuffer.isView(t)||mse.isArrayBuffer(t))return qe.converters.BufferSource(t)}return qe.converters.USVString(t)};function SYe(){this.ws[lse].socket.resume()}i(SYe,"onParserDrain");function BYe(t){let e,r;t instanceof wYe?(e=t.reason,r=t.code):e=t.message,use("error",this,()=>new xYe("error",{error:t,message:e})),dse(this,r)}i(BYe,"onParserError");fse.exports={WebSocket:So}});var B1=b((L2t,hse)=>{"use strict";function RYe(t){return t.indexOf("\0")===-1}i(RYe,"isValidLastEventId");function NYe(t){if(t.length===0)return!1;for(let e=0;e57)return!1;return!0}i(NYe,"isASCIINumber");function TYe(t){return new Promise(e=>{setTimeout(e,t).unref()})}i(TYe,"delay");hse.exports={isValidLastEventId:RYe,isASCIINumber:NYe,delay:TYe}});var Cse=b((M2t,Ese)=>{"use strict";var{Transform:PYe}=require("node:stream"),{isASCIINumber:gse,isValidLastEventId:yse}=B1(),ql=[239,187,191],R1=10,IS=13,vYe=58,_Ye=32,N1=class extends PYe{static{i(this,"EventSourceStream")}state=null;checkBOM=!0;crlfCheck=!1;eventEndCheck=!1;buffer=null;pos=0;event={data:void 0,event:void 0,id:void 0,retry:void 0};constructor(e={}){e.readableObjectMode=!0,super(e),this.state=e.eventSourceSettings||{},e.push&&(this.push=e.push)}_transform(e,r,n){if(e.length===0){n();return}if(this.buffer?this.buffer=Buffer.concat([this.buffer,e]):this.buffer=e,this.checkBOM)switch(this.buffer.length){case 1:if(this.buffer[0]===ql[0]){n();return}this.checkBOM=!1,n();return;case 2:if(this.buffer[0]===ql[0]&&this.buffer[1]===ql[1]){n();return}this.checkBOM=!1;break;case 3:if(this.buffer[0]===ql[0]&&this.buffer[1]===ql[1]&&this.buffer[2]===ql[2]){this.buffer=Buffer.alloc(0),this.checkBOM=!1,n();return}this.checkBOM=!1;break;default:this.buffer[0]===ql[0]&&this.buffer[1]===ql[1]&&this.buffer[2]===ql[2]&&(this.buffer=this.buffer.subarray(3)),this.checkBOM=!1;break}for(;this.pos0&&(r[s]=o);break}}processEvent(e){e.retry&&gse(e.retry)&&(this.state.reconnectionTime=parseInt(e.retry,10)),e.id&&yse(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,event:void 0,id:void 0,retry:void 0}}};Ese.exports={EventSourceStream:N1}});var Nse=b((U2t,Rse)=>{"use strict";var{pipeline:QYe}=require("node:stream"),{fetching:DYe}=vE(),{makeRequest:kYe}=qA(),{webidl:$l}=Rn(),{EventSourceStream:LYe}=Cse(),{parseMIMEType:OYe}=Os(),{createFastMessageEvent:MYe}=YA(),{isNetworkError:Ise}=TE(),{delay:FYe}=B1(),{kEnumerableProperty:sm}=ut(),{environmentSettingsObject:xse}=go(),wse=!1,bse=3e3,HE=0,Sse=1,zE=2,UYe="anonymous",qYe="use-credentials",XA=class t extends EventTarget{static{i(this,"EventSource")}#e={open:null,error:null,message:null};#t=null;#s=!1;#n=HE;#r=null;#o=null;#i;#a;constructor(e,r={}){super(),$l.util.markAsUncloneable(this);let n="EventSource constructor";$l.argumentLengthCheck(arguments,1,n),wse||(wse=!0,process.emitWarning("EventSource is experimental, expect them to change at any time.",{code:"UNDICI-ES"})),e=$l.converters.USVString(e,n,"url"),r=$l.converters.EventSourceInitDict(r,n,"eventSourceInitDict"),this.#i=r.dispatcher,this.#a={lastEventId:"",reconnectionTime:bse};let s=xse,o;try{o=new URL(e,s.settingsObject.baseUrl),this.#a.origin=o.origin}catch(l){throw new DOMException(l,"SyntaxError")}this.#t=o.href;let a=UYe;r.withCredentials&&(a=qYe,this.#s=!0);let c={redirect:"follow",keepalive:!0,mode:"cors",credentials:a==="anonymous"?"same-origin":"omit",referrer:"no-referrer"};c.client=xse.settingsObject,c.headersList=[["accept",{name:"accept",value:"text/event-stream"}]],c.cache="no-store",c.initiator="other",c.urlList=[new URL(this.#t)],this.#r=kYe(c),this.#c()}get readyState(){return this.#n}get url(){return this.#t}get withCredentials(){return this.#s}#c(){if(this.#n===zE)return;this.#n=HE;let e={request:this.#r,dispatcher:this.#i},r=i(n=>{Ise(n)&&(this.dispatchEvent(new Event("error")),this.close()),this.#l()},"processEventSourceEndOfBody");e.processResponseEndOfBody=r,e.processResponse=n=>{if(Ise(n))if(n.aborted){this.close(),this.dispatchEvent(new Event("error"));return}else{this.#l();return}let s=n.headersList.get("content-type",!0),o=s!==null?OYe(s):"failure",a=o!=="failure"&&o.essence==="text/event-stream";if(n.status!==200||a===!1){this.close(),this.dispatchEvent(new Event("error"));return}this.#n=Sse,this.dispatchEvent(new Event("open")),this.#a.origin=n.urlList[n.urlList.length-1].origin;let c=new LYe({eventSourceSettings:this.#a,push:i(l=>{this.dispatchEvent(MYe(l.type,l.options))},"push")});QYe(n.body.stream,c,l=>{l?.aborted===!1&&(this.close(),this.dispatchEvent(new Event("error")))})},this.#o=DYe(e)}async#l(){this.#n!==zE&&(this.#n=HE,this.dispatchEvent(new Event("error")),await FYe(this.#a.reconnectionTime),this.#n===HE&&(this.#a.lastEventId.length&&this.#r.headersList.set("last-event-id",this.#a.lastEventId,!0),this.#c()))}close(){$l.brandCheck(this,t),this.#n!==zE&&(this.#n=zE,this.#o.abort(),this.#r=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}},Bse={CONNECTING:{__proto__:null,configurable:!1,enumerable:!0,value:HE,writable:!1},OPEN:{__proto__:null,configurable:!1,enumerable:!0,value:Sse,writable:!1},CLOSED:{__proto__:null,configurable:!1,enumerable:!0,value:zE,writable:!1}};Object.defineProperties(XA,Bse);Object.defineProperties(XA.prototype,Bse);Object.defineProperties(XA.prototype,{close:sm,onerror:sm,onmessage:sm,onopen:sm,readyState:sm,url:sm,withCredentials:sm});$l.converters.EventSourceInitDict=$l.dictionaryConverter([{key:"withCredentials",converter:$l.converters.boolean,defaultValue:i(()=>!1,"defaultValue")},{key:"dispatcher",converter:$l.converters.any}]);Rse.exports={EventSource:XA,defaultReconnectionTime:bse}});var eh=b(($2t,Fe)=>{"use strict";var $Ye=BA(),Tse=jy(),GYe=RA(),HYe=BZ(),zYe=NA(),VYe=ZM(),YYe=JZ(),WYe=ree(),Pse=bt(),wS=ut(),{InvalidArgumentError:xS}=Pse,ZA=$ee(),jYe=Ky(),JYe=DF(),KYe=bte(),XYe=OF(),ZYe=IF(),eWe=Sb(),{getGlobalDispatcher:vse,setGlobalDispatcher:tWe}=kb(),rWe=Lb(),nWe=fb(),sWe=Ab();Object.assign(Tse.prototype,ZA);Fe.exports.Dispatcher=Tse;Fe.exports.Client=$Ye;Fe.exports.Pool=GYe;Fe.exports.BalancedPool=HYe;Fe.exports.Agent=zYe;Fe.exports.ProxyAgent=VYe;Fe.exports.EnvHttpProxyAgent=YYe;Fe.exports.RetryAgent=WYe;Fe.exports.RetryHandler=eWe;Fe.exports.DecoratorHandler=rWe;Fe.exports.RedirectHandler=nWe;Fe.exports.createRedirectInterceptor=sWe;Fe.exports.interceptors={redirect:vte(),retry:Qte(),dump:kte(),dns:Mte()};Fe.exports.buildConnector=jYe;Fe.exports.errors=Pse;Fe.exports.util={parseHeaders:wS.parseHeaders,headerNameToString:wS.headerNameToString};function VE(t){return(e,r,n)=>{if(typeof r=="function"&&(n=r,r=null),!e||typeof e!="string"&&typeof e!="object"&&!(e instanceof URL))throw new xS("invalid url");if(r!=null&&typeof r!="object")throw new xS("invalid opts");if(r&&r.path!=null){if(typeof r.path!="string")throw new xS("invalid opts.path");let a=r.path;r.path.startsWith("/")||(a=`/${a}`),e=new URL(wS.parseOrigin(e).origin+a)}else r||(r=typeof e=="object"?e:{}),e=wS.parseURL(e);let{agent:s,dispatcher:o=vse()}=r;if(s)throw new xS("unsupported opts.agent. Did you mean opts.client?");return t.call(o,{...r,origin:e.origin,path:e.search?`${e.pathname}${e.search}`:e.pathname,method:r.method||(r.body?"PUT":"GET")},n)}}i(VE,"makeDispatcher");Fe.exports.setGlobalDispatcher=tWe;Fe.exports.getGlobalDispatcher=vse;var oWe=vE().fetch;Fe.exports.fetch=i(async function(e,r=void 0){try{return await oWe(e,r)}catch(n){throw n&&typeof n=="object"&&Error.captureStackTrace(n),n}},"fetch");Fe.exports.Headers=Kp().Headers;Fe.exports.Response=TE().Response;Fe.exports.Request=qA().Request;Fe.exports.FormData=sE().FormData;Fe.exports.File=globalThis.File??require("node:buffer").File;Fe.exports.FileReader=ene().FileReader;var{setGlobalOrigin:iWe,getGlobalOrigin:aWe}=eM();Fe.exports.setGlobalOrigin=iWe;Fe.exports.getGlobalOrigin=aWe;var{CacheStorage:cWe}=lne(),{kConstruct:lWe}=nS();Fe.exports.caches=new cWe(lWe);var{deleteCookie:uWe,getCookies:dWe,getSetCookies:pWe,setCookie:mWe}=Ine();Fe.exports.deleteCookie=uWe;Fe.exports.getCookies=dWe;Fe.exports.getSetCookies=pWe;Fe.exports.setCookie=mWe;var{parseMIMEType:fWe,serializeAMimeType:AWe}=Os();Fe.exports.parseMIMEType=fWe;Fe.exports.serializeAMimeType=AWe;var{CloseEvent:hWe,ErrorEvent:gWe,MessageEvent:yWe}=YA();Fe.exports.WebSocket=Ase().WebSocket;Fe.exports.CloseEvent=hWe;Fe.exports.ErrorEvent=gWe;Fe.exports.MessageEvent=yWe;Fe.exports.request=VE(ZA.request);Fe.exports.stream=VE(ZA.stream);Fe.exports.pipeline=VE(ZA.pipeline);Fe.exports.connect=VE(ZA.connect);Fe.exports.upgrade=VE(ZA.upgrade);Fe.exports.MockClient=JYe;Fe.exports.MockPool=XYe;Fe.exports.MockAgent=KYe;Fe.exports.mockErrors=ZYe;var{EventSource:EWe}=Nse();Fe.exports.EventSource=EWe});var tC=b((g$t,doe)=>{"use strict";var UWe="2.0.0",qWe=Number.MAX_SAFE_INTEGER||9007199254740991,$We=16,GWe=250,HWe=["major","premajor","minor","preminor","patch","prepatch","prerelease"];doe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:$We,MAX_SAFE_BUILD_LENGTH:GWe,MAX_SAFE_INTEGER:qWe,RELEASE_TYPES:HWe,SEMVER_SPEC_VERSION:UWe,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var rC=b((y$t,poe)=>{"use strict";var zWe=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};poe.exports=zWe});var sh=b((Za,moe)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:Y1,MAX_SAFE_BUILD_LENGTH:VWe,MAX_LENGTH:YWe}=tC(),WWe=rC();Za=moe.exports={};var jWe=Za.re=[],JWe=Za.safeRe=[],ie=Za.src=[],KWe=Za.safeSrc=[],ae=Za.t={},XWe=0,W1="[a-zA-Z0-9-]",ZWe=[["\\s",1],["\\d",YWe],[W1,VWe]],e8e=i(t=>{for(let[e,r]of ZWe)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},"makeSafeRegex"),Xe=i((t,e,r)=>{let n=e8e(e),s=XWe++;WWe(t,s,e),ae[t]=s,ie[s]=e,KWe[s]=n,jWe[s]=new RegExp(e,r?"g":void 0),JWe[s]=new RegExp(n,r?"g":void 0)},"createToken");Xe("NUMERICIDENTIFIER","0|[1-9]\\d*");Xe("NUMERICIDENTIFIERLOOSE","\\d+");Xe("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${W1}*`);Xe("MAINVERSION",`(${ie[ae.NUMERICIDENTIFIER]})\\.(${ie[ae.NUMERICIDENTIFIER]})\\.(${ie[ae.NUMERICIDENTIFIER]})`);Xe("MAINVERSIONLOOSE",`(${ie[ae.NUMERICIDENTIFIERLOOSE]})\\.(${ie[ae.NUMERICIDENTIFIERLOOSE]})\\.(${ie[ae.NUMERICIDENTIFIERLOOSE]})`);Xe("PRERELEASEIDENTIFIER",`(?:${ie[ae.NONNUMERICIDENTIFIER]}|${ie[ae.NUMERICIDENTIFIER]})`);Xe("PRERELEASEIDENTIFIERLOOSE",`(?:${ie[ae.NONNUMERICIDENTIFIER]}|${ie[ae.NUMERICIDENTIFIERLOOSE]})`);Xe("PRERELEASE",`(?:-(${ie[ae.PRERELEASEIDENTIFIER]}(?:\\.${ie[ae.PRERELEASEIDENTIFIER]})*))`);Xe("PRERELEASELOOSE",`(?:-?(${ie[ae.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ie[ae.PRERELEASEIDENTIFIERLOOSE]})*))`);Xe("BUILDIDENTIFIER",`${W1}+`);Xe("BUILD",`(?:\\+(${ie[ae.BUILDIDENTIFIER]}(?:\\.${ie[ae.BUILDIDENTIFIER]})*))`);Xe("FULLPLAIN",`v?${ie[ae.MAINVERSION]}${ie[ae.PRERELEASE]}?${ie[ae.BUILD]}?`);Xe("FULL",`^${ie[ae.FULLPLAIN]}$`);Xe("LOOSEPLAIN",`[v=\\s]*${ie[ae.MAINVERSIONLOOSE]}${ie[ae.PRERELEASELOOSE]}?${ie[ae.BUILD]}?`);Xe("LOOSE",`^${ie[ae.LOOSEPLAIN]}$`);Xe("GTLT","((?:<|>)?=?)");Xe("XRANGEIDENTIFIERLOOSE",`${ie[ae.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Xe("XRANGEIDENTIFIER",`${ie[ae.NUMERICIDENTIFIER]}|x|X|\\*`);Xe("XRANGEPLAIN",`[v=\\s]*(${ie[ae.XRANGEIDENTIFIER]})(?:\\.(${ie[ae.XRANGEIDENTIFIER]})(?:\\.(${ie[ae.XRANGEIDENTIFIER]})(?:${ie[ae.PRERELEASE]})?${ie[ae.BUILD]}?)?)?`);Xe("XRANGEPLAINLOOSE",`[v=\\s]*(${ie[ae.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ie[ae.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ie[ae.XRANGEIDENTIFIERLOOSE]})(?:${ie[ae.PRERELEASELOOSE]})?${ie[ae.BUILD]}?)?)?`);Xe("XRANGE",`^${ie[ae.GTLT]}\\s*${ie[ae.XRANGEPLAIN]}$`);Xe("XRANGELOOSE",`^${ie[ae.GTLT]}\\s*${ie[ae.XRANGEPLAINLOOSE]}$`);Xe("COERCEPLAIN",`(^|[^\\d])(\\d{1,${Y1}})(?:\\.(\\d{1,${Y1}}))?(?:\\.(\\d{1,${Y1}}))?`);Xe("COERCE",`${ie[ae.COERCEPLAIN]}(?:$|[^\\d])`);Xe("COERCEFULL",ie[ae.COERCEPLAIN]+`(?:${ie[ae.PRERELEASE]})?(?:${ie[ae.BUILD]})?(?:$|[^\\d])`);Xe("COERCERTL",ie[ae.COERCE],!0);Xe("COERCERTLFULL",ie[ae.COERCEFULL],!0);Xe("LONETILDE","(?:~>?)");Xe("TILDETRIM",`(\\s*)${ie[ae.LONETILDE]}\\s+`,!0);Za.tildeTrimReplace="$1~";Xe("TILDE",`^${ie[ae.LONETILDE]}${ie[ae.XRANGEPLAIN]}$`);Xe("TILDELOOSE",`^${ie[ae.LONETILDE]}${ie[ae.XRANGEPLAINLOOSE]}$`);Xe("LONECARET","(?:\\^)");Xe("CARETTRIM",`(\\s*)${ie[ae.LONECARET]}\\s+`,!0);Za.caretTrimReplace="$1^";Xe("CARET",`^${ie[ae.LONECARET]}${ie[ae.XRANGEPLAIN]}$`);Xe("CARETLOOSE",`^${ie[ae.LONECARET]}${ie[ae.XRANGEPLAINLOOSE]}$`);Xe("COMPARATORLOOSE",`^${ie[ae.GTLT]}\\s*(${ie[ae.LOOSEPLAIN]})$|^$`);Xe("COMPARATOR",`^${ie[ae.GTLT]}\\s*(${ie[ae.FULLPLAIN]})$|^$`);Xe("COMPARATORTRIM",`(\\s*)${ie[ae.GTLT]}\\s*(${ie[ae.LOOSEPLAIN]}|${ie[ae.XRANGEPLAIN]})`,!0);Za.comparatorTrimReplace="$1$2$3";Xe("HYPHENRANGE",`^\\s*(${ie[ae.XRANGEPLAIN]})\\s+-\\s+(${ie[ae.XRANGEPLAIN]})\\s*$`);Xe("HYPHENRANGELOOSE",`^\\s*(${ie[ae.XRANGEPLAINLOOSE]})\\s+-\\s+(${ie[ae.XRANGEPLAINLOOSE]})\\s*$`);Xe("STAR","(<|>)?=?\\s*\\*");Xe("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Xe("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var TS=b((C$t,foe)=>{"use strict";var t8e=Object.freeze({loose:!0}),r8e=Object.freeze({}),n8e=i(t=>t?typeof t!="object"?t8e:t:r8e,"parseOptions");foe.exports=n8e});var j1=b((x$t,goe)=>{"use strict";var Aoe=/^[0-9]+$/,hoe=i((t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:thoe(e,t),"rcompareIdentifiers");goe.exports={compareIdentifiers:hoe,rcompareIdentifiers:s8e}});var zn=b((b$t,Eoe)=>{"use strict";var PS=rC(),{MAX_LENGTH:yoe,MAX_SAFE_INTEGER:vS}=tC(),{safeRe:_S,t:QS}=sh(),o8e=TS(),{compareIdentifiers:J1}=j1(),K1=class t{static{i(this,"SemVer")}constructor(e,r){if(r=o8e(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>yoe)throw new TypeError(`version is longer than ${yoe} characters`);PS("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?_S[QS.LOOSE]:_S[QS.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>vS||this.major<0)throw new TypeError("Invalid major version");if(this.minor>vS||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>vS||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(PS("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return J1(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(PS("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return J1(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?_S[QS.PRERELEASELOOSE]:_S[QS.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),J1(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Eoe.exports=K1});var um=b((B$t,Ioe)=>{"use strict";var Coe=zn(),i8e=i((t,e,r=!1)=>{if(t instanceof Coe)return t;try{return new Coe(t,e)}catch(n){if(!r)return null;throw n}},"parse");Ioe.exports=i8e});var woe=b((N$t,xoe)=>{"use strict";var a8e=um(),c8e=i((t,e)=>{let r=a8e(t,e);return r?r.version:null},"valid");xoe.exports=c8e});var Soe=b((P$t,boe)=>{"use strict";var l8e=um(),u8e=i((t,e)=>{let r=l8e(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null},"clean");boe.exports=u8e});var Noe=b((_$t,Roe)=>{"use strict";var Boe=zn(),d8e=i((t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new Boe(t instanceof Boe?t.version:t,r).inc(e,n,s).version}catch{return null}},"inc");Roe.exports=d8e});var voe=b((D$t,Poe)=>{"use strict";var Toe=um(),p8e=i((t,e)=>{let r=Toe(t,null,!0),n=Toe(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,a=o?r:n,c=o?n:r,l=!!a.prerelease.length;if(!!c.prerelease.length&&!l){if(!c.patch&&!c.minor)return"major";if(c.compareMain(a)===0)return c.minor&&!c.patch?"minor":"patch"}let d=l?"pre":"";return r.major!==n.major?d+"major":r.minor!==n.minor?d+"minor":r.patch!==n.patch?d+"patch":"prerelease"},"diff");Poe.exports=p8e});var Qoe=b((L$t,_oe)=>{"use strict";var m8e=zn(),f8e=i((t,e)=>new m8e(t,e).major,"major");_oe.exports=f8e});var koe=b((M$t,Doe)=>{"use strict";var A8e=zn(),h8e=i((t,e)=>new A8e(t,e).minor,"minor");Doe.exports=h8e});var Ooe=b((U$t,Loe)=>{"use strict";var g8e=zn(),y8e=i((t,e)=>new g8e(t,e).patch,"patch");Loe.exports=y8e});var Foe=b(($$t,Moe)=>{"use strict";var E8e=um(),C8e=i((t,e)=>{let r=E8e(t,e);return r&&r.prerelease.length?r.prerelease:null},"prerelease");Moe.exports=C8e});var ci=b((H$t,qoe)=>{"use strict";var Uoe=zn(),I8e=i((t,e,r)=>new Uoe(t,r).compare(new Uoe(e,r)),"compare");qoe.exports=I8e});var Goe=b((V$t,$oe)=>{"use strict";var x8e=ci(),w8e=i((t,e,r)=>x8e(e,t,r),"rcompare");$oe.exports=w8e});var zoe=b((W$t,Hoe)=>{"use strict";var b8e=ci(),S8e=i((t,e)=>b8e(t,e,!0),"compareLoose");Hoe.exports=S8e});var DS=b((J$t,Yoe)=>{"use strict";var Voe=zn(),B8e=i((t,e,r)=>{let n=new Voe(t,r),s=new Voe(e,r);return n.compare(s)||n.compareBuild(s)},"compareBuild");Yoe.exports=B8e});var joe=b((X$t,Woe)=>{"use strict";var R8e=DS(),N8e=i((t,e)=>t.sort((r,n)=>R8e(r,n,e)),"sort");Woe.exports=N8e});var Koe=b((eGt,Joe)=>{"use strict";var T8e=DS(),P8e=i((t,e)=>t.sort((r,n)=>T8e(n,r,e)),"rsort");Joe.exports=P8e});var nC=b((rGt,Xoe)=>{"use strict";var v8e=ci(),_8e=i((t,e,r)=>v8e(t,e,r)>0,"gt");Xoe.exports=_8e});var kS=b((sGt,Zoe)=>{"use strict";var Q8e=ci(),D8e=i((t,e,r)=>Q8e(t,e,r)<0,"lt");Zoe.exports=D8e});var X1=b((iGt,eie)=>{"use strict";var k8e=ci(),L8e=i((t,e,r)=>k8e(t,e,r)===0,"eq");eie.exports=L8e});var Z1=b((cGt,tie)=>{"use strict";var O8e=ci(),M8e=i((t,e,r)=>O8e(t,e,r)!==0,"neq");tie.exports=M8e});var LS=b((uGt,rie)=>{"use strict";var F8e=ci(),U8e=i((t,e,r)=>F8e(t,e,r)>=0,"gte");rie.exports=U8e});var OS=b((pGt,nie)=>{"use strict";var q8e=ci(),$8e=i((t,e,r)=>q8e(t,e,r)<=0,"lte");nie.exports=$8e});var eU=b((fGt,sie)=>{"use strict";var G8e=X1(),H8e=Z1(),z8e=nC(),V8e=LS(),Y8e=kS(),W8e=OS(),j8e=i((t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return G8e(t,r,n);case"!=":return H8e(t,r,n);case">":return z8e(t,r,n);case">=":return V8e(t,r,n);case"<":return Y8e(t,r,n);case"<=":return W8e(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}},"cmp");sie.exports=j8e});var iie=b((hGt,oie)=>{"use strict";var J8e=zn(),K8e=um(),{safeRe:MS,t:FS}=sh(),X8e=i((t,e)=>{if(t instanceof J8e)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?MS[FS.COERCEFULL]:MS[FS.COERCE]);else{let l=e.includePrerelease?MS[FS.COERCERTLFULL]:MS[FS.COERCERTL],u;for(;(u=l.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),l.lastIndex=u.index+u[1].length+u[2].length;l.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",c=e.includePrerelease&&r[6]?`+${r[6]}`:"";return K8e(`${n}.${s}.${o}${a}${c}`,e)},"coerce");oie.exports=X8e});var cie=b((yGt,aie)=>{"use strict";var tU=class{static{i(this,"LRUCache")}constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};aie.exports=tU});var li=b((CGt,pie)=>{"use strict";var Z8e=/\s+/g,rU=class t{static{i(this,"Range")}constructor(e,r){if(r=tje(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof nU)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(Z8e," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!uie(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&cje(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){let n=((this.options.includePrerelease&&ije)|(this.options.loose&&aje))+":"+e,s=lie.get(n);if(s)return s;let o=this.options.loose,a=o?fs[Vn.HYPHENRANGELOOSE]:fs[Vn.HYPHENRANGE];e=e.replace(a,yje(this.options.includePrerelease)),Yt("hyphen replace",e),e=e.replace(fs[Vn.COMPARATORTRIM],nje),Yt("comparator trim",e),e=e.replace(fs[Vn.TILDETRIM],sje),Yt("tilde trim",e),e=e.replace(fs[Vn.CARETTRIM],oje),Yt("caret trim",e);let c=e.split(" ").map(p=>lje(p,this.options)).join(" ").split(/\s+/).map(p=>gje(p,this.options));o&&(c=c.filter(p=>(Yt("loose invalid filter",p,this.options),!!p.match(fs[Vn.COMPARATORLOOSE])))),Yt("range list",c);let l=new Map,u=c.map(p=>new nU(p,this.options));for(let p of u){if(uie(p))return[p];l.set(p.value,p)}l.size>1&&l.has("")&&l.delete("");let d=[...l.values()];return lie.set(n,d),d}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>die(n,r)&&e.set.some(s=>die(s,r)&&n.every(o=>s.every(a=>o.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new rje(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0","isNullSet"),cje=i(t=>t.value==="","isAny"),die=i((t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},"isSatisfiable"),lje=i((t,e)=>(t=t.replace(fs[Vn.BUILD],""),Yt("comp",t,e),t=pje(t,e),Yt("caret",t),t=uje(t,e),Yt("tildes",t),t=fje(t,e),Yt("xrange",t),t=hje(t,e),Yt("stars",t),t),"parseComparator"),As=i(t=>!t||t.toLowerCase()==="x"||t==="*","isX"),uje=i((t,e)=>t.trim().split(/\s+/).map(r=>dje(r,e)).join(" "),"replaceTildes"),dje=i((t,e)=>{let r=e.loose?fs[Vn.TILDELOOSE]:fs[Vn.TILDE];return t.replace(r,(n,s,o,a,c)=>{Yt("tilde",t,n,s,o,a,c);let l;return As(s)?l="":As(o)?l=`>=${s}.0.0 <${+s+1}.0.0-0`:As(a)?l=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:c?(Yt("replaceTilde pr",c),l=`>=${s}.${o}.${a}-${c} <${s}.${+o+1}.0-0`):l=`>=${s}.${o}.${a} <${s}.${+o+1}.0-0`,Yt("tilde return",l),l})},"replaceTilde"),pje=i((t,e)=>t.trim().split(/\s+/).map(r=>mje(r,e)).join(" "),"replaceCarets"),mje=i((t,e)=>{Yt("caret",t,e);let r=e.loose?fs[Vn.CARETLOOSE]:fs[Vn.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,a,c,l)=>{Yt("caret",t,s,o,a,c,l);let u;return As(o)?u="":As(a)?u=`>=${o}.0.0${n} <${+o+1}.0.0-0`:As(c)?o==="0"?u=`>=${o}.${a}.0${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.0${n} <${+o+1}.0.0-0`:l?(Yt("replaceCaret pr",l),o==="0"?a==="0"?u=`>=${o}.${a}.${c}-${l} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}-${l} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c}-${l} <${+o+1}.0.0-0`):(Yt("no pr"),o==="0"?a==="0"?u=`>=${o}.${a}.${c}${n} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c} <${+o+1}.0.0-0`),Yt("caret return",u),u})},"replaceCaret"),fje=i((t,e)=>(Yt("replaceXRanges",t,e),t.split(/\s+/).map(r=>Aje(r,e)).join(" ")),"replaceXRanges"),Aje=i((t,e)=>{t=t.trim();let r=e.loose?fs[Vn.XRANGELOOSE]:fs[Vn.XRANGE];return t.replace(r,(n,s,o,a,c,l)=>{Yt("xRange",t,n,s,o,a,c,l);let u=As(o),d=u||As(a),p=d||As(c),m=p;return s==="="&&m&&(s=""),l=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&m?(d&&(a=0),c=0,s===">"?(s=">=",d?(o=+o+1,a=0,c=0):(a=+a+1,c=0)):s==="<="&&(s="<",d?o=+o+1:a=+a+1),s==="<"&&(l="-0"),n=`${s+o}.${a}.${c}${l}`):d?n=`>=${o}.0.0${l} <${+o+1}.0.0-0`:p&&(n=`>=${o}.${a}.0${l} <${o}.${+a+1}.0-0`),Yt("xRange return",n),n})},"replaceXRange"),hje=i((t,e)=>(Yt("replaceStars",t,e),t.trim().replace(fs[Vn.STAR],"")),"replaceStars"),gje=i((t,e)=>(Yt("replaceGTE0",t,e),t.trim().replace(fs[e.includePrerelease?Vn.GTE0PRE:Vn.GTE0],"")),"replaceGTE0"),yje=i(t=>(e,r,n,s,o,a,c,l,u,d,p,m)=>(As(n)?r="":As(s)?r=`>=${n}.0.0${t?"-0":""}`:As(o)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,As(u)?l="":As(d)?l=`<${+u+1}.0.0-0`:As(p)?l=`<${u}.${+d+1}.0-0`:m?l=`<=${u}.${d}.${p}-${m}`:t?l=`<${u}.${d}.${+p+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),"hyphenReplace"),Eje=i((t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0},"testSet")});var sC=b((xGt,yie)=>{"use strict";var oC=Symbol("SemVer ANY"),iU=class t{static{i(this,"Comparator")}static get ANY(){return oC}constructor(e,r){if(r=mie(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),oU("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===oC?this.value="":this.value=this.operator+this.semver.version,oU("comp",this)}parse(e){let r=this.options.loose?fie[Aie.COMPARATORLOOSE]:fie[Aie.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new hie(n[2],this.options.loose):this.semver=oC}toString(){return this.value}test(e){if(oU("Comparator.test",e,this.options.loose),this.semver===oC||e===oC)return!0;if(typeof e=="string")try{e=new hie(e,this.options)}catch{return!1}return sU(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new gie(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new gie(this.value,r).test(e.semver):(r=mie(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||sU(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||sU(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};yie.exports=iU;var mie=TS(),{safeRe:fie,t:Aie}=sh(),sU=eU(),oU=rC(),hie=zn(),gie=li()});var iC=b((bGt,Eie)=>{"use strict";var Cje=li(),Ije=i((t,e,r)=>{try{e=new Cje(e,r)}catch{return!1}return e.test(t)},"satisfies");Eie.exports=Ije});var Iie=b((BGt,Cie)=>{"use strict";var xje=li(),wje=i((t,e)=>new xje(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" ")),"toComparators");Cie.exports=wje});var wie=b((NGt,xie)=>{"use strict";var bje=zn(),Sje=li(),Bje=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new Sje(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new bje(n,r))}),n},"maxSatisfying");xie.exports=Bje});var Sie=b((PGt,bie)=>{"use strict";var Rje=zn(),Nje=li(),Tje=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new Nje(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new Rje(n,r))}),n},"minSatisfying");bie.exports=Tje});var Nie=b((_Gt,Rie)=>{"use strict";var aU=zn(),Pje=li(),Bie=nC(),vje=i((t,e)=>{t=new Pje(t,e);let r=new aU("0.0.0");if(t.test(r)||(r=new aU("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let c=new aU(a.semver.version);switch(a.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!o||Bie(c,o))&&(o=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),o&&(!r||Bie(r,o))&&(r=o)}return r&&t.test(r)?r:null},"minVersion");Rie.exports=vje});var Pie=b((DGt,Tie)=>{"use strict";var _je=li(),Qje=i((t,e)=>{try{return new _je(t,e).range||"*"}catch{return null}},"validRange");Tie.exports=Qje});var US=b((LGt,Die)=>{"use strict";var Dje=zn(),Qie=sC(),{ANY:kje}=Qie,Lje=li(),Oje=iC(),vie=nC(),_ie=kS(),Mje=OS(),Fje=LS(),Uje=i((t,e,r,n)=>{t=new Dje(t,n),e=new Lje(e,n);let s,o,a,c,l;switch(r){case">":s=vie,o=Mje,a=_ie,c=">",l=">=";break;case"<":s=_ie,o=Fje,a=vie,c="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Oje(t,e,n))return!1;for(let u=0;u{f.semver===kje&&(f=new Qie(">=0.0.0")),p=p||f,m=m||f,s(f.semver,p.semver,n)?p=f:a(f.semver,m.semver,n)&&(m=f)}),p.operator===c||p.operator===l||(!m.operator||m.operator===c)&&o(t,m.semver))return!1;if(m.operator===l&&a(t,m.semver))return!1}return!0},"outside");Die.exports=Uje});var Lie=b((MGt,kie)=>{"use strict";var qje=US(),$je=i((t,e,r)=>qje(t,e,">",r),"gtr");kie.exports=$je});var Mie=b((UGt,Oie)=>{"use strict";var Gje=US(),Hje=i((t,e,r)=>Gje(t,e,"<",r),"ltr");Oie.exports=Hje});var qie=b(($Gt,Uie)=>{"use strict";var Fie=li(),zje=i((t,e,r)=>(t=new Fie(t,r),e=new Fie(e,r),t.intersects(e,r)),"intersects");Uie.exports=zje});var Gie=b((HGt,$ie)=>{"use strict";var Vje=iC(),Yje=ci();$ie.exports=(t,e,r)=>{let n=[],s=null,o=null,a=t.sort((d,p)=>Yje(d,p,r));for(let d of a)Vje(d,e,r)?(o=d,s||(s=d)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let c=[];for(let[d,p]of n)d===p?c.push(d):!p&&d===a[0]?c.push("*"):p?d===a[0]?c.push(`<=${p}`):c.push(`${d} - ${p}`):c.push(`>=${d}`);let l=c.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return l.length{"use strict";var Hie=li(),lU=sC(),{ANY:cU}=lU,aC=iC(),uU=ci(),Wje=i((t,e,r={})=>{if(t===e)return!0;t=new Hie(t,r),e=new Hie(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let a=Jje(s,o,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},"subset"),jje=[new lU(">=0.0.0-0")],zie=[new lU(">=0.0.0")],Jje=i((t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===cU){if(e.length===1&&e[0].semver===cU)return!0;r.includePrerelease?t=jje:t=zie}if(e.length===1&&e[0].semver===cU){if(r.includePrerelease)return!0;e=zie}let n=new Set,s,o;for(let f of t)f.operator===">"||f.operator===">="?s=Vie(s,f,r):f.operator==="<"||f.operator==="<="?o=Yie(o,f,r):n.add(f.semver);if(n.size>1)return null;let a;if(s&&o){if(a=uU(s.semver,o.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let f of n){if(s&&!aC(f,String(s),r)||o&&!aC(f,String(o),r))return null;for(let g of e)if(!aC(f,String(g),r))return!1;return!0}let c,l,u,d,p=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,m=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;p&&p.prerelease.length===1&&o.operator==="<"&&p.prerelease[0]===0&&(p=!1);for(let f of e){if(d=d||f.operator===">"||f.operator===">=",u=u||f.operator==="<"||f.operator==="<=",s){if(m&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===m.major&&f.semver.minor===m.minor&&f.semver.patch===m.patch&&(m=!1),f.operator===">"||f.operator===">="){if(c=Vie(s,f,r),c===f&&c!==s)return!1}else if(s.operator===">="&&!aC(s.semver,String(f),r))return!1}if(o){if(p&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===p.major&&f.semver.minor===p.minor&&f.semver.patch===p.patch&&(p=!1),f.operator==="<"||f.operator==="<="){if(l=Yie(o,f,r),l===f&&l!==o)return!1}else if(o.operator==="<="&&!aC(o.semver,String(f),r))return!1}if(!f.operator&&(o||s)&&a!==0)return!1}return!(s&&u&&!o&&a!==0||o&&d&&!s&&a!==0||m||p)},"simpleSubset"),Vie=i((t,e,r)=>{if(!t)return e;let n=uU(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},"higherGT"),Yie=i((t,e,r)=>{if(!t)return e;let n=uU(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t},"lowerLT");Wie.exports=Wje});var pU=b((YGt,Xie)=>{"use strict";var dU=sh(),Jie=tC(),Kje=zn(),Kie=j1(),Xje=um(),Zje=woe(),eJe=Soe(),tJe=Noe(),rJe=voe(),nJe=Qoe(),sJe=koe(),oJe=Ooe(),iJe=Foe(),aJe=ci(),cJe=Goe(),lJe=zoe(),uJe=DS(),dJe=joe(),pJe=Koe(),mJe=nC(),fJe=kS(),AJe=X1(),hJe=Z1(),gJe=LS(),yJe=OS(),EJe=eU(),CJe=iie(),IJe=sC(),xJe=li(),wJe=iC(),bJe=Iie(),SJe=wie(),BJe=Sie(),RJe=Nie(),NJe=Pie(),TJe=US(),PJe=Lie(),vJe=Mie(),_Je=qie(),QJe=Gie(),DJe=jie();Xie.exports={parse:Xje,valid:Zje,clean:eJe,inc:tJe,diff:rJe,major:nJe,minor:sJe,patch:oJe,prerelease:iJe,compare:aJe,rcompare:cJe,compareLoose:lJe,compareBuild:uJe,sort:dJe,rsort:pJe,gt:mJe,lt:fJe,eq:AJe,neq:hJe,gte:gJe,lte:yJe,cmp:EJe,coerce:CJe,Comparator:IJe,Range:xJe,satisfies:wJe,toComparators:bJe,maxSatisfying:SJe,minSatisfying:BJe,minVersion:RJe,validRange:NJe,outside:TJe,gtr:PJe,ltr:vJe,intersects:_Je,simplifyRange:QJe,subset:DJe,SemVer:Kje,re:dU.re,src:dU.src,tokens:dU.t,SEMVER_SPEC_VERSION:Jie.SEMVER_SPEC_VERSION,RELEASE_TYPES:Jie.RELEASE_TYPES,compareIdentifiers:Kie.compareIdentifiers,rcompareIdentifiers:Kie.rcompareIdentifiers}});var mae=b((XHt,pae)=>{pae.exports=function(t,e){for(var r=[],n=0;n{"use strict";gae.exports=Aae;function Aae(t,e,r){t instanceof RegExp&&(t=fae(t,r)),e instanceof RegExp&&(e=fae(e,r));var n=hae(t,e,r);return n&&{start:n[0],end:n[1],pre:r.slice(0,n[0]),body:r.slice(n[0]+t.length,n[1]),post:r.slice(n[1]+e.length)}}i(Aae,"balanced");function fae(t,e){var r=e.match(t);return r?r[0]:null}i(fae,"maybeMatch");Aae.range=hae;function hae(t,e,r){var n,s,o,a,c,l=r.indexOf(t),u=r.indexOf(e,l+1),d=l;if(l>=0&&u>0){if(t===e)return[l,u];for(n=[],o=r.length;d>=0&&!c;)d==l?(n.push(d),l=r.indexOf(t,d+1)):n.length==1?c=[n.pop(),u]:(s=n.pop(),s=0?l:u;n.length&&(c=[o,a])}return c}i(hae,"range")});var Bae=b((tzt,Sae)=>{var KJe=mae(),Eae=yae();Sae.exports=e5e;var Cae="\0SLASH"+Math.random()+"\0",Iae="\0OPEN"+Math.random()+"\0",wU="\0CLOSE"+Math.random()+"\0",xae="\0COMMA"+Math.random()+"\0",wae="\0PERIOD"+Math.random()+"\0";function xU(t){return parseInt(t,10)==t?parseInt(t,10):t.charCodeAt(0)}i(xU,"numeric");function XJe(t){return t.split("\\\\").join(Cae).split("\\{").join(Iae).split("\\}").join(wU).split("\\,").join(xae).split("\\.").join(wae)}i(XJe,"escapeBraces");function ZJe(t){return t.split(Cae).join("\\").split(Iae).join("{").split(wU).join("}").split(xae).join(",").split(wae).join(".")}i(ZJe,"unescapeBraces");function bae(t){if(!t)return[""];var e=[],r=Eae("{","}",t);if(!r)return t.split(",");var n=r.pre,s=r.body,o=r.post,a=n.split(",");a[a.length-1]+="{"+s+"}";var c=bae(o);return o.length&&(a[a.length-1]+=c.shift(),a.push.apply(a,c)),e.push.apply(e,a),e}i(bae,"parseCommaParts");function e5e(t){return t?(t.substr(0,2)==="{}"&&(t="\\{\\}"+t.substr(2)),ih(XJe(t),!0).map(ZJe)):[]}i(e5e,"expandTop");function t5e(t){return"{"+t+"}"}i(t5e,"embrace");function r5e(t){return/^-?0\d/.test(t)}i(r5e,"isPadded");function n5e(t,e){return t<=e}i(n5e,"lte");function s5e(t,e){return t>=e}i(s5e,"gte");function ih(t,e){var r=[],n=Eae("{","}",t);if(!n||/\$$/.test(n.pre))return[t];var s=/^-?\d+\.\.-?\d+(?:\.\.-?\d+)?$/.test(n.body),o=/^[a-zA-Z]\.\.[a-zA-Z](?:\.\.-?\d+)?$/.test(n.body),a=s||o,c=n.body.indexOf(",")>=0;if(!a&&!c)return n.post.match(/,(?!,).*\}/)?(t=n.pre+"{"+n.body+wU+n.post,ih(t)):[t];var l;if(a)l=n.body.split(/\.\./);else if(l=bae(n.body),l.length===1&&(l=ih(l[0],!1).map(t5e),l.length===1)){var d=n.post.length?ih(n.post,!1):[""];return d.map(function(se){return n.pre+l[0]+se})}var u=n.pre,d=n.post.length?ih(n.post,!1):[""],p;if(a){var m=xU(l[0]),f=xU(l[1]),g=Math.max(l[0].length,l[1].length),E=l.length==3?Math.max(Math.abs(xU(l[2])),1):1,x=n5e,w=f0){var M=new Array(q+1).join("0");P<0?Q="-"+M+Q.slice(1):Q=M+Q}}p.push(Q)}}else p=KJe(l,function(Re){return ih(Re,!1)});for(var V=0;V{vae.exports=No;No.Minimatch=Wr;var pC=(function(){try{return require("path")}catch{}})()||{sep:"/"};No.sep=pC.sep;var dm=No.GLOBSTAR=Wr.GLOBSTAR={},o5e=Bae(),Rae={"!":{open:"(?:(?!(?:",close:"))[^/]*?)"},"?":{open:"(?:",close:")?"},"+":{open:"(?:",close:")+"},"*":{open:"(?:",close:")*"},"@":{open:"(?:",close:")"}},bU="[^/]",SU=bU+"*?",i5e="(?:(?!(?:\\/|^)(?:\\.{1,2})($|\\/)).)*?",a5e="(?:(?!(?:\\/|^)\\.).)*?",Nae=c5e("().*{}+?[]^$\\!");function c5e(t){return t.split("").reduce(function(e,r){return e[r]=!0,e},{})}i(c5e,"charSet");var Tae=/\/+/;No.filter=l5e;function l5e(t,e){return e=e||{},function(r,n,s){return No(r,t,e)}}i(l5e,"filter");function fd(t,e){e=e||{};var r={};return Object.keys(t).forEach(function(n){r[n]=t[n]}),Object.keys(e).forEach(function(n){r[n]=e[n]}),r}i(fd,"ext");No.defaults=function(t){if(!t||typeof t!="object"||!Object.keys(t).length)return No;var e=No,r=i(function(s,o,a){return e(s,o,fd(t,a))},"minimatch");return r.Minimatch=i(function(s,o){return new e.Minimatch(s,fd(t,o))},"Minimatch"),r.Minimatch.defaults=i(function(s){return e.defaults(fd(t,s)).Minimatch},"defaults"),r.filter=i(function(s,o){return e.filter(s,fd(t,o))},"filter"),r.defaults=i(function(s){return e.defaults(fd(t,s))},"defaults"),r.makeRe=i(function(s,o){return e.makeRe(s,fd(t,o))},"makeRe"),r.braceExpand=i(function(s,o){return e.braceExpand(s,fd(t,o))},"braceExpand"),r.match=function(n,s,o){return e.match(n,s,fd(t,o))},r};Wr.defaults=function(t){return No.defaults(t).Minimatch};function No(t,e,r){return zS(e),r||(r={}),!r.nocomment&&e.charAt(0)==="#"?!1:new Wr(e,r).match(t)}i(No,"minimatch");function Wr(t,e){if(!(this instanceof Wr))return new Wr(t,e);zS(t),e||(e={}),t=t.trim(),!e.allowWindowsEscape&&pC.sep!=="/"&&(t=t.split(pC.sep).join("/")),this.options=e,this.maxGlobstarRecursion=e.maxGlobstarRecursion!==void 0?e.maxGlobstarRecursion:200,this.set=[],this.pattern=t,this.regexp=null,this.negate=!1,this.comment=!1,this.empty=!1,this.partial=!!e.partial,this.make()}i(Wr,"Minimatch");Wr.prototype.debug=function(){};Wr.prototype.make=u5e;function u5e(){var t=this.pattern,e=this.options;if(!e.nocomment&&t.charAt(0)==="#"){this.comment=!0;return}if(!t){this.empty=!0;return}this.parseNegate();var r=this.globSet=this.braceExpand();e.debug&&(this.debug=i(function(){console.error.apply(console,arguments)},"debug")),this.debug(this.pattern,r),r=this.globParts=r.map(function(n){return n.split(Tae)}),this.debug(this.pattern,r),r=r.map(function(n,s,o){return n.map(this.parse,this)},this),this.debug(this.pattern,r),r=r.filter(function(n){return n.indexOf(!1)===-1}),this.debug(this.pattern,r),this.set=r}i(u5e,"make");Wr.prototype.parseNegate=d5e;function d5e(){var t=this.pattern,e=!1,r=this.options,n=0;if(!r.nonegate){for(var s=0,o=t.length;s"u"?this.pattern:t,zS(t),e.nobrace||!/\{(?:(?!\{).)*\}/.test(t)?[t]:o5e(t)}i(Pae,"braceExpand");var p5e=1024*64,zS=i(function(t){if(typeof t!="string")throw new TypeError("invalid pattern");if(t.length>p5e)throw new TypeError("pattern is too long")},"assertValidPattern");Wr.prototype.parse=m5e;var HS={};function m5e(t,e){zS(t);var r=this.options;if(t==="**")if(r.noglobstar)t="*";else return dm;if(t==="")return"";var n="",s=!!r.nocase,o=!1,a=[],c=[],l,u=!1,d=-1,p=-1,m=t.charAt(0)==="."?"":r.dot?"(?!(?:^|\\/)\\.{1,2}(?:$|\\/))":"(?!\\.)",f=this;function g(){if(l){switch(l){case"*":n+=SU,s=!0;break;case"?":n+=bU,s=!0;break;default:n+="\\"+l;break}f.debug("clearStateChar %j %j",l,n),l=!1}}i(g,"clearStateChar");for(var E=0,x=t.length,w;E-1;pe--){var ke=c[pe],Re=n.slice(0,ke.reStart),se=n.slice(ke.reStart,ke.reEnd-8),ye=n.slice(ke.reEnd-8,ke.reEnd),H=n.slice(ke.reEnd);ye+=H;var oe=Re.split("(").length-1,It=H;for(E=0;E"u"&&(r=this.partial),this.debug("match",e,this.pattern),this.comment)return!1;if(this.empty)return e==="";if(e==="/"&&r)return!0;var n=this.options;pC.sep!=="/"&&(e=e.split(pC.sep).join("/")),e=e.split(Tae),this.debug(this.pattern,"split",e);var s=this.set;this.debug(this.pattern,"set",s);var o,a;for(a=e.length-1;a>=0&&(o=e[a],!o);a--);for(a=0;a=0;o--)if(e[o]===dm){c=o;break}var l=e.slice(s,a),u=r?e.slice(a+1):e.slice(a+1,c),d=r?[]:e.slice(c+1);if(l.length){var p=t.slice(n,n+l.length);if(!this._matchOne(p,l,r,0,0))return!1;n+=l.length}var m=0;if(d.length){if(d.length+n>t.length)return!1;var f=t.length-d.length;if(this._matchOne(t,d,r,f,0))m=d.length;else{if(t[t.length-1]!==""||n+d.length===t.length||(f--,!this._matchOne(t,d,r,f,0)))return!1;m=d.length+1}}if(!u.length){var g=!!m;for(o=n;o{"use strict";var b5e="2.0.0",S5e=Number.MAX_SAFE_INTEGER||9007199254740991,B5e=16,R5e=250,N5e=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Lae.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:B5e,MAX_SAFE_BUILD_LENGTH:R5e,MAX_SAFE_INTEGER:S5e,RELEASE_TYPES:N5e,SEMVER_SPEC_VERSION:b5e,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var AC=b((Bzt,Oae)=>{"use strict";var T5e=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Oae.exports=T5e});var dh=b((ec,Mae)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:RU,MAX_SAFE_BUILD_LENGTH:P5e,MAX_LENGTH:v5e}=uh(),_5e=AC();ec=Mae.exports={};var Q5e=ec.re=[],D5e=ec.safeRe=[],ce=ec.src=[],k5e=ec.safeSrc=[],le=ec.t={},L5e=0,NU="[a-zA-Z0-9-]",O5e=[["\\s",1],["\\d",v5e],[NU,P5e]],M5e=i(t=>{for(let[e,r]of O5e)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},"makeSafeRegex"),Ze=i((t,e,r)=>{let n=M5e(e),s=L5e++;_5e(t,s,e),le[t]=s,ce[s]=e,k5e[s]=n,Q5e[s]=new RegExp(e,r?"g":void 0),D5e[s]=new RegExp(n,r?"g":void 0)},"createToken");Ze("NUMERICIDENTIFIER","0|[1-9]\\d*");Ze("NUMERICIDENTIFIERLOOSE","\\d+");Ze("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${NU}*`);Ze("MAINVERSION",`(${ce[le.NUMERICIDENTIFIER]})\\.(${ce[le.NUMERICIDENTIFIER]})\\.(${ce[le.NUMERICIDENTIFIER]})`);Ze("MAINVERSIONLOOSE",`(${ce[le.NUMERICIDENTIFIERLOOSE]})\\.(${ce[le.NUMERICIDENTIFIERLOOSE]})\\.(${ce[le.NUMERICIDENTIFIERLOOSE]})`);Ze("PRERELEASEIDENTIFIER",`(?:${ce[le.NONNUMERICIDENTIFIER]}|${ce[le.NUMERICIDENTIFIER]})`);Ze("PRERELEASEIDENTIFIERLOOSE",`(?:${ce[le.NONNUMERICIDENTIFIER]}|${ce[le.NUMERICIDENTIFIERLOOSE]})`);Ze("PRERELEASE",`(?:-(${ce[le.PRERELEASEIDENTIFIER]}(?:\\.${ce[le.PRERELEASEIDENTIFIER]})*))`);Ze("PRERELEASELOOSE",`(?:-?(${ce[le.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ce[le.PRERELEASEIDENTIFIERLOOSE]})*))`);Ze("BUILDIDENTIFIER",`${NU}+`);Ze("BUILD",`(?:\\+(${ce[le.BUILDIDENTIFIER]}(?:\\.${ce[le.BUILDIDENTIFIER]})*))`);Ze("FULLPLAIN",`v?${ce[le.MAINVERSION]}${ce[le.PRERELEASE]}?${ce[le.BUILD]}?`);Ze("FULL",`^${ce[le.FULLPLAIN]}$`);Ze("LOOSEPLAIN",`[v=\\s]*${ce[le.MAINVERSIONLOOSE]}${ce[le.PRERELEASELOOSE]}?${ce[le.BUILD]}?`);Ze("LOOSE",`^${ce[le.LOOSEPLAIN]}$`);Ze("GTLT","((?:<|>)?=?)");Ze("XRANGEIDENTIFIERLOOSE",`${ce[le.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);Ze("XRANGEIDENTIFIER",`${ce[le.NUMERICIDENTIFIER]}|x|X|\\*`);Ze("XRANGEPLAIN",`[v=\\s]*(${ce[le.XRANGEIDENTIFIER]})(?:\\.(${ce[le.XRANGEIDENTIFIER]})(?:\\.(${ce[le.XRANGEIDENTIFIER]})(?:${ce[le.PRERELEASE]})?${ce[le.BUILD]}?)?)?`);Ze("XRANGEPLAINLOOSE",`[v=\\s]*(${ce[le.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ce[le.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ce[le.XRANGEIDENTIFIERLOOSE]})(?:${ce[le.PRERELEASELOOSE]})?${ce[le.BUILD]}?)?)?`);Ze("XRANGE",`^${ce[le.GTLT]}\\s*${ce[le.XRANGEPLAIN]}$`);Ze("XRANGELOOSE",`^${ce[le.GTLT]}\\s*${ce[le.XRANGEPLAINLOOSE]}$`);Ze("COERCEPLAIN",`(^|[^\\d])(\\d{1,${RU}})(?:\\.(\\d{1,${RU}}))?(?:\\.(\\d{1,${RU}}))?`);Ze("COERCE",`${ce[le.COERCEPLAIN]}(?:$|[^\\d])`);Ze("COERCEFULL",ce[le.COERCEPLAIN]+`(?:${ce[le.PRERELEASE]})?(?:${ce[le.BUILD]})?(?:$|[^\\d])`);Ze("COERCERTL",ce[le.COERCE],!0);Ze("COERCERTLFULL",ce[le.COERCEFULL],!0);Ze("LONETILDE","(?:~>?)");Ze("TILDETRIM",`(\\s*)${ce[le.LONETILDE]}\\s+`,!0);ec.tildeTrimReplace="$1~";Ze("TILDE",`^${ce[le.LONETILDE]}${ce[le.XRANGEPLAIN]}$`);Ze("TILDELOOSE",`^${ce[le.LONETILDE]}${ce[le.XRANGEPLAINLOOSE]}$`);Ze("LONECARET","(?:\\^)");Ze("CARETTRIM",`(\\s*)${ce[le.LONECARET]}\\s+`,!0);ec.caretTrimReplace="$1^";Ze("CARET",`^${ce[le.LONECARET]}${ce[le.XRANGEPLAIN]}$`);Ze("CARETLOOSE",`^${ce[le.LONECARET]}${ce[le.XRANGEPLAINLOOSE]}$`);Ze("COMPARATORLOOSE",`^${ce[le.GTLT]}\\s*(${ce[le.LOOSEPLAIN]})$|^$`);Ze("COMPARATOR",`^${ce[le.GTLT]}\\s*(${ce[le.FULLPLAIN]})$|^$`);Ze("COMPARATORTRIM",`(\\s*)${ce[le.GTLT]}\\s*(${ce[le.LOOSEPLAIN]}|${ce[le.XRANGEPLAIN]})`,!0);ec.comparatorTrimReplace="$1$2$3";Ze("HYPHENRANGE",`^\\s*(${ce[le.XRANGEPLAIN]})\\s+-\\s+(${ce[le.XRANGEPLAIN]})\\s*$`);Ze("HYPHENRANGELOOSE",`^\\s*(${ce[le.XRANGEPLAINLOOSE]})\\s+-\\s+(${ce[le.XRANGEPLAINLOOSE]})\\s*$`);Ze("STAR","(<|>)?=?\\s*\\*");Ze("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");Ze("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var WS=b((Nzt,Fae)=>{"use strict";var F5e=Object.freeze({loose:!0}),U5e=Object.freeze({}),q5e=i(t=>t?typeof t!="object"?F5e:t:U5e,"parseOptions");Fae.exports=q5e});var TU=b((Pzt,$ae)=>{"use strict";var Uae=/^[0-9]+$/,qae=i((t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tqae(e,t),"rcompareIdentifiers");$ae.exports={compareIdentifiers:qae,rcompareIdentifiers:$5e}});var Nn=b((_zt,Hae)=>{"use strict";var jS=AC(),{MAX_LENGTH:Gae,MAX_SAFE_INTEGER:JS}=uh(),{safeRe:KS,t:XS}=dh(),G5e=WS(),{compareIdentifiers:PU}=TU(),vU=class t{static{i(this,"SemVer")}constructor(e,r){if(r=G5e(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>Gae)throw new TypeError(`version is longer than ${Gae} characters`);jS("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?KS[XS.LOOSE]:KS[XS.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>JS||this.major<0)throw new TypeError("Invalid major version");if(this.minor>JS||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>JS||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(jS("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return PU(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(jS("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return PU(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?KS[XS.PRERELEASELOOSE]:KS[XS.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),PU(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};Hae.exports=vU});var gd=b((Dzt,Vae)=>{"use strict";var zae=Nn(),H5e=i((t,e,r=!1)=>{if(t instanceof zae)return t;try{return new zae(t,e)}catch(n){if(!r)return null;throw n}},"parse");Vae.exports=H5e});var Wae=b((Lzt,Yae)=>{"use strict";var z5e=gd(),V5e=i((t,e)=>{let r=z5e(t,e);return r?r.version:null},"valid");Yae.exports=V5e});var Jae=b((Mzt,jae)=>{"use strict";var Y5e=gd(),W5e=i((t,e)=>{let r=Y5e(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null},"clean");jae.exports=W5e});var Zae=b((Uzt,Xae)=>{"use strict";var Kae=Nn(),j5e=i((t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new Kae(t instanceof Kae?t.version:t,r).inc(e,n,s).version}catch{return null}},"inc");Xae.exports=j5e});var rce=b(($zt,tce)=>{"use strict";var ece=gd(),J5e=i((t,e)=>{let r=ece(t,null,!0),n=ece(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,a=o?r:n,c=o?n:r,l=!!a.prerelease.length;if(!!c.prerelease.length&&!l){if(!c.patch&&!c.minor)return"major";if(c.compareMain(a)===0)return c.minor&&!c.patch?"minor":"patch"}let d=l?"pre":"";return r.major!==n.major?d+"major":r.minor!==n.minor?d+"minor":r.patch!==n.patch?d+"patch":"prerelease"},"diff");tce.exports=J5e});var sce=b((Hzt,nce)=>{"use strict";var K5e=Nn(),X5e=i((t,e)=>new K5e(t,e).major,"major");nce.exports=X5e});var ice=b((Vzt,oce)=>{"use strict";var Z5e=Nn(),e6e=i((t,e)=>new Z5e(t,e).minor,"minor");oce.exports=e6e});var cce=b((Wzt,ace)=>{"use strict";var t6e=Nn(),r6e=i((t,e)=>new t6e(t,e).patch,"patch");ace.exports=r6e});var uce=b((Jzt,lce)=>{"use strict";var n6e=gd(),s6e=i((t,e)=>{let r=n6e(t,e);return r&&r.prerelease.length?r.prerelease:null},"prerelease");lce.exports=s6e});var pi=b((Xzt,pce)=>{"use strict";var dce=Nn(),o6e=i((t,e,r)=>new dce(t,r).compare(new dce(e,r)),"compare");pce.exports=o6e});var fce=b((e3t,mce)=>{"use strict";var i6e=pi(),a6e=i((t,e,r)=>i6e(e,t,r),"rcompare");mce.exports=a6e});var hce=b((r3t,Ace)=>{"use strict";var c6e=pi(),l6e=i((t,e)=>c6e(t,e,!0),"compareLoose");Ace.exports=l6e});var ZS=b((s3t,yce)=>{"use strict";var gce=Nn(),u6e=i((t,e,r)=>{let n=new gce(t,r),s=new gce(e,r);return n.compare(s)||n.compareBuild(s)},"compareBuild");yce.exports=u6e});var Cce=b((i3t,Ece)=>{"use strict";var d6e=ZS(),p6e=i((t,e)=>t.sort((r,n)=>d6e(r,n,e)),"sort");Ece.exports=p6e});var xce=b((c3t,Ice)=>{"use strict";var m6e=ZS(),f6e=i((t,e)=>t.sort((r,n)=>m6e(n,r,e)),"rsort");Ice.exports=f6e});var hC=b((u3t,wce)=>{"use strict";var A6e=pi(),h6e=i((t,e,r)=>A6e(t,e,r)>0,"gt");wce.exports=h6e});var eB=b((p3t,bce)=>{"use strict";var g6e=pi(),y6e=i((t,e,r)=>g6e(t,e,r)<0,"lt");bce.exports=y6e});var _U=b((f3t,Sce)=>{"use strict";var E6e=pi(),C6e=i((t,e,r)=>E6e(t,e,r)===0,"eq");Sce.exports=C6e});var QU=b((h3t,Bce)=>{"use strict";var I6e=pi(),x6e=i((t,e,r)=>I6e(t,e,r)!==0,"neq");Bce.exports=x6e});var tB=b((y3t,Rce)=>{"use strict";var w6e=pi(),b6e=i((t,e,r)=>w6e(t,e,r)>=0,"gte");Rce.exports=b6e});var rB=b((C3t,Nce)=>{"use strict";var S6e=pi(),B6e=i((t,e,r)=>S6e(t,e,r)<=0,"lte");Nce.exports=B6e});var DU=b((x3t,Tce)=>{"use strict";var R6e=_U(),N6e=QU(),T6e=hC(),P6e=tB(),v6e=eB(),_6e=rB(),Q6e=i((t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return R6e(t,r,n);case"!=":return N6e(t,r,n);case">":return T6e(t,r,n);case">=":return P6e(t,r,n);case"<":return v6e(t,r,n);case"<=":return _6e(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}},"cmp");Tce.exports=Q6e});var vce=b((b3t,Pce)=>{"use strict";var D6e=Nn(),k6e=gd(),{safeRe:nB,t:sB}=dh(),L6e=i((t,e)=>{if(t instanceof D6e)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?nB[sB.COERCEFULL]:nB[sB.COERCE]);else{let l=e.includePrerelease?nB[sB.COERCERTLFULL]:nB[sB.COERCERTL],u;for(;(u=l.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),l.lastIndex=u.index+u[1].length+u[2].length;l.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",c=e.includePrerelease&&r[6]?`+${r[6]}`:"";return k6e(`${n}.${s}.${o}${a}${c}`,e)},"coerce");Pce.exports=L6e});var Qce=b((B3t,_ce)=>{"use strict";var O6e=gd(),M6e=uh(),F6e=Nn(),U6e=i((t,e,r)=>{if(!M6e.RELEASE_TYPES.includes(e))return null;let n=q6e(t,r);return n&&$6e(n,e)},"truncate"),q6e=i((t,e)=>{let r=t instanceof F6e?t.version:t;return O6e(r,e)},"cloneInputVersion"),$6e=i((t,e)=>{if(G6e(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},"doTruncation"),G6e=i(t=>t.startsWith("pre"),"isPrerelease");_ce.exports=U6e});var kce=b((N3t,Dce)=>{"use strict";var kU=class{static{i(this,"LRUCache")}constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Dce.exports=kU});var mi=b((P3t,Fce)=>{"use strict";var H6e=/\s+/g,LU=class t{static{i(this,"Range")}constructor(e,r){if(r=V6e(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof OU)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(H6e," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Oce(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&t9e(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(e9e,"");let n=((this.options.includePrerelease&&X6e)|(this.options.loose&&Z6e))+":"+e,s=Lce.get(n);if(s)return s;let o=this.options.loose,a=o?hs[Tn.HYPHENRANGELOOSE]:hs[Tn.HYPHENRANGE];e=e.replace(a,d9e(this.options.includePrerelease)),Wt("hyphen replace",e),e=e.replace(hs[Tn.COMPARATORTRIM],j6e),Wt("comparator trim",e),e=e.replace(hs[Tn.TILDETRIM],J6e),Wt("tilde trim",e),e=e.replace(hs[Tn.CARETTRIM],K6e),Wt("caret trim",e);let c=e.split(" ").map(p=>r9e(p,this.options)).join(" ").split(/\s+/).map(p=>u9e(p,this.options));o&&(c=c.filter(p=>(Wt("loose invalid filter",p,this.options),!!p.match(hs[Tn.COMPARATORLOOSE])))),Wt("range list",c);let l=new Map,u=c.map(p=>new OU(p,this.options));for(let p of u){if(Oce(p))return[p];l.set(p.value,p)}l.size>1&&l.has("")&&l.delete("");let d=[...l.values()];return Lce.set(n,d),d}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>Mce(n,r)&&e.set.some(s=>Mce(s,r)&&n.every(o=>s.every(a=>o.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new Y6e(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0","isNullSet"),t9e=i(t=>t.value==="","isAny"),Mce=i((t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},"isSatisfiable"),r9e=i((t,e)=>(t=t.replace(hs[Tn.BUILD],""),Wt("comp",t,e),t=o9e(t,e),Wt("caret",t),t=n9e(t,e),Wt("tildes",t),t=a9e(t,e),Wt("xrange",t),t=l9e(t,e),Wt("stars",t),t),"parseComparator"),gs=i(t=>!t||t.toLowerCase()==="x"||t==="*","isX"),n9e=i((t,e)=>t.trim().split(/\s+/).map(r=>s9e(r,e)).join(" "),"replaceTildes"),s9e=i((t,e)=>{let r=e.loose?hs[Tn.TILDELOOSE]:hs[Tn.TILDE];return t.replace(r,(n,s,o,a,c)=>{Wt("tilde",t,n,s,o,a,c);let l;return gs(s)?l="":gs(o)?l=`>=${s}.0.0 <${+s+1}.0.0-0`:gs(a)?l=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:c?(Wt("replaceTilde pr",c),l=`>=${s}.${o}.${a}-${c} <${s}.${+o+1}.0-0`):l=`>=${s}.${o}.${a} <${s}.${+o+1}.0-0`,Wt("tilde return",l),l})},"replaceTilde"),o9e=i((t,e)=>t.trim().split(/\s+/).map(r=>i9e(r,e)).join(" "),"replaceCarets"),i9e=i((t,e)=>{Wt("caret",t,e);let r=e.loose?hs[Tn.CARETLOOSE]:hs[Tn.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,a,c,l)=>{Wt("caret",t,s,o,a,c,l);let u;return gs(o)?u="":gs(a)?u=`>=${o}.0.0${n} <${+o+1}.0.0-0`:gs(c)?o==="0"?u=`>=${o}.${a}.0${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.0${n} <${+o+1}.0.0-0`:l?(Wt("replaceCaret pr",l),o==="0"?a==="0"?u=`>=${o}.${a}.${c}-${l} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}-${l} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c}-${l} <${+o+1}.0.0-0`):(Wt("no pr"),o==="0"?a==="0"?u=`>=${o}.${a}.${c}${n} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c} <${+o+1}.0.0-0`),Wt("caret return",u),u})},"replaceCaret"),a9e=i((t,e)=>(Wt("replaceXRanges",t,e),t.split(/\s+/).map(r=>c9e(r,e)).join(" ")),"replaceXRanges"),c9e=i((t,e)=>{t=t.trim();let r=e.loose?hs[Tn.XRANGELOOSE]:hs[Tn.XRANGE];return t.replace(r,(n,s,o,a,c,l)=>{Wt("xRange",t,n,s,o,a,c,l);let u=gs(o),d=u||gs(a),p=d||gs(c),m=p;return s==="="&&m&&(s=""),l=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&m?(d&&(a=0),c=0,s===">"?(s=">=",d?(o=+o+1,a=0,c=0):(a=+a+1,c=0)):s==="<="&&(s="<",d?o=+o+1:a=+a+1),s==="<"&&(l="-0"),n=`${s+o}.${a}.${c}${l}`):d?n=`>=${o}.0.0${l} <${+o+1}.0.0-0`:p&&(n=`>=${o}.${a}.0${l} <${o}.${+a+1}.0-0`),Wt("xRange return",n),n})},"replaceXRange"),l9e=i((t,e)=>(Wt("replaceStars",t,e),t.trim().replace(hs[Tn.STAR],"")),"replaceStars"),u9e=i((t,e)=>(Wt("replaceGTE0",t,e),t.trim().replace(hs[e.includePrerelease?Tn.GTE0PRE:Tn.GTE0],"")),"replaceGTE0"),d9e=i(t=>(e,r,n,s,o,a,c,l,u,d,p,m)=>(gs(n)?r="":gs(s)?r=`>=${n}.0.0${t?"-0":""}`:gs(o)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,gs(u)?l="":gs(d)?l=`<${+u+1}.0.0-0`:gs(p)?l=`<${u}.${+d+1}.0-0`:m?l=`<=${u}.${d}.${p}-${m}`:t?l=`<${u}.${d}.${+p+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),"hyphenReplace"),p9e=i((t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0},"testSet")});var gC=b((_3t,zce)=>{"use strict";var yC=Symbol("SemVer ANY"),UU=class t{static{i(this,"Comparator")}static get ANY(){return yC}constructor(e,r){if(r=Uce(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),FU("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===yC?this.value="":this.value=this.operator+this.semver.version,FU("comp",this)}parse(e){let r=this.options.loose?qce[$ce.COMPARATORLOOSE]:qce[$ce.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new Gce(n[2],this.options.loose):this.semver=yC}toString(){return this.value}test(e){if(FU("Comparator.test",e,this.options.loose),this.semver===yC||e===yC)return!0;if(typeof e=="string")try{e=new Gce(e,this.options)}catch{return!1}return MU(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new Hce(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new Hce(this.value,r).test(e.semver):(r=Uce(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||MU(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||MU(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};zce.exports=UU;var Uce=WS(),{safeRe:qce,t:$ce}=dh(),MU=DU(),FU=AC(),Gce=Nn(),Hce=mi()});var EC=b((D3t,Vce)=>{"use strict";var m9e=mi(),f9e=i((t,e,r)=>{try{e=new m9e(e,r)}catch{return!1}return e.test(t)},"satisfies");Vce.exports=f9e});var Wce=b((L3t,Yce)=>{"use strict";var A9e=mi(),h9e=i((t,e)=>new A9e(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" ")),"toComparators");Yce.exports=h9e});var Jce=b((M3t,jce)=>{"use strict";var g9e=Nn(),y9e=mi(),E9e=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new y9e(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new g9e(n,r))}),n},"maxSatisfying");jce.exports=E9e});var Xce=b((U3t,Kce)=>{"use strict";var C9e=Nn(),I9e=mi(),x9e=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new I9e(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new C9e(n,r))}),n},"minSatisfying");Kce.exports=x9e});var tle=b(($3t,ele)=>{"use strict";var qU=Nn(),w9e=mi(),Zce=hC(),b9e=i((t,e)=>{t=new w9e(t,e);let r=new qU("0.0.0");if(t.test(r)||(r=new qU("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let c=new qU(a.semver.version);switch(a.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!o||Zce(c,o))&&(o=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),o&&(!r||Zce(r,o))&&(r=o)}return r&&t.test(r)?r:null},"minVersion");ele.exports=b9e});var nle=b((H3t,rle)=>{"use strict";var S9e=mi(),B9e=i((t,e)=>{try{return new S9e(t,e).range||"*"}catch{return null}},"validRange");rle.exports=B9e});var oB=b((V3t,ale)=>{"use strict";var R9e=Nn(),ile=gC(),{ANY:N9e}=ile,T9e=mi(),P9e=EC(),sle=hC(),ole=eB(),v9e=rB(),_9e=tB(),Q9e=i((t,e,r,n)=>{t=new R9e(t,n),e=new T9e(e,n);let s,o,a,c,l;switch(r){case">":s=sle,o=v9e,a=ole,c=">",l=">=";break;case"<":s=ole,o=_9e,a=sle,c="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(P9e(t,e,n))return!1;for(let u=0;u{f.semver===N9e&&(f=new ile(">=0.0.0")),p=p||f,m=m||f,s(f.semver,p.semver,n)?p=f:a(f.semver,m.semver,n)&&(m=f)}),p.operator===c||p.operator===l||(!m.operator||m.operator===c)&&o(t,m.semver))return!1;if(m.operator===l&&a(t,m.semver))return!1}return!0},"outside");ale.exports=Q9e});var lle=b((W3t,cle)=>{"use strict";var D9e=oB(),k9e=i((t,e,r)=>D9e(t,e,">",r),"gtr");cle.exports=k9e});var dle=b((J3t,ule)=>{"use strict";var L9e=oB(),O9e=i((t,e,r)=>L9e(t,e,"<",r),"ltr");ule.exports=O9e});var fle=b((X3t,mle)=>{"use strict";var ple=mi(),M9e=i((t,e,r)=>(t=new ple(t,r),e=new ple(e,r),t.intersects(e,r)),"intersects");mle.exports=M9e});var hle=b((eVt,Ale)=>{"use strict";var F9e=EC(),U9e=pi();Ale.exports=(t,e,r)=>{let n=[],s=null,o=null,a=t.sort((d,p)=>U9e(d,p,r));for(let d of a)F9e(d,e,r)?(o=d,s||(s=d)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let c=[];for(let[d,p]of n)d===p?c.push(d):!p&&d===a[0]?c.push("*"):p?d===a[0]?c.push(`<=${p}`):c.push(`${d} - ${p}`):c.push(`>=${d}`);let l=c.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return l.length{"use strict";var gle=mi(),HU=gC(),{ANY:$U}=HU,GU=EC(),zU=pi(),q9e=i((t,e,r={})=>{if(t===e)return!0;t=new gle(t,r),e=new gle(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let a=G9e(s,o,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},"subset"),$9e=[new HU(">=0.0.0-0")],yle=[new HU(">=0.0.0")],G9e=i((t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===$U){if(e.length===1&&e[0].semver===$U)return!0;r.includePrerelease?t=$9e:t=yle}if(e.length===1&&e[0].semver===$U){if(r.includePrerelease)return!0;e=yle}let n=new Set,s,o;for(let f of t)f.operator===">"||f.operator===">="?s=Ele(s,f,r):f.operator==="<"||f.operator==="<="?o=Cle(o,f,r):n.add(f.semver);if(n.size>1)return null;let a;if(s&&o){if(a=zU(s.semver,o.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let f of n){if(s&&!GU(f,String(s),r)||o&&!GU(f,String(o),r))return null;for(let g of e)if(!GU(f,String(g),r))return!1;return!0}let c,l,u,d,p=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,m=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;p&&p.prerelease.length===1&&o.operator==="<"&&p.prerelease[0]===0&&(p=!1);for(let f of e){if(d=d||f.operator===">"||f.operator===">=",u=u||f.operator==="<"||f.operator==="<=",s){if(m&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===m.major&&f.semver.minor===m.minor&&f.semver.patch===m.patch&&(m=!1),f.operator===">"||f.operator===">="){if(c=Ele(s,f,r),c===f&&c!==s)return!1}else if(s.operator===">="&&!f.test(s.semver))return!1}if(o){if(p&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===p.major&&f.semver.minor===p.minor&&f.semver.patch===p.patch&&(p=!1),f.operator==="<"||f.operator==="<="){if(l=Cle(o,f,r),l===f&&l!==o)return!1}else if(o.operator==="<="&&!f.test(o.semver))return!1}if(!f.operator&&(o||s)&&a!==0)return!1}return!(s&&u&&!o&&a!==0||o&&d&&!s&&a!==0||m||p)},"simpleSubset"),Ele=i((t,e,r)=>{if(!t)return e;let n=zU(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},"higherGT"),Cle=i((t,e,r)=>{if(!t)return e;let n=zU(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t},"lowerLT");Ile.exports=q9e});var Ble=b((nVt,Sle)=>{"use strict";var VU=dh(),wle=uh(),H9e=Nn(),ble=TU(),z9e=gd(),V9e=Wae(),Y9e=Jae(),W9e=Zae(),j9e=rce(),J9e=sce(),K9e=ice(),X9e=cce(),Z9e=uce(),eKe=pi(),tKe=fce(),rKe=hce(),nKe=ZS(),sKe=Cce(),oKe=xce(),iKe=hC(),aKe=eB(),cKe=_U(),lKe=QU(),uKe=tB(),dKe=rB(),pKe=DU(),mKe=vce(),fKe=Qce(),AKe=gC(),hKe=mi(),gKe=EC(),yKe=Wce(),EKe=Jce(),CKe=Xce(),IKe=tle(),xKe=nle(),wKe=oB(),bKe=lle(),SKe=dle(),BKe=fle(),RKe=hle(),NKe=xle();Sle.exports={parse:z9e,valid:V9e,clean:Y9e,inc:W9e,diff:j9e,major:J9e,minor:K9e,patch:X9e,prerelease:Z9e,compare:eKe,rcompare:tKe,compareLoose:rKe,compareBuild:nKe,sort:sKe,rsort:oKe,gt:iKe,lt:aKe,eq:cKe,neq:lKe,gte:uKe,lte:dKe,cmp:pKe,coerce:mKe,truncate:fKe,Comparator:AKe,Range:hKe,satisfies:gKe,toComparators:yKe,maxSatisfying:EKe,minSatisfying:CKe,minVersion:IKe,validRange:xKe,outside:wKe,gtr:bKe,ltr:SKe,intersects:BKe,simplifyRange:RKe,subset:NKe,SemVer:H9e,re:VU.re,src:VU.src,tokens:VU.t,SEMVER_SPEC_VERSION:wle.SEMVER_SPEC_VERSION,RELEASE_TYPES:wle.RELEASE_TYPES,compareIdentifiers:ble.compareIdentifiers,rcompareIdentifiers:ble.rcompareIdentifiers}});var fue=b((cYt,mue)=>{var yh=1e3,Eh=yh*60,Ch=Eh*60,Cm=Ch*24,uXe=Cm*7,dXe=Cm*365.25;mue.exports=function(t,e){e=e||{};var r=typeof t;if(r==="string"&&t.length>0)return pXe(t);if(r==="number"&&isFinite(t))return e.long?fXe(t):mXe(t);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(t))};function pXe(t){if(t=String(t),!(t.length>100)){var e=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(t);if(e){var r=parseFloat(e[1]),n=(e[2]||"ms").toLowerCase();switch(n){case"years":case"year":case"yrs":case"yr":case"y":return r*dXe;case"weeks":case"week":case"w":return r*uXe;case"days":case"day":case"d":return r*Cm;case"hours":case"hour":case"hrs":case"hr":case"h":return r*Ch;case"minutes":case"minute":case"mins":case"min":case"m":return r*Eh;case"seconds":case"second":case"secs":case"sec":case"s":return r*yh;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return r;default:return}}}}i(pXe,"parse");function mXe(t){var e=Math.abs(t);return e>=Cm?Math.round(t/Cm)+"d":e>=Ch?Math.round(t/Ch)+"h":e>=Eh?Math.round(t/Eh)+"m":e>=yh?Math.round(t/yh)+"s":t+"ms"}i(mXe,"fmtShort");function fXe(t){var e=Math.abs(t);return e>=Cm?PB(t,e,Cm,"day"):e>=Ch?PB(t,e,Ch,"hour"):e>=Eh?PB(t,e,Eh,"minute"):e>=yh?PB(t,e,yh,"second"):t+" ms"}i(fXe,"fmtLong");function PB(t,e,r,n){var s=e>=r*1.5;return Math.round(t/r)+" "+n+(s?"s":"")}i(PB,"plural")});var g2=b((uYt,Aue)=>{function AXe(t){r.debug=r,r.default=r,r.coerce=l,r.disable=o,r.enable=s,r.enabled=a,r.humanize=fue(),r.destroy=u,Object.keys(t).forEach(d=>{r[d]=t[d]}),r.names=[],r.skips=[],r.formatters={};function e(d){let p=0;for(let m=0;m{if(M==="%%")return"%";Q++;let pe=r.formatters[V];if(typeof pe=="function"){let ke=x[Q];M=pe.call(w,ke),x.splice(Q,1),Q--}return M}),r.formatArgs.call(w,x),(w.log||r.log).apply(w,x)}return i(E,"debug"),E.namespace=d,E.useColors=r.useColors(),E.color=r.selectColor(d),E.extend=n,E.destroy=r.destroy,Object.defineProperty(E,"enabled",{enumerable:!0,configurable:!1,get:i(()=>m!==null?m:(f!==r.namespaces&&(f=r.namespaces,g=r.enabled(d)),g),"get"),set:i(x=>{m=x},"set")}),typeof r.init=="function"&&r.init(E),E}i(r,"createDebug");function n(d,p){let m=r(this.namespace+(typeof p>"u"?":":p)+d);return m.log=this.log,m}i(n,"extend");function s(d){r.save(d),r.namespaces=d,r.names=[],r.skips=[];let p,m=(typeof d=="string"?d:"").split(/[\s,]+/),f=m.length;for(p=0;p"-"+p)].join(",");return r.enable(""),d}i(o,"disable");function a(d){if(d[d.length-1]==="*")return!0;let p,m;for(p=0,m=r.skips.length;p{vo.formatArgs=gXe;vo.save=yXe;vo.load=EXe;vo.useColors=hXe;vo.storage=CXe();vo.destroy=(()=>{let t=!1;return()=>{t||(t=!0,console.warn("Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`."))}})();vo.colors=["#0000CC","#0000FF","#0033CC","#0033FF","#0066CC","#0066FF","#0099CC","#0099FF","#00CC00","#00CC33","#00CC66","#00CC99","#00CCCC","#00CCFF","#3300CC","#3300FF","#3333CC","#3333FF","#3366CC","#3366FF","#3399CC","#3399FF","#33CC00","#33CC33","#33CC66","#33CC99","#33CCCC","#33CCFF","#6600CC","#6600FF","#6633CC","#6633FF","#66CC00","#66CC33","#9900CC","#9900FF","#9933CC","#9933FF","#99CC00","#99CC33","#CC0000","#CC0033","#CC0066","#CC0099","#CC00CC","#CC00FF","#CC3300","#CC3333","#CC3366","#CC3399","#CC33CC","#CC33FF","#CC6600","#CC6633","#CC9900","#CC9933","#CCCC00","#CCCC33","#FF0000","#FF0033","#FF0066","#FF0099","#FF00CC","#FF00FF","#FF3300","#FF3333","#FF3366","#FF3399","#FF33CC","#FF33FF","#FF6600","#FF6633","#FF9900","#FF9933","#FFCC00","#FFCC33"];function hXe(){return typeof window<"u"&&window.process&&(window.process.type==="renderer"||window.process.__nwjs)?!0:typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/(edge|trident)\/(\d+)/)?!1:typeof document<"u"&&document.documentElement&&document.documentElement.style&&document.documentElement.style.WebkitAppearance||typeof window<"u"&&window.console&&(window.console.firebug||window.console.exception&&window.console.table)||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/firefox\/(\d+)/)&&parseInt(RegExp.$1,10)>=31||typeof navigator<"u"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}i(hXe,"useColors");function gXe(t){if(t[0]=(this.useColors?"%c":"")+this.namespace+(this.useColors?" %c":" ")+t[0]+(this.useColors?"%c ":" ")+"+"+vB.exports.humanize(this.diff),!this.useColors)return;let e="color: "+this.color;t.splice(1,0,e,"color: inherit");let r=0,n=0;t[0].replace(/%[a-zA-Z%]/g,s=>{s!=="%%"&&(r++,s==="%c"&&(n=r))}),t.splice(n,0,e)}i(gXe,"formatArgs");vo.log=console.debug||console.log||(()=>{});function yXe(t){try{t?vo.storage.setItem("debug",t):vo.storage.removeItem("debug")}catch{}}i(yXe,"save");function EXe(){let t;try{t=vo.storage.getItem("debug")}catch{}return!t&&typeof process<"u"&&"env"in process&&(t=process.env.DEBUG),t}i(EXe,"load");function CXe(){try{return localStorage}catch{}}i(CXe,"localstorage");vB.exports=g2()(vo);var{formatters:IXe}=vB.exports;IXe.j=function(t){try{return JSON.stringify(t)}catch(e){return"[UnexpectedJSONParseError]: "+e.message}}});var yue=b((mYt,gue)=>{"use strict";gue.exports=(t,e=process.argv)=>{let r=t.startsWith("-")?"":t.length===1?"-":"--",n=e.indexOf(r+t),s=e.indexOf("--");return n!==-1&&(s===-1||n{"use strict";var xXe=require("os"),Eue=require("tty"),Ai=yue(),{env:hn}=process,Cd;Ai("no-color")||Ai("no-colors")||Ai("color=false")||Ai("color=never")?Cd=0:(Ai("color")||Ai("colors")||Ai("color=true")||Ai("color=always"))&&(Cd=1);"FORCE_COLOR"in hn&&(hn.FORCE_COLOR==="true"?Cd=1:hn.FORCE_COLOR==="false"?Cd=0:Cd=hn.FORCE_COLOR.length===0?1:Math.min(parseInt(hn.FORCE_COLOR,10),3));function y2(t){return t===0?!1:{level:t,hasBasic:!0,has256:t>=2,has16m:t>=3}}i(y2,"translateLevel");function E2(t,e){if(Cd===0)return 0;if(Ai("color=16m")||Ai("color=full")||Ai("color=truecolor"))return 3;if(Ai("color=256"))return 2;if(t&&!e&&Cd===void 0)return 0;let r=Cd||0;if(hn.TERM==="dumb")return r;if(process.platform==="win32"){let n=xXe.release().split(".");return Number(n[0])>=10&&Number(n[2])>=10586?Number(n[2])>=14931?3:2:1}if("CI"in hn)return["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some(n=>n in hn)||hn.CI_NAME==="codeship"?1:r;if("TEAMCITY_VERSION"in hn)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(hn.TEAMCITY_VERSION)?1:0;if(hn.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in hn){let n=parseInt((hn.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(hn.TERM_PROGRAM){case"iTerm.app":return n>=3?3:2;case"Apple_Terminal":return 2}}return/-256(color)?$/i.test(hn.TERM)?2:/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(hn.TERM)||"COLORTERM"in hn?1:r}i(E2,"supportsColor");function wXe(t){let e=E2(t,t&&t.isTTY);return y2(e)}i(wXe,"getSupportLevel");Cue.exports={supportsColor:wXe,stdout:y2(E2(!0,Eue.isatty(1))),stderr:y2(E2(!0,Eue.isatty(2)))}});var wue=b((Pn,QB)=>{var bXe=require("tty"),_B=require("util");Pn.init=vXe;Pn.log=NXe;Pn.formatArgs=BXe;Pn.save=TXe;Pn.load=PXe;Pn.useColors=SXe;Pn.destroy=_B.deprecate(()=>{},"Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.");Pn.colors=[6,2,3,4,5,1];try{let t=Iue();t&&(t.stderr||t).level>=2&&(Pn.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221])}catch{}Pn.inspectOpts=Object.keys(process.env).filter(t=>/^debug_/i.test(t)).reduce((t,e)=>{let r=e.substring(6).toLowerCase().replace(/_([a-z])/g,(s,o)=>o.toUpperCase()),n=process.env[e];return/^(yes|on|true|enabled)$/i.test(n)?n=!0:/^(no|off|false|disabled)$/i.test(n)?n=!1:n==="null"?n=null:n=Number(n),t[r]=n,t},{});function SXe(){return"colors"in Pn.inspectOpts?!!Pn.inspectOpts.colors:bXe.isatty(process.stderr.fd)}i(SXe,"useColors");function BXe(t){let{namespace:e,useColors:r}=this;if(r){let n=this.color,s="\x1B[3"+(n<8?n:"8;5;"+n),o=` ${s};1m${e} \x1B[0m`;t[0]=o+t[0].split(` `).join(` -`+o),t.push(s+"m+"+_B.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=SXe()+e+" "+t[0]}function SXe(){return Tn.inspectOpts.hideDate?"":new Date().toISOString()+" "}function BXe(...t){return process.stderr.write(vB.format(...t)+` -`)}function RXe(t){t?process.env.DEBUG=t:delete process.env.DEBUG}function NXe(){return process.env.DEBUG}function TXe(t){t.inspectOpts={};let e=Object.keys(Tn.inspectOpts);for(let r=0;re.trim()).join(" ")};Iue.O=function(t){return this.inspectOpts.colors=this.useColors,vB.inspect(t,this.inspectOpts)}});var Cm=w((MHt,E2)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?E2.exports=Aue():E2.exports=xue()});var Sue=w(zs=>{"use strict";var PXe=zs&&zs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),vXe=zs&&zs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),wue=zs&&zs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&PXe(e,t,r);return vXe(e,t),e};Object.defineProperty(zs,"__esModule",{value:!0});zs.req=zs.json=zs.toBuffer=void 0;var _Xe=wue(require("http")),QXe=wue(require("https"));async function bue(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}zs.toBuffer=bue;async function DXe(t){let r=(await bue(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}zs.json=DXe;function kXe(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?QXe:_Xe).request(t,e),s=new Promise((o,i)=>{n.once("response",o).once("error",i).end()});return n.then=s.then.bind(s),n}zs.req=kXe});var Tue=w(vo=>{"use strict";var Rue=vo&&vo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),LXe=vo&&vo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Nue=vo&&vo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Rue(e,t,r);return LXe(e,t),e},OXe=vo&&vo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Rue(e,t,r)};Object.defineProperty(vo,"__esModule",{value:!0});vo.Agent=void 0;var MXe=Nue(require("net")),Bue=Nue(require("http")),FXe=require("https");OXe(Sue(),vo);var nc=Symbol("AgentBaseInternalState"),C2=class extends Bue.Agent{constructor(e){super(e),this[nc]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new MXe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return(typeof e.secureEndpoint=="boolean"?e.secureEndpoint:this.isSecureEndpoint(e))?FXe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),i=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(a=>{if(this.decrementSockets(o,i),a instanceof Bue.Agent)try{return a.addRequest(e,s)}catch(c){return n(c)}this[nc].currentSocket=a,super.createSocket(e,r,n)},a=>{this.decrementSockets(o,i),n(a)})}createConnection(){let e=this[nc].currentSocket;if(this[nc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[nc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[nc]&&(this[nc].defaultPort=e)}get protocol(){return this[nc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[nc]&&(this[nc].protocol=e)}};vo.Agent=C2});var Pue=w(Ch=>{"use strict";var UXe=Ch&&Ch.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ch,"__esModule",{value:!0});Ch.parseProxyResponse=void 0;var qXe=UXe(Cm()),QB=(0,qXe.default)("https-proxy-agent:parse-proxy-response");function $Xe(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let u=t.read();u?l(u):t.once("readable",o)}function i(){t.removeListener("end",a),t.removeListener("error",c),t.removeListener("readable",o)}function a(){i(),QB("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function c(u){i(),QB("onerror %o",u),r(u)}function l(u){s.push(u),n+=u.length;let d=Buffer.concat(s,n),p=d.indexOf(`\r +`+o),t.push(s+"m+"+QB.exports.humanize(this.diff)+"\x1B[0m")}else t[0]=RXe()+e+" "+t[0]}i(BXe,"formatArgs");function RXe(){return Pn.inspectOpts.hideDate?"":new Date().toISOString()+" "}i(RXe,"getDate");function NXe(...t){return process.stderr.write(_B.format(...t)+` +`)}i(NXe,"log");function TXe(t){t?process.env.DEBUG=t:delete process.env.DEBUG}i(TXe,"save");function PXe(){return process.env.DEBUG}i(PXe,"load");function vXe(t){t.inspectOpts={};let e=Object.keys(Pn.inspectOpts);for(let r=0;re.trim()).join(" ")};xue.O=function(t){return this.inspectOpts.colors=this.useColors,_B.inspect(t,this.inspectOpts)}});var Im=b((gYt,C2)=>{typeof process>"u"||process.type==="renderer"||process.browser===!0||process.__nwjs?C2.exports=hue():C2.exports=wue()});var Bue=b(Vs=>{"use strict";var _Xe=Vs&&Vs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),QXe=Vs&&Vs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),bue=Vs&&Vs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&_Xe(e,t,r);return QXe(e,t),e};Object.defineProperty(Vs,"__esModule",{value:!0});Vs.req=Vs.json=Vs.toBuffer=void 0;var DXe=bue(require("http")),kXe=bue(require("https"));async function Sue(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(Sue,"toBuffer");Vs.toBuffer=Sue;async function LXe(t){let r=(await Sue(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(LXe,"json");Vs.json=LXe;function OXe(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?kXe:DXe).request(t,e),s=new Promise((o,a)=>{n.once("response",o).once("error",a).end()});return n.then=s.then.bind(s),n}i(OXe,"req");Vs.req=OXe});var Pue=b(_o=>{"use strict";var Nue=_o&&_o.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),MXe=_o&&_o.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Tue=_o&&_o.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&Nue(e,t,r);return MXe(e,t),e},FXe=_o&&_o.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&Nue(e,t,r)};Object.defineProperty(_o,"__esModule",{value:!0});_o.Agent=void 0;var UXe=Tue(require("net")),Rue=Tue(require("http")),qXe=require("https");FXe(Bue(),_o);var sc=Symbol("AgentBaseInternalState"),I2=class extends Rue.Agent{static{i(this,"Agent")}constructor(e){super(e),this[sc]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new UXe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return(typeof e.secureEndpoint=="boolean"?e.secureEndpoint:this.isSecureEndpoint(e))?qXe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),c instanceof Rue.Agent)try{return c.addRequest(e,s)}catch(l){return n(l)}this[sc].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[sc].currentSocket;if(this[sc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[sc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[sc]&&(this[sc].defaultPort=e)}get protocol(){return this[sc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[sc]&&(this[sc].protocol=e)}};_o.Agent=I2});var vue=b(Ih=>{"use strict";var $Xe=Ih&&Ih.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ih,"__esModule",{value:!0});Ih.parseProxyResponse=void 0;var GXe=$Xe(Im()),DB=(0,GXe.default)("https-proxy-agent:parse-proxy-response");function HXe(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let d=t.read();d?u(d):t.once("readable",o)}i(o,"read");function a(){t.removeListener("end",c),t.removeListener("error",l),t.removeListener("readable",o)}i(a,"cleanup");function c(){a(),DB("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),DB("onerror %o",d),r(d)}i(l,"onerror");function u(d){s.push(d),n+=d.length;let p=Buffer.concat(s,n),m=p.indexOf(`\r \r -`);if(p===-1){QB("have not received end of HTTP headers yet..."),o();return}let m=d.slice(0,p).toString("ascii").split(`\r -`),h=m.shift();if(!h)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let y=h.split(" "),I=+y[1],x=y.slice(2).join(" "),b={};for(let T of m){if(!T)continue;let _=T.indexOf(":");if(_===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${T}"`));let U=T.slice(0,_).toLowerCase(),O=T.slice(_+1).trimStart(),z=b[U];typeof z=="string"?b[U]=[z,O]:Array.isArray(z)?z.push(O):b[U]=O}QB("got proxy server response: %o %o",h,b),i(),e({connect:{statusCode:I,statusText:x,headers:b},buffered:d})}t.on("error",c),t.on("end",a),o()})}Ch.parseProxyResponse=$Xe});var Lue=w(Ai=>{"use strict";var GXe=Ai&&Ai.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),HXe=Ai&&Ai.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Due=Ai&&Ai.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&GXe(e,t,r);return HXe(e,t),e},kue=Ai&&Ai.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(Ai,"__esModule",{value:!0});Ai.HttpsProxyAgent=void 0;var DB=Due(require("net")),vue=Due(require("tls")),zXe=kue(require("assert")),VXe=kue(Cm()),YXe=Tue(),WXe=require("url"),jXe=Pue(),NC=(0,VXe.default)("https-proxy-agent"),_ue=t=>t.servername===void 0&&t.host&&!DB.isIP(t.host)?{...t,servername:t.host}:t,kB=class extends YXe.Agent{constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new WXe.URL(e):e,this.proxyHeaders=r?.headers??{},NC("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?Que(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(NC("Creating `tls.Socket`: %o",this.connectOpts),s=vue.connect(_ue(this.connectOpts))):(NC("Creating `net.Socket`: %o",this.connectOpts),s=DB.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},i=DB.isIPv6(r.host)?`[${r.host}]`:r.host,a=`CONNECT ${i}:${r.port} HTTP/1.1\r -`;if(n.username||n.password){let p=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(p).toString("base64")}`}o.Host=`${i}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let p of Object.keys(o))a+=`${p}: ${o[p]}\r -`;let c=(0,jXe.parseProxyResponse)(s);s.write(`${a}\r -`);let{connect:l,buffered:u}=await c;if(e.emit("proxyConnect",l),this.emit("proxyConnect",l,e),l.statusCode===200)return e.once("socket",JXe),r.secureEndpoint?(NC("Upgrading socket connection to TLS"),vue.connect({...Que(_ue(r),"host","path","port"),socket:s})):s;s.destroy();let d=new DB.Socket({writable:!1});return d.readable=!0,e.once("socket",p=>{NC("Replaying proxy buffer for failed request"),(0,zXe.default)(p.listenerCount("data")>0),p.push(u),p.push(null)}),d}};kB.protocols=["http","https"];Ai.HttpsProxyAgent=kB;function JXe(t){t.resume()}function Que(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}});var Fue=w(Vs=>{"use strict";var KXe=Vs&&Vs.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),XXe=Vs&&Vs.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Oue=Vs&&Vs.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&KXe(e,t,r);return XXe(e,t),e};Object.defineProperty(Vs,"__esModule",{value:!0});Vs.req=Vs.json=Vs.toBuffer=void 0;var ZXe=Oue(require("http")),e7e=Oue(require("https"));async function Mue(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}Vs.toBuffer=Mue;async function t7e(t){let r=(await Mue(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}Vs.json=t7e;function r7e(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?e7e:ZXe).request(t,e),s=new Promise((o,i)=>{n.once("response",o).once("error",i).end()});return n.then=s.then.bind(s),n}Vs.req=r7e});var $ue=w(_o=>{"use strict";var que=_o&&_o.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),n7e=_o&&_o.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),s7e=_o&&_o.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&que(e,t,r);return n7e(e,t),e},o7e=_o&&_o.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&que(e,t,r)};Object.defineProperty(_o,"__esModule",{value:!0});_o.Agent=void 0;var Uue=s7e(require("http"));o7e(Fue(),_o);var sc=Symbol("AgentBaseInternalState"),I2=class extends Uue.Agent{constructor(e){super(e),this[sc]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)};Promise.resolve().then(()=>this.connect(e,s)).then(o=>{if(o instanceof Uue.Agent)return o.addRequest(e,s);this[sc].currentSocket=o,super.createSocket(e,r,n)},n)}createConnection(){let e=this[sc].currentSocket;if(this[sc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[sc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[sc]&&(this[sc].defaultPort=e)}get protocol(){return this[sc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[sc]&&(this[sc].protocol=e)}};_o.Agent=I2});var zue=w(hi=>{"use strict";var i7e=hi&&hi.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),a7e=hi&&hi.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Hue=hi&&hi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&i7e(e,t,r);return a7e(e,t),e},c7e=hi&&hi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hi,"__esModule",{value:!0});hi.HttpProxyAgent=void 0;var l7e=Hue(require("net")),u7e=Hue(require("tls")),d7e=c7e(Cm()),p7e=require("events"),m7e=$ue(),Gue=require("url"),Ih=(0,d7e.default)("http-proxy-agent"),LB=class extends m7e.Agent{constructor(e,r){super(r),this.proxy=typeof e=="string"?new Gue.URL(e):e,this.proxyHeaders=r?.headers??{},Ih("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?f7e(r,"headers"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",i=`${s}//${o}`,a=new Gue.URL(e.path,i);r.port!==80&&(a.port=String(r.port)),e.path=String(a);let c=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let l=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;c["Proxy-Authorization"]=`Basic ${Buffer.from(l).toString("base64")}`}c["Proxy-Connection"]||(c["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let l of Object.keys(c)){let u=c[l];u&&e.setHeader(l,u)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;Ih("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(Ih("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r +`);if(m===-1){DB("have not received end of HTTP headers yet..."),o();return}let f=p.slice(0,m).toString("ascii").split(`\r +`),g=f.shift();if(!g)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let E=g.split(" "),x=+E[1],w=E.slice(2).join(" "),S={};for(let P of f){if(!P)continue;let Q=P.indexOf(":");if(Q===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${P}"`));let q=P.slice(0,Q).toLowerCase(),M=P.slice(Q+1).trimStart(),V=S[q];typeof V=="string"?S[q]=[V,M]:Array.isArray(V)?V.push(M):S[q]=M}DB("got proxy server response: %o %o",g,S),a(),e({connect:{statusCode:x,statusText:w,headers:S},buffered:p})}i(u,"ondata"),t.on("error",l),t.on("end",c),o()})}i(HXe,"parseProxyResponse");Ih.parseProxyResponse=HXe});var Oue=b(hi=>{"use strict";var zXe=hi&&hi.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),VXe=hi&&hi.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),kue=hi&&hi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&zXe(e,t,r);return VXe(e,t),e},Lue=hi&&hi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(hi,"__esModule",{value:!0});hi.HttpsProxyAgent=void 0;var kB=kue(require("net")),_ue=kue(require("tls")),YXe=Lue(require("assert")),WXe=Lue(Im()),jXe=Pue(),JXe=require("url"),KXe=vue(),PC=(0,WXe.default)("https-proxy-agent"),Que=i(t=>t.servername===void 0&&t.host&&!kB.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),LB=class extends jXe.Agent{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new JXe.URL(e):e,this.proxyHeaders=r?.headers??{},PC("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?Due(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(PC("Creating `tls.Socket`: %o",this.connectOpts),s=_ue.connect(Que(this.connectOpts))):(PC("Creating `net.Socket`: %o",this.connectOpts),s=kB.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=kB.isIPv6(r.host)?`[${r.host}]`:r.host,c=`CONNECT ${a}:${r.port} HTTP/1.1\r +`;if(n.username||n.password){let m=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(m).toString("base64")}`}o.Host=`${a}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let m of Object.keys(o))c+=`${m}: ${o[m]}\r +`;let l=(0,KXe.parseProxyResponse)(s);s.write(`${c}\r +`);let{connect:u,buffered:d}=await l;if(e.emit("proxyConnect",u),this.emit("proxyConnect",u,e),u.statusCode===200)return e.once("socket",XXe),r.secureEndpoint?(PC("Upgrading socket connection to TLS"),_ue.connect({...Due(Que(r),"host","path","port"),socket:s})):s;s.destroy();let p=new kB.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{PC("Replaying proxy buffer for failed request"),(0,YXe.default)(m.listenerCount("data")>0),m.push(d),m.push(null)}),p}};LB.protocols=["http","https"];hi.HttpsProxyAgent=LB;function XXe(t){t.resume()}i(XXe,"resume");function Due(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(Due,"omit")});var Uue=b(Ys=>{"use strict";var ZXe=Ys&&Ys.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),e7e=Ys&&Ys.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),Mue=Ys&&Ys.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&ZXe(e,t,r);return e7e(e,t),e};Object.defineProperty(Ys,"__esModule",{value:!0});Ys.req=Ys.json=Ys.toBuffer=void 0;var t7e=Mue(require("http")),r7e=Mue(require("https"));async function Fue(t){let e=0,r=[];for await(let n of t)e+=n.length,r.push(n);return Buffer.concat(r,e)}i(Fue,"toBuffer");Ys.toBuffer=Fue;async function n7e(t){let r=(await Fue(t)).toString("utf8");try{return JSON.parse(r)}catch(n){let s=n;throw s.message+=` (input: ${r})`,s}}i(n7e,"json");Ys.json=n7e;function s7e(t,e={}){let n=((typeof t=="string"?t:t.href).startsWith("https:")?r7e:t7e).request(t,e),s=new Promise((o,a)=>{n.once("response",o).once("error",a).end()});return n.then=s.then.bind(s),n}i(s7e,"req");Ys.req=s7e});var Gue=b(Qo=>{"use strict";var $ue=Qo&&Qo.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),o7e=Qo&&Qo.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),i7e=Qo&&Qo.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&$ue(e,t,r);return o7e(e,t),e},a7e=Qo&&Qo.__exportStar||function(t,e){for(var r in t)r!=="default"&&!Object.prototype.hasOwnProperty.call(e,r)&&$ue(e,t,r)};Object.defineProperty(Qo,"__esModule",{value:!0});Qo.Agent=void 0;var que=i7e(require("http"));a7e(Uue(),Qo);var oc=Symbol("AgentBaseInternalState"),x2=class extends que.Agent{static{i(this,"Agent")}constructor(e){super(e),this[oc]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)};Promise.resolve().then(()=>this.connect(e,s)).then(o=>{if(o instanceof que.Agent)return o.addRequest(e,s);this[oc].currentSocket=o,super.createSocket(e,r,n)},n)}createConnection(){let e=this[oc].currentSocket;if(this[oc].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[oc].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[oc]&&(this[oc].defaultPort=e)}get protocol(){return this[oc].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[oc]&&(this[oc].protocol=e)}};Qo.Agent=x2});var Vue=b(gi=>{"use strict";var c7e=gi&&gi.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),l7e=gi&&gi.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),zue=gi&&gi.__importStar||function(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&c7e(e,t,r);return l7e(e,t),e},u7e=gi&&gi.__importDefault||function(t){return t&&t.__esModule?t:{default:t}};Object.defineProperty(gi,"__esModule",{value:!0});gi.HttpProxyAgent=void 0;var d7e=zue(require("net")),p7e=zue(require("tls")),m7e=u7e(Im()),f7e=require("events"),A7e=Gue(),Hue=require("url"),xh=(0,m7e.default)("http-proxy-agent"),OB=class extends A7e.Agent{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new Hue.URL(e):e,this.proxyHeaders=r?.headers??{},xh("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?h7e(r,"headers"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",a=`${s}//${o}`,c=new Hue.URL(e.path,a);r.port!==80&&(c.port=String(r.port)),e.path=String(c);let l=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let u=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;l["Proxy-Authorization"]=`Basic ${Buffer.from(u).toString("base64")}`}l["Proxy-Connection"]||(l["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let u of Object.keys(l)){let d=l[u];d&&e.setHeader(u,d)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;xh("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(xh("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r \r -`)+4,e.outputData[0].data=e._header+n.substring(s),Ih("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(Ih("Creating `tls.Socket`: %o",this.connectOpts),o=u7e.connect(this.connectOpts)):(Ih("Creating `net.Socket`: %o",this.connectOpts),o=l7e.connect(this.connectOpts)),await(0,p7e.once)(o,"connect"),o}};LB.protocols=["http","https"];hi.HttpProxyAgent=LB;function f7e(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}});var mde=w(JB=>{"use strict";Object.defineProperty(JB,"__esModule",{value:!0});JB.state=void 0;JB.state={instrumenterImplementation:void 0}});var Pde=w(tR=>{"use strict";Object.defineProperty(tR,"__esModule",{value:!0});tR.state=void 0;tR.state={operationRequestMap:new WeakMap}});var cfe=w(Fh=>{"use strict";Object.defineProperty(Fh,"__esModule",{value:!0});var Lnt=require("os"),Ont=require("util");function Mnt(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}var Fnt=Mnt(Ont);function Unt(t,...e){process.stderr.write(`${Fnt.default.format(t,...e)}${Lnt.EOL}`)}var Xme=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,efe,ZH=[],ez=[],CN=[];Xme&&tz(Xme);var tfe=Object.assign(t=>rfe(t),{enable:tz,enabled:rz,disable:qnt,log:Unt});function tz(t){efe=t,ZH=[],ez=[];let e=/\*/g,r=t.split(",").map(n=>n.trim().replace(e,".*?"));for(let n of r)n.startsWith("-")?ez.push(new RegExp(`^${n.substr(1)}$`)):ZH.push(new RegExp(`^${n}$`));for(let n of CN)n.enabled=rz(n.namespace)}function rz(t){if(t.endsWith("*"))return!0;for(let e of ez)if(e.test(t))return!1;for(let e of ZH)if(e.test(t))return!0;return!1}function qnt(){let t=efe||"";return tz(""),t}function rfe(t){let e=Object.assign(r,{enabled:rz(t),destroy:$nt,log:tfe.log,namespace:t,extend:Gnt});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return CN.push(e),e}function $nt(){let t=CN.indexOf(this);return t>=0?(CN.splice(t,1),!0):!1}function Gnt(t){let e=rfe(`${this.namespace}:${t}`);return e.log=this.log,e}var AI=tfe,nfe=new Set,yN=typeof process<"u"&&process.env&&process.env.AZURE_LOG_LEVEL||void 0,IN,xN=AI("azure");xN.log=(...t)=>{AI.log(...t)};var nz=["verbose","info","warning","error"];yN&&(afe(yN)?sfe(yN):console.error(`AZURE_LOG_LEVEL set to unknown log level '${yN}'; logging is not enabled. Acceptable values: ${nz.join(", ")}.`));function sfe(t){if(t&&!afe(t))throw new Error(`Unknown log level '${t}'. Acceptable values: ${nz.join(",")}`);IN=t;let e=[];for(let r of nfe)ife(r)&&e.push(r.namespace);AI.enable(e.join(","))}function Hnt(){return IN}var Zme={verbose:400,info:300,warning:200,error:100};function znt(t){let e=xN.extend(t);return ofe(xN,e),{error:EN(e,"error"),warning:EN(e,"warning"),info:EN(e,"info"),verbose:EN(e,"verbose")}}function ofe(t,e){e.log=(...r)=>{t.log(...r)}}function EN(t,e){let r=Object.assign(t.extend(e),{level:e});if(ofe(t,r),ife(r)){let n=AI.disable();AI.enable(n+","+r.namespace)}return nfe.add(r),r}function ife(t){return!!(IN&&Zme[t.level]<=Zme[IN])}function afe(t){return nz.includes(t)}Fh.AzureLogger=xN;Fh.createClientLogger=znt;Fh.getLogLevel=Hnt;Fh.setLogLevel=sfe});var iz=w(gI=>{"use strict";Object.defineProperty(gI,"__esModule",{value:!0});var Uh=new WeakMap,wN=new WeakMap,hI=class t{constructor(){this.onabort=null,Uh.set(this,[]),wN.set(this,!1)}get aborted(){if(!wN.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");return wN.get(this)}static get none(){return new t}addEventListener(e,r){if(!Uh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");Uh.get(this).push(r)}removeEventListener(e,r){if(!Uh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");let n=Uh.get(this),s=n.indexOf(r);s>-1&&n.splice(s,1)}dispatchEvent(e){throw new Error("This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.")}};function lfe(t){if(t.aborted)return;t.onabort&&t.onabort.call(t);let e=Uh.get(t);e&&e.slice().forEach(r=>{r.call(t,{type:"abort"})}),wN.set(t,!0)}var sz=class extends Error{constructor(e){super(e),this.name="AbortError"}},oz=class{constructor(e){if(this._signal=new hI,!!e){Array.isArray(e)||(e=arguments);for(let r of e)r.aborted?this.abort():r.addEventListener("abort",()=>{this.abort()})}}get signal(){return this._signal}abort(){lfe(this._signal)}static timeout(e){let r=new hI,n=setTimeout(lfe,e,r);return typeof n.unref=="function"&&n.unref(),r}};gI.AbortController=oz;gI.AbortError=sz;gI.AbortSignal=hI});var ffe=w(xs=>{"use strict";Object.defineProperty(xs,"__esModule",{value:!0});var Vnt=iz(),uz=require("crypto"),az,Ynt=typeof process<"u"&&!!process.version&&!!(!((az=process.versions)===null||az===void 0)&&az.node);function ufe(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,i)=>{function a(){i(new Vnt.AbortError(s??"The operation was aborted."))}function c(){n?.removeEventListener("abort",l)}function l(){r?.(),c(),a()}if(n?.aborted)return a();try{t(u=>{c(),o(u)},u=>{c(),i(u)})}catch(u){i(u)}n?.addEventListener("abort",l)})}var Wnt="The delay was aborted.";function jnt(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return ufe(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:()=>clearTimeout(r),abortSignal:n,abortErrorMsg:s??Wnt})}function Jnt(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}function dfe(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)&&!(t instanceof RegExp)&&!(t instanceof Date)}function pfe(t){if(dfe(t)){let e=typeof t.name=="string",r=typeof t.message=="string";return e&&r}return!1}function Knt(t){if(pfe(t))return t.message;{let e;try{typeof t=="object"&&t?e=JSON.stringify(t):e=String(t)}catch{e="[unable to stringify input]"}return`Unknown error ${e}`}}async function Xnt(t,e,r){let n=Buffer.from(t,"base64");return uz.createHmac("sha256",n).update(e).digest(r)}async function Znt(t,e){return uz.createHash("sha256").update(t).digest(e)}function dz(t){return typeof t<"u"&&t!==null}function est(t,e){if(!dz(t)||typeof t!="object")return!1;for(let r of e)if(!mfe(t,r))return!1;return!0}function mfe(t,e){return dz(t)&&typeof t=="object"&&e in t}function tst(){let t="";for(let e=0;e<32;e++){let r=Math.floor(Math.random()*16);e===12?t+="4":e===16?t+=r&3|8:t+=r.toString(16),(e===7||e===11||e===15||e===19)&&(t+="-")}return t}var cz,lz=typeof((cz=globalThis?.crypto)===null||cz===void 0?void 0:cz.randomUUID)=="function"?globalThis.crypto.randomUUID.bind(globalThis.crypto):uz.randomUUID;lz||(lz=tst);function rst(){return lz()}xs.computeSha256Hash=Znt;xs.computeSha256Hmac=Xnt;xs.createAbortablePromise=ufe;xs.delay=jnt;xs.getErrorMessage=Knt;xs.getRandomIntegerInclusive=Jnt;xs.isDefined=dz;xs.isError=pfe;xs.isNode=Ynt;xs.isObject=dfe;xs.isObjectWithProperties=est;xs.objectHasProperty=mfe;xs.randomUUID=rst});var kfe=w(Fm=>{"use strict";Object.defineProperty(Fm,"__esModule",{value:!0});var nst=cfe(),Afe=iz(),sst=ffe(),Mm=nst.createClientLogger("core-lro"),gfe=2e3,yfe=["succeeded","canceled","failed"];function Efe(t){try{return JSON.parse(t).state}catch{throw new Error(`Unable to deserialize input state: ${t}`)}}function hfe(t){let{state:e,stateProxy:r,isOperationError:n}=t;return s=>{throw n(s)&&(r.setError(e,s),r.setFailed(e)),s}}function ost(t,e){let r=t;return r.slice(-1)!=="."&&(r=r+"."),r+" "+e}function ist(t){let e=t.message,r=t.code,n=t;for(;n.innererror;)n=n.innererror,r=n.code,e=ost(e,n.message);return{code:r,message:e}}function Cfe(t){let{state:e,stateProxy:r,status:n,isDone:s,processResult:o,getError:i,response:a,setErrorAsResult:c}=t;switch(n){case"succeeded":{r.setSucceeded(e);break}case"failed":{let l=i?.(a),u="";if(l){let{code:p,message:m}=ist(l);u=`. ${p}. ${m}`}let d=`The long-running operation has failed${u}`;r.setError(e,new Error(d)),r.setFailed(e),Mm.warning(d);break}case"canceled":{r.setCanceled(e);break}}(s?.(a,e)||s===void 0&&["succeeded","canceled"].concat(c?[]:["failed"]).includes(n))&&r.setResult(e,ast({response:a,state:e,processResult:o}))}function ast(t){let{processResult:e,response:r,state:n}=t;return e?e(r,n):r}async function Ife(t){let{init:e,stateProxy:r,processResult:n,getOperationStatus:s,withOperationLocation:o,setErrorAsResult:i}=t,{operationLocation:a,resourceLocation:c,metadata:l,response:u}=await e();a&&o?.(a,!1);let d={metadata:l,operationLocation:a,resourceLocation:c};Mm.verbose("LRO: Operation description:",d);let p=r.initState(d),m=s({response:u,state:p,operationLocation:a});return Cfe({state:p,status:m,stateProxy:r,response:u,setErrorAsResult:i,processResult:n}),p}async function cst(t){let{poll:e,state:r,stateProxy:n,operationLocation:s,getOperationStatus:o,getResourceLocation:i,isOperationError:a,options:c}=t,l=await e(s,c).catch(hfe({state:r,stateProxy:n,isOperationError:a})),u=o(l,r);if(Mm.verbose(`LRO: Status: +`)+4,e.outputData[0].data=e._header+n.substring(s),xh("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(xh("Creating `tls.Socket`: %o",this.connectOpts),o=p7e.connect(this.connectOpts)):(xh("Creating `net.Socket`: %o",this.connectOpts),o=d7e.connect(this.connectOpts)),await(0,f7e.once)(o,"connect"),o}};OB.protocols=["http","https"];gi.HttpProxyAgent=OB;function h7e(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(h7e,"omit")});var fde=b(KB=>{"use strict";Object.defineProperty(KB,"__esModule",{value:!0});KB.state=void 0;KB.state={instrumenterImplementation:void 0}});var vde=b(rR=>{"use strict";Object.defineProperty(rR,"__esModule",{value:!0});rR.state=void 0;rR.state={operationRequestMap:new WeakMap}});var lfe=b(Uh=>{"use strict";Object.defineProperty(Uh,"__esModule",{value:!0});var Mnt=require("os"),Fnt=require("util");function Unt(t){return t&&typeof t=="object"&&"default"in t?t:{default:t}}i(Unt,"_interopDefaultLegacy");var qnt=Unt(Fnt);function $nt(t,...e){process.stderr.write(`${qnt.default.format(t,...e)}${Mnt.EOL}`)}i($nt,"log");var Zme=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,tfe,ez=[],tz=[],IN=[];Zme&&rz(Zme);var rfe=Object.assign(t=>nfe(t),{enable:rz,enabled:nz,disable:Gnt,log:$nt});function rz(t){tfe=t,ez=[],tz=[];let e=/\*/g,r=t.split(",").map(n=>n.trim().replace(e,".*?"));for(let n of r)n.startsWith("-")?tz.push(new RegExp(`^${n.substr(1)}$`)):ez.push(new RegExp(`^${n}$`));for(let n of IN)n.enabled=nz(n.namespace)}i(rz,"enable");function nz(t){if(t.endsWith("*"))return!0;for(let e of tz)if(e.test(t))return!1;for(let e of ez)if(e.test(t))return!0;return!1}i(nz,"enabled");function Gnt(){let t=tfe||"";return rz(""),t}i(Gnt,"disable");function nfe(t){let e=Object.assign(r,{enabled:nz(t),destroy:Hnt,log:rfe.log,namespace:t,extend:znt});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return i(r,"debug"),IN.push(e),e}i(nfe,"createDebugger");function Hnt(){let t=IN.indexOf(this);return t>=0?(IN.splice(t,1),!0):!1}i(Hnt,"destroy");function znt(t){let e=nfe(`${this.namespace}:${t}`);return e.log=this.log,e}i(znt,"extend");var gI=rfe,sfe=new Set,EN=typeof process<"u"&&process.env&&process.env.AZURE_LOG_LEVEL||void 0,xN,wN=gI("azure");wN.log=(...t)=>{gI.log(...t)};var sz=["verbose","info","warning","error"];EN&&(cfe(EN)?ofe(EN):console.error(`AZURE_LOG_LEVEL set to unknown log level '${EN}'; logging is not enabled. Acceptable values: ${sz.join(", ")}.`));function ofe(t){if(t&&!cfe(t))throw new Error(`Unknown log level '${t}'. Acceptable values: ${sz.join(",")}`);xN=t;let e=[];for(let r of sfe)afe(r)&&e.push(r.namespace);gI.enable(e.join(","))}i(ofe,"setLogLevel");function Vnt(){return xN}i(Vnt,"getLogLevel");var efe={verbose:400,info:300,warning:200,error:100};function Ynt(t){let e=wN.extend(t);return ife(wN,e),{error:CN(e,"error"),warning:CN(e,"warning"),info:CN(e,"info"),verbose:CN(e,"verbose")}}i(Ynt,"createClientLogger");function ife(t,e){e.log=(...r)=>{t.log(...r)}}i(ife,"patchLogMethod");function CN(t,e){let r=Object.assign(t.extend(e),{level:e});if(ife(t,r),afe(r)){let n=gI.disable();gI.enable(n+","+r.namespace)}return sfe.add(r),r}i(CN,"createLogger");function afe(t){return!!(xN&&efe[t.level]<=efe[xN])}i(afe,"shouldEnable");function cfe(t){return sz.includes(t)}i(cfe,"isAzureLogLevel");Uh.AzureLogger=wN;Uh.createClientLogger=Ynt;Uh.getLogLevel=Vnt;Uh.setLogLevel=ofe});var az=b(EI=>{"use strict";Object.defineProperty(EI,"__esModule",{value:!0});var qh=new WeakMap,bN=new WeakMap,yI=class t{static{i(this,"AbortSignal")}constructor(){this.onabort=null,qh.set(this,[]),bN.set(this,!1)}get aborted(){if(!bN.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");return bN.get(this)}static get none(){return new t}addEventListener(e,r){if(!qh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");qh.get(this).push(r)}removeEventListener(e,r){if(!qh.has(this))throw new TypeError("Expected `this` to be an instance of AbortSignal.");let n=qh.get(this),s=n.indexOf(r);s>-1&&n.splice(s,1)}dispatchEvent(e){throw new Error("This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.")}};function ufe(t){if(t.aborted)return;t.onabort&&t.onabort.call(t);let e=qh.get(t);e&&e.slice().forEach(r=>{r.call(t,{type:"abort"})}),bN.set(t,!0)}i(ufe,"abortSignal");var oz=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}},iz=class{static{i(this,"AbortController")}constructor(e){if(this._signal=new yI,!!e){Array.isArray(e)||(e=arguments);for(let r of e)r.aborted?this.abort():r.addEventListener("abort",()=>{this.abort()})}}get signal(){return this._signal}abort(){ufe(this._signal)}static timeout(e){let r=new yI,n=setTimeout(ufe,e,r);return typeof n.unref=="function"&&n.unref(),r}};EI.AbortController=iz;EI.AbortError=oz;EI.AbortSignal=yI});var Afe=b(ws=>{"use strict";Object.defineProperty(ws,"__esModule",{value:!0});var Wnt=az(),dz=require("crypto"),cz,jnt=typeof process<"u"&&!!process.version&&!!(!((cz=process.versions)===null||cz===void 0)&&cz.node);function dfe(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,a)=>{function c(){a(new Wnt.AbortError(s??"The operation was aborted."))}i(c,"rejectOnAbort");function l(){n?.removeEventListener("abort",u)}i(l,"removeListeners");function u(){r?.(),l(),c()}if(i(u,"onAbort"),n?.aborted)return c();try{t(d=>{l(),o(d)},d=>{l(),a(d)})}catch(d){a(d)}n?.addEventListener("abort",u)})}i(dfe,"createAbortablePromise");var Jnt="The delay was aborted.";function Knt(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return dfe(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:i(()=>clearTimeout(r),"cleanupBeforeAbort"),abortSignal:n,abortErrorMsg:s??Jnt})}i(Knt,"delay");function Xnt(t,e){return t=Math.ceil(t),e=Math.floor(e),Math.floor(Math.random()*(e-t+1))+t}i(Xnt,"getRandomIntegerInclusive");function pfe(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)&&!(t instanceof RegExp)&&!(t instanceof Date)}i(pfe,"isObject");function mfe(t){if(pfe(t)){let e=typeof t.name=="string",r=typeof t.message=="string";return e&&r}return!1}i(mfe,"isError");function Znt(t){if(mfe(t))return t.message;{let e;try{typeof t=="object"&&t?e=JSON.stringify(t):e=String(t)}catch{e="[unable to stringify input]"}return`Unknown error ${e}`}}i(Znt,"getErrorMessage");async function est(t,e,r){let n=Buffer.from(t,"base64");return dz.createHmac("sha256",n).update(e).digest(r)}i(est,"computeSha256Hmac");async function tst(t,e){return dz.createHash("sha256").update(t).digest(e)}i(tst,"computeSha256Hash");function pz(t){return typeof t<"u"&&t!==null}i(pz,"isDefined");function rst(t,e){if(!pz(t)||typeof t!="object")return!1;for(let r of e)if(!ffe(t,r))return!1;return!0}i(rst,"isObjectWithProperties");function ffe(t,e){return pz(t)&&typeof t=="object"&&e in t}i(ffe,"objectHasProperty");function nst(){let t="";for(let e=0;e<32;e++){let r=Math.floor(Math.random()*16);e===12?t+="4":e===16?t+=r&3|8:t+=r.toString(16),(e===7||e===11||e===15||e===19)&&(t+="-")}return t}i(nst,"generateUUID");var lz,uz=typeof((lz=globalThis?.crypto)===null||lz===void 0?void 0:lz.randomUUID)=="function"?globalThis.crypto.randomUUID.bind(globalThis.crypto):dz.randomUUID;uz||(uz=nst);function sst(){return uz()}i(sst,"randomUUID");ws.computeSha256Hash=tst;ws.computeSha256Hmac=est;ws.createAbortablePromise=dfe;ws.delay=Knt;ws.getErrorMessage=Znt;ws.getRandomIntegerInclusive=Xnt;ws.isDefined=pz;ws.isError=mfe;ws.isNode=jnt;ws.isObject=pfe;ws.isObjectWithProperties=rst;ws.objectHasProperty=ffe;ws.randomUUID=sst});var Lfe=b(Um=>{"use strict";Object.defineProperty(Um,"__esModule",{value:!0});var ost=lfe(),hfe=az(),ist=Afe(),Fm=ost.createClientLogger("core-lro"),yfe=2e3,Efe=["succeeded","canceled","failed"];function Cfe(t){try{return JSON.parse(t).state}catch{throw new Error(`Unable to deserialize input state: ${t}`)}}i(Cfe,"deserializeState");function gfe(t){let{state:e,stateProxy:r,isOperationError:n}=t;return s=>{throw n(s)&&(r.setError(e,s),r.setFailed(e)),s}}i(gfe,"setStateError");function ast(t,e){let r=t;return r.slice(-1)!=="."&&(r=r+"."),r+" "+e}i(ast,"appendReadableErrorMessage");function cst(t){let e=t.message,r=t.code,n=t;for(;n.innererror;)n=n.innererror,r=n.code,e=ast(e,n.message);return{code:r,message:e}}i(cst,"simplifyError");function Ife(t){let{state:e,stateProxy:r,status:n,isDone:s,processResult:o,getError:a,response:c,setErrorAsResult:l}=t;switch(n){case"succeeded":{r.setSucceeded(e);break}case"failed":{let u=a?.(c),d="";if(u){let{code:m,message:f}=cst(u);d=`. ${m}. ${f}`}let p=`The long-running operation has failed${d}`;r.setError(e,new Error(p)),r.setFailed(e),Fm.warning(p);break}case"canceled":{r.setCanceled(e);break}}(s?.(c,e)||s===void 0&&["succeeded","canceled"].concat(l?[]:["failed"]).includes(n))&&r.setResult(e,lst({response:c,state:e,processResult:o}))}i(Ife,"processOperationStatus");function lst(t){let{processResult:e,response:r,state:n}=t;return e?e(r,n):r}i(lst,"buildResult");async function xfe(t){let{init:e,stateProxy:r,processResult:n,getOperationStatus:s,withOperationLocation:o,setErrorAsResult:a}=t,{operationLocation:c,resourceLocation:l,metadata:u,response:d}=await e();c&&o?.(c,!1);let p={metadata:u,operationLocation:c,resourceLocation:l};Fm.verbose("LRO: Operation description:",p);let m=r.initState(p),f=s({response:d,state:m,operationLocation:c});return Ife({state:m,status:f,stateProxy:r,response:d,setErrorAsResult:a,processResult:n}),m}i(xfe,"initOperation");async function ust(t){let{poll:e,state:r,stateProxy:n,operationLocation:s,getOperationStatus:o,getResourceLocation:a,isOperationError:c,options:l}=t,u=await e(s,l).catch(gfe({state:r,stateProxy:n,isOperationError:c})),d=o(u,r);if(Fm.verbose(`LRO: Status: Polling from: ${r.config.operationLocation} - Operation status: ${u} - Polling status: ${yfe.includes(u)?"Stopped":"Running"}`),u==="succeeded"){let d=i(l,r);if(d!==void 0)return{response:await e(d).catch(hfe({state:r,stateProxy:n,isOperationError:a})),status:u}}return{response:l,status:u}}async function xfe(t){let{poll:e,state:r,stateProxy:n,options:s,getOperationStatus:o,getResourceLocation:i,getOperationLocation:a,isOperationError:c,withOperationLocation:l,getPollingInterval:u,processResult:d,getError:p,updateState:m,setDelay:h,isDone:y,setErrorAsResult:I}=t,{operationLocation:x}=r.config;if(x!==void 0){let{response:b,status:T}=await cst({poll:e,getOperationStatus:o,state:r,stateProxy:n,operationLocation:x,getResourceLocation:i,isOperationError:c,options:s});if(Cfe({status:T,response:b,state:r,stateProxy:n,isDone:y,processResult:d,getError:p,setErrorAsResult:I}),!yfe.includes(T)){let _=u?.(b);_&&h(_);let U=a?.(b,r);if(U!==void 0){let O=x!==U;r.config.operationLocation=U,l?.(U,O)}else l?.(x,!1)}m?.(r,b)}}function wfe(t){let{azureAsyncOperation:e,operationLocation:r}=t;return r??e}function bfe(t){return t.headers.location}function Sfe(t){return t.headers["operation-location"]}function Bfe(t){return t.headers["azure-asyncoperation"]}function lst(t){let{location:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t;switch(r){case"PUT":return n;case"DELETE":return;default:switch(s){case"azure-async-operation":return;case"original-uri":return n;default:return e}}}function Rfe(t){let{rawResponse:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t,o=Sfe(e),i=Bfe(e),a=wfe({operationLocation:o,azureAsyncOperation:i}),c=bfe(e),l=r?.toLocaleUpperCase();return a!==void 0?{mode:"OperationLocation",operationLocation:a,resourceLocation:lst({requestMethod:l,location:c,requestPath:n,resourceLocationConfig:s})}:c!==void 0?{mode:"ResourceLocation",operationLocation:c}:l==="PUT"&&n?{mode:"Body",operationLocation:n}:void 0}function Nfe(t){let{status:e,statusCode:r}=t;if(typeof e!="string"&&e!==void 0)throw new Error(`Polling was unsuccessful. Expected status to have a string value or no value but it has instead: ${e}. This doesn't necessarily indicate the operation has failed. Check your Azure subscription or resource status for more information.`);switch(e?.toLocaleLowerCase()){case void 0:return fz(r);case"succeeded":return"succeeded";case"failed":return"failed";case"running":case"accepted":case"started":case"canceling":case"cancelling":return"running";case"canceled":case"cancelled":return"canceled";default:return Mm.verbose(`LRO: unrecognized operation status: ${e}`),e}}function ust(t){var e;let{status:r}=(e=t.body)!==null&&e!==void 0?e:{};return Nfe({status:r,statusCode:t.statusCode})}function dst(t){var e,r;let{properties:n,provisioningState:s}=(e=t.body)!==null&&e!==void 0?e:{},o=(r=n?.provisioningState)!==null&&r!==void 0?r:s;return Nfe({status:o,statusCode:t.statusCode})}function fz(t){return t===202?"running":t<300?"succeeded":"failed"}function Tfe({rawResponse:t}){let e=t.headers["retry-after"];if(e!==void 0){let r=parseInt(e);return isNaN(r)?pst(new Date(e)):r*1e3}}function Pfe(t){let e=t.flatResponse.error;if(!e){Mm.warning("The long-running operation failed but there is no error property in the response's body");return}if(!e.code||!e.message){Mm.warning("The long-running operation failed but the error property in the response's body doesn't contain code or message");return}return e}function pst(t){let e=Math.floor(new Date().getTime()),r=t.getTime();if(e{let i=await s.sendInitialRequest(),a=Rfe({rawResponse:i.rawResponse,requestPath:s.requestPath,requestMethod:s.requestMethod,resourceLocationConfig:r});return Object.assign({response:i,operationLocation:a?.operationLocation,resourceLocation:a?.resourceLocation},a?.mode?{metadata:{mode:a.mode}}:{})},stateProxy:e,processResult:n?({flatResponse:i},a)=>n(i,a):({flatResponse:i})=>i,getOperationStatus:vfe,setErrorAsResult:o})}function _fe({rawResponse:t},e){var r;switch((r=e.config.metadata)===null||r===void 0?void 0:r.mode){case"OperationLocation":return wfe({operationLocation:Sfe(t),azureAsyncOperation:Bfe(t)});case"ResourceLocation":return bfe(t);default:return}}function Az({rawResponse:t},e){var r;let n=(r=e.config.metadata)===null||r===void 0?void 0:r.mode;switch(n){case"OperationLocation":return ust(t);case"ResourceLocation":return fz(t.statusCode);case"Body":return dst(t);default:throw new Error(`Internal error: Unexpected operation mode: ${n}`)}}function Qfe({flatResponse:t},e){if(typeof t=="object"){let r=t.resourceLocation;r!==void 0&&(e.config.resourceLocation=r)}return e.config.resourceLocation}function Dfe(t){return t.name==="RestError"}async function fst(t){let{lro:e,stateProxy:r,options:n,processResult:s,updateState:o,setDelay:i,state:a,setErrorAsResult:c}=t;return xfe({state:a,stateProxy:r,setDelay:i,processResult:s?({flatResponse:l},u)=>s(l,u):({flatResponse:l})=>l,getError:Pfe,updateState:o,getPollingInterval:Tfe,getOperationLocation:_fe,getOperationStatus:Az,isOperationError:Dfe,getResourceLocation:Qfe,options:n,poll:async(l,u)=>e.sendPollRequest(l,u),setErrorAsResult:c})}var Ast=()=>({initState:t=>({status:"running",config:t}),setCanceled:t=>t.status="canceled",setError:(t,e)=>t.error=e,setResult:(t,e)=>t.result=e,setRunning:t=>t.status="running",setSucceeded:t=>t.status="succeeded",setFailed:t=>t.status="failed",getError:t=>t.error,getResult:t=>t.result,isCanceled:t=>t.status==="canceled",isFailed:t=>t.status==="failed",isRunning:t=>t.status==="running",isSucceeded:t=>t.status==="succeeded"});function hst(t){let{getOperationLocation:e,getStatusFromInitialResponse:r,getStatusFromPollResponse:n,isOperationError:s,getResourceLocation:o,getPollingInterval:i,getError:a,resolveOnUnsuccessful:c}=t;return async({init:l,poll:u},d)=>{let{processResult:p,updateState:m,withOperationLocation:h,intervalInMs:y=gfe,restoreFrom:I}=d||{},x=Ast(),b=h?(()=>{let ne=!1;return(ge,G)=>{G?h(ge):ne||h(ge),ne=!0}})():void 0,T=I?Efe(I):await Ife({init:l,stateProxy:x,processResult:p,getOperationStatus:r,withOperationLocation:b,setErrorAsResult:!c}),_,U=new Afe.AbortController,O=new Map,z=async()=>O.forEach(ne=>ne(T)),de="Operation was canceled",De=y,Be={getOperationState:()=>T,getResult:()=>T.result,isDone:()=>["succeeded","failed","canceled"].includes(T.status),isStopped:()=>_===void 0,stopPolling:()=>{U.abort()},toString:()=>JSON.stringify({state:T}),onProgress:ne=>{let ge=Symbol();return O.set(ge,ne),()=>O.delete(ge)},pollUntilDone:ne=>_??(_=(async()=>{let{abortSignal:ge}=ne||{},{signal:G}=ge?new Afe.AbortController([ge,U.signal]):U;if(!Be.isDone())for(await Be.poll({abortSignal:G});!Be.isDone();)await sst.delay(De,{abortSignal:G}),await Be.poll({abortSignal:G});if(c)return Be.getResult();switch(T.status){case"succeeded":return Be.getResult();case"canceled":throw new Error(de);case"failed":throw T.error;case"notStarted":case"running":throw new Error("Polling completed without succeeding or failing")}})().finally(()=>{_=void 0})),async poll(ne){if(c){if(Be.isDone())return}else switch(T.status){case"succeeded":return;case"canceled":throw new Error(de);case"failed":throw T.error}if(await xfe({poll:u,state:T,stateProxy:x,getOperationLocation:e,isOperationError:s,withOperationLocation:b,getPollingInterval:i,getOperationStatus:n,getResourceLocation:o,processResult:p,getError:a,updateState:m,options:ne,setDelay:ge=>{De=ge},setErrorAsResult:!c}),await z(),!c)switch(T.status){case"canceled":throw new Error(de);case"failed":throw T.error}}};return Be}}async function gst(t,e){let{resourceLocationConfig:r,intervalInMs:n,processResult:s,restoreFrom:o,updateState:i,withOperationLocation:a,resolveOnUnsuccessful:c=!1}=e||{};return hst({getStatusFromInitialResponse:vfe,getStatusFromPollResponse:Az,isOperationError:Dfe,getOperationLocation:_fe,getResourceLocation:Qfe,getPollingInterval:Tfe,getError:Pfe,resolveOnUnsuccessful:c})({init:async()=>{let l=await t.sendInitialRequest(),u=Rfe({rawResponse:l.rawResponse,requestPath:t.requestPath,requestMethod:t.requestMethod,resourceLocationConfig:r});return Object.assign({response:l,operationLocation:u?.operationLocation,resourceLocation:u?.resourceLocation},u?.mode?{metadata:{mode:u.mode}}:{})},poll:t.sendPollRequest},{intervalInMs:n,withOperationLocation:a,restoreFrom:o,updateState:i,processResult:s?({flatResponse:l},u)=>s(l,u):({flatResponse:l})=>l})}var yst=()=>({initState:t=>({config:t,isStarted:!0}),setCanceled:t=>t.isCancelled=!0,setError:(t,e)=>t.error=e,setResult:(t,e)=>t.result=e,setRunning:t=>t.isStarted=!0,setSucceeded:t=>t.isCompleted=!0,setFailed:()=>{},getError:t=>t.error,getResult:t=>t.result,isCanceled:t=>!!t.isCancelled,isFailed:t=>!!t.error,isRunning:t=>!!t.isStarted,isSucceeded:t=>!!(t.isCompleted&&!t.isCancelled&&!t.error)}),pz=class{constructor(e,r,n,s,o,i,a){this.state=e,this.lro=r,this.setErrorAsResult=n,this.lroResourceLocationConfig=s,this.processResult=o,this.updateState=i,this.isDone=a}setPollerConfig(e){this.pollerConfig=e}async update(e){var r;let n=yst();this.state.isStarted||(this.state=Object.assign(Object.assign({},this.state),await mst({lro:this.lro,stateProxy:n,resourceLocationConfig:this.lroResourceLocationConfig,processResult:this.processResult,setErrorAsResult:this.setErrorAsResult})));let s=this.updateState,o=this.isDone;return!this.state.isCompleted&&this.state.error===void 0&&await fst({lro:this.lro,state:this.state,stateProxy:n,processResult:this.processResult,updateState:s?(i,{rawResponse:a})=>s(i,a):void 0,isDone:o?({flatResponse:i},a)=>o(i,a):void 0,options:e,setDelay:i=>{this.pollerConfig.intervalInMs=i},setErrorAsResult:this.setErrorAsResult}),(r=e?.fireProgress)===null||r===void 0||r.call(e,this.state),this}async cancel(){return Mm.error("`cancelOperation` is deprecated because it wasn't implemented"),this}toString(){return JSON.stringify({state:this.state})}},bN=class t extends Error{constructor(e){super(e),this.name="PollerStoppedError",Object.setPrototypeOf(this,t.prototype)}},SN=class t extends Error{constructor(e){super(e),this.name="PollerCancelledError",Object.setPrototypeOf(this,t.prototype)}},BN=class{constructor(e){this.resolveOnUnsuccessful=!1,this.stopped=!0,this.pollProgressCallbacks=[],this.operation=e,this.promise=new Promise((r,n)=>{this.resolve=r,this.reject=n}),this.promise.catch(()=>{})}async startPolling(e={}){for(this.stopped&&(this.stopped=!1);!this.isStopped()&&!this.isDone();)await this.poll(e),await this.delay()}async pollOnce(e={}){this.isDone()||(this.operation=await this.operation.update({abortSignal:e.abortSignal,fireProgress:this.fireProgress.bind(this)})),this.processUpdatedState()}fireProgress(e){for(let r of this.pollProgressCallbacks)r(e)}async cancelOnce(e={}){this.operation=await this.operation.cancel(e)}poll(e={}){if(!this.pollOncePromise){this.pollOncePromise=this.pollOnce(e);let r=()=>{this.pollOncePromise=void 0};this.pollOncePromise.then(r,r).catch(this.reject)}return this.pollOncePromise}processUpdatedState(){if(this.operation.state.error&&(this.stopped=!0,!this.resolveOnUnsuccessful))throw this.reject(this.operation.state.error),this.operation.state.error;if(this.operation.state.isCancelled&&(this.stopped=!0,!this.resolveOnUnsuccessful)){let e=new SN("Operation was canceled");throw this.reject(e),e}this.isDone()&&this.resolve&&this.resolve(this.getResult())}async pollUntilDone(e={}){return this.stopped&&this.startPolling(e).catch(this.reject),this.processUpdatedState(),this.promise}onProgress(e){return this.pollProgressCallbacks.push(e),()=>{this.pollProgressCallbacks=this.pollProgressCallbacks.filter(r=>r!==e)}}isDone(){let e=this.operation.state;return!!(e.isCompleted||e.isCancelled||e.error)}stopPolling(){this.stopped||(this.stopped=!0,this.reject&&this.reject(new bN("This poller is already stopped")))}isStopped(){return this.stopped}cancelOperation(e={}){if(!this.cancelPromise)this.cancelPromise=this.cancelOnce(e);else if(e.abortSignal)throw new Error("A cancel request is currently pending");return this.cancelPromise}getOperationState(){return this.operation.state}getResult(){return this.operation.state.result}toString(){return this.operation.toString()}},mz=class extends BN{constructor(e,r){let{intervalInMs:n=gfe,resumeFrom:s,resolveOnUnsuccessful:o=!1,isDone:i,lroResourceLocationConfig:a,processResult:c,updateState:l}=r||{},u=s?Efe(s):{},d=new pz(u,e,!o,a,c,l,i);super(d),this.resolveOnUnsuccessful=o,this.config={intervalInMs:n},d.setPollerConfig(this.config)}delay(){return new Promise(e=>setTimeout(()=>e(),this.config.intervalInMs))}};Fm.LroEngine=mz;Fm.Poller=BN;Fm.PollerCancelledError=SN;Fm.PollerStoppedError=bN;Fm.createHttpPoller=gst});var eAe=w((AZt,Fst)=>{Fst.exports={name:"@actions/cache",version:"6.0.1",description:"Actions cache lib",keywords:["github","actions","cache"],homepage:"https://github.com/actions/toolkit/tree/main/packages/cache",license:"MIT",type:"module",main:"lib/cache.js",types:"lib/cache.d.ts",exports:{".":{types:"./lib/cache.d.ts",import:"./lib/cache.js"}},directories:{lib:"lib",test:"__tests__"},files:["lib","!.DS_Store"],publishConfig:{access:"public"},repository:{type:"git",url:"git+https://github.com/actions/toolkit.git",directory:"packages/cache"},scripts:{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json",test:'echo "Error: run tests from root" && exit 1',tsc:"tsc && cp src/internal/shared/package-version.cjs lib/internal/shared/"},bugs:{url:"https://github.com/actions/toolkit/issues"},dependencies:{"@actions/core":"^3.0.1","@actions/exec":"^3.0.0","@actions/glob":"^0.6.1","@actions/http-client":"^4.0.1","@actions/io":"^3.0.2","@azure/core-rest-pipeline":"^1.23.0","@azure/storage-blob":"^12.31.0","@protobuf-ts/runtime-rpc":"^2.11.1",semver:"^7.7.4"},devDependencies:{"@protobuf-ts/plugin":"^2.11.1","@types/node":"^25.6.0","@types/semver":"^7.7.1",typescript:"^5.9.3"},overrides:{"uri-js":"npm:uri-js-replace@^1.0.1","node-fetch":"^3.3.2"}}});var rAe=w((hZt,tAe)=>{var Ust=eAe();tAe.exports={version:Ust.version}});var FN=w(zh=>{"use strict";Object.defineProperty(zh,"__esModule",{value:!0});zh.isJsonObject=zh.typeofJsonValue=void 0;function Wst(t){let e=typeof t;if(e=="object"){if(Array.isArray(t))return"array";if(t===null)return"null"}return e}zh.typeofJsonValue=Wst;function jst(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}zh.isJsonObject=jst});var qN=w(Vh=>{"use strict";Object.defineProperty(Vh,"__esModule",{value:!0});Vh.base64encode=Vh.base64decode=void 0;var iu="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),UN=[];for(let t=0;t>4,i=o,s=2;break;case 2:r[n++]=(i&15)<<4|(o&60)>>2,i=o,s=3;break;case 3:r[n++]=(i&3)<<6|o,s=0;break}}if(s==1)throw Error("invalid base64 string.");return r.subarray(0,n)}Vh.base64decode=Jst;function Kst(t){let e="",r=0,n,s=0;for(let o=0;o>2],s=(n&3)<<4,r=1;break;case 1:e+=iu[s|n>>4],s=(n&15)<<2,r=2;break;case 2:e+=iu[s|n>>6],e+=iu[n&63],r=0;break}return r&&(e+=iu[s],e+="=",r==1&&(e+="=")),e}Vh.base64encode=Kst});var cAe=w($N=>{"use strict";Object.defineProperty($N,"__esModule",{value:!0});$N.utf8read=void 0;var Sz=t=>String.fromCharCode.apply(String,t);function Xst(t){if(t.length<1)return"";let e=0,r=[],n=[],s=0,o,i=t.length;for(;e191&&o<224?n[s++]=(o&31)<<6|t[e++]&63:o>239&&o<365?(o=((o&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,n[s++]=55296+(o>>10),n[s++]=56320+(o&1023)):n[s++]=(o&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&(r.push(Sz(n)),s=0);return r.length?(s&&r.push(Sz(n.slice(0,s))),r.join("")):Sz(n.slice(0,s))}$N.utf8read=Xst});var SI=w(Pc=>{"use strict";Object.defineProperty(Pc,"__esModule",{value:!0});Pc.WireType=Pc.mergeBinaryOptions=Pc.UnknownFieldHandler=void 0;var Zst;(function(t){t.symbol=Symbol.for("protobuf-ts/unknown"),t.onRead=(r,n,s,o,i)=>{(e(n)?n[t.symbol]:n[t.symbol]=[]).push({no:s,wireType:o,data:i})},t.onWrite=(r,n,s)=>{for(let{no:o,wireType:i,data:a}of t.list(n))s.tag(o,i).raw(a)},t.list=(r,n)=>{if(e(r)){let s=r[t.symbol];return n?s.filter(o=>o.no==n):s}return[]},t.last=(r,n)=>t.list(r,n).slice(-1)[0];let e=r=>r&&Array.isArray(r[t.symbol])})(Zst=Pc.UnknownFieldHandler||(Pc.UnknownFieldHandler={}));function eot(t,e){return Object.assign(Object.assign({},t),e)}Pc.mergeBinaryOptions=eot;var tot;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(tot=Pc.WireType||(Pc.WireType={}))});var HN=w(Zs=>{"use strict";Object.defineProperty(Zs,"__esModule",{value:!0});Zs.varint32read=Zs.varint32write=Zs.int64toString=Zs.int64fromString=Zs.varint64write=Zs.varint64read=void 0;function rot(){let t=0,e=0;for(let n=0;n<28;n+=7){let s=this.buf[this.pos++];if(t|=(s&127)<>4,(r&128)==0)return this.assertBounds(),[t,e];for(let n=3;n<=31;n+=7){let s=this.buf[this.pos++];if(e|=(s&127)<>>o,a=!(!(i>>>7)&&e==0),c=(a?i|128:i)&255;if(r.push(c),!a)return}let n=t>>>28&15|(e&7)<<4,s=e>>3!=0;if(r.push((s?n|128:n)&255),!!s){for(let o=3;o<31;o=o+7){let i=e>>>o,a=!!(i>>>7),c=(a?i|128:i)&255;if(r.push(c),!a)return}r.push(e>>>31&1)}}Zs.varint64write=not;var GN=65536*65536;function sot(t){let e=t[0]=="-";e&&(t=t.slice(1));let r=1e6,n=0,s=0;function o(i,a){let c=Number(t.slice(i,a));s*=r,n=n*r+c,n>=GN&&(s=s+(n/GN|0),n=n%GN)}return o(-24,-18),o(-18,-12),o(-12,-6),o(-6),[e,n,s]}Zs.int64fromString=sot;function oot(t,e){if(e>>>0<=2097151)return""+(GN*e+(t>>>0));let r=t&16777215,n=(t>>>24|e<<8)>>>0&16777215,s=e>>16&65535,o=r+n*6777216+s*6710656,i=n+s*8147497,a=s*2,c=1e7;o>=c&&(i+=Math.floor(o/c),o%=c),i>=c&&(a+=Math.floor(i/c),i%=c);function l(u,d){let p=u?String(u):"";return d?"0000000".slice(p.length)+p:p}return l(a,0)+l(i,a)+l(o,1)}Zs.int64toString=oot;function iot(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t=t>>>7;e.push(t)}else{for(let r=0;r<9;r++)e.push(t&127|128),t=t>>7;e.push(1)}}Zs.varint32write=iot;function aot(){let t=this.buf[this.pos++],e=t&127;if((t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<7,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<14,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<21,(t&128)==0)return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let r=5;(t&128)!==0&&r<10;r++)t=this.buf[this.pos++];if((t&128)!=0)throw new Error("invalid varint");return this.assertBounds(),e>>>0}Zs.varint32read=aot});var _d=w(vd=>{"use strict";Object.defineProperty(vd,"__esModule",{value:!0});vd.PbLong=vd.PbULong=vd.detectBi=void 0;var BI=HN(),Ot;function lAe(){let t=new DataView(new ArrayBuffer(8));Ot=globalThis.BigInt!==void 0&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"?{MIN:BigInt("-9223372036854775808"),MAX:BigInt("9223372036854775807"),UMIN:BigInt("0"),UMAX:BigInt("18446744073709551615"),C:BigInt,V:t}:void 0}vd.detectBi=lAe;lAe();function uAe(t){if(!t)throw new Error("BigInt unavailable, see https://github.com/timostamm/protobuf-ts/blob/v1.0.8/MANUAL.md#bigint-support")}var dAe=/^-?[0-9]+$/,VN=4294967296,zN=2147483648,YN=class{constructor(e,r){this.lo=e|0,this.hi=r|0}isZero(){return this.lo==0&&this.hi==0}toNumber(){let e=this.hi*VN+(this.lo>>>0);if(!Number.isSafeInteger(e))throw new Error("cannot convert to safe number");return e}},RI=class t extends YN{static from(e){if(Ot)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=Ot.C(e);case"number":if(e===0)return this.ZERO;e=Ot.C(e);case"bigint":if(!e)return this.ZERO;if(eOt.UMAX)throw new Error("ulong too large");return Ot.V.setBigUint64(0,e,!0),new t(Ot.V.getInt32(0,!0),Ot.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!dAe.test(e))throw new Error("string is no integer");let[r,n,s]=BI.int64fromString(e);if(r)throw new Error("signed value for ulong");return new t(n,s);case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");if(e<0)throw new Error("signed value for ulong");return new t(e,e/VN)}throw new Error("unknown value "+typeof e)}toString(){return Ot?this.toBigInt().toString():BI.int64toString(this.lo,this.hi)}toBigInt(){return uAe(Ot),Ot.V.setInt32(0,this.lo,!0),Ot.V.setInt32(4,this.hi,!0),Ot.V.getBigUint64(0,!0)}};vd.PbULong=RI;RI.ZERO=new RI(0,0);var NI=class t extends YN{static from(e){if(Ot)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=Ot.C(e);case"number":if(e===0)return this.ZERO;e=Ot.C(e);case"bigint":if(!e)return this.ZERO;if(eOt.MAX)throw new Error("signed long too large");return Ot.V.setBigInt64(0,e,!0),new t(Ot.V.getInt32(0,!0),Ot.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!dAe.test(e))throw new Error("string is no integer");let[r,n,s]=BI.int64fromString(e);if(r){if(s>zN||s==zN&&n!=0)throw new Error("signed long too small")}else if(s>=zN)throw new Error("signed long too large");let o=new t(n,s);return r?o.negate():o;case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");return e>0?new t(e,e/VN):new t(-e,-e/VN).negate()}throw new Error("unknown value "+typeof e)}isNegative(){return(this.hi&zN)!==0}negate(){let e=~this.hi,r=this.lo;return r?r=~r+1:e+=1,new t(r,e)}toString(){if(Ot)return this.toBigInt().toString();if(this.isNegative()){let e=this.negate();return"-"+BI.int64toString(e.lo,e.hi)}return BI.int64toString(this.lo,this.hi)}toBigInt(){return uAe(Ot),Ot.V.setInt32(0,this.lo,!0),Ot.V.setInt32(4,this.hi,!0),Ot.V.getBigInt64(0,!0)}};vd.PbLong=NI;NI.ZERO=new NI(0,0)});var Bz=w(Wh=>{"use strict";Object.defineProperty(Wh,"__esModule",{value:!0});Wh.BinaryReader=Wh.binaryReadOptions=void 0;var Yh=SI(),TI=_d(),pAe=HN(),mAe={readUnknownField:!0,readerFactory:t=>new WN(t)};function cot(t){return t?Object.assign(Object.assign({},mAe),t):mAe}Wh.binaryReadOptions=cot;var WN=class{constructor(e,r){this.varint64=pAe.varint64read,this.uint32=pAe.varint32read,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=r??new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0})}tag(){let e=this.uint32(),r=e>>>3,n=e&7;if(r<=0||n<0||n>5)throw new Error("illegal tag: field no "+r+" wire type "+n);return[r,n]}skip(e){let r=this.pos;switch(e){case Yh.WireType.Varint:for(;this.buf[this.pos++]&128;);break;case Yh.WireType.Bit64:this.pos+=4;case Yh.WireType.Bit32:this.pos+=4;break;case Yh.WireType.LengthDelimited:let n=this.uint32();this.pos+=n;break;case Yh.WireType.StartGroup:let s;for(;(s=this.tag()[1])!==Yh.WireType.EndGroup;)this.skip(s);break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return new TI.PbLong(...this.varint64())}uint64(){return new TI.PbULong(...this.varint64())}sint64(){let[e,r]=this.varint64(),n=-(e&1);return e=(e>>>1|(r&1)<<31)^n,r=r>>>1^n,new TI.PbLong(e,r)}bool(){let[e,r]=this.varint64();return e!==0||r!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return new TI.PbULong(this.sfixed32(),this.sfixed32())}sfixed64(){return new TI.PbLong(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),r=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(r,r+e)}string(){return this.textDecoder.decode(this.bytes())}};Wh.BinaryReader=WN});var jh=w(wi=>{"use strict";Object.defineProperty(wi,"__esModule",{value:!0});wi.assertFloat32=wi.assertUInt32=wi.assertInt32=wi.assertNever=wi.assert=void 0;function lot(t,e){if(!t)throw new Error(e)}wi.assert=lot;function uot(t,e){throw new Error(e??"Unexpected object: "+t)}wi.assertNever=uot;var dot=34028234663852886e22,pot=-34028234663852886e22,mot=4294967295,fot=2147483647,Aot=-2147483648;function hot(t){if(typeof t!="number")throw new Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>fot||tmot||t<0)throw new Error("invalid uint 32: "+t)}wi.assertUInt32=got;function yot(t){if(typeof t!="number")throw new Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>dot||t{"use strict";Object.defineProperty(Kh,"__esModule",{value:!0});Kh.BinaryWriter=Kh.binaryWriteOptions=void 0;var PI=_d(),vI=HN(),Jh=jh(),fAe={writeUnknownFields:!0,writerFactory:()=>new jN};function Eot(t){return t?Object.assign(Object.assign({},fAe),t):fAe}Kh.binaryWriteOptions=Eot;var jN=class{constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let s=0;s>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Jh.assertUInt32(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return Jh.assertInt32(e),vI.varint32write(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let r=this.textEncoder.encode(e);return this.uint32(r.byteLength),this.raw(r)}float(e){Jh.assertFloat32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setFloat32(0,e,!0),this.raw(r)}double(e){let r=new Uint8Array(8);return new DataView(r.buffer).setFloat64(0,e,!0),this.raw(r)}fixed32(e){Jh.assertUInt32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setUint32(0,e,!0),this.raw(r)}sfixed32(e){Jh.assertInt32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setInt32(0,e,!0),this.raw(r)}sint32(e){return Jh.assertInt32(e),e=(e<<1^e>>31)>>>0,vI.varint32write(e,this.buf),this}sfixed64(e){let r=new Uint8Array(8),n=new DataView(r.buffer),s=PI.PbLong.from(e);return n.setInt32(0,s.lo,!0),n.setInt32(4,s.hi,!0),this.raw(r)}fixed64(e){let r=new Uint8Array(8),n=new DataView(r.buffer),s=PI.PbULong.from(e);return n.setInt32(0,s.lo,!0),n.setInt32(4,s.hi,!0),this.raw(r)}int64(e){let r=PI.PbLong.from(e);return vI.varint64write(r.lo,r.hi,this.buf),this}sint64(e){let r=PI.PbLong.from(e),n=r.hi>>31,s=r.lo<<1^n,o=(r.hi<<1|r.lo>>>31)^n;return vI.varint64write(s,o,this.buf),this}uint64(e){let r=PI.PbULong.from(e);return vI.varint64write(r.lo,r.hi,this.buf),this}};Kh.BinaryWriter=jN});var Nz=w(Qd=>{"use strict";Object.defineProperty(Qd,"__esModule",{value:!0});Qd.mergeJsonOptions=Qd.jsonWriteOptions=Qd.jsonReadOptions=void 0;var AAe={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0},hAe={ignoreUnknownFields:!1};function Cot(t){return t?Object.assign(Object.assign({},hAe),t):hAe}Qd.jsonReadOptions=Cot;function Iot(t){return t?Object.assign(Object.assign({},AAe),t):AAe}Qd.jsonWriteOptions=Iot;function xot(t,e){var r,n;let s=Object.assign(Object.assign({},t),e);return s.typeRegistry=[...(r=t?.typeRegistry)!==null&&r!==void 0?r:[],...(n=e?.typeRegistry)!==null&&n!==void 0?n:[]],s}Qd.mergeJsonOptions=xot});var _I=w(JN=>{"use strict";Object.defineProperty(JN,"__esModule",{value:!0});JN.MESSAGE_TYPE=void 0;JN.MESSAGE_TYPE=Symbol.for("protobuf-ts/message-type")});var Tz=w(KN=>{"use strict";Object.defineProperty(KN,"__esModule",{value:!0});KN.lowerCamelCase=void 0;function wot(t){let e=!1,r=[];for(let n=0;n{"use strict";Object.defineProperty(an,"__esModule",{value:!0});an.readMessageOption=an.readFieldOption=an.readFieldOptions=an.normalizeFieldInfo=an.RepeatType=an.LongType=an.ScalarType=void 0;var gAe=Tz(),bot;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})(bot=an.ScalarType||(an.ScalarType={}));var Sot;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING",t[t.NUMBER=2]="NUMBER"})(Sot=an.LongType||(an.LongType={}));var yAe;(function(t){t[t.NO=0]="NO",t[t.PACKED=1]="PACKED",t[t.UNPACKED=2]="UNPACKED"})(yAe=an.RepeatType||(an.RepeatType={}));function Bot(t){var e,r,n,s;return t.localName=(e=t.localName)!==null&&e!==void 0?e:gAe.lowerCamelCase(t.name),t.jsonName=(r=t.jsonName)!==null&&r!==void 0?r:gAe.lowerCamelCase(t.name),t.repeat=(n=t.repeat)!==null&&n!==void 0?n:yAe.NO,t.opt=(s=t.opt)!==null&&s!==void 0?s:t.repeat||t.oneof?!1:t.kind=="message",t}an.normalizeFieldInfo=Bot;function Rot(t,e,r,n){var s;let o=(s=t.fields.find((i,a)=>i.localName==e||a==e))===null||s===void 0?void 0:s.options;return o&&o[r]?n.fromJson(o[r]):void 0}an.readFieldOptions=Rot;function Not(t,e,r,n){var s;let o=(s=t.fields.find((a,c)=>a.localName==e||c==e))===null||s===void 0?void 0:s.options;if(!o)return;let i=o[r];return i===void 0?i:n?n.fromJson(i):i}an.readFieldOption=Not;function Tot(t,e,r){let s=t.options[e];return s===void 0?s:r?r.fromJson(s):s}an.readMessageOption=Tot});var Pz=w(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});eo.getSelectedOneofValue=eo.clearOneofValue=eo.setUnknownOneofValue=eo.setOneofValue=eo.getOneofValue=eo.isOneofGroup=void 0;function Pot(t){if(typeof t!="object"||t===null||!t.hasOwnProperty("oneofKind"))return!1;switch(typeof t.oneofKind){case"string":return t[t.oneofKind]===void 0?!1:Object.keys(t).length==2;case"undefined":return Object.keys(t).length==1;default:return!1}}eo.isOneofGroup=Pot;function vot(t,e){return t[e]}eo.getOneofValue=vot;function _ot(t,e,r){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=e,r!==void 0&&(t[e]=r)}eo.setOneofValue=_ot;function Qot(t,e,r){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=e,r!==void 0&&e!==void 0&&(t[e]=r)}eo.setUnknownOneofValue=Qot;function Dot(t){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=void 0}eo.clearOneofValue=Dot;function kot(t){if(t.oneofKind!==void 0)return t[t.oneofKind]}eo.getSelectedOneofValue=kot});var _z=w(XN=>{"use strict";Object.defineProperty(XN,"__esModule",{value:!0});XN.ReflectionTypeCheck=void 0;var Sr=Aa(),Lot=Pz(),vz=class{constructor(e){var r;this.fields=(r=e.fields)!==null&&r!==void 0?r:[]}prepare(){if(this.data)return;let e=[],r=[],n=[];for(let s of this.fields)if(s.oneof)n.includes(s.oneof)||(n.push(s.oneof),e.push(s.oneof),r.push(s.oneof));else switch(r.push(s.localName),s.kind){case"scalar":case"enum":(!s.opt||s.repeat)&&e.push(s.localName);break;case"message":s.repeat&&e.push(s.localName);break;case"map":e.push(s.localName);break}this.data={req:e,known:r,oneofs:Object.values(n)}}is(e,r,n=!1){if(r<0)return!0;if(e==null||typeof e!="object")return!1;this.prepare();let s=Object.keys(e),o=this.data;if(s.length!s.includes(i))||!n&&s.some(i=>!o.known.includes(i)))return!1;if(r<1)return!0;for(let i of o.oneofs){let a=e[i];if(!Lot.isOneofGroup(a))return!1;if(a.oneofKind===void 0)continue;let c=this.fields.find(l=>l.localName===a.oneofKind);if(!c||!this.field(a[a.oneofKind],c,n,r))return!1}for(let i of this.fields)if(i.oneof===void 0&&!this.field(e[i.localName],i,n,r))return!1;return!0}field(e,r,n,s){let o=r.repeat;switch(r.kind){case"scalar":return e===void 0?r.opt:o?this.scalars(e,r.T,s,r.L):this.scalar(e,r.T,r.L);case"enum":return e===void 0?r.opt:o?this.scalars(e,Sr.ScalarType.INT32,s):this.scalar(e,Sr.ScalarType.INT32);case"message":return e===void 0?!0:o?this.messages(e,r.T(),n,s):this.message(e,r.T(),n,s);case"map":if(typeof e!="object"||e===null)return!1;if(s<2)return!0;if(!this.mapKeys(e,r.K,s))return!1;switch(r.V.kind){case"scalar":return this.scalars(Object.values(e),r.V.T,s,r.V.L);case"enum":return this.scalars(Object.values(e),Sr.ScalarType.INT32,s);case"message":return this.messages(Object.values(e),r.V.T(),n,s)}break}return!0}message(e,r,n,s){return n?r.isAssignable(e,s):r.is(e,s)}messages(e,r,n,s){if(!Array.isArray(e))return!1;if(s<2)return!0;if(n){for(let o=0;oparseInt(o)),r,n);case Sr.ScalarType.BOOL:return this.scalars(s.slice(0,n).map(o=>o=="true"?!0:o=="false"?!1:o),r,n);default:return this.scalars(s,r,n,Sr.LongType.STRING)}}};XN.ReflectionTypeCheck=vz});var eT=w(ZN=>{"use strict";Object.defineProperty(ZN,"__esModule",{value:!0});ZN.reflectionLongConvert=void 0;var EAe=Aa();function Oot(t,e){switch(e){case EAe.LongType.BIGINT:return t.toBigInt();case EAe.LongType.NUMBER:return t.toNumber();default:return t.toString()}}ZN.reflectionLongConvert=Oot});var Dz=w(nT=>{"use strict";Object.defineProperty(nT,"__esModule",{value:!0});nT.ReflectionJsonReader=void 0;var CAe=FN(),Mot=qN(),cn=Aa(),tT=_d(),qm=jh(),rT=eT(),Qz=class{constructor(e){this.info=e}prepare(){var e;if(this.fMap===void 0){this.fMap={};let r=(e=this.info.fields)!==null&&e!==void 0?e:[];for(let n of r)this.fMap[n.name]=n,this.fMap[n.jsonName]=n,this.fMap[n.localName]=n}}assert(e,r,n){if(!e){let s=CAe.typeofJsonValue(n);throw(s=="number"||s=="boolean")&&(s=n.toString()),new Error(`Cannot parse JSON ${s} for ${this.info.typeName}#${r}`)}}read(e,r,n){this.prepare();let s=[];for(let[o,i]of Object.entries(e)){let a=this.fMap[o];if(!a){if(!n.ignoreUnknownFields)throw new Error(`Found unknown field while reading ${this.info.typeName} from JSON format. JSON key: ${o}`);continue}let c=a.localName,l;if(a.oneof){if(i===null&&(a.kind!=="enum"||a.T()[0]!=="google.protobuf.NullValue"))continue;if(s.includes(a.oneof))throw new Error(`Multiple members of the oneof group "${a.oneof}" of ${this.info.typeName} are present in JSON.`);s.push(a.oneof),l=r[a.oneof]={oneofKind:c}}else l=r;if(a.kind=="map"){if(i===null)continue;this.assert(CAe.isJsonObject(i),a.name,i);let u=l[c];for(let[d,p]of Object.entries(i)){this.assert(p!==null,a.name+" map value",null);let m;switch(a.V.kind){case"message":m=a.V.T().internalJsonRead(p,n);break;case"enum":if(m=this.enum(a.V.T(),p,a.name,n.ignoreUnknownFields),m===!1)continue;break;case"scalar":m=this.scalar(p,a.V.T,a.V.L,a.name);break}this.assert(m!==void 0,a.name+" map value",p);let h=d;a.K==cn.ScalarType.BOOL&&(h=h=="true"?!0:h=="false"?!1:h),h=this.scalar(h,a.K,cn.LongType.STRING,a.name).toString(),u[h]=m}}else if(a.repeat){if(i===null)continue;this.assert(Array.isArray(i),a.name,i);let u=l[c];for(let d of i){this.assert(d!==null,a.name,null);let p;switch(a.kind){case"message":p=a.T().internalJsonRead(d,n);break;case"enum":if(p=this.enum(a.T(),d,a.name,n.ignoreUnknownFields),p===!1)continue;break;case"scalar":p=this.scalar(d,a.T,a.L,a.name);break}this.assert(p!==void 0,a.name,i),u.push(p)}}else switch(a.kind){case"message":if(i===null&&a.T().typeName!="google.protobuf.Value"){this.assert(a.oneof===void 0,a.name+" (oneof member)",null);continue}l[c]=a.T().internalJsonRead(i,n,l[c]);break;case"enum":if(i===null)continue;let u=this.enum(a.T(),i,a.name,n.ignoreUnknownFields);if(u===!1)continue;l[c]=u;break;case"scalar":if(i===null)continue;l[c]=this.scalar(i,a.T,a.L,a.name);break}}}enum(e,r,n,s){if(e[0]=="google.protobuf.NullValue"&&qm.assert(r===null||r==="NULL_VALUE",`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} only accepts null.`),r===null)return 0;switch(typeof r){case"number":return qm.assert(Number.isInteger(r),`Unable to parse field ${this.info.typeName}#${n}, enum can only be integral number, got ${r}.`),r;case"string":let o=r;e[2]&&r.substring(0,e[2].length)===e[2]&&(o=r.substring(e[2].length));let i=e[1][o];return typeof i>"u"&&s?!1:(qm.assert(typeof i=="number",`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} has no value for "${r}".`),i)}qm.assert(!1,`Unable to parse field ${this.info.typeName}#${n}, cannot parse enum value from ${typeof r}".`)}scalar(e,r,n,s){let o;try{switch(r){case cn.ScalarType.DOUBLE:case cn.ScalarType.FLOAT:if(e===null)return 0;if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""){o="empty string";break}if(typeof e=="string"&&e.trim().length!==e.length){o="extra whitespace";break}if(typeof e!="string"&&typeof e!="number")break;let i=Number(e);if(Number.isNaN(i)){o="not a number";break}if(!Number.isFinite(i)){o="too large or small";break}return r==cn.ScalarType.FLOAT&&qm.assertFloat32(i),i;case cn.ScalarType.INT32:case cn.ScalarType.FIXED32:case cn.ScalarType.SFIXED32:case cn.ScalarType.SINT32:case cn.ScalarType.UINT32:if(e===null)return 0;let a;if(typeof e=="number"?a=e:e===""?o="empty string":typeof e=="string"&&(e.trim().length!==e.length?o="extra whitespace":a=Number(e)),a===void 0)break;return r==cn.ScalarType.UINT32?qm.assertUInt32(a):qm.assertInt32(a),a;case cn.ScalarType.INT64:case cn.ScalarType.SFIXED64:case cn.ScalarType.SINT64:if(e===null)return rT.reflectionLongConvert(tT.PbLong.ZERO,n);if(typeof e!="number"&&typeof e!="string")break;return rT.reflectionLongConvert(tT.PbLong.from(e),n);case cn.ScalarType.FIXED64:case cn.ScalarType.UINT64:if(e===null)return rT.reflectionLongConvert(tT.PbULong.ZERO,n);if(typeof e!="number"&&typeof e!="string")break;return rT.reflectionLongConvert(tT.PbULong.from(e),n);case cn.ScalarType.BOOL:if(e===null)return!1;if(typeof e!="boolean")break;return e;case cn.ScalarType.STRING:if(e===null)return"";if(typeof e!="string"){o="extra whitespace";break}try{encodeURIComponent(e)}catch(c){c="invalid UTF8";break}return e;case cn.ScalarType.BYTES:if(e===null||e==="")return new Uint8Array(0);if(typeof e!="string")break;return Mot.base64decode(e)}}catch(i){o=i.message}this.assert(!1,s+(o?" - "+o:""),e)}};nT.ReflectionJsonReader=Qz});var Lz=w(sT=>{"use strict";Object.defineProperty(sT,"__esModule",{value:!0});sT.ReflectionJsonWriter=void 0;var Fot=qN(),IAe=_d(),ws=Aa(),nr=jh(),kz=class{constructor(e){var r;this.fields=(r=e.fields)!==null&&r!==void 0?r:[]}write(e,r){let n={},s=e;for(let o of this.fields){if(!o.oneof){let l=this.field(o,s[o.localName],r);l!==void 0&&(n[r.useProtoFieldName?o.name:o.jsonName]=l);continue}let i=s[o.oneof];if(i.oneofKind!==o.localName)continue;let a=o.kind=="scalar"||o.kind=="enum"?Object.assign(Object.assign({},r),{emitDefaultValues:!0}):r,c=this.field(o,i[o.localName],a);nr.assert(c!==void 0),n[r.useProtoFieldName?o.name:o.jsonName]=c}return n}field(e,r,n){let s;if(e.kind=="map"){nr.assert(typeof r=="object"&&r!==null);let o={};switch(e.V.kind){case"scalar":for(let[c,l]of Object.entries(r)){let u=this.scalar(e.V.T,l,e.name,!1,!0);nr.assert(u!==void 0),o[c.toString()]=u}break;case"message":let i=e.V.T();for(let[c,l]of Object.entries(r)){let u=this.message(i,l,e.name,n);nr.assert(u!==void 0),o[c.toString()]=u}break;case"enum":let a=e.V.T();for(let[c,l]of Object.entries(r)){nr.assert(l===void 0||typeof l=="number");let u=this.enum(a,l,e.name,!1,!0,n.enumAsInteger);nr.assert(u!==void 0),o[c.toString()]=u}break}(n.emitDefaultValues||Object.keys(o).length>0)&&(s=o)}else if(e.repeat){nr.assert(Array.isArray(r));let o=[];switch(e.kind){case"scalar":for(let c=0;c0||n.emitDefaultValues)&&(s=o)}else switch(e.kind){case"scalar":s=this.scalar(e.T,r,e.name,e.opt,n.emitDefaultValues);break;case"enum":s=this.enum(e.T(),r,e.name,e.opt,n.emitDefaultValues,n.enumAsInteger);break;case"message":s=this.message(e.T(),r,e.name,n);break}return s}enum(e,r,n,s,o,i){if(e[0]=="google.protobuf.NullValue")return!o&&!s?void 0:null;if(r===void 0){nr.assert(s);return}if(!(r===0&&!o&&!s))return nr.assert(typeof r=="number"),nr.assert(Number.isInteger(r)),i||!e[1].hasOwnProperty(r)?r:e[2]?e[2]+e[1][r]:e[1][r]}message(e,r,n,s){return r===void 0?s.emitDefaultValues?null:void 0:e.internalJsonWrite(r,s)}scalar(e,r,n,s,o){if(r===void 0){nr.assert(s);return}let i=o||s;switch(e){case ws.ScalarType.INT32:case ws.ScalarType.SFIXED32:case ws.ScalarType.SINT32:return r===0?i?0:void 0:(nr.assertInt32(r),r);case ws.ScalarType.FIXED32:case ws.ScalarType.UINT32:return r===0?i?0:void 0:(nr.assertUInt32(r),r);case ws.ScalarType.FLOAT:nr.assertFloat32(r);case ws.ScalarType.DOUBLE:return r===0?i?0:void 0:(nr.assert(typeof r=="number"),Number.isNaN(r)?"NaN":r===Number.POSITIVE_INFINITY?"Infinity":r===Number.NEGATIVE_INFINITY?"-Infinity":r);case ws.ScalarType.STRING:return r===""?i?"":void 0:(nr.assert(typeof r=="string"),r);case ws.ScalarType.BOOL:return r===!1?i?!1:void 0:(nr.assert(typeof r=="boolean"),r);case ws.ScalarType.UINT64:case ws.ScalarType.FIXED64:nr.assert(typeof r=="number"||typeof r=="string"||typeof r=="bigint");let a=IAe.PbULong.from(r);return a.isZero()&&!i?void 0:a.toString();case ws.ScalarType.INT64:case ws.ScalarType.SFIXED64:case ws.ScalarType.SINT64:nr.assert(typeof r=="number"||typeof r=="string"||typeof r=="bigint");let c=IAe.PbLong.from(r);return c.isZero()&&!i?void 0:c.toString();case ws.ScalarType.BYTES:return nr.assert(r instanceof Uint8Array),r.byteLength?Fot.base64encode(r):i?"":void 0}}};sT.ReflectionJsonWriter=kz});var iT=w(oT=>{"use strict";Object.defineProperty(oT,"__esModule",{value:!0});oT.reflectionScalarDefault=void 0;var ha=Aa(),xAe=eT(),wAe=_d();function Uot(t,e=ha.LongType.STRING){switch(t){case ha.ScalarType.BOOL:return!1;case ha.ScalarType.UINT64:case ha.ScalarType.FIXED64:return xAe.reflectionLongConvert(wAe.PbULong.ZERO,e);case ha.ScalarType.INT64:case ha.ScalarType.SFIXED64:case ha.ScalarType.SINT64:return xAe.reflectionLongConvert(wAe.PbLong.ZERO,e);case ha.ScalarType.DOUBLE:case ha.ScalarType.FLOAT:return 0;case ha.ScalarType.BYTES:return new Uint8Array(0);case ha.ScalarType.STRING:return"";default:return 0}}oT.reflectionScalarDefault=Uot});var Mz=w(aT=>{"use strict";Object.defineProperty(aT,"__esModule",{value:!0});aT.ReflectionBinaryReader=void 0;var bAe=SI(),Lr=Aa(),QI=eT(),SAe=iT(),Oz=class{constructor(e){this.info=e}prepare(){var e;if(!this.fieldNoToField){let r=(e=this.info.fields)!==null&&e!==void 0?e:[];this.fieldNoToField=new Map(r.map(n=>[n.no,n]))}}read(e,r,n,s){this.prepare();let o=s===void 0?e.len:e.pos+s;for(;e.pos{"use strict";Object.defineProperty(cT,"__esModule",{value:!0});cT.ReflectionBinaryWriter=void 0;var Mo=SI(),Ht=Aa(),Xh=jh(),DI=_d(),Fz=class{constructor(e){this.info=e}prepare(){if(!this.fields){let e=this.info.fields?this.info.fields.concat():[];this.fields=e.sort((r,n)=>r.no-n.no)}}write(e,r,n){this.prepare();for(let o of this.fields){let i,a,c=o.repeat,l=o.localName;if(o.oneof){let u=e[o.oneof];if(u.oneofKind!==l)continue;i=u[l],a=!0}else i=e[l],a=!1;switch(o.kind){case"scalar":case"enum":let u=o.kind=="enum"?Ht.ScalarType.INT32:o.T;if(c)if(Xh.assert(Array.isArray(i)),c==Ht.RepeatType.PACKED)this.packed(r,u,o.no,i);else for(let d of i)this.scalar(r,u,o.no,d,!0);else i===void 0?Xh.assert(o.opt):this.scalar(r,u,o.no,i,a||o.opt);break;case"message":if(c){Xh.assert(Array.isArray(i));for(let d of i)this.message(r,n,o.T(),o.no,d)}else this.message(r,n,o.T(),o.no,i);break;case"map":Xh.assert(typeof i=="object"&&i!==null);for(let[d,p]of Object.entries(i))this.mapEntry(r,n,o,d,p);break}}let s=n.writeUnknownFields;s!==!1&&(s===!0?Mo.UnknownFieldHandler.onWrite:s)(this.info.typeName,e,r)}mapEntry(e,r,n,s,o){e.tag(n.no,Mo.WireType.LengthDelimited),e.fork();let i=s;switch(n.K){case Ht.ScalarType.INT32:case Ht.ScalarType.FIXED32:case Ht.ScalarType.UINT32:case Ht.ScalarType.SFIXED32:case Ht.ScalarType.SINT32:i=Number.parseInt(s);break;case Ht.ScalarType.BOOL:Xh.assert(s=="true"||s=="false"),i=s=="true";break}switch(this.scalar(e,n.K,1,i,!0),n.V.kind){case"scalar":this.scalar(e,n.V.T,2,o,!0);break;case"enum":this.scalar(e,Ht.ScalarType.INT32,2,o,!0);break;case"message":this.message(e,r,n.V.T(),2,o);break}e.join()}message(e,r,n,s,o){o!==void 0&&(n.internalBinaryWrite(o,e.tag(s,Mo.WireType.LengthDelimited).fork(),r),e.join())}scalar(e,r,n,s,o){let[i,a,c]=this.scalarInfo(r,s);(!c||o)&&(e.tag(n,i),e[a](s))}packed(e,r,n,s){if(!s.length)return;Xh.assert(r!==Ht.ScalarType.BYTES&&r!==Ht.ScalarType.STRING),e.tag(n,Mo.WireType.LengthDelimited),e.fork();let[,o]=this.scalarInfo(r);for(let i=0;i{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.reflectionCreate=void 0;var qot=iT(),$ot=_I();function Got(t){let e=t.messagePrototype?Object.create(t.messagePrototype):Object.defineProperty({},$ot.MESSAGE_TYPE,{value:t});for(let r of t.fields){let n=r.localName;if(!r.opt)if(r.oneof)e[r.oneof]={oneofKind:void 0};else if(r.repeat)e[n]=[];else switch(r.kind){case"scalar":e[n]=qot.reflectionScalarDefault(r.T,r.L);break;case"enum":e[n]=0;break;case"map":e[n]={};break}}return e}lT.reflectionCreate=Got});var $z=w(uT=>{"use strict";Object.defineProperty(uT,"__esModule",{value:!0});uT.reflectionMergePartial=void 0;function Hot(t,e,r){let n,s=r,o;for(let i of t.fields){let a=i.localName;if(i.oneof){let c=s[i.oneof];if(c?.oneofKind==null)continue;if(n=c[a],o=e[i.oneof],o.oneofKind=c.oneofKind,n==null){delete o[a];continue}}else if(n=s[a],o=e,n==null)continue;switch(i.repeat&&(o[a].length=n.length),i.kind){case"scalar":case"enum":if(i.repeat)for(let l=0;l{"use strict";Object.defineProperty(pT,"__esModule",{value:!0});pT.reflectionEquals=void 0;var Gz=Aa();function zot(t,e,r){if(e===r)return!0;if(!e||!r)return!1;for(let n of t.fields){let s=n.localName,o=n.oneof?e[n.oneof][s]:e[s],i=n.oneof?r[n.oneof][s]:r[s];switch(n.kind){case"enum":case"scalar":let a=n.kind=="enum"?Gz.ScalarType.INT32:n.T;if(!(n.repeat?BAe(a,o,i):NAe(a,o,i)))return!1;break;case"map":if(!(n.V.kind=="message"?RAe(n.V.T(),dT(o),dT(i)):BAe(n.V.kind=="enum"?Gz.ScalarType.INT32:n.V.T,dT(o),dT(i))))return!1;break;case"message":let c=n.T();if(!(n.repeat?RAe(c,o,i):c.equals(o,i)))return!1;break}}return!0}pT.reflectionEquals=zot;var dT=Object.values;function NAe(t,e,r){if(e===r)return!0;if(t!==Gz.ScalarType.BYTES)return!1;let n=e,s=r;if(n.length!==s.length)return!1;for(let o=0;o{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.MessageType=void 0;var Vot=_I(),Yot=Aa(),Wot=_z(),jot=Dz(),Jot=Lz(),Kot=Mz(),Xot=Uz(),Zot=qz(),zz=$z(),eit=FN(),TAe=Nz(),tit=Hz(),rit=Rz(),nit=Bz(),PAe=Object.getOwnPropertyDescriptors(Object.getPrototypeOf({})),sit=PAe[Vot.MESSAGE_TYPE]={},Vz=class{constructor(e,r,n){this.defaultCheckDepth=16,this.typeName=e,this.fields=r.map(Yot.normalizeFieldInfo),this.options=n??{},sit.value=this,this.messagePrototype=Object.create(null,PAe),this.refTypeCheck=new Wot.ReflectionTypeCheck(this),this.refJsonReader=new jot.ReflectionJsonReader(this),this.refJsonWriter=new Jot.ReflectionJsonWriter(this),this.refBinReader=new Kot.ReflectionBinaryReader(this),this.refBinWriter=new Xot.ReflectionBinaryWriter(this)}create(e){let r=Zot.reflectionCreate(this);return e!==void 0&&zz.reflectionMergePartial(this,r,e),r}clone(e){let r=this.create();return zz.reflectionMergePartial(this,r,e),r}equals(e,r){return tit.reflectionEquals(this,e,r)}is(e,r=this.defaultCheckDepth){return this.refTypeCheck.is(e,r,!1)}isAssignable(e,r=this.defaultCheckDepth){return this.refTypeCheck.is(e,r,!0)}mergePartial(e,r){zz.reflectionMergePartial(this,e,r)}fromBinary(e,r){let n=nit.binaryReadOptions(r);return this.internalBinaryRead(n.readerFactory(e),e.byteLength,n)}fromJson(e,r){return this.internalJsonRead(e,TAe.jsonReadOptions(r))}fromJsonString(e,r){let n=JSON.parse(e);return this.fromJson(n,r)}toJson(e,r){return this.internalJsonWrite(e,TAe.jsonWriteOptions(r))}toJsonString(e,r){var n;let s=this.toJson(e,r);return JSON.stringify(s,null,(n=r?.prettySpaces)!==null&&n!==void 0?n:0)}toBinary(e,r){let n=rit.binaryWriteOptions(r);return this.internalBinaryWrite(e,n.writerFactory(),n).finish()}internalJsonRead(e,r,n){if(e!==null&&typeof e=="object"&&!Array.isArray(e)){let s=n??this.create();return this.refJsonReader.read(e,s,r),s}throw new Error(`Unable to parse message ${this.typeName} from JSON ${eit.typeofJsonValue(e)}.`)}internalJsonWrite(e,r){return this.refJsonWriter.write(e,r)}internalBinaryWrite(e,r,n){return this.refBinWriter.write(e,r,n),r}internalBinaryRead(e,r,n,s){let o=s??this.create();return this.refBinReader.read(e,o,n,r),o}};mT.MessageType=Vz});var _Ae=w(fT=>{"use strict";Object.defineProperty(fT,"__esModule",{value:!0});fT.containsMessageType=void 0;var oit=_I();function iit(t){return t[oit.MESSAGE_TYPE]!=null}fT.containsMessageType=iit});var DAe=w(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.listEnumNumbers=vc.listEnumNames=vc.listEnumValues=vc.isEnumObject=void 0;function QAe(t){if(typeof t!="object"||t===null||!t.hasOwnProperty(0))return!1;for(let e of Object.keys(t)){let r=parseInt(e);if(Number.isNaN(r)){let n=t[e];if(n===void 0||typeof n!="number"||t[n]===void 0)return!1}else{let n=t[r];if(n===void 0||t[n]!==r)return!1}}return!0}vc.isEnumObject=QAe;function Yz(t){if(!QAe(t))throw new Error("not a typescript enum object");let e=[];for(let[r,n]of Object.entries(t))typeof n=="number"&&e.push({name:r,number:n});return e}vc.listEnumValues=Yz;function ait(t){return Yz(t).map(e=>e.name)}vc.listEnumNames=ait;function cit(t){return Yz(t).map(e=>e.number).filter((e,r,n)=>n.indexOf(e)==r)}vc.listEnumNumbers=cit});var Or=w(Te=>{"use strict";Object.defineProperty(Te,"__esModule",{value:!0});var kAe=FN();Object.defineProperty(Te,"typeofJsonValue",{enumerable:!0,get:function(){return kAe.typeofJsonValue}});Object.defineProperty(Te,"isJsonObject",{enumerable:!0,get:function(){return kAe.isJsonObject}});var LAe=qN();Object.defineProperty(Te,"base64decode",{enumerable:!0,get:function(){return LAe.base64decode}});Object.defineProperty(Te,"base64encode",{enumerable:!0,get:function(){return LAe.base64encode}});var lit=cAe();Object.defineProperty(Te,"utf8read",{enumerable:!0,get:function(){return lit.utf8read}});var Wz=SI();Object.defineProperty(Te,"WireType",{enumerable:!0,get:function(){return Wz.WireType}});Object.defineProperty(Te,"mergeBinaryOptions",{enumerable:!0,get:function(){return Wz.mergeBinaryOptions}});Object.defineProperty(Te,"UnknownFieldHandler",{enumerable:!0,get:function(){return Wz.UnknownFieldHandler}});var OAe=Bz();Object.defineProperty(Te,"BinaryReader",{enumerable:!0,get:function(){return OAe.BinaryReader}});Object.defineProperty(Te,"binaryReadOptions",{enumerable:!0,get:function(){return OAe.binaryReadOptions}});var MAe=Rz();Object.defineProperty(Te,"BinaryWriter",{enumerable:!0,get:function(){return MAe.BinaryWriter}});Object.defineProperty(Te,"binaryWriteOptions",{enumerable:!0,get:function(){return MAe.binaryWriteOptions}});var FAe=_d();Object.defineProperty(Te,"PbLong",{enumerable:!0,get:function(){return FAe.PbLong}});Object.defineProperty(Te,"PbULong",{enumerable:!0,get:function(){return FAe.PbULong}});var jz=Nz();Object.defineProperty(Te,"jsonReadOptions",{enumerable:!0,get:function(){return jz.jsonReadOptions}});Object.defineProperty(Te,"jsonWriteOptions",{enumerable:!0,get:function(){return jz.jsonWriteOptions}});Object.defineProperty(Te,"mergeJsonOptions",{enumerable:!0,get:function(){return jz.mergeJsonOptions}});var uit=_I();Object.defineProperty(Te,"MESSAGE_TYPE",{enumerable:!0,get:function(){return uit.MESSAGE_TYPE}});var dit=vAe();Object.defineProperty(Te,"MessageType",{enumerable:!0,get:function(){return dit.MessageType}});var $m=Aa();Object.defineProperty(Te,"ScalarType",{enumerable:!0,get:function(){return $m.ScalarType}});Object.defineProperty(Te,"LongType",{enumerable:!0,get:function(){return $m.LongType}});Object.defineProperty(Te,"RepeatType",{enumerable:!0,get:function(){return $m.RepeatType}});Object.defineProperty(Te,"normalizeFieldInfo",{enumerable:!0,get:function(){return $m.normalizeFieldInfo}});Object.defineProperty(Te,"readFieldOptions",{enumerable:!0,get:function(){return $m.readFieldOptions}});Object.defineProperty(Te,"readFieldOption",{enumerable:!0,get:function(){return $m.readFieldOption}});Object.defineProperty(Te,"readMessageOption",{enumerable:!0,get:function(){return $m.readMessageOption}});var pit=_z();Object.defineProperty(Te,"ReflectionTypeCheck",{enumerable:!0,get:function(){return pit.ReflectionTypeCheck}});var mit=qz();Object.defineProperty(Te,"reflectionCreate",{enumerable:!0,get:function(){return mit.reflectionCreate}});var fit=iT();Object.defineProperty(Te,"reflectionScalarDefault",{enumerable:!0,get:function(){return fit.reflectionScalarDefault}});var Ait=$z();Object.defineProperty(Te,"reflectionMergePartial",{enumerable:!0,get:function(){return Ait.reflectionMergePartial}});var hit=Hz();Object.defineProperty(Te,"reflectionEquals",{enumerable:!0,get:function(){return hit.reflectionEquals}});var git=Mz();Object.defineProperty(Te,"ReflectionBinaryReader",{enumerable:!0,get:function(){return git.ReflectionBinaryReader}});var yit=Uz();Object.defineProperty(Te,"ReflectionBinaryWriter",{enumerable:!0,get:function(){return yit.ReflectionBinaryWriter}});var Eit=Dz();Object.defineProperty(Te,"ReflectionJsonReader",{enumerable:!0,get:function(){return Eit.ReflectionJsonReader}});var Cit=Lz();Object.defineProperty(Te,"ReflectionJsonWriter",{enumerable:!0,get:function(){return Cit.ReflectionJsonWriter}});var Iit=_Ae();Object.defineProperty(Te,"containsMessageType",{enumerable:!0,get:function(){return Iit.containsMessageType}});var kI=Pz();Object.defineProperty(Te,"isOneofGroup",{enumerable:!0,get:function(){return kI.isOneofGroup}});Object.defineProperty(Te,"setOneofValue",{enumerable:!0,get:function(){return kI.setOneofValue}});Object.defineProperty(Te,"getOneofValue",{enumerable:!0,get:function(){return kI.getOneofValue}});Object.defineProperty(Te,"clearOneofValue",{enumerable:!0,get:function(){return kI.clearOneofValue}});Object.defineProperty(Te,"getSelectedOneofValue",{enumerable:!0,get:function(){return kI.getSelectedOneofValue}});var AT=DAe();Object.defineProperty(Te,"listEnumValues",{enumerable:!0,get:function(){return AT.listEnumValues}});Object.defineProperty(Te,"listEnumNames",{enumerable:!0,get:function(){return AT.listEnumNames}});Object.defineProperty(Te,"listEnumNumbers",{enumerable:!0,get:function(){return AT.listEnumNumbers}});Object.defineProperty(Te,"isEnumObject",{enumerable:!0,get:function(){return AT.isEnumObject}});var xit=Tz();Object.defineProperty(Te,"lowerCamelCase",{enumerable:!0,get:function(){return xit.lowerCamelCase}});var LI=jh();Object.defineProperty(Te,"assert",{enumerable:!0,get:function(){return LI.assert}});Object.defineProperty(Te,"assertNever",{enumerable:!0,get:function(){return LI.assertNever}});Object.defineProperty(Te,"assertInt32",{enumerable:!0,get:function(){return LI.assertInt32}});Object.defineProperty(Te,"assertUInt32",{enumerable:!0,get:function(){return LI.assertUInt32}});Object.defineProperty(Te,"assertFloat32",{enumerable:!0,get:function(){return LI.assertFloat32}})});var Jz=w(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.readServiceOption=_c.readMethodOption=_c.readMethodOptions=_c.normalizeMethodInfo=void 0;var wit=Or();function bit(t,e){var r,n,s;let o=t;return o.service=e,o.localName=(r=o.localName)!==null&&r!==void 0?r:wit.lowerCamelCase(o.name),o.serverStreaming=!!o.serverStreaming,o.clientStreaming=!!o.clientStreaming,o.options=(n=o.options)!==null&&n!==void 0?n:{},o.idempotency=(s=o.idempotency)!==null&&s!==void 0?s:void 0,o}_c.normalizeMethodInfo=bit;function Sit(t,e,r,n){var s;let o=(s=t.methods.find((i,a)=>i.localName===e||a===e))===null||s===void 0?void 0:s.options;return o&&o[r]?n.fromJson(o[r]):void 0}_c.readMethodOptions=Sit;function Bit(t,e,r,n){var s;let o=(s=t.methods.find((a,c)=>a.localName===e||c===e))===null||s===void 0?void 0:s.options;if(!o)return;let i=o[r];return i===void 0?i:n?n.fromJson(i):i}_c.readMethodOption=Bit;function Rit(t,e,r){let n=t.options;if(!n)return;let s=n[e];return s===void 0?s:r?r.fromJson(s):s}_c.readServiceOption=Rit});var UAe=w(hT=>{"use strict";Object.defineProperty(hT,"__esModule",{value:!0});hT.ServiceType=void 0;var Nit=Jz(),Kz=class{constructor(e,r,n){this.typeName=e,this.methods=r.map(s=>Nit.normalizeMethodInfo(s,this)),this.options=n??{}}};hT.ServiceType=Kz});var Zz=w(gT=>{"use strict";Object.defineProperty(gT,"__esModule",{value:!0});gT.RpcError=void 0;var Xz=class extends Error{constructor(e,r="UNKNOWN",n){super(e),this.name="RpcError",Object.setPrototypeOf(this,new.target.prototype),this.code=r,this.meta=n??{}}toString(){let e=[this.name+": "+this.message];this.code&&(e.push(""),e.push("Code: "+this.code)),this.serviceName&&this.methodName&&e.push("Method: "+this.serviceName+"/"+this.methodName);let r=Object.entries(this.meta);if(r.length){e.push(""),e.push("Meta:");for(let[n,s]of r)e.push(` ${n}: ${s}`)}return e.join(` -`)}};gT.RpcError=Xz});var e3=w(ET=>{"use strict";Object.defineProperty(ET,"__esModule",{value:!0});ET.mergeRpcOptions=void 0;var qAe=Or();function Tit(t,e){if(!e)return t;let r={};yT(t,r),yT(e,r);for(let n of Object.keys(e)){let s=e[n];switch(n){case"jsonOptions":r.jsonOptions=qAe.mergeJsonOptions(t.jsonOptions,r.jsonOptions);break;case"binaryOptions":r.binaryOptions=qAe.mergeBinaryOptions(t.binaryOptions,r.binaryOptions);break;case"meta":r.meta={},yT(t.meta,r.meta),yT(e.meta,r.meta);break;case"interceptors":r.interceptors=t.interceptors?t.interceptors.concat(s):s.concat();break}}return r}ET.mergeRpcOptions=Tit;function yT(t,e){if(!t)return;let r=e;for(let[n,s]of Object.entries(t))s instanceof Date?r[n]=new Date(s.getTime()):Array.isArray(s)?r[n]=s.concat():r[n]=s}});var r3=w(Gm=>{"use strict";Object.defineProperty(Gm,"__esModule",{value:!0});Gm.Deferred=Gm.DeferredState=void 0;var Qc;(function(t){t[t.PENDING=0]="PENDING",t[t.REJECTED=1]="REJECTED",t[t.RESOLVED=2]="RESOLVED"})(Qc=Gm.DeferredState||(Gm.DeferredState={}));var t3=class{constructor(e=!0){this._state=Qc.PENDING,this._promise=new Promise((r,n)=>{this._resolve=r,this._reject=n}),e&&this._promise.catch(r=>{})}get state(){return this._state}get promise(){return this._promise}resolve(e){if(this.state!==Qc.PENDING)throw new Error(`cannot resolve ${Qc[this.state].toLowerCase()}`);this._resolve(e),this._state=Qc.RESOLVED}reject(e){if(this.state!==Qc.PENDING)throw new Error(`cannot reject ${Qc[this.state].toLowerCase()}`);this._reject(e),this._state=Qc.REJECTED}resolvePending(e){this._state===Qc.PENDING&&this.resolve(e)}rejectPending(e){this._state===Qc.PENDING&&this.reject(e)}};Gm.Deferred=t3});var s3=w(CT=>{"use strict";Object.defineProperty(CT,"__esModule",{value:!0});CT.RpcOutputStreamController=void 0;var $Ae=r3(),Hm=Or(),n3=class{constructor(){this._lis={nxt:[],msg:[],err:[],cmp:[]},this._closed=!1,this._itState={q:[]}}onNext(e){return this.addLis(e,this._lis.nxt)}onMessage(e){return this.addLis(e,this._lis.msg)}onError(e){return this.addLis(e,this._lis.err)}onComplete(e){return this.addLis(e,this._lis.cmp)}addLis(e,r){return r.push(e),()=>{let n=r.indexOf(e);n>=0&&r.splice(n,1)}}clearLis(){for(let e of Object.values(this._lis))e.splice(0,e.length)}get closed(){return this._closed!==!1}notifyNext(e,r,n){Hm.assert((e?1:0)+(r?1:0)+(n?1:0)<=1,"only one emission at a time"),e&&this.notifyMessage(e),r&&this.notifyError(r),n&&this.notifyComplete()}notifyMessage(e){Hm.assert(!this.closed,"stream is closed"),this.pushIt({value:e,done:!1}),this._lis.msg.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(e,void 0,!1))}notifyError(e){Hm.assert(!this.closed,"stream is closed"),this._closed=e,this.pushIt(e),this._lis.err.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(void 0,e,!1)),this.clearLis()}notifyComplete(){Hm.assert(!this.closed,"stream is closed"),this._closed=!0,this.pushIt({value:null,done:!0}),this._lis.cmp.forEach(e=>e()),this._lis.nxt.forEach(e=>e(void 0,void 0,!0)),this.clearLis()}[Symbol.asyncIterator](){return this._closed===!0?this.pushIt({value:null,done:!0}):this._closed!==!1&&this.pushIt(this._closed),{next:()=>{let e=this._itState;Hm.assert(e,"bad state"),Hm.assert(!e.p,"iterator contract broken");let r=e.q.shift();return r?"value"in r?Promise.resolve(r):Promise.reject(r):(e.p=new $Ae.Deferred,e.p.promise)}}}pushIt(e){let r=this._itState;if(r.p){let n=r.p;Hm.assert(n.state==$Ae.DeferredState.PENDING,"iterator contract broken"),"value"in e?n.resolve(e):n.reject(e),delete r.p}else r.q.push(e)}};CT.RpcOutputStreamController=n3});var i3=w(Zh=>{"use strict";var Pit=Zh&&Zh.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};Object.defineProperty(Zh,"__esModule",{value:!0});Zh.UnaryCall=void 0;var o3=class{constructor(e,r,n,s,o,i,a){this.method=e,this.requestHeaders=r,this.request=n,this.headers=s,this.response=o,this.status=i,this.trailers=a}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return Pit(this,void 0,void 0,function*(){let[e,r,n,s]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,response:r,status:n,trailers:s}})}};Zh.UnaryCall=o3});var c3=w(eg=>{"use strict";var vit=eg&&eg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};Object.defineProperty(eg,"__esModule",{value:!0});eg.ServerStreamingCall=void 0;var a3=class{constructor(e,r,n,s,o,i,a){this.method=e,this.requestHeaders=r,this.request=n,this.headers=s,this.responses=o,this.status=i,this.trailers=a}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return vit(this,void 0,void 0,function*(){let[e,r,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,status:r,trailers:n}})}};eg.ServerStreamingCall=a3});var u3=w(tg=>{"use strict";var _it=tg&&tg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};Object.defineProperty(tg,"__esModule",{value:!0});tg.ClientStreamingCall=void 0;var l3=class{constructor(e,r,n,s,o,i,a){this.method=e,this.requestHeaders=r,this.requests=n,this.headers=s,this.response=o,this.status=i,this.trailers=a}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return _it(this,void 0,void 0,function*(){let[e,r,n,s]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,response:r,status:n,trailers:s}})}};tg.ClientStreamingCall=l3});var p3=w(rg=>{"use strict";var Qit=rg&&rg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};Object.defineProperty(rg,"__esModule",{value:!0});rg.DuplexStreamingCall=void 0;var d3=class{constructor(e,r,n,s,o,i,a){this.method=e,this.requestHeaders=r,this.requests=n,this.headers=s,this.responses=o,this.status=i,this.trailers=a}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return Qit(this,void 0,void 0,function*(){let[e,r,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,status:r,trailers:n}})}};rg.DuplexStreamingCall=d3});var HAe=w(og=>{"use strict";var Dit=og&&og.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};Object.defineProperty(og,"__esModule",{value:!0});og.TestTransport=void 0;var bi=Zz(),IT=Or(),GAe=s3(),kit=e3(),Lit=i3(),Oit=c3(),Mit=u3(),Fit=p3(),sg=class t{constructor(e){this.suppressUncaughtRejections=!0,this.headerDelay=10,this.responseDelay=50,this.betweenResponseDelay=10,this.afterResponseDelay=10,this.data=e??{}}get sentMessages(){return this.lastInput instanceof ng?this.lastInput.sent:typeof this.lastInput=="object"?[this.lastInput.single]:[]}get sendComplete(){return this.lastInput instanceof ng?this.lastInput.completed:typeof this.lastInput=="object"}promiseHeaders(){var e;let r=(e=this.data.headers)!==null&&e!==void 0?e:t.defaultHeaders;return r instanceof bi.RpcError?Promise.reject(r):Promise.resolve(r)}promiseSingleResponse(e){if(this.data.response instanceof bi.RpcError)return Promise.reject(this.data.response);let r;return Array.isArray(this.data.response)?(IT.assert(this.data.response.length>0),r=this.data.response[0]):this.data.response!==void 0?r=this.data.response:r=e.O.create(),IT.assert(e.O.is(r)),Promise.resolve(r)}streamResponses(e,r,n){return Dit(this,void 0,void 0,function*(){let s=[];if(this.data.response===void 0)s.push(e.O.create());else if(Array.isArray(this.data.response))for(let o of this.data.response)IT.assert(e.O.is(o)),s.push(o);else this.data.response instanceof bi.RpcError||(IT.assert(e.O.is(this.data.response)),s.push(this.data.response));try{yield Cn(this.responseDelay,n)(void 0)}catch(o){r.notifyError(o);return}if(this.data.response instanceof bi.RpcError){r.notifyError(this.data.response);return}for(let o of s){r.notifyMessage(o);try{yield Cn(this.betweenResponseDelay,n)(void 0)}catch(i){r.notifyError(i);return}}if(this.data.status instanceof bi.RpcError){r.notifyError(this.data.status);return}if(this.data.trailers instanceof bi.RpcError){r.notifyError(this.data.trailers);return}r.notifyComplete()})}promiseStatus(){var e;let r=(e=this.data.status)!==null&&e!==void 0?e:t.defaultStatus;return r instanceof bi.RpcError?Promise.reject(r):Promise.resolve(r)}promiseTrailers(){var e;let r=(e=this.data.trailers)!==null&&e!==void 0?e:t.defaultTrailers;return r instanceof bi.RpcError?Promise.reject(r):Promise.resolve(r)}maybeSuppressUncaught(...e){if(this.suppressUncaughtRejections)for(let r of e)r.catch(()=>{})}mergeOptions(e){return kit.mergeRpcOptions({},e)}unary(e,r,n){var s;let o=(s=n.meta)!==null&&s!==void 0?s:{},i=this.promiseHeaders().then(Cn(this.headerDelay,n.abort)),a=i.catch(u=>{}).then(Cn(this.responseDelay,n.abort)).then(u=>this.promiseSingleResponse(e)),c=a.catch(u=>{}).then(Cn(this.afterResponseDelay,n.abort)).then(u=>this.promiseStatus()),l=a.catch(u=>{}).then(Cn(this.afterResponseDelay,n.abort)).then(u=>this.promiseTrailers());return this.maybeSuppressUncaught(c,l),this.lastInput={single:r},new Lit.UnaryCall(e,o,r,i,a,c,l)}serverStreaming(e,r,n){var s;let o=(s=n.meta)!==null&&s!==void 0?s:{},i=this.promiseHeaders().then(Cn(this.headerDelay,n.abort)),a=new GAe.RpcOutputStreamController,c=i.then(Cn(this.responseDelay,n.abort)).catch(()=>{}).then(()=>this.streamResponses(e,a,n.abort)).then(Cn(this.afterResponseDelay,n.abort)),l=c.then(()=>this.promiseStatus()),u=c.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(l,u),this.lastInput={single:r},new Oit.ServerStreamingCall(e,o,r,i,a,l,u)}clientStreaming(e,r){var n;let s=(n=r.meta)!==null&&n!==void 0?n:{},o=this.promiseHeaders().then(Cn(this.headerDelay,r.abort)),i=o.catch(l=>{}).then(Cn(this.responseDelay,r.abort)).then(l=>this.promiseSingleResponse(e)),a=i.catch(l=>{}).then(Cn(this.afterResponseDelay,r.abort)).then(l=>this.promiseStatus()),c=i.catch(l=>{}).then(Cn(this.afterResponseDelay,r.abort)).then(l=>this.promiseTrailers());return this.maybeSuppressUncaught(a,c),this.lastInput=new ng(this.data,r.abort),new Mit.ClientStreamingCall(e,s,this.lastInput,o,i,a,c)}duplex(e,r){var n;let s=(n=r.meta)!==null&&n!==void 0?n:{},o=this.promiseHeaders().then(Cn(this.headerDelay,r.abort)),i=new GAe.RpcOutputStreamController,a=o.then(Cn(this.responseDelay,r.abort)).catch(()=>{}).then(()=>this.streamResponses(e,i,r.abort)).then(Cn(this.afterResponseDelay,r.abort)),c=a.then(()=>this.promiseStatus()),l=a.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(c,l),this.lastInput=new ng(this.data,r.abort),new Fit.DuplexStreamingCall(e,s,this.lastInput,o,i,c,l)}};og.TestTransport=sg;sg.defaultHeaders={responseHeader:"test"};sg.defaultStatus={code:"OK",detail:"all good"};sg.defaultTrailers={responseTrailer:"test"};function Cn(t,e){return r=>new Promise((n,s)=>{if(e?.aborted)s(new bi.RpcError("user cancel","CANCELLED"));else{let o=setTimeout(()=>n(r),t);e&&e.addEventListener("abort",i=>{clearTimeout(o),s(new bi.RpcError("user cancel","CANCELLED"))})}})}var ng=class{constructor(e,r){this._completed=!1,this._sent=[],this.data=e,this.abort=r}get sent(){return this._sent}get completed(){return this._completed}send(e){if(this.data.inputMessage instanceof bi.RpcError)return Promise.reject(this.data.inputMessage);let r=this.data.inputMessage===void 0?10:this.data.inputMessage;return Promise.resolve(void 0).then(()=>{this._sent.push(e)}).then(Cn(r,this.abort))}complete(){if(this.data.inputComplete instanceof bi.RpcError)return Promise.reject(this.data.inputComplete);let e=this.data.inputComplete===void 0?10:this.data.inputComplete;return Promise.resolve(void 0).then(()=>{this._completed=!0}).then(Cn(e,this.abort))}}});var zAe=w(Si=>{"use strict";Object.defineProperty(Si,"__esModule",{value:!0});Si.stackDuplexStreamingInterceptors=Si.stackClientStreamingInterceptors=Si.stackServerStreamingInterceptors=Si.stackUnaryInterceptors=Si.stackIntercept=void 0;var Uit=Or();function OI(t,e,r,n,s){var o,i,a,c;if(t=="unary"){let l=(u,d,p)=>e.unary(u,d,p);for(let u of((o=n.interceptors)!==null&&o!==void 0?o:[]).filter(d=>d.interceptUnary).reverse()){let d=l;l=(p,m,h)=>u.interceptUnary(d,p,m,h)}return l(r,s,n)}if(t=="serverStreaming"){let l=(u,d,p)=>e.serverStreaming(u,d,p);for(let u of((i=n.interceptors)!==null&&i!==void 0?i:[]).filter(d=>d.interceptServerStreaming).reverse()){let d=l;l=(p,m,h)=>u.interceptServerStreaming(d,p,m,h)}return l(r,s,n)}if(t=="clientStreaming"){let l=(u,d)=>e.clientStreaming(u,d);for(let u of((a=n.interceptors)!==null&&a!==void 0?a:[]).filter(d=>d.interceptClientStreaming).reverse()){let d=l;l=(p,m)=>u.interceptClientStreaming(d,p,m)}return l(r,n)}if(t=="duplex"){let l=(u,d)=>e.duplex(u,d);for(let u of((c=n.interceptors)!==null&&c!==void 0?c:[]).filter(d=>d.interceptDuplex).reverse()){let d=l;l=(p,m)=>u.interceptDuplex(d,p,m)}return l(r,n)}Uit.assertNever(t)}Si.stackIntercept=OI;function qit(t,e,r,n){return OI("unary",t,e,n,r)}Si.stackUnaryInterceptors=qit;function $it(t,e,r,n){return OI("serverStreaming",t,e,n,r)}Si.stackServerStreamingInterceptors=$it;function Git(t,e,r){return OI("clientStreaming",t,e,r)}Si.stackClientStreamingInterceptors=Git;function Hit(t,e,r){return OI("duplex",t,e,r)}Si.stackDuplexStreamingInterceptors=Hit});var VAe=w(xT=>{"use strict";Object.defineProperty(xT,"__esModule",{value:!0});xT.ServerCallContextController=void 0;var m3=class{constructor(e,r,n,s,o={code:"OK",detail:""}){this._cancelled=!1,this._listeners=[],this.method=e,this.headers=r,this.deadline=n,this.trailers={},this._sendRH=s,this.status=o}notifyCancelled(){if(!this._cancelled){this._cancelled=!0;for(let e of this._listeners)e()}}sendResponseHeaders(e){this._sendRH(e)}get cancelled(){return this._cancelled}onCancel(e){let r=this._listeners;return r.push(e),()=>{let n=r.indexOf(e);n>=0&&r.splice(n,1)}}};xT.ServerCallContextController=m3});var WAe=w(Br=>{"use strict";Object.defineProperty(Br,"__esModule",{value:!0});var zit=UAe();Object.defineProperty(Br,"ServiceType",{enumerable:!0,get:function(){return zit.ServiceType}});var f3=Jz();Object.defineProperty(Br,"readMethodOptions",{enumerable:!0,get:function(){return f3.readMethodOptions}});Object.defineProperty(Br,"readMethodOption",{enumerable:!0,get:function(){return f3.readMethodOption}});Object.defineProperty(Br,"readServiceOption",{enumerable:!0,get:function(){return f3.readServiceOption}});var Vit=Zz();Object.defineProperty(Br,"RpcError",{enumerable:!0,get:function(){return Vit.RpcError}});var Yit=e3();Object.defineProperty(Br,"mergeRpcOptions",{enumerable:!0,get:function(){return Yit.mergeRpcOptions}});var Wit=s3();Object.defineProperty(Br,"RpcOutputStreamController",{enumerable:!0,get:function(){return Wit.RpcOutputStreamController}});var jit=HAe();Object.defineProperty(Br,"TestTransport",{enumerable:!0,get:function(){return jit.TestTransport}});var YAe=r3();Object.defineProperty(Br,"Deferred",{enumerable:!0,get:function(){return YAe.Deferred}});Object.defineProperty(Br,"DeferredState",{enumerable:!0,get:function(){return YAe.DeferredState}});var Jit=p3();Object.defineProperty(Br,"DuplexStreamingCall",{enumerable:!0,get:function(){return Jit.DuplexStreamingCall}});var Kit=u3();Object.defineProperty(Br,"ClientStreamingCall",{enumerable:!0,get:function(){return Kit.ClientStreamingCall}});var Xit=c3();Object.defineProperty(Br,"ServerStreamingCall",{enumerable:!0,get:function(){return Xit.ServerStreamingCall}});var Zit=i3();Object.defineProperty(Br,"UnaryCall",{enumerable:!0,get:function(){return Zit.UnaryCall}});var MI=zAe();Object.defineProperty(Br,"stackIntercept",{enumerable:!0,get:function(){return MI.stackIntercept}});Object.defineProperty(Br,"stackDuplexStreamingInterceptors",{enumerable:!0,get:function(){return MI.stackDuplexStreamingInterceptors}});Object.defineProperty(Br,"stackClientStreamingInterceptors",{enumerable:!0,get:function(){return MI.stackClientStreamingInterceptors}});Object.defineProperty(Br,"stackServerStreamingInterceptors",{enumerable:!0,get:function(){return MI.stackServerStreamingInterceptors}});Object.defineProperty(Br,"stackUnaryInterceptors",{enumerable:!0,get:function(){return MI.stackUnaryInterceptors}});var eat=VAe();Object.defineProperty(Br,"ServerCallContextController",{enumerable:!0,get:function(){return eat.ServerCallContextController}})});var mg=w((Ver,Xhe)=>{"use strict";var klt="2.0.0",Llt=Number.MAX_SAFE_INTEGER||9007199254740991,Olt=16,Mlt=250,Flt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Xhe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Olt,MAX_SAFE_BUILD_LENGTH:Mlt,MAX_SAFE_INTEGER:Llt,RELEASE_TYPES:Flt,SEMVER_SPEC_VERSION:klt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var VI=w((Yer,Zhe)=>{"use strict";var Ult=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};Zhe.exports=Ult});var fg=w((Lc,ege)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:nV,MAX_SAFE_BUILD_LENGTH:qlt,MAX_LENGTH:$lt}=mg(),Glt=VI();Lc=ege.exports={};var Hlt=Lc.re=[],zlt=Lc.safeRe=[],le=Lc.src=[],Vlt=Lc.safeSrc=[],ue=Lc.t={},Ylt=0,sV="[a-zA-Z0-9-]",Wlt=[["\\s",1],["\\d",$lt],[sV,qlt]],jlt=t=>{for(let[e,r]of Wlt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},tt=(t,e,r)=>{let n=jlt(e),s=Ylt++;Glt(t,s,e),ue[t]=s,le[s]=e,Vlt[s]=n,Hlt[s]=new RegExp(e,r?"g":void 0),zlt[s]=new RegExp(n,r?"g":void 0)};tt("NUMERICIDENTIFIER","0|[1-9]\\d*");tt("NUMERICIDENTIFIERLOOSE","\\d+");tt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${sV}*`);tt("MAINVERSION",`(${le[ue.NUMERICIDENTIFIER]})\\.(${le[ue.NUMERICIDENTIFIER]})\\.(${le[ue.NUMERICIDENTIFIER]})`);tt("MAINVERSIONLOOSE",`(${le[ue.NUMERICIDENTIFIERLOOSE]})\\.(${le[ue.NUMERICIDENTIFIERLOOSE]})\\.(${le[ue.NUMERICIDENTIFIERLOOSE]})`);tt("PRERELEASEIDENTIFIER",`(?:${le[ue.NONNUMERICIDENTIFIER]}|${le[ue.NUMERICIDENTIFIER]})`);tt("PRERELEASEIDENTIFIERLOOSE",`(?:${le[ue.NONNUMERICIDENTIFIER]}|${le[ue.NUMERICIDENTIFIERLOOSE]})`);tt("PRERELEASE",`(?:-(${le[ue.PRERELEASEIDENTIFIER]}(?:\\.${le[ue.PRERELEASEIDENTIFIER]})*))`);tt("PRERELEASELOOSE",`(?:-?(${le[ue.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${le[ue.PRERELEASEIDENTIFIERLOOSE]})*))`);tt("BUILDIDENTIFIER",`${sV}+`);tt("BUILD",`(?:\\+(${le[ue.BUILDIDENTIFIER]}(?:\\.${le[ue.BUILDIDENTIFIER]})*))`);tt("FULLPLAIN",`v?${le[ue.MAINVERSION]}${le[ue.PRERELEASE]}?${le[ue.BUILD]}?`);tt("FULL",`^${le[ue.FULLPLAIN]}$`);tt("LOOSEPLAIN",`[v=\\s]*${le[ue.MAINVERSIONLOOSE]}${le[ue.PRERELEASELOOSE]}?${le[ue.BUILD]}?`);tt("LOOSE",`^${le[ue.LOOSEPLAIN]}$`);tt("GTLT","((?:<|>)?=?)");tt("XRANGEIDENTIFIERLOOSE",`${le[ue.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);tt("XRANGEIDENTIFIER",`${le[ue.NUMERICIDENTIFIER]}|x|X|\\*`);tt("XRANGEPLAIN",`[v=\\s]*(${le[ue.XRANGEIDENTIFIER]})(?:\\.(${le[ue.XRANGEIDENTIFIER]})(?:\\.(${le[ue.XRANGEIDENTIFIER]})(?:${le[ue.PRERELEASE]})?${le[ue.BUILD]}?)?)?`);tt("XRANGEPLAINLOOSE",`[v=\\s]*(${le[ue.XRANGEIDENTIFIERLOOSE]})(?:\\.(${le[ue.XRANGEIDENTIFIERLOOSE]})(?:\\.(${le[ue.XRANGEIDENTIFIERLOOSE]})(?:${le[ue.PRERELEASELOOSE]})?${le[ue.BUILD]}?)?)?`);tt("XRANGE",`^${le[ue.GTLT]}\\s*${le[ue.XRANGEPLAIN]}$`);tt("XRANGELOOSE",`^${le[ue.GTLT]}\\s*${le[ue.XRANGEPLAINLOOSE]}$`);tt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${nV}})(?:\\.(\\d{1,${nV}}))?(?:\\.(\\d{1,${nV}}))?`);tt("COERCE",`${le[ue.COERCEPLAIN]}(?:$|[^\\d])`);tt("COERCEFULL",le[ue.COERCEPLAIN]+`(?:${le[ue.PRERELEASE]})?(?:${le[ue.BUILD]})?(?:$|[^\\d])`);tt("COERCERTL",le[ue.COERCE],!0);tt("COERCERTLFULL",le[ue.COERCEFULL],!0);tt("LONETILDE","(?:~>?)");tt("TILDETRIM",`(\\s*)${le[ue.LONETILDE]}\\s+`,!0);Lc.tildeTrimReplace="$1~";tt("TILDE",`^${le[ue.LONETILDE]}${le[ue.XRANGEPLAIN]}$`);tt("TILDELOOSE",`^${le[ue.LONETILDE]}${le[ue.XRANGEPLAINLOOSE]}$`);tt("LONECARET","(?:\\^)");tt("CARETTRIM",`(\\s*)${le[ue.LONECARET]}\\s+`,!0);Lc.caretTrimReplace="$1^";tt("CARET",`^${le[ue.LONECARET]}${le[ue.XRANGEPLAIN]}$`);tt("CARETLOOSE",`^${le[ue.LONECARET]}${le[ue.XRANGEPLAINLOOSE]}$`);tt("COMPARATORLOOSE",`^${le[ue.GTLT]}\\s*(${le[ue.LOOSEPLAIN]})$|^$`);tt("COMPARATOR",`^${le[ue.GTLT]}\\s*(${le[ue.FULLPLAIN]})$|^$`);tt("COMPARATORTRIM",`(\\s*)${le[ue.GTLT]}\\s*(${le[ue.LOOSEPLAIN]}|${le[ue.XRANGEPLAIN]})`,!0);Lc.comparatorTrimReplace="$1$2$3";tt("HYPHENRANGE",`^\\s*(${le[ue.XRANGEPLAIN]})\\s+-\\s+(${le[ue.XRANGEPLAIN]})\\s*$`);tt("HYPHENRANGELOOSE",`^\\s*(${le[ue.XRANGEPLAINLOOSE]})\\s+-\\s+(${le[ue.XRANGEPLAINLOOSE]})\\s*$`);tt("STAR","(<|>)?=?\\s*\\*");tt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");tt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var kT=w((Wer,tge)=>{"use strict";var Jlt=Object.freeze({loose:!0}),Klt=Object.freeze({}),Xlt=t=>t?typeof t!="object"?Jlt:t:Klt;tge.exports=Xlt});var oV=w((jer,sge)=>{"use strict";var rge=/^[0-9]+$/,nge=(t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tnge(e,t);sge.exports={compareIdentifiers:nge,rcompareIdentifiers:Zlt}});var Pn=w((Jer,ige)=>{"use strict";var LT=VI(),{MAX_LENGTH:oge,MAX_SAFE_INTEGER:OT}=mg(),{safeRe:MT,t:FT}=fg(),eut=kT(),{compareIdentifiers:iV}=oV(),aV=class t{constructor(e,r){if(r=eut(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>oge)throw new TypeError(`version is longer than ${oge} characters`);LT("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?MT[FT.LOOSE]:MT[FT.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>OT||this.major<0)throw new TypeError("Invalid major version");if(this.minor>OT||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>OT||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(LT("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return iV(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(LT("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return iV(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?MT[FT.PRERELEASELOOSE]:MT[FT.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),iV(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};ige.exports=aV});var Od=w((Ker,cge)=>{"use strict";var age=Pn(),tut=(t,e,r=!1)=>{if(t instanceof age)return t;try{return new age(t,e)}catch(n){if(!r)return null;throw n}};cge.exports=tut});var uge=w((Xer,lge)=>{"use strict";var rut=Od(),nut=(t,e)=>{let r=rut(t,e);return r?r.version:null};lge.exports=nut});var pge=w((Zer,dge)=>{"use strict";var sut=Od(),out=(t,e)=>{let r=sut(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null};dge.exports=out});var Age=w((etr,fge)=>{"use strict";var mge=Pn(),iut=(t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new mge(t instanceof mge?t.version:t,r).inc(e,n,s).version}catch{return null}};fge.exports=iut});var yge=w((ttr,gge)=>{"use strict";var hge=Od(),aut=(t,e)=>{let r=hge(t,null,!0),n=hge(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,i=o?r:n,a=o?n:r,c=!!i.prerelease.length;if(!!a.prerelease.length&&!c){if(!a.patch&&!a.minor)return"major";if(a.compareMain(i)===0)return a.minor&&!a.patch?"minor":"patch"}let u=c?"pre":"";return r.major!==n.major?u+"major":r.minor!==n.minor?u+"minor":r.patch!==n.patch?u+"patch":"prerelease"};gge.exports=aut});var Cge=w((rtr,Ege)=>{"use strict";var cut=Pn(),lut=(t,e)=>new cut(t,e).major;Ege.exports=lut});var xge=w((ntr,Ige)=>{"use strict";var uut=Pn(),dut=(t,e)=>new uut(t,e).minor;Ige.exports=dut});var bge=w((str,wge)=>{"use strict";var put=Pn(),mut=(t,e)=>new put(t,e).patch;wge.exports=mut});var Bge=w((otr,Sge)=>{"use strict";var fut=Od(),Aut=(t,e)=>{let r=fut(t,e);return r&&r.prerelease.length?r.prerelease:null};Sge.exports=Aut});var Bi=w((itr,Nge)=>{"use strict";var Rge=Pn(),hut=(t,e,r)=>new Rge(t,r).compare(new Rge(e,r));Nge.exports=hut});var Pge=w((atr,Tge)=>{"use strict";var gut=Bi(),yut=(t,e,r)=>gut(e,t,r);Tge.exports=yut});var _ge=w((ctr,vge)=>{"use strict";var Eut=Bi(),Cut=(t,e)=>Eut(t,e,!0);vge.exports=Cut});var UT=w((ltr,Dge)=>{"use strict";var Qge=Pn(),Iut=(t,e,r)=>{let n=new Qge(t,r),s=new Qge(e,r);return n.compare(s)||n.compareBuild(s)};Dge.exports=Iut});var Lge=w((utr,kge)=>{"use strict";var xut=UT(),wut=(t,e)=>t.sort((r,n)=>xut(r,n,e));kge.exports=wut});var Mge=w((dtr,Oge)=>{"use strict";var but=UT(),Sut=(t,e)=>t.sort((r,n)=>but(n,r,e));Oge.exports=Sut});var YI=w((ptr,Fge)=>{"use strict";var But=Bi(),Rut=(t,e,r)=>But(t,e,r)>0;Fge.exports=Rut});var qT=w((mtr,Uge)=>{"use strict";var Nut=Bi(),Tut=(t,e,r)=>Nut(t,e,r)<0;Uge.exports=Tut});var cV=w((ftr,qge)=>{"use strict";var Put=Bi(),vut=(t,e,r)=>Put(t,e,r)===0;qge.exports=vut});var lV=w((Atr,$ge)=>{"use strict";var _ut=Bi(),Qut=(t,e,r)=>_ut(t,e,r)!==0;$ge.exports=Qut});var $T=w((htr,Gge)=>{"use strict";var Dut=Bi(),kut=(t,e,r)=>Dut(t,e,r)>=0;Gge.exports=kut});var GT=w((gtr,Hge)=>{"use strict";var Lut=Bi(),Out=(t,e,r)=>Lut(t,e,r)<=0;Hge.exports=Out});var uV=w((ytr,zge)=>{"use strict";var Mut=cV(),Fut=lV(),Uut=YI(),qut=$T(),$ut=qT(),Gut=GT(),Hut=(t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Mut(t,r,n);case"!=":return Fut(t,r,n);case">":return Uut(t,r,n);case">=":return qut(t,r,n);case"<":return $ut(t,r,n);case"<=":return Gut(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}};zge.exports=Hut});var Yge=w((Etr,Vge)=>{"use strict";var zut=Pn(),Vut=Od(),{safeRe:HT,t:zT}=fg(),Yut=(t,e)=>{if(t instanceof zut)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?HT[zT.COERCEFULL]:HT[zT.COERCE]);else{let c=e.includePrerelease?HT[zT.COERCERTLFULL]:HT[zT.COERCERTL],l;for(;(l=c.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||l.index+l[0].length!==r.index+r[0].length)&&(r=l),c.lastIndex=l.index+l[1].length+l[2].length;c.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",i=e.includePrerelease&&r[5]?`-${r[5]}`:"",a=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Vut(`${n}.${s}.${o}${i}${a}`,e)};Vge.exports=Yut});var jge=w((Ctr,Wge)=>{"use strict";var Wut=Od(),jut=mg(),Jut=Pn(),Kut=(t,e,r)=>{if(!jut.RELEASE_TYPES.includes(e))return null;let n=Xut(t,r);return n&&Zut(n,e)},Xut=(t,e)=>{let r=t instanceof Jut?t.version:t;return Wut(r,e)},Zut=(t,e)=>{if(edt(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},edt=t=>t.startsWith("pre");Wge.exports=Kut});var Kge=w((Itr,Jge)=>{"use strict";var dV=class{constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Jge.exports=dV});var Ri=w((xtr,tye)=>{"use strict";var tdt=/\s+/g,pV=class t{constructor(e,r){if(r=ndt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof mV)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(tdt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!Zge(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&pdt(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(ddt,"");let n=((this.options.includePrerelease&&ldt)|(this.options.loose&&udt))+":"+e,s=Xge.get(n);if(s)return s;let o=this.options.loose,i=o?bs[vn.HYPHENRANGELOOSE]:bs[vn.HYPHENRANGE];e=e.replace(i,xdt(this.options.includePrerelease)),Wt("hyphen replace",e),e=e.replace(bs[vn.COMPARATORTRIM],idt),Wt("comparator trim",e),e=e.replace(bs[vn.TILDETRIM],adt),Wt("tilde trim",e),e=e.replace(bs[vn.CARETTRIM],cdt),Wt("caret trim",e);let a=e.split(" ").map(d=>mdt(d,this.options)).join(" ").split(/\s+/).map(d=>Idt(d,this.options));o&&(a=a.filter(d=>(Wt("loose invalid filter",d,this.options),!!d.match(bs[vn.COMPARATORLOOSE])))),Wt("range list",a);let c=new Map,l=a.map(d=>new mV(d,this.options));for(let d of l){if(Zge(d))return[d];c.set(d.value,d)}c.size>1&&c.has("")&&c.delete("");let u=[...c.values()];return Xge.set(n,u),u}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>eye(n,r)&&e.set.some(s=>eye(s,r)&&n.every(o=>s.every(i=>o.intersects(i,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new sdt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0",pdt=t=>t.value==="",eye=(t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},mdt=(t,e)=>(t=t.replace(bs[vn.BUILD],""),Wt("comp",t,e),t=hdt(t,e),Wt("caret",t),t=fdt(t,e),Wt("tildes",t),t=ydt(t,e),Wt("xrange",t),t=Cdt(t,e),Wt("stars",t),t),Ss=t=>!t||t.toLowerCase()==="x"||t==="*",fdt=(t,e)=>t.trim().split(/\s+/).map(r=>Adt(r,e)).join(" "),Adt=(t,e)=>{let r=e.loose?bs[vn.TILDELOOSE]:bs[vn.TILDE];return t.replace(r,(n,s,o,i,a)=>{Wt("tilde",t,n,s,o,i,a);let c;return Ss(s)?c="":Ss(o)?c=`>=${s}.0.0 <${+s+1}.0.0-0`:Ss(i)?c=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:a?(Wt("replaceTilde pr",a),c=`>=${s}.${o}.${i}-${a} <${s}.${+o+1}.0-0`):c=`>=${s}.${o}.${i} <${s}.${+o+1}.0-0`,Wt("tilde return",c),c})},hdt=(t,e)=>t.trim().split(/\s+/).map(r=>gdt(r,e)).join(" "),gdt=(t,e)=>{Wt("caret",t,e);let r=e.loose?bs[vn.CARETLOOSE]:bs[vn.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,i,a,c)=>{Wt("caret",t,s,o,i,a,c);let l;return Ss(o)?l="":Ss(i)?l=`>=${o}.0.0${n} <${+o+1}.0.0-0`:Ss(a)?o==="0"?l=`>=${o}.${i}.0${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.0${n} <${+o+1}.0.0-0`:c?(Wt("replaceCaret pr",c),o==="0"?i==="0"?l=`>=${o}.${i}.${a}-${c} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}-${c} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a}-${c} <${+o+1}.0.0-0`):(Wt("no pr"),o==="0"?i==="0"?l=`>=${o}.${i}.${a}${n} <${o}.${i}.${+a+1}-0`:l=`>=${o}.${i}.${a}${n} <${o}.${+i+1}.0-0`:l=`>=${o}.${i}.${a} <${+o+1}.0.0-0`),Wt("caret return",l),l})},ydt=(t,e)=>(Wt("replaceXRanges",t,e),t.split(/\s+/).map(r=>Edt(r,e)).join(" ")),Edt=(t,e)=>{t=t.trim();let r=e.loose?bs[vn.XRANGELOOSE]:bs[vn.XRANGE];return t.replace(r,(n,s,o,i,a,c)=>{Wt("xRange",t,n,s,o,i,a,c);let l=Ss(o),u=l||Ss(i),d=u||Ss(a),p=d;return s==="="&&p&&(s=""),c=e.includePrerelease?"-0":"",l?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&p?(u&&(i=0),a=0,s===">"?(s=">=",u?(o=+o+1,i=0,a=0):(i=+i+1,a=0)):s==="<="&&(s="<",u?o=+o+1:i=+i+1),s==="<"&&(c="-0"),n=`${s+o}.${i}.${a}${c}`):u?n=`>=${o}.0.0${c} <${+o+1}.0.0-0`:d&&(n=`>=${o}.${i}.0${c} <${o}.${+i+1}.0-0`),Wt("xRange return",n),n})},Cdt=(t,e)=>(Wt("replaceStars",t,e),t.trim().replace(bs[vn.STAR],"")),Idt=(t,e)=>(Wt("replaceGTE0",t,e),t.trim().replace(bs[e.includePrerelease?vn.GTE0PRE:vn.GTE0],"")),xdt=t=>(e,r,n,s,o,i,a,c,l,u,d,p)=>(Ss(n)?r="":Ss(s)?r=`>=${n}.0.0${t?"-0":""}`:Ss(o)?r=`>=${n}.${s}.0${t?"-0":""}`:i?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,Ss(l)?c="":Ss(u)?c=`<${+l+1}.0.0-0`:Ss(d)?c=`<${l}.${+u+1}.0-0`:p?c=`<=${l}.${u}.${d}-${p}`:t?c=`<${l}.${u}.${+d+1}-0`:c=`<=${c}`,`${r} ${c}`.trim()),wdt=(t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0}});var WI=w((wtr,aye)=>{"use strict";var jI=Symbol("SemVer ANY"),hV=class t{static get ANY(){return jI}constructor(e,r){if(r=rye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),AV("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===jI?this.value="":this.value=this.operator+this.semver.version,AV("comp",this)}parse(e){let r=this.options.loose?nye[sye.COMPARATORLOOSE]:nye[sye.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new oye(n[2],this.options.loose):this.semver=jI}toString(){return this.value}test(e){if(AV("Comparator.test",e,this.options.loose),this.semver===jI||e===jI)return!0;if(typeof e=="string")try{e=new oye(e,this.options)}catch{return!1}return fV(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new iye(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new iye(this.value,r).test(e.semver):(r=rye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||fV(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||fV(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};aye.exports=hV;var rye=kT(),{safeRe:nye,t:sye}=fg(),fV=uV(),AV=VI(),oye=Pn(),iye=Ri()});var JI=w((btr,cye)=>{"use strict";var bdt=Ri(),Sdt=(t,e,r)=>{try{e=new bdt(e,r)}catch{return!1}return e.test(t)};cye.exports=Sdt});var uye=w((Str,lye)=>{"use strict";var Bdt=Ri(),Rdt=(t,e)=>new Bdt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" "));lye.exports=Rdt});var pye=w((Btr,dye)=>{"use strict";var Ndt=Pn(),Tdt=Ri(),Pdt=(t,e,r)=>{let n=null,s=null,o=null;try{o=new Tdt(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===-1)&&(n=i,s=new Ndt(n,r))}),n};dye.exports=Pdt});var fye=w((Rtr,mye)=>{"use strict";var vdt=Pn(),_dt=Ri(),Qdt=(t,e,r)=>{let n=null,s=null,o=null;try{o=new _dt(e,r)}catch{return null}return t.forEach(i=>{o.test(i)&&(!n||s.compare(i)===1)&&(n=i,s=new vdt(n,r))}),n};mye.exports=Qdt});var gye=w((Ntr,hye)=>{"use strict";var gV=Pn(),Ddt=Ri(),Aye=YI(),kdt=(t,e)=>{t=new Ddt(t,e);let r=new gV("0.0.0");if(t.test(r)||(r=new gV("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let a=new gV(i.semver.version);switch(i.operator){case">":a.prerelease.length===0?a.patch++:a.prerelease.push(0),a.raw=a.format();case"":case">=":(!o||Aye(a,o))&&(o=a);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${i.operator}`)}}),o&&(!r||Aye(r,o))&&(r=o)}return r&&t.test(r)?r:null};hye.exports=kdt});var Eye=w((Ttr,yye)=>{"use strict";var Ldt=Ri(),Odt=(t,e)=>{try{return new Ldt(t,e).range||"*"}catch{return null}};yye.exports=Odt});var VT=w((Ptr,wye)=>{"use strict";var Mdt=Pn(),xye=WI(),{ANY:Fdt}=xye,Udt=Ri(),qdt=JI(),Cye=YI(),Iye=qT(),$dt=GT(),Gdt=$T(),Hdt=(t,e,r,n)=>{t=new Mdt(t,n),e=new Udt(e,n);let s,o,i,a,c;switch(r){case">":s=Cye,o=$dt,i=Iye,a=">",c=">=";break;case"<":s=Iye,o=Gdt,i=Cye,a="<",c="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(qdt(t,e,n))return!1;for(let l=0;l{m.semver===Fdt&&(m=new xye(">=0.0.0")),d=d||m,p=p||m,s(m.semver,d.semver,n)?d=m:i(m.semver,p.semver,n)&&(p=m)}),d.operator===a||d.operator===c||(!p.operator||p.operator===a)&&o(t,p.semver))return!1;if(p.operator===c&&i(t,p.semver))return!1}return!0};wye.exports=Hdt});var Sye=w((vtr,bye)=>{"use strict";var zdt=VT(),Vdt=(t,e,r)=>zdt(t,e,">",r);bye.exports=Vdt});var Rye=w((_tr,Bye)=>{"use strict";var Ydt=VT(),Wdt=(t,e,r)=>Ydt(t,e,"<",r);Bye.exports=Wdt});var Pye=w((Qtr,Tye)=>{"use strict";var Nye=Ri(),jdt=(t,e,r)=>(t=new Nye(t,r),e=new Nye(e,r),t.intersects(e,r));Tye.exports=jdt});var _ye=w((Dtr,vye)=>{"use strict";var Jdt=JI(),Kdt=Bi();vye.exports=(t,e,r)=>{let n=[],s=null,o=null,i=t.sort((u,d)=>Kdt(u,d,r));for(let u of i)Jdt(u,e,r)?(o=u,s||(s=u)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let a=[];for(let[u,d]of n)u===d?a.push(u):!d&&u===i[0]?a.push("*"):d?u===i[0]?a.push(`<=${d}`):a.push(`${u} - ${d}`):a.push(`>=${u}`);let c=a.join(" || "),l=typeof e.raw=="string"?e.raw:String(e);return c.length{"use strict";var Qye=Ri(),CV=WI(),{ANY:yV}=CV,EV=JI(),IV=Bi(),Xdt=(t,e,r={})=>{if(t===e)return!0;t=new Qye(t,r),e=new Qye(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let i=ept(s,o,r);if(n=n||i!==null,i)continue e}if(n)return!1}return!0},Zdt=[new CV(">=0.0.0-0")],Dye=[new CV(">=0.0.0")],ept=(t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===yV){if(e.length===1&&e[0].semver===yV)return!0;r.includePrerelease?t=Zdt:t=Dye}if(e.length===1&&e[0].semver===yV){if(r.includePrerelease)return!0;e=Dye}let n=new Set,s,o;for(let m of t)m.operator===">"||m.operator===">="?s=kye(s,m,r):m.operator==="<"||m.operator==="<="?o=Lye(o,m,r):n.add(m.semver);if(n.size>1)return null;let i;if(s&&o){if(i=IV(s.semver,o.semver,r),i>0)return null;if(i===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let m of n){if(s&&!EV(m,String(s),r)||o&&!EV(m,String(o),r))return null;for(let h of e)if(!EV(m,String(h),r))return!1;return!0}let a,c,l,u,d=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,p=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;d&&d.prerelease.length===1&&o.operator==="<"&&d.prerelease[0]===0&&(d=!1);for(let m of e){if(u=u||m.operator===">"||m.operator===">=",l=l||m.operator==="<"||m.operator==="<=",s){if(p&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===p.major&&m.semver.minor===p.minor&&m.semver.patch===p.patch&&(p=!1),m.operator===">"||m.operator===">="){if(a=kye(s,m,r),a===m&&a!==s)return!1}else if(s.operator===">="&&!m.test(s.semver))return!1}if(o){if(d&&m.semver.prerelease&&m.semver.prerelease.length&&m.semver.major===d.major&&m.semver.minor===d.minor&&m.semver.patch===d.patch&&(d=!1),m.operator==="<"||m.operator==="<="){if(c=Lye(o,m,r),c===m&&c!==o)return!1}else if(o.operator==="<="&&!m.test(o.semver))return!1}if(!m.operator&&(o||s)&&i!==0)return!1}return!(s&&l&&!o&&i!==0||o&&u&&!s&&i!==0||p||d)},kye=(t,e,r)=>{if(!t)return e;let n=IV(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},Lye=(t,e,r)=>{if(!t)return e;let n=IV(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t};Oye.exports=Xdt});var $ye=w((Ltr,qye)=>{"use strict";var xV=fg(),Fye=mg(),tpt=Pn(),Uye=oV(),rpt=Od(),npt=uge(),spt=pge(),opt=Age(),ipt=yge(),apt=Cge(),cpt=xge(),lpt=bge(),upt=Bge(),dpt=Bi(),ppt=Pge(),mpt=_ge(),fpt=UT(),Apt=Lge(),hpt=Mge(),gpt=YI(),ypt=qT(),Ept=cV(),Cpt=lV(),Ipt=$T(),xpt=GT(),wpt=uV(),bpt=Yge(),Spt=jge(),Bpt=WI(),Rpt=Ri(),Npt=JI(),Tpt=uye(),Ppt=pye(),vpt=fye(),_pt=gye(),Qpt=Eye(),Dpt=VT(),kpt=Sye(),Lpt=Rye(),Opt=Pye(),Mpt=_ye(),Fpt=Mye();qye.exports={parse:rpt,valid:npt,clean:spt,inc:opt,diff:ipt,major:apt,minor:cpt,patch:lpt,prerelease:upt,compare:dpt,rcompare:ppt,compareLoose:mpt,compareBuild:fpt,sort:Apt,rsort:hpt,gt:gpt,lt:ypt,eq:Ept,neq:Cpt,gte:Ipt,lte:xpt,cmp:wpt,coerce:bpt,truncate:Spt,Comparator:Bpt,Range:Rpt,satisfies:Npt,toComparators:Tpt,maxSatisfying:Ppt,minSatisfying:vpt,minVersion:_pt,validRange:Qpt,outside:Dpt,gtr:kpt,ltr:Lpt,intersects:Opt,simplifyRange:Mpt,subset:Fpt,SemVer:tpt,re:xV.re,src:xV.src,tokens:xV.t,SEMVER_SPEC_VERSION:Fye.SEMVER_SPEC_VERSION,RELEASE_TYPES:Fye.RELEASE_TYPES,compareIdentifiers:Uye.compareIdentifiers,rcompareIdentifiers:Uye.rcompareIdentifiers}});var iEe=w((Mtr,lu)=>{var kt=require("fs"),jT=require("os"),un=require("path"),Gye=require("crypto"),Oc={fs:kt.constants,os:jT.constants},Hye="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",Wye=/XXXXXX/,Upt=3,jye=(Oc.O_CREAT||Oc.fs.O_CREAT)|(Oc.O_EXCL||Oc.fs.O_EXCL)|(Oc.O_RDWR||Oc.fs.O_RDWR),qpt=jT.platform()==="win32",$pt=Oc.EBADF||Oc.os.errno.EBADF,Gpt=Oc.ENOENT||Oc.os.errno.ENOENT,Jye=448,Kye=384,Hpt="exit",Ag=[],Xye=kt.rmdirSync.bind(kt),Zye=!1;function zpt(t,e){return kt.rm(t,{recursive:!0},e)}function eEe(t){return kt.rmSync(t,{recursive:!0})}function BV(t,e){let r=hg(t,e),n=r[0],s=r[1];tmt(n,function(o,i){if(o)return s(o);let a=i.tries;(function c(){try{let l=rEe(i);kt.stat(l,function(u){if(!u)return a-- >0?c():s(new Error("Could not get a unique tmp filename, max tries reached "+l));s(null,l)})}catch(l){s(l)}})()})}function RV(t){let e=hg(t),r=e[0],n=rmt(r),s=n.tries;do{let o=rEe(n);try{kt.statSync(o)}catch{return o}}while(s-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}function Vpt(t,e){let r=hg(t,e),n=r[0],s=r[1];BV(n,function(i,a){if(i)return s(i);kt.open(a,jye,n.mode||Kye,function(l,u){if(l)return s(l);if(n.discardDescriptor)return kt.close(u,function(p){return s(p,a,void 0,bV(a,-1,n,!1))});{let d=n.discardDescriptor||n.detachDescriptor;s(null,a,u,bV(a,d?-1:u,n,!1))}})})}function Ypt(t){let e=hg(t),r=e[0],n=r.discardDescriptor||r.detachDescriptor,s=RV(r),o=kt.openSync(s,jye,r.mode||Kye);return r.discardDescriptor&&(kt.closeSync(o),o=void 0),{name:s,fd:o,removeCallback:bV(s,n?-1:o,r,!0)}}function Wpt(t,e){let r=hg(t,e),n=r[0],s=r[1];BV(n,function(i,a){if(i)return s(i);kt.mkdir(a,n.mode||Jye,function(l){if(l)return s(l);s(null,a,tEe(a,n,!1))})})}function jpt(t){let e=hg(t),r=e[0],n=RV(r);return kt.mkdirSync(n,r.mode||Jye),{name:n,removeCallback:tEe(n,r,!0)}}function Jpt(t,e){let r=function(n){if(n&&!SV(n))return e(n);e()};0<=t[0]?kt.close(t[0],function(){kt.unlink(t[1],r)}):kt.unlink(t[1],r)}function Kpt(t){let e=null;try{0<=t[0]&&kt.closeSync(t[0])}catch(r){if(!nmt(r)&&!SV(r))throw r}finally{try{kt.unlinkSync(t[1])}catch(r){SV(r)||(e=r)}}if(e!==null)throw e}function bV(t,e,r,n){let s=WT(Kpt,[e,t],n),o=WT(Jpt,[e,t],n,s);return r.keep||Ag.unshift(s),n?s:o}function tEe(t,e,r){let n=e.unsafeCleanup?zpt:kt.rmdir.bind(kt),s=e.unsafeCleanup?eEe:Xye,o=WT(s,t,r),i=WT(n,t,r,o);return e.keep||Ag.unshift(o),r?o:i}function WT(t,e,r,n){let s=!1;return function o(i){if(!s){let a=n||o,c=Ag.indexOf(a);return c>=0&&Ag.splice(c,1),s=!0,r||t===Xye||t===eEe?t(e):t(e,i||function(){})}}}function Xpt(){if(Zye)for(;Ag.length;)try{Ag[0]()}catch{}}function zye(t){let e=[],r=null;try{r=Gye.randomBytes(t)}catch{r=Gye.pseudoRandomBytes(t)}for(let n=0;n"u"}function hg(t,e){if(typeof t=="function")return[{},t];if(no(t))return[{},e];let r={};for(let n of Object.getOwnPropertyNames(t))r[n]=t[n];return[r,e]}function Zpt(t,e,r){let n=un.isAbsolute(t)?t:un.join(e,t);kt.stat(n,function(s){s?kt.realpath(un.dirname(n),function(o,i){if(o)return r(o);r(null,un.join(i,un.basename(n)))}):kt.realpath(n,r)})}function emt(t,e){let r=un.isAbsolute(t)?t:un.join(e,t);try{return kt.statSync(r),kt.realpathSync(r)}catch{let s=kt.realpathSync(un.dirname(r));return un.join(s,un.basename(r))}}function rEe(t){let e=t.tmpdir;if(!no(t.name))return un.join(e,t.dir,t.name);if(!no(t.template))return un.join(e,t.dir,t.template).replace(Wye,zye(6));let r=[t.prefix?t.prefix:"tmp","-",process.pid,"-",zye(12),t.postfix?"-"+t.postfix:""].join("");return un.join(e,t.dir,r)}function wV(t,e){if(typeof e!="string")throw new Error(`${t} option must be a string, got "${typeof e}".`);if(e.includes(".."))throw new Error("Relative value not allowed");return e}function nEe(t){if(!no(t.name)){let e=t.name;if(un.isAbsolute(e))throw new Error(`name option must not contain an absolute path, found "${e}".`);let r=un.basename(e);if(r===".."||r==="."||r!==e)throw new Error(`name option must not contain a path, found "${e}".`)}if(!no(t.template)){if(typeof t.template!="string")throw new Error(`template option must be a string, got "${typeof t.template}".`);if(!t.template.match(Wye))throw new Error(`Invalid template, found "${t.template}".`)}if(!no(t.tries)&&isNaN(t.tries)||t.tries<0)throw new Error(`Invalid tries, found "${t.tries}".`);t.tries=no(t.name)?t.tries||Upt:1,t.keep=!!t.keep,t.detachDescriptor=!!t.detachDescriptor,t.discardDescriptor=!!t.discardDescriptor,t.unsafeCleanup=!!t.unsafeCleanup,t.prefix=no(t.prefix)?"":wV("prefix",t.prefix),t.postfix=no(t.postfix)?"":wV("postfix",t.postfix),t.template=no(t.template)?void 0:wV("template",t.template)}function Vye(t,e,r,n){if(no(e))return n(null);Zpt(e,r,function(s,o){if(s)return n(s);let i=un.relative(r,o);if(i.startsWith("..")||un.isAbsolute(i))return n(new Error(`${t} option must be relative to "${r}", found "${i}".`));n(null,i)})}function Yye(t,e,r){if(no(e))return;let n=emt(e,r),s=un.relative(r,n);if(s.startsWith("..")||un.isAbsolute(s))throw new Error(`${t} option must be relative to "${r}", found "${s}".`);return s}function tmt(t,e){omt(t,function(r,n){if(r)return e(r);t.tmpdir=n;try{nEe(t,n)}catch(s){return e(s)}Vye("dir",t.dir,n,function(s,o){if(s)return e(s);t.dir=no(o)?"":o,Vye("template",t.template,n,function(i,a){if(i)return e(i);t.template=a,e(null,t)})})})}function rmt(t){let e=t.tmpdir=oEe(t);nEe(t,e);let r=Yye("dir",t.dir,e);return t.dir=no(r)?"":r,t.template=Yye("template",t.template,e),t}function nmt(t){return sEe(t,-$pt,"EBADF")}function SV(t){return sEe(t,-Gpt,"ENOENT")}function sEe(t,e,r){return qpt?t.code===r:t.code===r&&t.errno===e}function smt(){Zye=!0}function omt(t,e){return kt.realpath(t&&t.tmpdir||jT.tmpdir(),e)}function oEe(t){return kt.realpathSync(t&&t.tmpdir||jT.tmpdir())}process.addListener(Hpt,Xpt);Object.defineProperty(lu.exports,"tmpdir",{enumerable:!0,configurable:!1,get:function(){return oEe()}});lu.exports.dir=Wpt;lu.exports.dirSync=jpt;lu.exports.file=Vpt;lu.exports.fileSync=Ypt;lu.exports.tmpName=BV;lu.exports.tmpNameSync=RV;lu.exports.setGracefulCleanup=smt});var Bs=w(qo=>{"use strict";qo.__esModule=!0;qo.extend=uEe;qo.indexOf=umt;qo.escapeExpression=dmt;qo.isEmpty=pmt;qo.createFrame=mmt;qo.blockParams=fmt;qo.appendContextPath=Amt;var imt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},amt=/[&<>"'`=]/g,cmt=/[&<>"'`=]/;function lmt(t){return imt[t]}function uEe(t){for(var e=1;e{"use strict";KT.__esModule=!0;var vV=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function _V(t,e){var r=e&&e.loc,n=void 0,s=void 0,o=void 0,i=void 0;r&&(n=r.start.line,s=r.end.line,o=r.start.column,i=r.end.column,t+=" - "+n+":"+o);for(var a=Error.prototype.constructor.call(this,t),c=0;c{"use strict";XT.__esModule=!0;var QV=Bs();XT.default=function(t){t.registerHelper("blockHelperMissing",function(e,r){var n=r.inverse,s=r.fn;if(e===!0)return s(this);if(e===!1||e==null)return n(this);if(QV.isArray(e))return e.length>0?(r.ids&&(r.ids=[r.name]),t.helpers.each(e,r)):n(this);if(r.data&&r.ids){var o=QV.createFrame(r.data);o.contextPath=QV.appendContextPath(r.data.contextPath,r.name),r={data:o}}return s(e,r)})};mEe.exports=XT.default});var hEe=w((ZT,AEe)=>{"use strict";ZT.__esModule=!0;function hmt(t){return t&&t.__esModule?t:{default:t}}var KI=Bs(),gmt=$o(),ymt=hmt(gmt);ZT.default=function(t){t.registerHelper("each",function(e,r){if(!r)throw new ymt.default("Must pass iterator to #each");var n=r.fn,s=r.inverse,o=0,i="",a=void 0,c=void 0;r.data&&r.ids&&(c=KI.appendContextPath(r.data.contextPath,r.ids[0])+"."),KI.isFunction(e)&&(e=e.call(this)),r.data&&(a=KI.createFrame(r.data));function l(h,y,I){a&&(a.key=h,a.index=y,a.first=y===0,a.last=!!I,c&&(a.contextPath=c+h)),i=i+n(e[h],{data:a,blockParams:KI.blockParams([e[h],h],[c+h,null])})}if(e&&typeof e=="object")if(KI.isArray(e))for(var u=e.length;o{"use strict";eP.__esModule=!0;function Emt(t){return t&&t.__esModule?t:{default:t}}var Cmt=$o(),Imt=Emt(Cmt);eP.default=function(t){t.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new Imt.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};gEe.exports=eP.default});var xEe=w((tP,IEe)=>{"use strict";tP.__esModule=!0;function xmt(t){return t&&t.__esModule?t:{default:t}}var EEe=Bs(),wmt=$o(),CEe=xmt(wmt);tP.default=function(t){t.registerHelper("if",function(e,r){if(arguments.length!=2)throw new CEe.default("#if requires exactly one argument");return EEe.isFunction(e)&&(e=e.call(this)),!r.hash.includeZero&&!e||EEe.isEmpty(e)?r.inverse(this):r.fn(this)}),t.registerHelper("unless",function(e,r){if(arguments.length!=2)throw new CEe.default("#unless requires exactly one argument");return t.helpers.if.call(this,e,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};IEe.exports=tP.default});var bEe=w((rP,wEe)=>{"use strict";rP.__esModule=!0;rP.default=function(t){t.registerHelper("log",function(){for(var e=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";nP.__esModule=!0;nP.default=function(t){t.registerHelper("lookup",function(e,r,n){return e&&n.lookupProperty(e,r)})};SEe.exports=nP.default});var NEe=w((sP,REe)=>{"use strict";sP.__esModule=!0;function bmt(t){return t&&t.__esModule?t:{default:t}}var XI=Bs(),Smt=$o(),Bmt=bmt(Smt);sP.default=function(t){t.registerHelper("with",function(e,r){if(arguments.length!=2)throw new Bmt.default("#with requires exactly one argument");XI.isFunction(e)&&(e=e.call(this));var n=r.fn;if(XI.isEmpty(e))return r.inverse(this);var s=r.data;return r.data&&r.ids&&(s=XI.createFrame(r.data),s.contextPath=XI.appendContextPath(r.data.contextPath,r.ids[0])),n(e,{data:s,blockParams:XI.blockParams([e],[s&&s.contextPath])})})};REe.exports=sP.default});var DV=w(oP=>{"use strict";oP.__esModule=!0;oP.registerDefaultHelpers=qmt;oP.moveHelperToHooks=$mt;function Jm(t){return t&&t.__esModule?t:{default:t}}var Rmt=fEe(),Nmt=Jm(Rmt),Tmt=hEe(),Pmt=Jm(Tmt),vmt=yEe(),_mt=Jm(vmt),Qmt=xEe(),Dmt=Jm(Qmt),kmt=bEe(),Lmt=Jm(kmt),Omt=BEe(),Mmt=Jm(Omt),Fmt=NEe(),Umt=Jm(Fmt);function qmt(t){Nmt.default(t),Pmt.default(t),_mt.default(t),Dmt.default(t),Lmt.default(t),Mmt.default(t),Umt.default(t)}function $mt(t,e,r){t.helpers[e]&&(t.hooks[e]=t.helpers[e],r||(t.helpers[e]=void 0))}});var PEe=w((iP,TEe)=>{"use strict";iP.__esModule=!0;var Gmt=Bs();iP.default=function(t){t.registerDecorator("inline",function(e,r,n,s){var o=e;return r.partials||(r.partials={},o=function(i,a){var c=n.partials;n.partials=Gmt.extend({},c,r.partials);var l=e(i,a);return n.partials=c,l}),r.partials[s.args[0]]=s.fn,o})};TEe.exports=iP.default});var vEe=w(kV=>{"use strict";kV.__esModule=!0;kV.registerDefaultDecorators=Ymt;function Hmt(t){return t&&t.__esModule?t:{default:t}}var zmt=PEe(),Vmt=Hmt(zmt);function Ymt(t){Vmt.default(t)}});var LV=w((aP,_Ee)=>{"use strict";aP.__esModule=!0;var Wmt=Bs(),gg={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:function(e){if(typeof e=="string"){var r=Wmt.indexOf(gg.methodMap,e.toLowerCase());r>=0?e=r:e=parseInt(e,10)}return e},log:function(e){if(e=gg.lookupLevel(e),typeof console<"u"&&gg.lookupLevel(gg.level)<=e){var r=gg.methodMap[e];console[r]||(r="log");for(var n=arguments.length,s=Array(n>1?n-1:0),o=1;o{"use strict";ZI.__esModule=!0;ZI.createProtoAccessControl=Xmt;ZI.resultIsAllowed=Zmt;ZI.resetLoggedProperties=tft;function jmt(t){return t&&t.__esModule?t:{default:t}}var QEe=Bs(),Jmt=LV(),Kmt=jmt(Jmt),cP=Object.create(null);function Xmt(t){var e=Object.create(null);e.__proto__=!1,QEe.extend(e,t.allowedProtoProperties);var r=Object.create(null);return r.constructor=!1,r.__defineGetter__=!1,r.__defineSetter__=!1,r.__lookupGetter__=!1,r.__lookupSetter__=!1,QEe.extend(r,t.allowedProtoMethods),{properties:{whitelist:e,defaultValue:t.allowProtoPropertiesByDefault},methods:{whitelist:r,defaultValue:t.allowProtoMethodsByDefault}}}function Zmt(t,e,r){return DEe(typeof t=="function"?e.methods:e.properties,r)}function DEe(t,e){return t.whitelist[e]!==void 0?t.whitelist[e]===!0:t.defaultValue!==void 0?t.defaultValue:(eft(e),!1)}function eft(t){cP[t]!==!0&&(cP[t]=!0,Kmt.default.log("error",'Handlebars: Access has been denied to resolve the property "'+t+`" because it is not an "own property" of its parent. + Operation status: ${d} + Polling status: ${Efe.includes(d)?"Stopped":"Running"}`),d==="succeeded"){let p=a(u,r);if(p!==void 0)return{response:await e(p).catch(gfe({state:r,stateProxy:n,isOperationError:c})),status:d}}return{response:u,status:d}}i(ust,"pollOperationHelper");async function wfe(t){let{poll:e,state:r,stateProxy:n,options:s,getOperationStatus:o,getResourceLocation:a,getOperationLocation:c,isOperationError:l,withOperationLocation:u,getPollingInterval:d,processResult:p,getError:m,updateState:f,setDelay:g,isDone:E,setErrorAsResult:x}=t,{operationLocation:w}=r.config;if(w!==void 0){let{response:S,status:P}=await ust({poll:e,getOperationStatus:o,state:r,stateProxy:n,operationLocation:w,getResourceLocation:a,isOperationError:l,options:s});if(Ife({status:P,response:S,state:r,stateProxy:n,isDone:E,processResult:p,getError:m,setErrorAsResult:x}),!Efe.includes(P)){let Q=d?.(S);Q&&g(Q);let q=c?.(S,r);if(q!==void 0){let M=w!==q;r.config.operationLocation=q,u?.(q,M)}else u?.(w,!1)}f?.(r,S)}}i(wfe,"pollOperation");function bfe(t){let{azureAsyncOperation:e,operationLocation:r}=t;return r??e}i(bfe,"getOperationLocationPollingUrl");function Sfe(t){return t.headers.location}i(Sfe,"getLocationHeader");function Bfe(t){return t.headers["operation-location"]}i(Bfe,"getOperationLocationHeader");function Rfe(t){return t.headers["azure-asyncoperation"]}i(Rfe,"getAzureAsyncOperationHeader");function dst(t){let{location:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t;switch(r){case"PUT":return n;case"DELETE":return;default:switch(s){case"azure-async-operation":return;case"original-uri":return n;default:return e}}}i(dst,"findResourceLocation");function Nfe(t){let{rawResponse:e,requestMethod:r,requestPath:n,resourceLocationConfig:s}=t,o=Bfe(e),a=Rfe(e),c=bfe({operationLocation:o,azureAsyncOperation:a}),l=Sfe(e),u=r?.toLocaleUpperCase();return c!==void 0?{mode:"OperationLocation",operationLocation:c,resourceLocation:dst({requestMethod:u,location:l,requestPath:n,resourceLocationConfig:s})}:l!==void 0?{mode:"ResourceLocation",operationLocation:l}:u==="PUT"&&n?{mode:"Body",operationLocation:n}:void 0}i(Nfe,"inferLroMode");function Tfe(t){let{status:e,statusCode:r}=t;if(typeof e!="string"&&e!==void 0)throw new Error(`Polling was unsuccessful. Expected status to have a string value or no value but it has instead: ${e}. This doesn't necessarily indicate the operation has failed. Check your Azure subscription or resource status for more information.`);switch(e?.toLocaleLowerCase()){case void 0:return Az(r);case"succeeded":return"succeeded";case"failed":return"failed";case"running":case"accepted":case"started":case"canceling":case"cancelling":return"running";case"canceled":case"cancelled":return"canceled";default:return Fm.verbose(`LRO: unrecognized operation status: ${e}`),e}}i(Tfe,"transformStatus");function pst(t){var e;let{status:r}=(e=t.body)!==null&&e!==void 0?e:{};return Tfe({status:r,statusCode:t.statusCode})}i(pst,"getStatus");function mst(t){var e,r;let{properties:n,provisioningState:s}=(e=t.body)!==null&&e!==void 0?e:{},o=(r=n?.provisioningState)!==null&&r!==void 0?r:s;return Tfe({status:o,statusCode:t.statusCode})}i(mst,"getProvisioningState");function Az(t){return t===202?"running":t<300?"succeeded":"failed"}i(Az,"toOperationStatus");function Pfe({rawResponse:t}){let e=t.headers["retry-after"];if(e!==void 0){let r=parseInt(e);return isNaN(r)?fst(new Date(e)):r*1e3}}i(Pfe,"parseRetryAfter");function vfe(t){let e=t.flatResponse.error;if(!e){Fm.warning("The long-running operation failed but there is no error property in the response's body");return}if(!e.code||!e.message){Fm.warning("The long-running operation failed but the error property in the response's body doesn't contain code or message");return}return e}i(vfe,"getErrorFromResponse");function fst(t){let e=Math.floor(new Date().getTime()),r=t.getTime();if(e{let a=await s.sendInitialRequest(),c=Nfe({rawResponse:a.rawResponse,requestPath:s.requestPath,requestMethod:s.requestMethod,resourceLocationConfig:r});return Object.assign({response:a,operationLocation:c?.operationLocation,resourceLocation:c?.resourceLocation},c?.mode?{metadata:{mode:c.mode}}:{})},"init"),stateProxy:e,processResult:n?({flatResponse:a},c)=>n(a,c):({flatResponse:a})=>a,getOperationStatus:_fe,setErrorAsResult:o})}i(Ast,"initHttpOperation");function Qfe({rawResponse:t},e){var r;switch((r=e.config.metadata)===null||r===void 0?void 0:r.mode){case"OperationLocation":return bfe({operationLocation:Bfe(t),azureAsyncOperation:Rfe(t)});case"ResourceLocation":return Sfe(t);default:return}}i(Qfe,"getOperationLocation");function hz({rawResponse:t},e){var r;let n=(r=e.config.metadata)===null||r===void 0?void 0:r.mode;switch(n){case"OperationLocation":return pst(t);case"ResourceLocation":return Az(t.statusCode);case"Body":return mst(t);default:throw new Error(`Internal error: Unexpected operation mode: ${n}`)}}i(hz,"getOperationStatus");function Dfe({flatResponse:t},e){if(typeof t=="object"){let r=t.resourceLocation;r!==void 0&&(e.config.resourceLocation=r)}return e.config.resourceLocation}i(Dfe,"getResourceLocation");function kfe(t){return t.name==="RestError"}i(kfe,"isOperationError");async function hst(t){let{lro:e,stateProxy:r,options:n,processResult:s,updateState:o,setDelay:a,state:c,setErrorAsResult:l}=t;return wfe({state:c,stateProxy:r,setDelay:a,processResult:s?({flatResponse:u},d)=>s(u,d):({flatResponse:u})=>u,getError:vfe,updateState:o,getPollingInterval:Pfe,getOperationLocation:Qfe,getOperationStatus:hz,isOperationError:kfe,getResourceLocation:Dfe,options:n,poll:i(async(u,d)=>e.sendPollRequest(u,d),"poll"),setErrorAsResult:l})}i(hst,"pollHttpOperation");var gst=i(()=>({initState:i(t=>({status:"running",config:t}),"initState"),setCanceled:i(t=>t.status="canceled","setCanceled"),setError:i((t,e)=>t.error=e,"setError"),setResult:i((t,e)=>t.result=e,"setResult"),setRunning:i(t=>t.status="running","setRunning"),setSucceeded:i(t=>t.status="succeeded","setSucceeded"),setFailed:i(t=>t.status="failed","setFailed"),getError:i(t=>t.error,"getError"),getResult:i(t=>t.result,"getResult"),isCanceled:i(t=>t.status==="canceled","isCanceled"),isFailed:i(t=>t.status==="failed","isFailed"),isRunning:i(t=>t.status==="running","isRunning"),isSucceeded:i(t=>t.status==="succeeded","isSucceeded")}),"createStateProxy$1");function yst(t){let{getOperationLocation:e,getStatusFromInitialResponse:r,getStatusFromPollResponse:n,isOperationError:s,getResourceLocation:o,getPollingInterval:a,getError:c,resolveOnUnsuccessful:l}=t;return async({init:u,poll:d},p)=>{let{processResult:m,updateState:f,withOperationLocation:g,intervalInMs:E=yfe,restoreFrom:x}=p||{},w=gst(),S=g?(()=>{let se=!1;return(ye,H)=>{H?g(ye):se||g(ye),se=!0}})():void 0,P=x?Cfe(x):await xfe({init:u,stateProxy:w,processResult:m,getOperationStatus:r,withOperationLocation:S,setErrorAsResult:!l}),Q,q=new hfe.AbortController,M=new Map,V=i(async()=>M.forEach(se=>se(P)),"handleProgressEvents"),pe="Operation was canceled",ke=E,Re={getOperationState:i(()=>P,"getOperationState"),getResult:i(()=>P.result,"getResult"),isDone:i(()=>["succeeded","failed","canceled"].includes(P.status),"isDone"),isStopped:i(()=>Q===void 0,"isStopped"),stopPolling:i(()=>{q.abort()},"stopPolling"),toString:i(()=>JSON.stringify({state:P}),"toString"),onProgress:i(se=>{let ye=Symbol();return M.set(ye,se),()=>M.delete(ye)},"onProgress"),pollUntilDone:i(se=>Q??(Q=(async()=>{let{abortSignal:ye}=se||{},{signal:H}=ye?new hfe.AbortController([ye,q.signal]):q;if(!Re.isDone())for(await Re.poll({abortSignal:H});!Re.isDone();)await ist.delay(ke,{abortSignal:H}),await Re.poll({abortSignal:H});if(l)return Re.getResult();switch(P.status){case"succeeded":return Re.getResult();case"canceled":throw new Error(pe);case"failed":throw P.error;case"notStarted":case"running":throw new Error("Polling completed without succeeding or failing")}})().finally(()=>{Q=void 0})),"pollUntilDone"),async poll(se){if(l){if(Re.isDone())return}else switch(P.status){case"succeeded":return;case"canceled":throw new Error(pe);case"failed":throw P.error}if(await wfe({poll:d,state:P,stateProxy:w,getOperationLocation:e,isOperationError:s,withOperationLocation:S,getPollingInterval:a,getOperationStatus:n,getResourceLocation:o,processResult:m,getError:c,updateState:f,options:se,setDelay:i(ye=>{ke=ye},"setDelay"),setErrorAsResult:!l}),await V(),!l)switch(P.status){case"canceled":throw new Error(pe);case"failed":throw P.error}}};return Re}}i(yst,"buildCreatePoller");async function Est(t,e){let{resourceLocationConfig:r,intervalInMs:n,processResult:s,restoreFrom:o,updateState:a,withOperationLocation:c,resolveOnUnsuccessful:l=!1}=e||{};return yst({getStatusFromInitialResponse:_fe,getStatusFromPollResponse:hz,isOperationError:kfe,getOperationLocation:Qfe,getResourceLocation:Dfe,getPollingInterval:Pfe,getError:vfe,resolveOnUnsuccessful:l})({init:i(async()=>{let u=await t.sendInitialRequest(),d=Nfe({rawResponse:u.rawResponse,requestPath:t.requestPath,requestMethod:t.requestMethod,resourceLocationConfig:r});return Object.assign({response:u,operationLocation:d?.operationLocation,resourceLocation:d?.resourceLocation},d?.mode?{metadata:{mode:d.mode}}:{})},"init"),poll:t.sendPollRequest},{intervalInMs:n,withOperationLocation:c,restoreFrom:o,updateState:a,processResult:s?({flatResponse:u},d)=>s(u,d):({flatResponse:u})=>u})}i(Est,"createHttpPoller");var Cst=i(()=>({initState:i(t=>({config:t,isStarted:!0}),"initState"),setCanceled:i(t=>t.isCancelled=!0,"setCanceled"),setError:i((t,e)=>t.error=e,"setError"),setResult:i((t,e)=>t.result=e,"setResult"),setRunning:i(t=>t.isStarted=!0,"setRunning"),setSucceeded:i(t=>t.isCompleted=!0,"setSucceeded"),setFailed:i(()=>{},"setFailed"),getError:i(t=>t.error,"getError"),getResult:i(t=>t.result,"getResult"),isCanceled:i(t=>!!t.isCancelled,"isCanceled"),isFailed:i(t=>!!t.error,"isFailed"),isRunning:i(t=>!!t.isStarted,"isRunning"),isSucceeded:i(t=>!!(t.isCompleted&&!t.isCancelled&&!t.error),"isSucceeded")}),"createStateProxy"),mz=class{static{i(this,"GenericPollOperation")}constructor(e,r,n,s,o,a,c){this.state=e,this.lro=r,this.setErrorAsResult=n,this.lroResourceLocationConfig=s,this.processResult=o,this.updateState=a,this.isDone=c}setPollerConfig(e){this.pollerConfig=e}async update(e){var r;let n=Cst();this.state.isStarted||(this.state=Object.assign(Object.assign({},this.state),await Ast({lro:this.lro,stateProxy:n,resourceLocationConfig:this.lroResourceLocationConfig,processResult:this.processResult,setErrorAsResult:this.setErrorAsResult})));let s=this.updateState,o=this.isDone;return!this.state.isCompleted&&this.state.error===void 0&&await hst({lro:this.lro,state:this.state,stateProxy:n,processResult:this.processResult,updateState:s?(a,{rawResponse:c})=>s(a,c):void 0,isDone:o?({flatResponse:a},c)=>o(a,c):void 0,options:e,setDelay:i(a=>{this.pollerConfig.intervalInMs=a},"setDelay"),setErrorAsResult:this.setErrorAsResult}),(r=e?.fireProgress)===null||r===void 0||r.call(e,this.state),this}async cancel(){return Fm.error("`cancelOperation` is deprecated because it wasn't implemented"),this}toString(){return JSON.stringify({state:this.state})}},SN=class t extends Error{static{i(this,"PollerStoppedError")}constructor(e){super(e),this.name="PollerStoppedError",Object.setPrototypeOf(this,t.prototype)}},BN=class t extends Error{static{i(this,"PollerCancelledError")}constructor(e){super(e),this.name="PollerCancelledError",Object.setPrototypeOf(this,t.prototype)}},RN=class{static{i(this,"Poller")}constructor(e){this.resolveOnUnsuccessful=!1,this.stopped=!0,this.pollProgressCallbacks=[],this.operation=e,this.promise=new Promise((r,n)=>{this.resolve=r,this.reject=n}),this.promise.catch(()=>{})}async startPolling(e={}){for(this.stopped&&(this.stopped=!1);!this.isStopped()&&!this.isDone();)await this.poll(e),await this.delay()}async pollOnce(e={}){this.isDone()||(this.operation=await this.operation.update({abortSignal:e.abortSignal,fireProgress:this.fireProgress.bind(this)})),this.processUpdatedState()}fireProgress(e){for(let r of this.pollProgressCallbacks)r(e)}async cancelOnce(e={}){this.operation=await this.operation.cancel(e)}poll(e={}){if(!this.pollOncePromise){this.pollOncePromise=this.pollOnce(e);let r=i(()=>{this.pollOncePromise=void 0},"clearPollOncePromise");this.pollOncePromise.then(r,r).catch(this.reject)}return this.pollOncePromise}processUpdatedState(){if(this.operation.state.error&&(this.stopped=!0,!this.resolveOnUnsuccessful))throw this.reject(this.operation.state.error),this.operation.state.error;if(this.operation.state.isCancelled&&(this.stopped=!0,!this.resolveOnUnsuccessful)){let e=new BN("Operation was canceled");throw this.reject(e),e}this.isDone()&&this.resolve&&this.resolve(this.getResult())}async pollUntilDone(e={}){return this.stopped&&this.startPolling(e).catch(this.reject),this.processUpdatedState(),this.promise}onProgress(e){return this.pollProgressCallbacks.push(e),()=>{this.pollProgressCallbacks=this.pollProgressCallbacks.filter(r=>r!==e)}}isDone(){let e=this.operation.state;return!!(e.isCompleted||e.isCancelled||e.error)}stopPolling(){this.stopped||(this.stopped=!0,this.reject&&this.reject(new SN("This poller is already stopped")))}isStopped(){return this.stopped}cancelOperation(e={}){if(!this.cancelPromise)this.cancelPromise=this.cancelOnce(e);else if(e.abortSignal)throw new Error("A cancel request is currently pending");return this.cancelPromise}getOperationState(){return this.operation.state}getResult(){return this.operation.state.result}toString(){return this.operation.toString()}},fz=class extends RN{static{i(this,"LroEngine")}constructor(e,r){let{intervalInMs:n=yfe,resumeFrom:s,resolveOnUnsuccessful:o=!1,isDone:a,lroResourceLocationConfig:c,processResult:l,updateState:u}=r||{},d=s?Cfe(s):{},p=new mz(d,e,!o,c,l,u,a);super(p),this.resolveOnUnsuccessful=o,this.config={intervalInMs:n},p.setPollerConfig(this.config)}delay(){return new Promise(e=>setTimeout(()=>e(),this.config.intervalInMs))}};Um.LroEngine=fz;Um.Poller=RN;Um.PollerCancelledError=BN;Um.PollerStoppedError=SN;Um.createHttpPoller=Est});var tAe=b((Nar,qst)=>{qst.exports={name:"@actions/cache",version:"6.0.1",description:"Actions cache lib",keywords:["github","actions","cache"],homepage:"https://github.com/actions/toolkit/tree/main/packages/cache",license:"MIT",type:"module",main:"lib/cache.js",types:"lib/cache.d.ts",exports:{".":{types:"./lib/cache.d.ts",import:"./lib/cache.js"}},directories:{lib:"lib",test:"__tests__"},files:["lib","!.DS_Store"],publishConfig:{access:"public"},repository:{type:"git",url:"git+https://github.com/actions/toolkit.git",directory:"packages/cache"},scripts:{"audit-moderate":"npm install && npm audit --json --audit-level=moderate > audit.json",test:'echo "Error: run tests from root" && exit 1',tsc:"tsc && cp src/internal/shared/package-version.cjs lib/internal/shared/"},bugs:{url:"https://github.com/actions/toolkit/issues"},dependencies:{"@actions/core":"^3.0.1","@actions/exec":"^3.0.0","@actions/glob":"^0.6.1","@actions/http-client":"^4.0.1","@actions/io":"^3.0.2","@azure/core-rest-pipeline":"^1.23.0","@azure/storage-blob":"^12.31.0","@protobuf-ts/runtime-rpc":"^2.11.1",semver:"^7.7.4"},devDependencies:{"@protobuf-ts/plugin":"^2.11.1","@types/node":"^25.6.0","@types/semver":"^7.7.1",typescript:"^5.9.3"},overrides:{"uri-js":"npm:uri-js-replace@^1.0.1","node-fetch":"^3.3.2"}}});var nAe=b((Tar,rAe)=>{var $st=tAe();rAe.exports={version:$st.version}});var UN=b(Vh=>{"use strict";Object.defineProperty(Vh,"__esModule",{value:!0});Vh.isJsonObject=Vh.typeofJsonValue=void 0;function Jst(t){let e=typeof t;if(e=="object"){if(Array.isArray(t))return"array";if(t===null)return"null"}return e}i(Jst,"typeofJsonValue");Vh.typeofJsonValue=Jst;function Kst(t){return t!==null&&typeof t=="object"&&!Array.isArray(t)}i(Kst,"isJsonObject");Vh.isJsonObject=Kst});var $N=b(Yh=>{"use strict";Object.defineProperty(Yh,"__esModule",{value:!0});Yh.base64encode=Yh.base64decode=void 0;var au="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split(""),qN=[];for(let t=0;t>4,a=o,s=2;break;case 2:r[n++]=(a&15)<<4|(o&60)>>2,a=o,s=3;break;case 3:r[n++]=(a&3)<<6|o,s=0;break}}if(s==1)throw Error("invalid base64 string.");return r.subarray(0,n)}i(Xst,"base64decode");Yh.base64decode=Xst;function Zst(t){let e="",r=0,n,s=0;for(let o=0;o>2],s=(n&3)<<4,r=1;break;case 1:e+=au[s|n>>4],s=(n&15)<<2,r=2;break;case 2:e+=au[s|n>>6],e+=au[n&63],r=0;break}return r&&(e+=au[s],e+="=",r==1&&(e+="=")),e}i(Zst,"base64encode");Yh.base64encode=Zst});var lAe=b(GN=>{"use strict";Object.defineProperty(GN,"__esModule",{value:!0});GN.utf8read=void 0;var Bz=i(t=>String.fromCharCode.apply(String,t),"fromCharCodes");function eot(t){if(t.length<1)return"";let e=0,r=[],n=[],s=0,o,a=t.length;for(;e191&&o<224?n[s++]=(o&31)<<6|t[e++]&63:o>239&&o<365?(o=((o&7)<<18|(t[e++]&63)<<12|(t[e++]&63)<<6|t[e++]&63)-65536,n[s++]=55296+(o>>10),n[s++]=56320+(o&1023)):n[s++]=(o&15)<<12|(t[e++]&63)<<6|t[e++]&63,s>8191&&(r.push(Bz(n)),s=0);return r.length?(s&&r.push(Bz(n.slice(0,s))),r.join("")):Bz(n.slice(0,s))}i(eot,"utf8read");GN.utf8read=eot});var RI=b(vc=>{"use strict";Object.defineProperty(vc,"__esModule",{value:!0});vc.WireType=vc.mergeBinaryOptions=vc.UnknownFieldHandler=void 0;var tot;(function(t){t.symbol=Symbol.for("protobuf-ts/unknown"),t.onRead=(r,n,s,o,a)=>{(e(n)?n[t.symbol]:n[t.symbol]=[]).push({no:s,wireType:o,data:a})},t.onWrite=(r,n,s)=>{for(let{no:o,wireType:a,data:c}of t.list(n))s.tag(o,a).raw(c)},t.list=(r,n)=>{if(e(r)){let s=r[t.symbol];return n?s.filter(o=>o.no==n):s}return[]},t.last=(r,n)=>t.list(r,n).slice(-1)[0];let e=i(r=>r&&Array.isArray(r[t.symbol]),"is")})(tot=vc.UnknownFieldHandler||(vc.UnknownFieldHandler={}));function rot(t,e){return Object.assign(Object.assign({},t),e)}i(rot,"mergeBinaryOptions");vc.mergeBinaryOptions=rot;var not;(function(t){t[t.Varint=0]="Varint",t[t.Bit64=1]="Bit64",t[t.LengthDelimited=2]="LengthDelimited",t[t.StartGroup=3]="StartGroup",t[t.EndGroup=4]="EndGroup",t[t.Bit32=5]="Bit32"})(not=vc.WireType||(vc.WireType={}))});var zN=b(eo=>{"use strict";Object.defineProperty(eo,"__esModule",{value:!0});eo.varint32read=eo.varint32write=eo.int64toString=eo.int64fromString=eo.varint64write=eo.varint64read=void 0;function sot(){let t=0,e=0;for(let n=0;n<28;n+=7){let s=this.buf[this.pos++];if(t|=(s&127)<>4,(r&128)==0)return this.assertBounds(),[t,e];for(let n=3;n<=31;n+=7){let s=this.buf[this.pos++];if(e|=(s&127)<>>o,c=!(!(a>>>7)&&e==0),l=(c?a|128:a)&255;if(r.push(l),!c)return}let n=t>>>28&15|(e&7)<<4,s=e>>3!=0;if(r.push((s?n|128:n)&255),!!s){for(let o=3;o<31;o=o+7){let a=e>>>o,c=!!(a>>>7),l=(c?a|128:a)&255;if(r.push(l),!c)return}r.push(e>>>31&1)}}i(oot,"varint64write");eo.varint64write=oot;var HN=65536*65536;function iot(t){let e=t[0]=="-";e&&(t=t.slice(1));let r=1e6,n=0,s=0;function o(a,c){let l=Number(t.slice(a,c));s*=r,n=n*r+l,n>=HN&&(s=s+(n/HN|0),n=n%HN)}return i(o,"add1e6digit"),o(-24,-18),o(-18,-12),o(-12,-6),o(-6),[e,n,s]}i(iot,"int64fromString");eo.int64fromString=iot;function aot(t,e){if(e>>>0<=2097151)return""+(HN*e+(t>>>0));let r=t&16777215,n=(t>>>24|e<<8)>>>0&16777215,s=e>>16&65535,o=r+n*6777216+s*6710656,a=n+s*8147497,c=s*2,l=1e7;o>=l&&(a+=Math.floor(o/l),o%=l),a>=l&&(c+=Math.floor(a/l),a%=l);function u(d,p){let m=d?String(d):"";return p?"0000000".slice(m.length)+m:m}return i(u,"decimalFrom1e7"),u(c,0)+u(a,c)+u(o,1)}i(aot,"int64toString");eo.int64toString=aot;function cot(t,e){if(t>=0){for(;t>127;)e.push(t&127|128),t=t>>>7;e.push(t)}else{for(let r=0;r<9;r++)e.push(t&127|128),t=t>>7;e.push(1)}}i(cot,"varint32write");eo.varint32write=cot;function lot(){let t=this.buf[this.pos++],e=t&127;if((t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<7,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<14,(t&128)==0)return this.assertBounds(),e;if(t=this.buf[this.pos++],e|=(t&127)<<21,(t&128)==0)return this.assertBounds(),e;t=this.buf[this.pos++],e|=(t&15)<<28;for(let r=5;(t&128)!==0&&r<10;r++)t=this.buf[this.pos++];if((t&128)!=0)throw new Error("invalid varint");return this.assertBounds(),e>>>0}i(lot,"varint32read");eo.varint32read=lot});var Qd=b(_d=>{"use strict";Object.defineProperty(_d,"__esModule",{value:!0});_d.PbLong=_d.PbULong=_d.detectBi=void 0;var NI=zN(),Mt;function uAe(){let t=new DataView(new ArrayBuffer(8));Mt=globalThis.BigInt!==void 0&&typeof t.getBigInt64=="function"&&typeof t.getBigUint64=="function"&&typeof t.setBigInt64=="function"&&typeof t.setBigUint64=="function"?{MIN:BigInt("-9223372036854775808"),MAX:BigInt("9223372036854775807"),UMIN:BigInt("0"),UMAX:BigInt("18446744073709551615"),C:BigInt,V:t}:void 0}i(uAe,"detectBi");_d.detectBi=uAe;uAe();function dAe(t){if(!t)throw new Error("BigInt unavailable, see https://github.com/timostamm/protobuf-ts/blob/v1.0.8/MANUAL.md#bigint-support")}i(dAe,"assertBi");var pAe=/^-?[0-9]+$/,YN=4294967296,VN=2147483648,WN=class{static{i(this,"SharedPbLong")}constructor(e,r){this.lo=e|0,this.hi=r|0}isZero(){return this.lo==0&&this.hi==0}toNumber(){let e=this.hi*YN+(this.lo>>>0);if(!Number.isSafeInteger(e))throw new Error("cannot convert to safe number");return e}},TI=class t extends WN{static{i(this,"PbULong")}static from(e){if(Mt)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=Mt.C(e);case"number":if(e===0)return this.ZERO;e=Mt.C(e);case"bigint":if(!e)return this.ZERO;if(eMt.UMAX)throw new Error("ulong too large");return Mt.V.setBigUint64(0,e,!0),new t(Mt.V.getInt32(0,!0),Mt.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!pAe.test(e))throw new Error("string is no integer");let[r,n,s]=NI.int64fromString(e);if(r)throw new Error("signed value for ulong");return new t(n,s);case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");if(e<0)throw new Error("signed value for ulong");return new t(e,e/YN)}throw new Error("unknown value "+typeof e)}toString(){return Mt?this.toBigInt().toString():NI.int64toString(this.lo,this.hi)}toBigInt(){return dAe(Mt),Mt.V.setInt32(0,this.lo,!0),Mt.V.setInt32(4,this.hi,!0),Mt.V.getBigUint64(0,!0)}};_d.PbULong=TI;TI.ZERO=new TI(0,0);var PI=class t extends WN{static{i(this,"PbLong")}static from(e){if(Mt)switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=="")throw new Error("string is no integer");e=Mt.C(e);case"number":if(e===0)return this.ZERO;e=Mt.C(e);case"bigint":if(!e)return this.ZERO;if(eMt.MAX)throw new Error("signed long too large");return Mt.V.setBigInt64(0,e,!0),new t(Mt.V.getInt32(0,!0),Mt.V.getInt32(4,!0))}else switch(typeof e){case"string":if(e=="0")return this.ZERO;if(e=e.trim(),!pAe.test(e))throw new Error("string is no integer");let[r,n,s]=NI.int64fromString(e);if(r){if(s>VN||s==VN&&n!=0)throw new Error("signed long too small")}else if(s>=VN)throw new Error("signed long too large");let o=new t(n,s);return r?o.negate():o;case"number":if(e==0)return this.ZERO;if(!Number.isSafeInteger(e))throw new Error("number is no integer");return e>0?new t(e,e/YN):new t(-e,-e/YN).negate()}throw new Error("unknown value "+typeof e)}isNegative(){return(this.hi&VN)!==0}negate(){let e=~this.hi,r=this.lo;return r?r=~r+1:e+=1,new t(r,e)}toString(){if(Mt)return this.toBigInt().toString();if(this.isNegative()){let e=this.negate();return"-"+NI.int64toString(e.lo,e.hi)}return NI.int64toString(this.lo,this.hi)}toBigInt(){return dAe(Mt),Mt.V.setInt32(0,this.lo,!0),Mt.V.setInt32(4,this.hi,!0),Mt.V.getBigInt64(0,!0)}};_d.PbLong=PI;PI.ZERO=new PI(0,0)});var Rz=b(jh=>{"use strict";Object.defineProperty(jh,"__esModule",{value:!0});jh.BinaryReader=jh.binaryReadOptions=void 0;var Wh=RI(),vI=Qd(),mAe=zN(),fAe={readUnknownField:!0,readerFactory:i(t=>new jN(t),"readerFactory")};function uot(t){return t?Object.assign(Object.assign({},fAe),t):fAe}i(uot,"binaryReadOptions");jh.binaryReadOptions=uot;var jN=class{static{i(this,"BinaryReader")}constructor(e,r){this.varint64=mAe.varint64read,this.uint32=mAe.varint32read,this.buf=e,this.len=e.length,this.pos=0,this.view=new DataView(e.buffer,e.byteOffset,e.byteLength),this.textDecoder=r??new TextDecoder("utf-8",{fatal:!0,ignoreBOM:!0})}tag(){let e=this.uint32(),r=e>>>3,n=e&7;if(r<=0||n<0||n>5)throw new Error("illegal tag: field no "+r+" wire type "+n);return[r,n]}skip(e){let r=this.pos;switch(e){case Wh.WireType.Varint:for(;this.buf[this.pos++]&128;);break;case Wh.WireType.Bit64:this.pos+=4;case Wh.WireType.Bit32:this.pos+=4;break;case Wh.WireType.LengthDelimited:let n=this.uint32();this.pos+=n;break;case Wh.WireType.StartGroup:let s;for(;(s=this.tag()[1])!==Wh.WireType.EndGroup;)this.skip(s);break;default:throw new Error("cant skip wire type "+e)}return this.assertBounds(),this.buf.subarray(r,this.pos)}assertBounds(){if(this.pos>this.len)throw new RangeError("premature EOF")}int32(){return this.uint32()|0}sint32(){let e=this.uint32();return e>>>1^-(e&1)}int64(){return new vI.PbLong(...this.varint64())}uint64(){return new vI.PbULong(...this.varint64())}sint64(){let[e,r]=this.varint64(),n=-(e&1);return e=(e>>>1|(r&1)<<31)^n,r=r>>>1^n,new vI.PbLong(e,r)}bool(){let[e,r]=this.varint64();return e!==0||r!==0}fixed32(){return this.view.getUint32((this.pos+=4)-4,!0)}sfixed32(){return this.view.getInt32((this.pos+=4)-4,!0)}fixed64(){return new vI.PbULong(this.sfixed32(),this.sfixed32())}sfixed64(){return new vI.PbLong(this.sfixed32(),this.sfixed32())}float(){return this.view.getFloat32((this.pos+=4)-4,!0)}double(){return this.view.getFloat64((this.pos+=8)-8,!0)}bytes(){let e=this.uint32(),r=this.pos;return this.pos+=e,this.assertBounds(),this.buf.subarray(r,r+e)}string(){return this.textDecoder.decode(this.bytes())}};jh.BinaryReader=jN});var Jh=b(bi=>{"use strict";Object.defineProperty(bi,"__esModule",{value:!0});bi.assertFloat32=bi.assertUInt32=bi.assertInt32=bi.assertNever=bi.assert=void 0;function dot(t,e){if(!t)throw new Error(e)}i(dot,"assert");bi.assert=dot;function pot(t,e){throw new Error(e??"Unexpected object: "+t)}i(pot,"assertNever");bi.assertNever=pot;var mot=34028234663852886e22,fot=-34028234663852886e22,Aot=4294967295,hot=2147483647,got=-2147483648;function yot(t){if(typeof t!="number")throw new Error("invalid int 32: "+typeof t);if(!Number.isInteger(t)||t>hot||tAot||t<0)throw new Error("invalid uint 32: "+t)}i(Eot,"assertUInt32");bi.assertUInt32=Eot;function Cot(t){if(typeof t!="number")throw new Error("invalid float 32: "+typeof t);if(Number.isFinite(t)&&(t>mot||t{"use strict";Object.defineProperty(Xh,"__esModule",{value:!0});Xh.BinaryWriter=Xh.binaryWriteOptions=void 0;var _I=Qd(),QI=zN(),Kh=Jh(),AAe={writeUnknownFields:!0,writerFactory:i(()=>new JN,"writerFactory")};function Iot(t){return t?Object.assign(Object.assign({},AAe),t):AAe}i(Iot,"binaryWriteOptions");Xh.binaryWriteOptions=Iot;var JN=class{static{i(this,"BinaryWriter")}constructor(e){this.stack=[],this.textEncoder=e??new TextEncoder,this.chunks=[],this.buf=[]}finish(){this.chunks.push(new Uint8Array(this.buf));let e=0;for(let s=0;s>>0)}raw(e){return this.buf.length&&(this.chunks.push(new Uint8Array(this.buf)),this.buf=[]),this.chunks.push(e),this}uint32(e){for(Kh.assertUInt32(e);e>127;)this.buf.push(e&127|128),e=e>>>7;return this.buf.push(e),this}int32(e){return Kh.assertInt32(e),QI.varint32write(e,this.buf),this}bool(e){return this.buf.push(e?1:0),this}bytes(e){return this.uint32(e.byteLength),this.raw(e)}string(e){let r=this.textEncoder.encode(e);return this.uint32(r.byteLength),this.raw(r)}float(e){Kh.assertFloat32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setFloat32(0,e,!0),this.raw(r)}double(e){let r=new Uint8Array(8);return new DataView(r.buffer).setFloat64(0,e,!0),this.raw(r)}fixed32(e){Kh.assertUInt32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setUint32(0,e,!0),this.raw(r)}sfixed32(e){Kh.assertInt32(e);let r=new Uint8Array(4);return new DataView(r.buffer).setInt32(0,e,!0),this.raw(r)}sint32(e){return Kh.assertInt32(e),e=(e<<1^e>>31)>>>0,QI.varint32write(e,this.buf),this}sfixed64(e){let r=new Uint8Array(8),n=new DataView(r.buffer),s=_I.PbLong.from(e);return n.setInt32(0,s.lo,!0),n.setInt32(4,s.hi,!0),this.raw(r)}fixed64(e){let r=new Uint8Array(8),n=new DataView(r.buffer),s=_I.PbULong.from(e);return n.setInt32(0,s.lo,!0),n.setInt32(4,s.hi,!0),this.raw(r)}int64(e){let r=_I.PbLong.from(e);return QI.varint64write(r.lo,r.hi,this.buf),this}sint64(e){let r=_I.PbLong.from(e),n=r.hi>>31,s=r.lo<<1^n,o=(r.hi<<1|r.lo>>>31)^n;return QI.varint64write(s,o,this.buf),this}uint64(e){let r=_I.PbULong.from(e);return QI.varint64write(r.lo,r.hi,this.buf),this}};Xh.BinaryWriter=JN});var Tz=b(Dd=>{"use strict";Object.defineProperty(Dd,"__esModule",{value:!0});Dd.mergeJsonOptions=Dd.jsonWriteOptions=Dd.jsonReadOptions=void 0;var hAe={emitDefaultValues:!1,enumAsInteger:!1,useProtoFieldName:!1,prettySpaces:0},gAe={ignoreUnknownFields:!1};function xot(t){return t?Object.assign(Object.assign({},gAe),t):gAe}i(xot,"jsonReadOptions");Dd.jsonReadOptions=xot;function wot(t){return t?Object.assign(Object.assign({},hAe),t):hAe}i(wot,"jsonWriteOptions");Dd.jsonWriteOptions=wot;function bot(t,e){var r,n;let s=Object.assign(Object.assign({},t),e);return s.typeRegistry=[...(r=t?.typeRegistry)!==null&&r!==void 0?r:[],...(n=e?.typeRegistry)!==null&&n!==void 0?n:[]],s}i(bot,"mergeJsonOptions");Dd.mergeJsonOptions=bot});var DI=b(KN=>{"use strict";Object.defineProperty(KN,"__esModule",{value:!0});KN.MESSAGE_TYPE=void 0;KN.MESSAGE_TYPE=Symbol.for("protobuf-ts/message-type")});var Pz=b(XN=>{"use strict";Object.defineProperty(XN,"__esModule",{value:!0});XN.lowerCamelCase=void 0;function Sot(t){let e=!1,r=[];for(let n=0;n{"use strict";Object.defineProperty(cn,"__esModule",{value:!0});cn.readMessageOption=cn.readFieldOption=cn.readFieldOptions=cn.normalizeFieldInfo=cn.RepeatType=cn.LongType=cn.ScalarType=void 0;var yAe=Pz(),Bot;(function(t){t[t.DOUBLE=1]="DOUBLE",t[t.FLOAT=2]="FLOAT",t[t.INT64=3]="INT64",t[t.UINT64=4]="UINT64",t[t.INT32=5]="INT32",t[t.FIXED64=6]="FIXED64",t[t.FIXED32=7]="FIXED32",t[t.BOOL=8]="BOOL",t[t.STRING=9]="STRING",t[t.BYTES=12]="BYTES",t[t.UINT32=13]="UINT32",t[t.SFIXED32=15]="SFIXED32",t[t.SFIXED64=16]="SFIXED64",t[t.SINT32=17]="SINT32",t[t.SINT64=18]="SINT64"})(Bot=cn.ScalarType||(cn.ScalarType={}));var Rot;(function(t){t[t.BIGINT=0]="BIGINT",t[t.STRING=1]="STRING",t[t.NUMBER=2]="NUMBER"})(Rot=cn.LongType||(cn.LongType={}));var EAe;(function(t){t[t.NO=0]="NO",t[t.PACKED=1]="PACKED",t[t.UNPACKED=2]="UNPACKED"})(EAe=cn.RepeatType||(cn.RepeatType={}));function Not(t){var e,r,n,s;return t.localName=(e=t.localName)!==null&&e!==void 0?e:yAe.lowerCamelCase(t.name),t.jsonName=(r=t.jsonName)!==null&&r!==void 0?r:yAe.lowerCamelCase(t.name),t.repeat=(n=t.repeat)!==null&&n!==void 0?n:EAe.NO,t.opt=(s=t.opt)!==null&&s!==void 0?s:t.repeat||t.oneof?!1:t.kind=="message",t}i(Not,"normalizeFieldInfo");cn.normalizeFieldInfo=Not;function Tot(t,e,r,n){var s;let o=(s=t.fields.find((a,c)=>a.localName==e||c==e))===null||s===void 0?void 0:s.options;return o&&o[r]?n.fromJson(o[r]):void 0}i(Tot,"readFieldOptions");cn.readFieldOptions=Tot;function Pot(t,e,r,n){var s;let o=(s=t.fields.find((c,l)=>c.localName==e||l==e))===null||s===void 0?void 0:s.options;if(!o)return;let a=o[r];return a===void 0?a:n?n.fromJson(a):a}i(Pot,"readFieldOption");cn.readFieldOption=Pot;function vot(t,e,r){let s=t.options[e];return s===void 0?s:r?r.fromJson(s):s}i(vot,"readMessageOption");cn.readMessageOption=vot});var vz=b(to=>{"use strict";Object.defineProperty(to,"__esModule",{value:!0});to.getSelectedOneofValue=to.clearOneofValue=to.setUnknownOneofValue=to.setOneofValue=to.getOneofValue=to.isOneofGroup=void 0;function _ot(t){if(typeof t!="object"||t===null||!t.hasOwnProperty("oneofKind"))return!1;switch(typeof t.oneofKind){case"string":return t[t.oneofKind]===void 0?!1:Object.keys(t).length==2;case"undefined":return Object.keys(t).length==1;default:return!1}}i(_ot,"isOneofGroup");to.isOneofGroup=_ot;function Qot(t,e){return t[e]}i(Qot,"getOneofValue");to.getOneofValue=Qot;function Dot(t,e,r){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=e,r!==void 0&&(t[e]=r)}i(Dot,"setOneofValue");to.setOneofValue=Dot;function kot(t,e,r){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=e,r!==void 0&&e!==void 0&&(t[e]=r)}i(kot,"setUnknownOneofValue");to.setUnknownOneofValue=kot;function Lot(t){t.oneofKind!==void 0&&delete t[t.oneofKind],t.oneofKind=void 0}i(Lot,"clearOneofValue");to.clearOneofValue=Lot;function Oot(t){if(t.oneofKind!==void 0)return t[t.oneofKind]}i(Oot,"getSelectedOneofValue");to.getSelectedOneofValue=Oot});var Qz=b(ZN=>{"use strict";Object.defineProperty(ZN,"__esModule",{value:!0});ZN.ReflectionTypeCheck=void 0;var Br=ha(),Mot=vz(),_z=class{static{i(this,"ReflectionTypeCheck")}constructor(e){var r;this.fields=(r=e.fields)!==null&&r!==void 0?r:[]}prepare(){if(this.data)return;let e=[],r=[],n=[];for(let s of this.fields)if(s.oneof)n.includes(s.oneof)||(n.push(s.oneof),e.push(s.oneof),r.push(s.oneof));else switch(r.push(s.localName),s.kind){case"scalar":case"enum":(!s.opt||s.repeat)&&e.push(s.localName);break;case"message":s.repeat&&e.push(s.localName);break;case"map":e.push(s.localName);break}this.data={req:e,known:r,oneofs:Object.values(n)}}is(e,r,n=!1){if(r<0)return!0;if(e==null||typeof e!="object")return!1;this.prepare();let s=Object.keys(e),o=this.data;if(s.length!s.includes(a))||!n&&s.some(a=>!o.known.includes(a)))return!1;if(r<1)return!0;for(let a of o.oneofs){let c=e[a];if(!Mot.isOneofGroup(c))return!1;if(c.oneofKind===void 0)continue;let l=this.fields.find(u=>u.localName===c.oneofKind);if(!l||!this.field(c[c.oneofKind],l,n,r))return!1}for(let a of this.fields)if(a.oneof===void 0&&!this.field(e[a.localName],a,n,r))return!1;return!0}field(e,r,n,s){let o=r.repeat;switch(r.kind){case"scalar":return e===void 0?r.opt:o?this.scalars(e,r.T,s,r.L):this.scalar(e,r.T,r.L);case"enum":return e===void 0?r.opt:o?this.scalars(e,Br.ScalarType.INT32,s):this.scalar(e,Br.ScalarType.INT32);case"message":return e===void 0?!0:o?this.messages(e,r.T(),n,s):this.message(e,r.T(),n,s);case"map":if(typeof e!="object"||e===null)return!1;if(s<2)return!0;if(!this.mapKeys(e,r.K,s))return!1;switch(r.V.kind){case"scalar":return this.scalars(Object.values(e),r.V.T,s,r.V.L);case"enum":return this.scalars(Object.values(e),Br.ScalarType.INT32,s);case"message":return this.messages(Object.values(e),r.V.T(),n,s)}break}return!0}message(e,r,n,s){return n?r.isAssignable(e,s):r.is(e,s)}messages(e,r,n,s){if(!Array.isArray(e))return!1;if(s<2)return!0;if(n){for(let o=0;oparseInt(o)),r,n);case Br.ScalarType.BOOL:return this.scalars(s.slice(0,n).map(o=>o=="true"?!0:o=="false"?!1:o),r,n);default:return this.scalars(s,r,n,Br.LongType.STRING)}}};ZN.ReflectionTypeCheck=_z});var tT=b(eT=>{"use strict";Object.defineProperty(eT,"__esModule",{value:!0});eT.reflectionLongConvert=void 0;var CAe=ha();function Fot(t,e){switch(e){case CAe.LongType.BIGINT:return t.toBigInt();case CAe.LongType.NUMBER:return t.toNumber();default:return t.toString()}}i(Fot,"reflectionLongConvert");eT.reflectionLongConvert=Fot});var kz=b(sT=>{"use strict";Object.defineProperty(sT,"__esModule",{value:!0});sT.ReflectionJsonReader=void 0;var IAe=UN(),Uot=$N(),ln=ha(),rT=Qd(),$m=Jh(),nT=tT(),Dz=class{static{i(this,"ReflectionJsonReader")}constructor(e){this.info=e}prepare(){var e;if(this.fMap===void 0){this.fMap={};let r=(e=this.info.fields)!==null&&e!==void 0?e:[];for(let n of r)this.fMap[n.name]=n,this.fMap[n.jsonName]=n,this.fMap[n.localName]=n}}assert(e,r,n){if(!e){let s=IAe.typeofJsonValue(n);throw(s=="number"||s=="boolean")&&(s=n.toString()),new Error(`Cannot parse JSON ${s} for ${this.info.typeName}#${r}`)}}read(e,r,n){this.prepare();let s=[];for(let[o,a]of Object.entries(e)){let c=this.fMap[o];if(!c){if(!n.ignoreUnknownFields)throw new Error(`Found unknown field while reading ${this.info.typeName} from JSON format. JSON key: ${o}`);continue}let l=c.localName,u;if(c.oneof){if(a===null&&(c.kind!=="enum"||c.T()[0]!=="google.protobuf.NullValue"))continue;if(s.includes(c.oneof))throw new Error(`Multiple members of the oneof group "${c.oneof}" of ${this.info.typeName} are present in JSON.`);s.push(c.oneof),u=r[c.oneof]={oneofKind:l}}else u=r;if(c.kind=="map"){if(a===null)continue;this.assert(IAe.isJsonObject(a),c.name,a);let d=u[l];for(let[p,m]of Object.entries(a)){this.assert(m!==null,c.name+" map value",null);let f;switch(c.V.kind){case"message":f=c.V.T().internalJsonRead(m,n);break;case"enum":if(f=this.enum(c.V.T(),m,c.name,n.ignoreUnknownFields),f===!1)continue;break;case"scalar":f=this.scalar(m,c.V.T,c.V.L,c.name);break}this.assert(f!==void 0,c.name+" map value",m);let g=p;c.K==ln.ScalarType.BOOL&&(g=g=="true"?!0:g=="false"?!1:g),g=this.scalar(g,c.K,ln.LongType.STRING,c.name).toString(),d[g]=f}}else if(c.repeat){if(a===null)continue;this.assert(Array.isArray(a),c.name,a);let d=u[l];for(let p of a){this.assert(p!==null,c.name,null);let m;switch(c.kind){case"message":m=c.T().internalJsonRead(p,n);break;case"enum":if(m=this.enum(c.T(),p,c.name,n.ignoreUnknownFields),m===!1)continue;break;case"scalar":m=this.scalar(p,c.T,c.L,c.name);break}this.assert(m!==void 0,c.name,a),d.push(m)}}else switch(c.kind){case"message":if(a===null&&c.T().typeName!="google.protobuf.Value"){this.assert(c.oneof===void 0,c.name+" (oneof member)",null);continue}u[l]=c.T().internalJsonRead(a,n,u[l]);break;case"enum":if(a===null)continue;let d=this.enum(c.T(),a,c.name,n.ignoreUnknownFields);if(d===!1)continue;u[l]=d;break;case"scalar":if(a===null)continue;u[l]=this.scalar(a,c.T,c.L,c.name);break}}}enum(e,r,n,s){if(e[0]=="google.protobuf.NullValue"&&$m.assert(r===null||r==="NULL_VALUE",`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} only accepts null.`),r===null)return 0;switch(typeof r){case"number":return $m.assert(Number.isInteger(r),`Unable to parse field ${this.info.typeName}#${n}, enum can only be integral number, got ${r}.`),r;case"string":let o=r;e[2]&&r.substring(0,e[2].length)===e[2]&&(o=r.substring(e[2].length));let a=e[1][o];return typeof a>"u"&&s?!1:($m.assert(typeof a=="number",`Unable to parse field ${this.info.typeName}#${n}, enum ${e[0]} has no value for "${r}".`),a)}$m.assert(!1,`Unable to parse field ${this.info.typeName}#${n}, cannot parse enum value from ${typeof r}".`)}scalar(e,r,n,s){let o;try{switch(r){case ln.ScalarType.DOUBLE:case ln.ScalarType.FLOAT:if(e===null)return 0;if(e==="NaN")return Number.NaN;if(e==="Infinity")return Number.POSITIVE_INFINITY;if(e==="-Infinity")return Number.NEGATIVE_INFINITY;if(e===""){o="empty string";break}if(typeof e=="string"&&e.trim().length!==e.length){o="extra whitespace";break}if(typeof e!="string"&&typeof e!="number")break;let a=Number(e);if(Number.isNaN(a)){o="not a number";break}if(!Number.isFinite(a)){o="too large or small";break}return r==ln.ScalarType.FLOAT&&$m.assertFloat32(a),a;case ln.ScalarType.INT32:case ln.ScalarType.FIXED32:case ln.ScalarType.SFIXED32:case ln.ScalarType.SINT32:case ln.ScalarType.UINT32:if(e===null)return 0;let c;if(typeof e=="number"?c=e:e===""?o="empty string":typeof e=="string"&&(e.trim().length!==e.length?o="extra whitespace":c=Number(e)),c===void 0)break;return r==ln.ScalarType.UINT32?$m.assertUInt32(c):$m.assertInt32(c),c;case ln.ScalarType.INT64:case ln.ScalarType.SFIXED64:case ln.ScalarType.SINT64:if(e===null)return nT.reflectionLongConvert(rT.PbLong.ZERO,n);if(typeof e!="number"&&typeof e!="string")break;return nT.reflectionLongConvert(rT.PbLong.from(e),n);case ln.ScalarType.FIXED64:case ln.ScalarType.UINT64:if(e===null)return nT.reflectionLongConvert(rT.PbULong.ZERO,n);if(typeof e!="number"&&typeof e!="string")break;return nT.reflectionLongConvert(rT.PbULong.from(e),n);case ln.ScalarType.BOOL:if(e===null)return!1;if(typeof e!="boolean")break;return e;case ln.ScalarType.STRING:if(e===null)return"";if(typeof e!="string"){o="extra whitespace";break}try{encodeURIComponent(e)}catch(l){l="invalid UTF8";break}return e;case ln.ScalarType.BYTES:if(e===null||e==="")return new Uint8Array(0);if(typeof e!="string")break;return Uot.base64decode(e)}}catch(a){o=a.message}this.assert(!1,s+(o?" - "+o:""),e)}};sT.ReflectionJsonReader=Dz});var Oz=b(oT=>{"use strict";Object.defineProperty(oT,"__esModule",{value:!0});oT.ReflectionJsonWriter=void 0;var qot=$N(),xAe=Qd(),bs=ha(),sr=Jh(),Lz=class{static{i(this,"ReflectionJsonWriter")}constructor(e){var r;this.fields=(r=e.fields)!==null&&r!==void 0?r:[]}write(e,r){let n={},s=e;for(let o of this.fields){if(!o.oneof){let u=this.field(o,s[o.localName],r);u!==void 0&&(n[r.useProtoFieldName?o.name:o.jsonName]=u);continue}let a=s[o.oneof];if(a.oneofKind!==o.localName)continue;let c=o.kind=="scalar"||o.kind=="enum"?Object.assign(Object.assign({},r),{emitDefaultValues:!0}):r,l=this.field(o,a[o.localName],c);sr.assert(l!==void 0),n[r.useProtoFieldName?o.name:o.jsonName]=l}return n}field(e,r,n){let s;if(e.kind=="map"){sr.assert(typeof r=="object"&&r!==null);let o={};switch(e.V.kind){case"scalar":for(let[l,u]of Object.entries(r)){let d=this.scalar(e.V.T,u,e.name,!1,!0);sr.assert(d!==void 0),o[l.toString()]=d}break;case"message":let a=e.V.T();for(let[l,u]of Object.entries(r)){let d=this.message(a,u,e.name,n);sr.assert(d!==void 0),o[l.toString()]=d}break;case"enum":let c=e.V.T();for(let[l,u]of Object.entries(r)){sr.assert(u===void 0||typeof u=="number");let d=this.enum(c,u,e.name,!1,!0,n.enumAsInteger);sr.assert(d!==void 0),o[l.toString()]=d}break}(n.emitDefaultValues||Object.keys(o).length>0)&&(s=o)}else if(e.repeat){sr.assert(Array.isArray(r));let o=[];switch(e.kind){case"scalar":for(let l=0;l0||n.emitDefaultValues)&&(s=o)}else switch(e.kind){case"scalar":s=this.scalar(e.T,r,e.name,e.opt,n.emitDefaultValues);break;case"enum":s=this.enum(e.T(),r,e.name,e.opt,n.emitDefaultValues,n.enumAsInteger);break;case"message":s=this.message(e.T(),r,e.name,n);break}return s}enum(e,r,n,s,o,a){if(e[0]=="google.protobuf.NullValue")return!o&&!s?void 0:null;if(r===void 0){sr.assert(s);return}if(!(r===0&&!o&&!s))return sr.assert(typeof r=="number"),sr.assert(Number.isInteger(r)),a||!e[1].hasOwnProperty(r)?r:e[2]?e[2]+e[1][r]:e[1][r]}message(e,r,n,s){return r===void 0?s.emitDefaultValues?null:void 0:e.internalJsonWrite(r,s)}scalar(e,r,n,s,o){if(r===void 0){sr.assert(s);return}let a=o||s;switch(e){case bs.ScalarType.INT32:case bs.ScalarType.SFIXED32:case bs.ScalarType.SINT32:return r===0?a?0:void 0:(sr.assertInt32(r),r);case bs.ScalarType.FIXED32:case bs.ScalarType.UINT32:return r===0?a?0:void 0:(sr.assertUInt32(r),r);case bs.ScalarType.FLOAT:sr.assertFloat32(r);case bs.ScalarType.DOUBLE:return r===0?a?0:void 0:(sr.assert(typeof r=="number"),Number.isNaN(r)?"NaN":r===Number.POSITIVE_INFINITY?"Infinity":r===Number.NEGATIVE_INFINITY?"-Infinity":r);case bs.ScalarType.STRING:return r===""?a?"":void 0:(sr.assert(typeof r=="string"),r);case bs.ScalarType.BOOL:return r===!1?a?!1:void 0:(sr.assert(typeof r=="boolean"),r);case bs.ScalarType.UINT64:case bs.ScalarType.FIXED64:sr.assert(typeof r=="number"||typeof r=="string"||typeof r=="bigint");let c=xAe.PbULong.from(r);return c.isZero()&&!a?void 0:c.toString();case bs.ScalarType.INT64:case bs.ScalarType.SFIXED64:case bs.ScalarType.SINT64:sr.assert(typeof r=="number"||typeof r=="string"||typeof r=="bigint");let l=xAe.PbLong.from(r);return l.isZero()&&!a?void 0:l.toString();case bs.ScalarType.BYTES:return sr.assert(r instanceof Uint8Array),r.byteLength?qot.base64encode(r):a?"":void 0}}};oT.ReflectionJsonWriter=Lz});var aT=b(iT=>{"use strict";Object.defineProperty(iT,"__esModule",{value:!0});iT.reflectionScalarDefault=void 0;var ga=ha(),wAe=tT(),bAe=Qd();function $ot(t,e=ga.LongType.STRING){switch(t){case ga.ScalarType.BOOL:return!1;case ga.ScalarType.UINT64:case ga.ScalarType.FIXED64:return wAe.reflectionLongConvert(bAe.PbULong.ZERO,e);case ga.ScalarType.INT64:case ga.ScalarType.SFIXED64:case ga.ScalarType.SINT64:return wAe.reflectionLongConvert(bAe.PbLong.ZERO,e);case ga.ScalarType.DOUBLE:case ga.ScalarType.FLOAT:return 0;case ga.ScalarType.BYTES:return new Uint8Array(0);case ga.ScalarType.STRING:return"";default:return 0}}i($ot,"reflectionScalarDefault");iT.reflectionScalarDefault=$ot});var Fz=b(cT=>{"use strict";Object.defineProperty(cT,"__esModule",{value:!0});cT.ReflectionBinaryReader=void 0;var SAe=RI(),Or=ha(),kI=tT(),BAe=aT(),Mz=class{static{i(this,"ReflectionBinaryReader")}constructor(e){this.info=e}prepare(){var e;if(!this.fieldNoToField){let r=(e=this.info.fields)!==null&&e!==void 0?e:[];this.fieldNoToField=new Map(r.map(n=>[n.no,n]))}}read(e,r,n,s){this.prepare();let o=s===void 0?e.len:e.pos+s;for(;e.pos{"use strict";Object.defineProperty(lT,"__esModule",{value:!0});lT.ReflectionBinaryWriter=void 0;var Fo=RI(),zt=ha(),Zh=Jh(),LI=Qd(),Uz=class{static{i(this,"ReflectionBinaryWriter")}constructor(e){this.info=e}prepare(){if(!this.fields){let e=this.info.fields?this.info.fields.concat():[];this.fields=e.sort((r,n)=>r.no-n.no)}}write(e,r,n){this.prepare();for(let o of this.fields){let a,c,l=o.repeat,u=o.localName;if(o.oneof){let d=e[o.oneof];if(d.oneofKind!==u)continue;a=d[u],c=!0}else a=e[u],c=!1;switch(o.kind){case"scalar":case"enum":let d=o.kind=="enum"?zt.ScalarType.INT32:o.T;if(l)if(Zh.assert(Array.isArray(a)),l==zt.RepeatType.PACKED)this.packed(r,d,o.no,a);else for(let p of a)this.scalar(r,d,o.no,p,!0);else a===void 0?Zh.assert(o.opt):this.scalar(r,d,o.no,a,c||o.opt);break;case"message":if(l){Zh.assert(Array.isArray(a));for(let p of a)this.message(r,n,o.T(),o.no,p)}else this.message(r,n,o.T(),o.no,a);break;case"map":Zh.assert(typeof a=="object"&&a!==null);for(let[p,m]of Object.entries(a))this.mapEntry(r,n,o,p,m);break}}let s=n.writeUnknownFields;s!==!1&&(s===!0?Fo.UnknownFieldHandler.onWrite:s)(this.info.typeName,e,r)}mapEntry(e,r,n,s,o){e.tag(n.no,Fo.WireType.LengthDelimited),e.fork();let a=s;switch(n.K){case zt.ScalarType.INT32:case zt.ScalarType.FIXED32:case zt.ScalarType.UINT32:case zt.ScalarType.SFIXED32:case zt.ScalarType.SINT32:a=Number.parseInt(s);break;case zt.ScalarType.BOOL:Zh.assert(s=="true"||s=="false"),a=s=="true";break}switch(this.scalar(e,n.K,1,a,!0),n.V.kind){case"scalar":this.scalar(e,n.V.T,2,o,!0);break;case"enum":this.scalar(e,zt.ScalarType.INT32,2,o,!0);break;case"message":this.message(e,r,n.V.T(),2,o);break}e.join()}message(e,r,n,s,o){o!==void 0&&(n.internalBinaryWrite(o,e.tag(s,Fo.WireType.LengthDelimited).fork(),r),e.join())}scalar(e,r,n,s,o){let[a,c,l]=this.scalarInfo(r,s);(!l||o)&&(e.tag(n,a),e[c](s))}packed(e,r,n,s){if(!s.length)return;Zh.assert(r!==zt.ScalarType.BYTES&&r!==zt.ScalarType.STRING),e.tag(n,Fo.WireType.LengthDelimited),e.fork();let[,o]=this.scalarInfo(r);for(let a=0;a{"use strict";Object.defineProperty(uT,"__esModule",{value:!0});uT.reflectionCreate=void 0;var Got=aT(),Hot=DI();function zot(t){let e=t.messagePrototype?Object.create(t.messagePrototype):Object.defineProperty({},Hot.MESSAGE_TYPE,{value:t});for(let r of t.fields){let n=r.localName;if(!r.opt)if(r.oneof)e[r.oneof]={oneofKind:void 0};else if(r.repeat)e[n]=[];else switch(r.kind){case"scalar":e[n]=Got.reflectionScalarDefault(r.T,r.L);break;case"enum":e[n]=0;break;case"map":e[n]={};break}}return e}i(zot,"reflectionCreate");uT.reflectionCreate=zot});var Gz=b(dT=>{"use strict";Object.defineProperty(dT,"__esModule",{value:!0});dT.reflectionMergePartial=void 0;function Vot(t,e,r){let n,s=r,o;for(let a of t.fields){let c=a.localName;if(a.oneof){let l=s[a.oneof];if(l?.oneofKind==null)continue;if(n=l[c],o=e[a.oneof],o.oneofKind=l.oneofKind,n==null){delete o[c];continue}}else if(n=s[c],o=e,n==null)continue;switch(a.repeat&&(o[c].length=n.length),a.kind){case"scalar":case"enum":if(a.repeat)for(let u=0;u{"use strict";Object.defineProperty(mT,"__esModule",{value:!0});mT.reflectionEquals=void 0;var Hz=ha();function Yot(t,e,r){if(e===r)return!0;if(!e||!r)return!1;for(let n of t.fields){let s=n.localName,o=n.oneof?e[n.oneof][s]:e[s],a=n.oneof?r[n.oneof][s]:r[s];switch(n.kind){case"enum":case"scalar":let c=n.kind=="enum"?Hz.ScalarType.INT32:n.T;if(!(n.repeat?RAe(c,o,a):TAe(c,o,a)))return!1;break;case"map":if(!(n.V.kind=="message"?NAe(n.V.T(),pT(o),pT(a)):RAe(n.V.kind=="enum"?Hz.ScalarType.INT32:n.V.T,pT(o),pT(a))))return!1;break;case"message":let l=n.T();if(!(n.repeat?NAe(l,o,a):l.equals(o,a)))return!1;break}}return!0}i(Yot,"reflectionEquals");mT.reflectionEquals=Yot;var pT=Object.values;function TAe(t,e,r){if(e===r)return!0;if(t!==Hz.ScalarType.BYTES)return!1;let n=e,s=r;if(n.length!==s.length)return!1;for(let o=0;o{"use strict";Object.defineProperty(fT,"__esModule",{value:!0});fT.MessageType=void 0;var Wot=DI(),jot=ha(),Jot=Qz(),Kot=kz(),Xot=Oz(),Zot=Fz(),eit=qz(),tit=$z(),Vz=Gz(),rit=UN(),PAe=Tz(),nit=zz(),sit=Nz(),oit=Rz(),vAe=Object.getOwnPropertyDescriptors(Object.getPrototypeOf({})),iit=vAe[Wot.MESSAGE_TYPE]={},Yz=class{static{i(this,"MessageType")}constructor(e,r,n){this.defaultCheckDepth=16,this.typeName=e,this.fields=r.map(jot.normalizeFieldInfo),this.options=n??{},iit.value=this,this.messagePrototype=Object.create(null,vAe),this.refTypeCheck=new Jot.ReflectionTypeCheck(this),this.refJsonReader=new Kot.ReflectionJsonReader(this),this.refJsonWriter=new Xot.ReflectionJsonWriter(this),this.refBinReader=new Zot.ReflectionBinaryReader(this),this.refBinWriter=new eit.ReflectionBinaryWriter(this)}create(e){let r=tit.reflectionCreate(this);return e!==void 0&&Vz.reflectionMergePartial(this,r,e),r}clone(e){let r=this.create();return Vz.reflectionMergePartial(this,r,e),r}equals(e,r){return nit.reflectionEquals(this,e,r)}is(e,r=this.defaultCheckDepth){return this.refTypeCheck.is(e,r,!1)}isAssignable(e,r=this.defaultCheckDepth){return this.refTypeCheck.is(e,r,!0)}mergePartial(e,r){Vz.reflectionMergePartial(this,e,r)}fromBinary(e,r){let n=oit.binaryReadOptions(r);return this.internalBinaryRead(n.readerFactory(e),e.byteLength,n)}fromJson(e,r){return this.internalJsonRead(e,PAe.jsonReadOptions(r))}fromJsonString(e,r){let n=JSON.parse(e);return this.fromJson(n,r)}toJson(e,r){return this.internalJsonWrite(e,PAe.jsonWriteOptions(r))}toJsonString(e,r){var n;let s=this.toJson(e,r);return JSON.stringify(s,null,(n=r?.prettySpaces)!==null&&n!==void 0?n:0)}toBinary(e,r){let n=sit.binaryWriteOptions(r);return this.internalBinaryWrite(e,n.writerFactory(),n).finish()}internalJsonRead(e,r,n){if(e!==null&&typeof e=="object"&&!Array.isArray(e)){let s=n??this.create();return this.refJsonReader.read(e,s,r),s}throw new Error(`Unable to parse message ${this.typeName} from JSON ${rit.typeofJsonValue(e)}.`)}internalJsonWrite(e,r){return this.refJsonWriter.write(e,r)}internalBinaryWrite(e,r,n){return this.refBinWriter.write(e,r,n),r}internalBinaryRead(e,r,n,s){let o=s??this.create();return this.refBinReader.read(e,o,n,r),o}};fT.MessageType=Yz});var QAe=b(AT=>{"use strict";Object.defineProperty(AT,"__esModule",{value:!0});AT.containsMessageType=void 0;var ait=DI();function cit(t){return t[ait.MESSAGE_TYPE]!=null}i(cit,"containsMessageType");AT.containsMessageType=cit});var kAe=b(_c=>{"use strict";Object.defineProperty(_c,"__esModule",{value:!0});_c.listEnumNumbers=_c.listEnumNames=_c.listEnumValues=_c.isEnumObject=void 0;function DAe(t){if(typeof t!="object"||t===null||!t.hasOwnProperty(0))return!1;for(let e of Object.keys(t)){let r=parseInt(e);if(Number.isNaN(r)){let n=t[e];if(n===void 0||typeof n!="number"||t[n]===void 0)return!1}else{let n=t[r];if(n===void 0||t[n]!==r)return!1}}return!0}i(DAe,"isEnumObject");_c.isEnumObject=DAe;function Wz(t){if(!DAe(t))throw new Error("not a typescript enum object");let e=[];for(let[r,n]of Object.entries(t))typeof n=="number"&&e.push({name:r,number:n});return e}i(Wz,"listEnumValues");_c.listEnumValues=Wz;function lit(t){return Wz(t).map(e=>e.name)}i(lit,"listEnumNames");_c.listEnumNames=lit;function uit(t){return Wz(t).map(e=>e.number).filter((e,r,n)=>n.indexOf(e)==r)}i(uit,"listEnumNumbers");_c.listEnumNumbers=uit});var Mr=b(Pe=>{"use strict";Object.defineProperty(Pe,"__esModule",{value:!0});var LAe=UN();Object.defineProperty(Pe,"typeofJsonValue",{enumerable:!0,get:i(function(){return LAe.typeofJsonValue},"get")});Object.defineProperty(Pe,"isJsonObject",{enumerable:!0,get:i(function(){return LAe.isJsonObject},"get")});var OAe=$N();Object.defineProperty(Pe,"base64decode",{enumerable:!0,get:i(function(){return OAe.base64decode},"get")});Object.defineProperty(Pe,"base64encode",{enumerable:!0,get:i(function(){return OAe.base64encode},"get")});var dit=lAe();Object.defineProperty(Pe,"utf8read",{enumerable:!0,get:i(function(){return dit.utf8read},"get")});var jz=RI();Object.defineProperty(Pe,"WireType",{enumerable:!0,get:i(function(){return jz.WireType},"get")});Object.defineProperty(Pe,"mergeBinaryOptions",{enumerable:!0,get:i(function(){return jz.mergeBinaryOptions},"get")});Object.defineProperty(Pe,"UnknownFieldHandler",{enumerable:!0,get:i(function(){return jz.UnknownFieldHandler},"get")});var MAe=Rz();Object.defineProperty(Pe,"BinaryReader",{enumerable:!0,get:i(function(){return MAe.BinaryReader},"get")});Object.defineProperty(Pe,"binaryReadOptions",{enumerable:!0,get:i(function(){return MAe.binaryReadOptions},"get")});var FAe=Nz();Object.defineProperty(Pe,"BinaryWriter",{enumerable:!0,get:i(function(){return FAe.BinaryWriter},"get")});Object.defineProperty(Pe,"binaryWriteOptions",{enumerable:!0,get:i(function(){return FAe.binaryWriteOptions},"get")});var UAe=Qd();Object.defineProperty(Pe,"PbLong",{enumerable:!0,get:i(function(){return UAe.PbLong},"get")});Object.defineProperty(Pe,"PbULong",{enumerable:!0,get:i(function(){return UAe.PbULong},"get")});var Jz=Tz();Object.defineProperty(Pe,"jsonReadOptions",{enumerable:!0,get:i(function(){return Jz.jsonReadOptions},"get")});Object.defineProperty(Pe,"jsonWriteOptions",{enumerable:!0,get:i(function(){return Jz.jsonWriteOptions},"get")});Object.defineProperty(Pe,"mergeJsonOptions",{enumerable:!0,get:i(function(){return Jz.mergeJsonOptions},"get")});var pit=DI();Object.defineProperty(Pe,"MESSAGE_TYPE",{enumerable:!0,get:i(function(){return pit.MESSAGE_TYPE},"get")});var mit=_Ae();Object.defineProperty(Pe,"MessageType",{enumerable:!0,get:i(function(){return mit.MessageType},"get")});var Gm=ha();Object.defineProperty(Pe,"ScalarType",{enumerable:!0,get:i(function(){return Gm.ScalarType},"get")});Object.defineProperty(Pe,"LongType",{enumerable:!0,get:i(function(){return Gm.LongType},"get")});Object.defineProperty(Pe,"RepeatType",{enumerable:!0,get:i(function(){return Gm.RepeatType},"get")});Object.defineProperty(Pe,"normalizeFieldInfo",{enumerable:!0,get:i(function(){return Gm.normalizeFieldInfo},"get")});Object.defineProperty(Pe,"readFieldOptions",{enumerable:!0,get:i(function(){return Gm.readFieldOptions},"get")});Object.defineProperty(Pe,"readFieldOption",{enumerable:!0,get:i(function(){return Gm.readFieldOption},"get")});Object.defineProperty(Pe,"readMessageOption",{enumerable:!0,get:i(function(){return Gm.readMessageOption},"get")});var fit=Qz();Object.defineProperty(Pe,"ReflectionTypeCheck",{enumerable:!0,get:i(function(){return fit.ReflectionTypeCheck},"get")});var Ait=$z();Object.defineProperty(Pe,"reflectionCreate",{enumerable:!0,get:i(function(){return Ait.reflectionCreate},"get")});var hit=aT();Object.defineProperty(Pe,"reflectionScalarDefault",{enumerable:!0,get:i(function(){return hit.reflectionScalarDefault},"get")});var git=Gz();Object.defineProperty(Pe,"reflectionMergePartial",{enumerable:!0,get:i(function(){return git.reflectionMergePartial},"get")});var yit=zz();Object.defineProperty(Pe,"reflectionEquals",{enumerable:!0,get:i(function(){return yit.reflectionEquals},"get")});var Eit=Fz();Object.defineProperty(Pe,"ReflectionBinaryReader",{enumerable:!0,get:i(function(){return Eit.ReflectionBinaryReader},"get")});var Cit=qz();Object.defineProperty(Pe,"ReflectionBinaryWriter",{enumerable:!0,get:i(function(){return Cit.ReflectionBinaryWriter},"get")});var Iit=kz();Object.defineProperty(Pe,"ReflectionJsonReader",{enumerable:!0,get:i(function(){return Iit.ReflectionJsonReader},"get")});var xit=Oz();Object.defineProperty(Pe,"ReflectionJsonWriter",{enumerable:!0,get:i(function(){return xit.ReflectionJsonWriter},"get")});var wit=QAe();Object.defineProperty(Pe,"containsMessageType",{enumerable:!0,get:i(function(){return wit.containsMessageType},"get")});var OI=vz();Object.defineProperty(Pe,"isOneofGroup",{enumerable:!0,get:i(function(){return OI.isOneofGroup},"get")});Object.defineProperty(Pe,"setOneofValue",{enumerable:!0,get:i(function(){return OI.setOneofValue},"get")});Object.defineProperty(Pe,"getOneofValue",{enumerable:!0,get:i(function(){return OI.getOneofValue},"get")});Object.defineProperty(Pe,"clearOneofValue",{enumerable:!0,get:i(function(){return OI.clearOneofValue},"get")});Object.defineProperty(Pe,"getSelectedOneofValue",{enumerable:!0,get:i(function(){return OI.getSelectedOneofValue},"get")});var hT=kAe();Object.defineProperty(Pe,"listEnumValues",{enumerable:!0,get:i(function(){return hT.listEnumValues},"get")});Object.defineProperty(Pe,"listEnumNames",{enumerable:!0,get:i(function(){return hT.listEnumNames},"get")});Object.defineProperty(Pe,"listEnumNumbers",{enumerable:!0,get:i(function(){return hT.listEnumNumbers},"get")});Object.defineProperty(Pe,"isEnumObject",{enumerable:!0,get:i(function(){return hT.isEnumObject},"get")});var bit=Pz();Object.defineProperty(Pe,"lowerCamelCase",{enumerable:!0,get:i(function(){return bit.lowerCamelCase},"get")});var MI=Jh();Object.defineProperty(Pe,"assert",{enumerable:!0,get:i(function(){return MI.assert},"get")});Object.defineProperty(Pe,"assertNever",{enumerable:!0,get:i(function(){return MI.assertNever},"get")});Object.defineProperty(Pe,"assertInt32",{enumerable:!0,get:i(function(){return MI.assertInt32},"get")});Object.defineProperty(Pe,"assertUInt32",{enumerable:!0,get:i(function(){return MI.assertUInt32},"get")});Object.defineProperty(Pe,"assertFloat32",{enumerable:!0,get:i(function(){return MI.assertFloat32},"get")})});var Kz=b(Qc=>{"use strict";Object.defineProperty(Qc,"__esModule",{value:!0});Qc.readServiceOption=Qc.readMethodOption=Qc.readMethodOptions=Qc.normalizeMethodInfo=void 0;var Sit=Mr();function Bit(t,e){var r,n,s;let o=t;return o.service=e,o.localName=(r=o.localName)!==null&&r!==void 0?r:Sit.lowerCamelCase(o.name),o.serverStreaming=!!o.serverStreaming,o.clientStreaming=!!o.clientStreaming,o.options=(n=o.options)!==null&&n!==void 0?n:{},o.idempotency=(s=o.idempotency)!==null&&s!==void 0?s:void 0,o}i(Bit,"normalizeMethodInfo");Qc.normalizeMethodInfo=Bit;function Rit(t,e,r,n){var s;let o=(s=t.methods.find((a,c)=>a.localName===e||c===e))===null||s===void 0?void 0:s.options;return o&&o[r]?n.fromJson(o[r]):void 0}i(Rit,"readMethodOptions");Qc.readMethodOptions=Rit;function Nit(t,e,r,n){var s;let o=(s=t.methods.find((c,l)=>c.localName===e||l===e))===null||s===void 0?void 0:s.options;if(!o)return;let a=o[r];return a===void 0?a:n?n.fromJson(a):a}i(Nit,"readMethodOption");Qc.readMethodOption=Nit;function Tit(t,e,r){let n=t.options;if(!n)return;let s=n[e];return s===void 0?s:r?r.fromJson(s):s}i(Tit,"readServiceOption");Qc.readServiceOption=Tit});var qAe=b(gT=>{"use strict";Object.defineProperty(gT,"__esModule",{value:!0});gT.ServiceType=void 0;var Pit=Kz(),Xz=class{static{i(this,"ServiceType")}constructor(e,r,n){this.typeName=e,this.methods=r.map(s=>Pit.normalizeMethodInfo(s,this)),this.options=n??{}}};gT.ServiceType=Xz});var e3=b(yT=>{"use strict";Object.defineProperty(yT,"__esModule",{value:!0});yT.RpcError=void 0;var Zz=class extends Error{static{i(this,"RpcError")}constructor(e,r="UNKNOWN",n){super(e),this.name="RpcError",Object.setPrototypeOf(this,new.target.prototype),this.code=r,this.meta=n??{}}toString(){let e=[this.name+": "+this.message];this.code&&(e.push(""),e.push("Code: "+this.code)),this.serviceName&&this.methodName&&e.push("Method: "+this.serviceName+"/"+this.methodName);let r=Object.entries(this.meta);if(r.length){e.push(""),e.push("Meta:");for(let[n,s]of r)e.push(` ${n}: ${s}`)}return e.join(` +`)}};yT.RpcError=Zz});var t3=b(CT=>{"use strict";Object.defineProperty(CT,"__esModule",{value:!0});CT.mergeRpcOptions=void 0;var $Ae=Mr();function vit(t,e){if(!e)return t;let r={};ET(t,r),ET(e,r);for(let n of Object.keys(e)){let s=e[n];switch(n){case"jsonOptions":r.jsonOptions=$Ae.mergeJsonOptions(t.jsonOptions,r.jsonOptions);break;case"binaryOptions":r.binaryOptions=$Ae.mergeBinaryOptions(t.binaryOptions,r.binaryOptions);break;case"meta":r.meta={},ET(t.meta,r.meta),ET(e.meta,r.meta);break;case"interceptors":r.interceptors=t.interceptors?t.interceptors.concat(s):s.concat();break}}return r}i(vit,"mergeRpcOptions");CT.mergeRpcOptions=vit;function ET(t,e){if(!t)return;let r=e;for(let[n,s]of Object.entries(t))s instanceof Date?r[n]=new Date(s.getTime()):Array.isArray(s)?r[n]=s.concat():r[n]=s}i(ET,"copy")});var n3=b(Hm=>{"use strict";Object.defineProperty(Hm,"__esModule",{value:!0});Hm.Deferred=Hm.DeferredState=void 0;var Dc;(function(t){t[t.PENDING=0]="PENDING",t[t.REJECTED=1]="REJECTED",t[t.RESOLVED=2]="RESOLVED"})(Dc=Hm.DeferredState||(Hm.DeferredState={}));var r3=class{static{i(this,"Deferred")}constructor(e=!0){this._state=Dc.PENDING,this._promise=new Promise((r,n)=>{this._resolve=r,this._reject=n}),e&&this._promise.catch(r=>{})}get state(){return this._state}get promise(){return this._promise}resolve(e){if(this.state!==Dc.PENDING)throw new Error(`cannot resolve ${Dc[this.state].toLowerCase()}`);this._resolve(e),this._state=Dc.RESOLVED}reject(e){if(this.state!==Dc.PENDING)throw new Error(`cannot reject ${Dc[this.state].toLowerCase()}`);this._reject(e),this._state=Dc.REJECTED}resolvePending(e){this._state===Dc.PENDING&&this.resolve(e)}rejectPending(e){this._state===Dc.PENDING&&this.reject(e)}};Hm.Deferred=r3});var o3=b(IT=>{"use strict";Object.defineProperty(IT,"__esModule",{value:!0});IT.RpcOutputStreamController=void 0;var GAe=n3(),zm=Mr(),s3=class{static{i(this,"RpcOutputStreamController")}constructor(){this._lis={nxt:[],msg:[],err:[],cmp:[]},this._closed=!1,this._itState={q:[]}}onNext(e){return this.addLis(e,this._lis.nxt)}onMessage(e){return this.addLis(e,this._lis.msg)}onError(e){return this.addLis(e,this._lis.err)}onComplete(e){return this.addLis(e,this._lis.cmp)}addLis(e,r){return r.push(e),()=>{let n=r.indexOf(e);n>=0&&r.splice(n,1)}}clearLis(){for(let e of Object.values(this._lis))e.splice(0,e.length)}get closed(){return this._closed!==!1}notifyNext(e,r,n){zm.assert((e?1:0)+(r?1:0)+(n?1:0)<=1,"only one emission at a time"),e&&this.notifyMessage(e),r&&this.notifyError(r),n&&this.notifyComplete()}notifyMessage(e){zm.assert(!this.closed,"stream is closed"),this.pushIt({value:e,done:!1}),this._lis.msg.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(e,void 0,!1))}notifyError(e){zm.assert(!this.closed,"stream is closed"),this._closed=e,this.pushIt(e),this._lis.err.forEach(r=>r(e)),this._lis.nxt.forEach(r=>r(void 0,e,!1)),this.clearLis()}notifyComplete(){zm.assert(!this.closed,"stream is closed"),this._closed=!0,this.pushIt({value:null,done:!0}),this._lis.cmp.forEach(e=>e()),this._lis.nxt.forEach(e=>e(void 0,void 0,!0)),this.clearLis()}[Symbol.asyncIterator](){return this._closed===!0?this.pushIt({value:null,done:!0}):this._closed!==!1&&this.pushIt(this._closed),{next:i(()=>{let e=this._itState;zm.assert(e,"bad state"),zm.assert(!e.p,"iterator contract broken");let r=e.q.shift();return r?"value"in r?Promise.resolve(r):Promise.reject(r):(e.p=new GAe.Deferred,e.p.promise)},"next")}}pushIt(e){let r=this._itState;if(r.p){let n=r.p;zm.assert(n.state==GAe.DeferredState.PENDING,"iterator contract broken"),"value"in e?n.resolve(e):n.reject(e),delete r.p}else r.q.push(e)}};IT.RpcOutputStreamController=s3});var a3=b(eg=>{"use strict";var _it=eg&&eg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(eg,"__esModule",{value:!0});eg.UnaryCall=void 0;var i3=class{static{i(this,"UnaryCall")}constructor(e,r,n,s,o,a,c){this.method=e,this.requestHeaders=r,this.request=n,this.headers=s,this.response=o,this.status=a,this.trailers=c}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return _it(this,void 0,void 0,function*(){let[e,r,n,s]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,response:r,status:n,trailers:s}})}};eg.UnaryCall=i3});var l3=b(tg=>{"use strict";var Qit=tg&&tg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(tg,"__esModule",{value:!0});tg.ServerStreamingCall=void 0;var c3=class{static{i(this,"ServerStreamingCall")}constructor(e,r,n,s,o,a,c){this.method=e,this.requestHeaders=r,this.request=n,this.headers=s,this.responses=o,this.status=a,this.trailers=c}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return Qit(this,void 0,void 0,function*(){let[e,r,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,request:this.request,headers:e,status:r,trailers:n}})}};tg.ServerStreamingCall=c3});var d3=b(rg=>{"use strict";var Dit=rg&&rg.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(rg,"__esModule",{value:!0});rg.ClientStreamingCall=void 0;var u3=class{static{i(this,"ClientStreamingCall")}constructor(e,r,n,s,o,a,c){this.method=e,this.requestHeaders=r,this.requests=n,this.headers=s,this.response=o,this.status=a,this.trailers=c}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return Dit(this,void 0,void 0,function*(){let[e,r,n,s]=yield Promise.all([this.headers,this.response,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,response:r,status:n,trailers:s}})}};rg.ClientStreamingCall=u3});var m3=b(ng=>{"use strict";var kit=ng&&ng.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(ng,"__esModule",{value:!0});ng.DuplexStreamingCall=void 0;var p3=class{static{i(this,"DuplexStreamingCall")}constructor(e,r,n,s,o,a,c){this.method=e,this.requestHeaders=r,this.requests=n,this.headers=s,this.responses=o,this.status=a,this.trailers=c}then(e,r){return this.promiseFinished().then(n=>e?Promise.resolve(e(n)):n,n=>r?Promise.resolve(r(n)):Promise.reject(n))}promiseFinished(){return kit(this,void 0,void 0,function*(){let[e,r,n]=yield Promise.all([this.headers,this.status,this.trailers]);return{method:this.method,requestHeaders:this.requestHeaders,headers:e,status:r,trailers:n}})}};ng.DuplexStreamingCall=p3});var zAe=b(ig=>{"use strict";var Lit=ig&&ig.__awaiter||function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};Object.defineProperty(ig,"__esModule",{value:!0});ig.TestTransport=void 0;var Si=e3(),xT=Mr(),HAe=o3(),Oit=t3(),Mit=a3(),Fit=l3(),Uit=d3(),qit=m3(),og=class t{static{i(this,"TestTransport")}constructor(e){this.suppressUncaughtRejections=!0,this.headerDelay=10,this.responseDelay=50,this.betweenResponseDelay=10,this.afterResponseDelay=10,this.data=e??{}}get sentMessages(){return this.lastInput instanceof sg?this.lastInput.sent:typeof this.lastInput=="object"?[this.lastInput.single]:[]}get sendComplete(){return this.lastInput instanceof sg?this.lastInput.completed:typeof this.lastInput=="object"}promiseHeaders(){var e;let r=(e=this.data.headers)!==null&&e!==void 0?e:t.defaultHeaders;return r instanceof Si.RpcError?Promise.reject(r):Promise.resolve(r)}promiseSingleResponse(e){if(this.data.response instanceof Si.RpcError)return Promise.reject(this.data.response);let r;return Array.isArray(this.data.response)?(xT.assert(this.data.response.length>0),r=this.data.response[0]):this.data.response!==void 0?r=this.data.response:r=e.O.create(),xT.assert(e.O.is(r)),Promise.resolve(r)}streamResponses(e,r,n){return Lit(this,void 0,void 0,function*(){let s=[];if(this.data.response===void 0)s.push(e.O.create());else if(Array.isArray(this.data.response))for(let o of this.data.response)xT.assert(e.O.is(o)),s.push(o);else this.data.response instanceof Si.RpcError||(xT.assert(e.O.is(this.data.response)),s.push(this.data.response));try{yield In(this.responseDelay,n)(void 0)}catch(o){r.notifyError(o);return}if(this.data.response instanceof Si.RpcError){r.notifyError(this.data.response);return}for(let o of s){r.notifyMessage(o);try{yield In(this.betweenResponseDelay,n)(void 0)}catch(a){r.notifyError(a);return}}if(this.data.status instanceof Si.RpcError){r.notifyError(this.data.status);return}if(this.data.trailers instanceof Si.RpcError){r.notifyError(this.data.trailers);return}r.notifyComplete()})}promiseStatus(){var e;let r=(e=this.data.status)!==null&&e!==void 0?e:t.defaultStatus;return r instanceof Si.RpcError?Promise.reject(r):Promise.resolve(r)}promiseTrailers(){var e;let r=(e=this.data.trailers)!==null&&e!==void 0?e:t.defaultTrailers;return r instanceof Si.RpcError?Promise.reject(r):Promise.resolve(r)}maybeSuppressUncaught(...e){if(this.suppressUncaughtRejections)for(let r of e)r.catch(()=>{})}mergeOptions(e){return Oit.mergeRpcOptions({},e)}unary(e,r,n){var s;let o=(s=n.meta)!==null&&s!==void 0?s:{},a=this.promiseHeaders().then(In(this.headerDelay,n.abort)),c=a.catch(d=>{}).then(In(this.responseDelay,n.abort)).then(d=>this.promiseSingleResponse(e)),l=c.catch(d=>{}).then(In(this.afterResponseDelay,n.abort)).then(d=>this.promiseStatus()),u=c.catch(d=>{}).then(In(this.afterResponseDelay,n.abort)).then(d=>this.promiseTrailers());return this.maybeSuppressUncaught(l,u),this.lastInput={single:r},new Mit.UnaryCall(e,o,r,a,c,l,u)}serverStreaming(e,r,n){var s;let o=(s=n.meta)!==null&&s!==void 0?s:{},a=this.promiseHeaders().then(In(this.headerDelay,n.abort)),c=new HAe.RpcOutputStreamController,l=a.then(In(this.responseDelay,n.abort)).catch(()=>{}).then(()=>this.streamResponses(e,c,n.abort)).then(In(this.afterResponseDelay,n.abort)),u=l.then(()=>this.promiseStatus()),d=l.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(u,d),this.lastInput={single:r},new Fit.ServerStreamingCall(e,o,r,a,c,u,d)}clientStreaming(e,r){var n;let s=(n=r.meta)!==null&&n!==void 0?n:{},o=this.promiseHeaders().then(In(this.headerDelay,r.abort)),a=o.catch(u=>{}).then(In(this.responseDelay,r.abort)).then(u=>this.promiseSingleResponse(e)),c=a.catch(u=>{}).then(In(this.afterResponseDelay,r.abort)).then(u=>this.promiseStatus()),l=a.catch(u=>{}).then(In(this.afterResponseDelay,r.abort)).then(u=>this.promiseTrailers());return this.maybeSuppressUncaught(c,l),this.lastInput=new sg(this.data,r.abort),new Uit.ClientStreamingCall(e,s,this.lastInput,o,a,c,l)}duplex(e,r){var n;let s=(n=r.meta)!==null&&n!==void 0?n:{},o=this.promiseHeaders().then(In(this.headerDelay,r.abort)),a=new HAe.RpcOutputStreamController,c=o.then(In(this.responseDelay,r.abort)).catch(()=>{}).then(()=>this.streamResponses(e,a,r.abort)).then(In(this.afterResponseDelay,r.abort)),l=c.then(()=>this.promiseStatus()),u=c.then(()=>this.promiseTrailers());return this.maybeSuppressUncaught(l,u),this.lastInput=new sg(this.data,r.abort),new qit.DuplexStreamingCall(e,s,this.lastInput,o,a,l,u)}};ig.TestTransport=og;og.defaultHeaders={responseHeader:"test"};og.defaultStatus={code:"OK",detail:"all good"};og.defaultTrailers={responseTrailer:"test"};function In(t,e){return r=>new Promise((n,s)=>{if(e?.aborted)s(new Si.RpcError("user cancel","CANCELLED"));else{let o=setTimeout(()=>n(r),t);e&&e.addEventListener("abort",a=>{clearTimeout(o),s(new Si.RpcError("user cancel","CANCELLED"))})}})}i(In,"delay");var sg=class{static{i(this,"TestInputStream")}constructor(e,r){this._completed=!1,this._sent=[],this.data=e,this.abort=r}get sent(){return this._sent}get completed(){return this._completed}send(e){if(this.data.inputMessage instanceof Si.RpcError)return Promise.reject(this.data.inputMessage);let r=this.data.inputMessage===void 0?10:this.data.inputMessage;return Promise.resolve(void 0).then(()=>{this._sent.push(e)}).then(In(r,this.abort))}complete(){if(this.data.inputComplete instanceof Si.RpcError)return Promise.reject(this.data.inputComplete);let e=this.data.inputComplete===void 0?10:this.data.inputComplete;return Promise.resolve(void 0).then(()=>{this._completed=!0}).then(In(e,this.abort))}}});var VAe=b(Bi=>{"use strict";Object.defineProperty(Bi,"__esModule",{value:!0});Bi.stackDuplexStreamingInterceptors=Bi.stackClientStreamingInterceptors=Bi.stackServerStreamingInterceptors=Bi.stackUnaryInterceptors=Bi.stackIntercept=void 0;var $it=Mr();function FI(t,e,r,n,s){var o,a,c,l;if(t=="unary"){let u=i((d,p,m)=>e.unary(d,p,m),"tail");for(let d of((o=n.interceptors)!==null&&o!==void 0?o:[]).filter(p=>p.interceptUnary).reverse()){let p=u;u=i((m,f,g)=>d.interceptUnary(p,m,f,g),"tail")}return u(r,s,n)}if(t=="serverStreaming"){let u=i((d,p,m)=>e.serverStreaming(d,p,m),"tail");for(let d of((a=n.interceptors)!==null&&a!==void 0?a:[]).filter(p=>p.interceptServerStreaming).reverse()){let p=u;u=i((m,f,g)=>d.interceptServerStreaming(p,m,f,g),"tail")}return u(r,s,n)}if(t=="clientStreaming"){let u=i((d,p)=>e.clientStreaming(d,p),"tail");for(let d of((c=n.interceptors)!==null&&c!==void 0?c:[]).filter(p=>p.interceptClientStreaming).reverse()){let p=u;u=i((m,f)=>d.interceptClientStreaming(p,m,f),"tail")}return u(r,n)}if(t=="duplex"){let u=i((d,p)=>e.duplex(d,p),"tail");for(let d of((l=n.interceptors)!==null&&l!==void 0?l:[]).filter(p=>p.interceptDuplex).reverse()){let p=u;u=i((m,f)=>d.interceptDuplex(p,m,f),"tail")}return u(r,n)}$it.assertNever(t)}i(FI,"stackIntercept");Bi.stackIntercept=FI;function Git(t,e,r,n){return FI("unary",t,e,n,r)}i(Git,"stackUnaryInterceptors");Bi.stackUnaryInterceptors=Git;function Hit(t,e,r,n){return FI("serverStreaming",t,e,n,r)}i(Hit,"stackServerStreamingInterceptors");Bi.stackServerStreamingInterceptors=Hit;function zit(t,e,r){return FI("clientStreaming",t,e,r)}i(zit,"stackClientStreamingInterceptors");Bi.stackClientStreamingInterceptors=zit;function Vit(t,e,r){return FI("duplex",t,e,r)}i(Vit,"stackDuplexStreamingInterceptors");Bi.stackDuplexStreamingInterceptors=Vit});var YAe=b(wT=>{"use strict";Object.defineProperty(wT,"__esModule",{value:!0});wT.ServerCallContextController=void 0;var f3=class{static{i(this,"ServerCallContextController")}constructor(e,r,n,s,o={code:"OK",detail:""}){this._cancelled=!1,this._listeners=[],this.method=e,this.headers=r,this.deadline=n,this.trailers={},this._sendRH=s,this.status=o}notifyCancelled(){if(!this._cancelled){this._cancelled=!0;for(let e of this._listeners)e()}}sendResponseHeaders(e){this._sendRH(e)}get cancelled(){return this._cancelled}onCancel(e){let r=this._listeners;return r.push(e),()=>{let n=r.indexOf(e);n>=0&&r.splice(n,1)}}};wT.ServerCallContextController=f3});var jAe=b(Rr=>{"use strict";Object.defineProperty(Rr,"__esModule",{value:!0});var Yit=qAe();Object.defineProperty(Rr,"ServiceType",{enumerable:!0,get:i(function(){return Yit.ServiceType},"get")});var A3=Kz();Object.defineProperty(Rr,"readMethodOptions",{enumerable:!0,get:i(function(){return A3.readMethodOptions},"get")});Object.defineProperty(Rr,"readMethodOption",{enumerable:!0,get:i(function(){return A3.readMethodOption},"get")});Object.defineProperty(Rr,"readServiceOption",{enumerable:!0,get:i(function(){return A3.readServiceOption},"get")});var Wit=e3();Object.defineProperty(Rr,"RpcError",{enumerable:!0,get:i(function(){return Wit.RpcError},"get")});var jit=t3();Object.defineProperty(Rr,"mergeRpcOptions",{enumerable:!0,get:i(function(){return jit.mergeRpcOptions},"get")});var Jit=o3();Object.defineProperty(Rr,"RpcOutputStreamController",{enumerable:!0,get:i(function(){return Jit.RpcOutputStreamController},"get")});var Kit=zAe();Object.defineProperty(Rr,"TestTransport",{enumerable:!0,get:i(function(){return Kit.TestTransport},"get")});var WAe=n3();Object.defineProperty(Rr,"Deferred",{enumerable:!0,get:i(function(){return WAe.Deferred},"get")});Object.defineProperty(Rr,"DeferredState",{enumerable:!0,get:i(function(){return WAe.DeferredState},"get")});var Xit=m3();Object.defineProperty(Rr,"DuplexStreamingCall",{enumerable:!0,get:i(function(){return Xit.DuplexStreamingCall},"get")});var Zit=d3();Object.defineProperty(Rr,"ClientStreamingCall",{enumerable:!0,get:i(function(){return Zit.ClientStreamingCall},"get")});var eat=l3();Object.defineProperty(Rr,"ServerStreamingCall",{enumerable:!0,get:i(function(){return eat.ServerStreamingCall},"get")});var tat=a3();Object.defineProperty(Rr,"UnaryCall",{enumerable:!0,get:i(function(){return tat.UnaryCall},"get")});var UI=VAe();Object.defineProperty(Rr,"stackIntercept",{enumerable:!0,get:i(function(){return UI.stackIntercept},"get")});Object.defineProperty(Rr,"stackDuplexStreamingInterceptors",{enumerable:!0,get:i(function(){return UI.stackDuplexStreamingInterceptors},"get")});Object.defineProperty(Rr,"stackClientStreamingInterceptors",{enumerable:!0,get:i(function(){return UI.stackClientStreamingInterceptors},"get")});Object.defineProperty(Rr,"stackServerStreamingInterceptors",{enumerable:!0,get:i(function(){return UI.stackServerStreamingInterceptors},"get")});Object.defineProperty(Rr,"stackUnaryInterceptors",{enumerable:!0,get:i(function(){return UI.stackUnaryInterceptors},"get")});var rat=YAe();Object.defineProperty(Rr,"ServerCallContextController",{enumerable:!0,get:i(function(){return rat.ServerCallContextController},"get")})});var fg=b((iur,Zhe)=>{"use strict";var Olt="2.0.0",Mlt=Number.MAX_SAFE_INTEGER||9007199254740991,Flt=16,Ult=250,qlt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];Zhe.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:Flt,MAX_SAFE_BUILD_LENGTH:Ult,MAX_SAFE_INTEGER:Mlt,RELEASE_TYPES:qlt,SEMVER_SPEC_VERSION:Olt,FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var WI=b((aur,ege)=>{"use strict";var $lt=typeof process=="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...t)=>console.error("SEMVER",...t):()=>{};ege.exports=$lt});var Ag=b((Oc,tge)=>{"use strict";var{MAX_SAFE_COMPONENT_LENGTH:sV,MAX_SAFE_BUILD_LENGTH:Glt,MAX_LENGTH:Hlt}=fg(),zlt=WI();Oc=tge.exports={};var Vlt=Oc.re=[],Ylt=Oc.safeRe=[],ue=Oc.src=[],Wlt=Oc.safeSrc=[],de=Oc.t={},jlt=0,oV="[a-zA-Z0-9-]",Jlt=[["\\s",1],["\\d",Hlt],[oV,Glt]],Klt=i(t=>{for(let[e,r]of Jlt)t=t.split(`${e}*`).join(`${e}{0,${r}}`).split(`${e}+`).join(`${e}{1,${r}}`);return t},"makeSafeRegex"),rt=i((t,e,r)=>{let n=Klt(e),s=jlt++;zlt(t,s,e),de[t]=s,ue[s]=e,Wlt[s]=n,Vlt[s]=new RegExp(e,r?"g":void 0),Ylt[s]=new RegExp(n,r?"g":void 0)},"createToken");rt("NUMERICIDENTIFIER","0|[1-9]\\d*");rt("NUMERICIDENTIFIERLOOSE","\\d+");rt("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${oV}*`);rt("MAINVERSION",`(${ue[de.NUMERICIDENTIFIER]})\\.(${ue[de.NUMERICIDENTIFIER]})\\.(${ue[de.NUMERICIDENTIFIER]})`);rt("MAINVERSIONLOOSE",`(${ue[de.NUMERICIDENTIFIERLOOSE]})\\.(${ue[de.NUMERICIDENTIFIERLOOSE]})\\.(${ue[de.NUMERICIDENTIFIERLOOSE]})`);rt("PRERELEASEIDENTIFIER",`(?:${ue[de.NONNUMERICIDENTIFIER]}|${ue[de.NUMERICIDENTIFIER]})`);rt("PRERELEASEIDENTIFIERLOOSE",`(?:${ue[de.NONNUMERICIDENTIFIER]}|${ue[de.NUMERICIDENTIFIERLOOSE]})`);rt("PRERELEASE",`(?:-(${ue[de.PRERELEASEIDENTIFIER]}(?:\\.${ue[de.PRERELEASEIDENTIFIER]})*))`);rt("PRERELEASELOOSE",`(?:-?(${ue[de.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${ue[de.PRERELEASEIDENTIFIERLOOSE]})*))`);rt("BUILDIDENTIFIER",`${oV}+`);rt("BUILD",`(?:\\+(${ue[de.BUILDIDENTIFIER]}(?:\\.${ue[de.BUILDIDENTIFIER]})*))`);rt("FULLPLAIN",`v?${ue[de.MAINVERSION]}${ue[de.PRERELEASE]}?${ue[de.BUILD]}?`);rt("FULL",`^${ue[de.FULLPLAIN]}$`);rt("LOOSEPLAIN",`[v=\\s]*${ue[de.MAINVERSIONLOOSE]}${ue[de.PRERELEASELOOSE]}?${ue[de.BUILD]}?`);rt("LOOSE",`^${ue[de.LOOSEPLAIN]}$`);rt("GTLT","((?:<|>)?=?)");rt("XRANGEIDENTIFIERLOOSE",`${ue[de.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);rt("XRANGEIDENTIFIER",`${ue[de.NUMERICIDENTIFIER]}|x|X|\\*`);rt("XRANGEPLAIN",`[v=\\s]*(${ue[de.XRANGEIDENTIFIER]})(?:\\.(${ue[de.XRANGEIDENTIFIER]})(?:\\.(${ue[de.XRANGEIDENTIFIER]})(?:${ue[de.PRERELEASE]})?${ue[de.BUILD]}?)?)?`);rt("XRANGEPLAINLOOSE",`[v=\\s]*(${ue[de.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ue[de.XRANGEIDENTIFIERLOOSE]})(?:\\.(${ue[de.XRANGEIDENTIFIERLOOSE]})(?:${ue[de.PRERELEASELOOSE]})?${ue[de.BUILD]}?)?)?`);rt("XRANGE",`^${ue[de.GTLT]}\\s*${ue[de.XRANGEPLAIN]}$`);rt("XRANGELOOSE",`^${ue[de.GTLT]}\\s*${ue[de.XRANGEPLAINLOOSE]}$`);rt("COERCEPLAIN",`(^|[^\\d])(\\d{1,${sV}})(?:\\.(\\d{1,${sV}}))?(?:\\.(\\d{1,${sV}}))?`);rt("COERCE",`${ue[de.COERCEPLAIN]}(?:$|[^\\d])`);rt("COERCEFULL",ue[de.COERCEPLAIN]+`(?:${ue[de.PRERELEASE]})?(?:${ue[de.BUILD]})?(?:$|[^\\d])`);rt("COERCERTL",ue[de.COERCE],!0);rt("COERCERTLFULL",ue[de.COERCEFULL],!0);rt("LONETILDE","(?:~>?)");rt("TILDETRIM",`(\\s*)${ue[de.LONETILDE]}\\s+`,!0);Oc.tildeTrimReplace="$1~";rt("TILDE",`^${ue[de.LONETILDE]}${ue[de.XRANGEPLAIN]}$`);rt("TILDELOOSE",`^${ue[de.LONETILDE]}${ue[de.XRANGEPLAINLOOSE]}$`);rt("LONECARET","(?:\\^)");rt("CARETTRIM",`(\\s*)${ue[de.LONECARET]}\\s+`,!0);Oc.caretTrimReplace="$1^";rt("CARET",`^${ue[de.LONECARET]}${ue[de.XRANGEPLAIN]}$`);rt("CARETLOOSE",`^${ue[de.LONECARET]}${ue[de.XRANGEPLAINLOOSE]}$`);rt("COMPARATORLOOSE",`^${ue[de.GTLT]}\\s*(${ue[de.LOOSEPLAIN]})$|^$`);rt("COMPARATOR",`^${ue[de.GTLT]}\\s*(${ue[de.FULLPLAIN]})$|^$`);rt("COMPARATORTRIM",`(\\s*)${ue[de.GTLT]}\\s*(${ue[de.LOOSEPLAIN]}|${ue[de.XRANGEPLAIN]})`,!0);Oc.comparatorTrimReplace="$1$2$3";rt("HYPHENRANGE",`^\\s*(${ue[de.XRANGEPLAIN]})\\s+-\\s+(${ue[de.XRANGEPLAIN]})\\s*$`);rt("HYPHENRANGELOOSE",`^\\s*(${ue[de.XRANGEPLAINLOOSE]})\\s+-\\s+(${ue[de.XRANGEPLAINLOOSE]})\\s*$`);rt("STAR","(<|>)?=?\\s*\\*");rt("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");rt("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var LT=b((lur,rge)=>{"use strict";var Xlt=Object.freeze({loose:!0}),Zlt=Object.freeze({}),eut=i(t=>t?typeof t!="object"?Xlt:t:Zlt,"parseOptions");rge.exports=eut});var iV=b((dur,oge)=>{"use strict";var nge=/^[0-9]+$/,sge=i((t,e)=>{if(typeof t=="number"&&typeof e=="number")return t===e?0:tsge(e,t),"rcompareIdentifiers");oge.exports={compareIdentifiers:sge,rcompareIdentifiers:tut}});var vn=b((mur,age)=>{"use strict";var OT=WI(),{MAX_LENGTH:ige,MAX_SAFE_INTEGER:MT}=fg(),{safeRe:FT,t:UT}=Ag(),rut=LT(),{compareIdentifiers:aV}=iV(),cV=class t{static{i(this,"SemVer")}constructor(e,r){if(r=rut(r),e instanceof t){if(e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease)return e;e=e.version}else if(typeof e!="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof e}".`);if(e.length>ige)throw new TypeError(`version is longer than ${ige} characters`);OT("SemVer",e,r),this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease;let n=e.trim().match(r.loose?FT[UT.LOOSE]:FT[UT.FULL]);if(!n)throw new TypeError(`Invalid Version: ${e}`);if(this.raw=e,this.major=+n[1],this.minor=+n[2],this.patch=+n[3],this.major>MT||this.major<0)throw new TypeError("Invalid major version");if(this.minor>MT||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>MT||this.patch<0)throw new TypeError("Invalid patch version");n[4]?this.prerelease=n[4].split(".").map(s=>{if(/^[0-9]+$/.test(s)){let o=+s;if(o>=0&&oe.major?1:this.minore.minor?1:this.patche.patch?1:0}comparePre(e){if(e instanceof t||(e=new t(e,this.options)),this.prerelease.length&&!e.prerelease.length)return-1;if(!this.prerelease.length&&e.prerelease.length)return 1;if(!this.prerelease.length&&!e.prerelease.length)return 0;let r=0;do{let n=this.prerelease[r],s=e.prerelease[r];if(OT("prerelease compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return aV(n,s)}while(++r)}compareBuild(e){e instanceof t||(e=new t(e,this.options));let r=0;do{let n=this.build[r],s=e.build[r];if(OT("build compare",r,n,s),n===void 0&&s===void 0)return 0;if(s===void 0)return 1;if(n===void 0)return-1;if(n===s)continue;return aV(n,s)}while(++r)}inc(e,r,n){if(e.startsWith("pre")){if(!r&&n===!1)throw new Error("invalid increment argument: identifier is empty");if(r){let s=`-${r}`.match(this.options.loose?FT[UT.PRERELEASELOOSE]:FT[UT.PRERELEASE]);if(!s||s[1]!==r)throw new Error(`invalid identifier: ${r}`)}}switch(e){case"premajor":this.prerelease.length=0,this.patch=0,this.minor=0,this.major++,this.inc("pre",r,n);break;case"preminor":this.prerelease.length=0,this.patch=0,this.minor++,this.inc("pre",r,n);break;case"prepatch":this.prerelease.length=0,this.inc("patch",r,n),this.inc("pre",r,n);break;case"prerelease":this.prerelease.length===0&&this.inc("patch",r,n),this.inc("pre",r,n);break;case"release":if(this.prerelease.length===0)throw new Error(`version ${this.raw} is not a prerelease`);this.prerelease.length=0;break;case"major":(this.minor!==0||this.patch!==0||this.prerelease.length===0)&&this.major++,this.minor=0,this.patch=0,this.prerelease=[];break;case"minor":(this.patch!==0||this.prerelease.length===0)&&this.minor++,this.patch=0,this.prerelease=[];break;case"patch":this.prerelease.length===0&&this.patch++,this.prerelease=[];break;case"pre":{let s=Number(n)?1:0;if(this.prerelease.length===0)this.prerelease=[s];else{let o=this.prerelease.length;for(;--o>=0;)typeof this.prerelease[o]=="number"&&(this.prerelease[o]++,o=-2);if(o===-1){if(r===this.prerelease.join(".")&&n===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(s)}}if(r){let o=[r,s];n===!1&&(o=[r]),aV(this.prerelease[0],r)===0?isNaN(this.prerelease[1])&&(this.prerelease=o):this.prerelease=o}break}default:throw new Error(`invalid increment argument: ${e}`)}return this.raw=this.format(),this.build.length&&(this.raw+=`+${this.build.join(".")}`),this}};age.exports=cV});var Md=b((Aur,lge)=>{"use strict";var cge=vn(),nut=i((t,e,r=!1)=>{if(t instanceof cge)return t;try{return new cge(t,e)}catch(n){if(!r)return null;throw n}},"parse");lge.exports=nut});var dge=b((gur,uge)=>{"use strict";var sut=Md(),out=i((t,e)=>{let r=sut(t,e);return r?r.version:null},"valid");uge.exports=out});var mge=b((Eur,pge)=>{"use strict";var iut=Md(),aut=i((t,e)=>{let r=iut(t.trim().replace(/^[=v]+/,""),e);return r?r.version:null},"clean");pge.exports=aut});var hge=b((Iur,Age)=>{"use strict";var fge=vn(),cut=i((t,e,r,n,s)=>{typeof r=="string"&&(s=n,n=r,r=void 0);try{return new fge(t instanceof fge?t.version:t,r).inc(e,n,s).version}catch{return null}},"inc");Age.exports=cut});var Ege=b((wur,yge)=>{"use strict";var gge=Md(),lut=i((t,e)=>{let r=gge(t,null,!0),n=gge(e,null,!0),s=r.compare(n);if(s===0)return null;let o=s>0,a=o?r:n,c=o?n:r,l=!!a.prerelease.length;if(!!c.prerelease.length&&!l){if(!c.patch&&!c.minor)return"major";if(c.compareMain(a)===0)return c.minor&&!c.patch?"minor":"patch"}let d=l?"pre":"";return r.major!==n.major?d+"major":r.minor!==n.minor?d+"minor":r.patch!==n.patch?d+"patch":"prerelease"},"diff");yge.exports=lut});var Ige=b((Sur,Cge)=>{"use strict";var uut=vn(),dut=i((t,e)=>new uut(t,e).major,"major");Cge.exports=dut});var wge=b((Rur,xge)=>{"use strict";var put=vn(),mut=i((t,e)=>new put(t,e).minor,"minor");xge.exports=mut});var Sge=b((Tur,bge)=>{"use strict";var fut=vn(),Aut=i((t,e)=>new fut(t,e).patch,"patch");bge.exports=Aut});var Rge=b((vur,Bge)=>{"use strict";var hut=Md(),gut=i((t,e)=>{let r=hut(t,e);return r&&r.prerelease.length?r.prerelease:null},"prerelease");Bge.exports=gut});var Ri=b((Qur,Tge)=>{"use strict";var Nge=vn(),yut=i((t,e,r)=>new Nge(t,r).compare(new Nge(e,r)),"compare");Tge.exports=yut});var vge=b((kur,Pge)=>{"use strict";var Eut=Ri(),Cut=i((t,e,r)=>Eut(e,t,r),"rcompare");Pge.exports=Cut});var Qge=b((Our,_ge)=>{"use strict";var Iut=Ri(),xut=i((t,e)=>Iut(t,e,!0),"compareLoose");_ge.exports=xut});var qT=b((Fur,kge)=>{"use strict";var Dge=vn(),wut=i((t,e,r)=>{let n=new Dge(t,r),s=new Dge(e,r);return n.compare(s)||n.compareBuild(s)},"compareBuild");kge.exports=wut});var Oge=b((qur,Lge)=>{"use strict";var but=qT(),Sut=i((t,e)=>t.sort((r,n)=>but(r,n,e)),"sort");Lge.exports=Sut});var Fge=b((Gur,Mge)=>{"use strict";var But=qT(),Rut=i((t,e)=>t.sort((r,n)=>But(n,r,e)),"rsort");Mge.exports=Rut});var jI=b((zur,Uge)=>{"use strict";var Nut=Ri(),Tut=i((t,e,r)=>Nut(t,e,r)>0,"gt");Uge.exports=Tut});var $T=b((Yur,qge)=>{"use strict";var Put=Ri(),vut=i((t,e,r)=>Put(t,e,r)<0,"lt");qge.exports=vut});var lV=b((jur,$ge)=>{"use strict";var _ut=Ri(),Qut=i((t,e,r)=>_ut(t,e,r)===0,"eq");$ge.exports=Qut});var uV=b((Kur,Gge)=>{"use strict";var Dut=Ri(),kut=i((t,e,r)=>Dut(t,e,r)!==0,"neq");Gge.exports=kut});var GT=b((Zur,Hge)=>{"use strict";var Lut=Ri(),Out=i((t,e,r)=>Lut(t,e,r)>=0,"gte");Hge.exports=Out});var HT=b((tdr,zge)=>{"use strict";var Mut=Ri(),Fut=i((t,e,r)=>Mut(t,e,r)<=0,"lte");zge.exports=Fut});var dV=b((ndr,Vge)=>{"use strict";var Uut=lV(),qut=uV(),$ut=jI(),Gut=GT(),Hut=$T(),zut=HT(),Vut=i((t,e,r,n)=>{switch(e){case"===":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t===r;case"!==":return typeof t=="object"&&(t=t.version),typeof r=="object"&&(r=r.version),t!==r;case"":case"=":case"==":return Uut(t,r,n);case"!=":return qut(t,r,n);case">":return $ut(t,r,n);case">=":return Gut(t,r,n);case"<":return Hut(t,r,n);case"<=":return zut(t,r,n);default:throw new TypeError(`Invalid operator: ${e}`)}},"cmp");Vge.exports=Vut});var Wge=b((odr,Yge)=>{"use strict";var Yut=vn(),Wut=Md(),{safeRe:zT,t:VT}=Ag(),jut=i((t,e)=>{if(t instanceof Yut)return t;if(typeof t=="number"&&(t=String(t)),typeof t!="string")return null;e=e||{};let r=null;if(!e.rtl)r=t.match(e.includePrerelease?zT[VT.COERCEFULL]:zT[VT.COERCE]);else{let l=e.includePrerelease?zT[VT.COERCERTLFULL]:zT[VT.COERCERTL],u;for(;(u=l.exec(t))&&(!r||r.index+r[0].length!==t.length);)(!r||u.index+u[0].length!==r.index+r[0].length)&&(r=u),l.lastIndex=u.index+u[1].length+u[2].length;l.lastIndex=-1}if(r===null)return null;let n=r[2],s=r[3]||"0",o=r[4]||"0",a=e.includePrerelease&&r[5]?`-${r[5]}`:"",c=e.includePrerelease&&r[6]?`+${r[6]}`:"";return Wut(`${n}.${s}.${o}${a}${c}`,e)},"coerce");Yge.exports=jut});var Jge=b((adr,jge)=>{"use strict";var Jut=Md(),Kut=fg(),Xut=vn(),Zut=i((t,e,r)=>{if(!Kut.RELEASE_TYPES.includes(e))return null;let n=edt(t,r);return n&&tdt(n,e)},"truncate"),edt=i((t,e)=>{let r=t instanceof Xut?t.version:t;return Jut(r,e)},"cloneInputVersion"),tdt=i((t,e)=>{if(rdt(e))return t.version;switch(t.prerelease=[],e){case"major":t.minor=0,t.patch=0;break;case"minor":t.patch=0;break}return t.format()},"doTruncation"),rdt=i(t=>t.startsWith("pre"),"isPrerelease");jge.exports=Zut});var Xge=b((ldr,Kge)=>{"use strict";var pV=class{static{i(this,"LRUCache")}constructor(){this.max=1e3,this.map=new Map}get(e){let r=this.map.get(e);if(r!==void 0)return this.map.delete(e),this.map.set(e,r),r}delete(e){return this.map.delete(e)}set(e,r){if(!this.delete(e)&&r!==void 0){if(this.map.size>=this.max){let s=this.map.keys().next().value;this.delete(s)}this.map.set(e,r)}return this}};Kge.exports=pV});var Ni=b((ddr,rye)=>{"use strict";var ndt=/\s+/g,mV=class t{static{i(this,"Range")}constructor(e,r){if(r=odt(r),e instanceof t)return e.loose===!!r.loose&&e.includePrerelease===!!r.includePrerelease?e:new t(e.raw,r);if(e instanceof fV)return this.raw=e.value,this.set=[[e]],this.formatted=void 0,this;if(this.options=r,this.loose=!!r.loose,this.includePrerelease=!!r.includePrerelease,this.raw=e.trim().replace(ndt," "),this.set=this.raw.split("||").map(n=>this.parseRange(n.trim())).filter(n=>n.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let n=this.set[0];if(this.set=this.set.filter(s=>!eye(s[0])),this.set.length===0)this.set=[n];else if(this.set.length>1){for(let s of this.set)if(s.length===1&&fdt(s[0])){this.set=[s];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let e=0;e0&&(this.formatted+="||");let r=this.set[e];for(let n=0;n0&&(this.formatted+=" "),this.formatted+=r[n].toString().trim()}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(e){e=e.replace(mdt,"");let n=((this.options.includePrerelease&&ddt)|(this.options.loose&&pdt))+":"+e,s=Zge.get(n);if(s)return s;let o=this.options.loose,a=o?Ss[_n.HYPHENRANGELOOSE]:Ss[_n.HYPHENRANGE];e=e.replace(a,bdt(this.options.includePrerelease)),jt("hyphen replace",e),e=e.replace(Ss[_n.COMPARATORTRIM],cdt),jt("comparator trim",e),e=e.replace(Ss[_n.TILDETRIM],ldt),jt("tilde trim",e),e=e.replace(Ss[_n.CARETTRIM],udt),jt("caret trim",e);let c=e.split(" ").map(p=>Adt(p,this.options)).join(" ").split(/\s+/).map(p=>wdt(p,this.options));o&&(c=c.filter(p=>(jt("loose invalid filter",p,this.options),!!p.match(Ss[_n.COMPARATORLOOSE])))),jt("range list",c);let l=new Map,u=c.map(p=>new fV(p,this.options));for(let p of u){if(eye(p))return[p];l.set(p.value,p)}l.size>1&&l.has("")&&l.delete("");let d=[...l.values()];return Zge.set(n,d),d}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Range is required");return this.set.some(n=>tye(n,r)&&e.set.some(s=>tye(s,r)&&n.every(o=>s.every(a=>o.intersects(a,r)))))}test(e){if(!e)return!1;if(typeof e=="string")try{e=new idt(e,this.options)}catch{return!1}for(let r=0;rt.value==="<0.0.0-0","isNullSet"),fdt=i(t=>t.value==="","isAny"),tye=i((t,e)=>{let r=!0,n=t.slice(),s=n.pop();for(;r&&n.length;)r=n.every(o=>s.intersects(o,e)),s=n.pop();return r},"isSatisfiable"),Adt=i((t,e)=>(t=t.replace(Ss[_n.BUILD],""),jt("comp",t,e),t=ydt(t,e),jt("caret",t),t=hdt(t,e),jt("tildes",t),t=Cdt(t,e),jt("xrange",t),t=xdt(t,e),jt("stars",t),t),"parseComparator"),Bs=i(t=>!t||t.toLowerCase()==="x"||t==="*","isX"),hdt=i((t,e)=>t.trim().split(/\s+/).map(r=>gdt(r,e)).join(" "),"replaceTildes"),gdt=i((t,e)=>{let r=e.loose?Ss[_n.TILDELOOSE]:Ss[_n.TILDE];return t.replace(r,(n,s,o,a,c)=>{jt("tilde",t,n,s,o,a,c);let l;return Bs(s)?l="":Bs(o)?l=`>=${s}.0.0 <${+s+1}.0.0-0`:Bs(a)?l=`>=${s}.${o}.0 <${s}.${+o+1}.0-0`:c?(jt("replaceTilde pr",c),l=`>=${s}.${o}.${a}-${c} <${s}.${+o+1}.0-0`):l=`>=${s}.${o}.${a} <${s}.${+o+1}.0-0`,jt("tilde return",l),l})},"replaceTilde"),ydt=i((t,e)=>t.trim().split(/\s+/).map(r=>Edt(r,e)).join(" "),"replaceCarets"),Edt=i((t,e)=>{jt("caret",t,e);let r=e.loose?Ss[_n.CARETLOOSE]:Ss[_n.CARET],n=e.includePrerelease?"-0":"";return t.replace(r,(s,o,a,c,l)=>{jt("caret",t,s,o,a,c,l);let u;return Bs(o)?u="":Bs(a)?u=`>=${o}.0.0${n} <${+o+1}.0.0-0`:Bs(c)?o==="0"?u=`>=${o}.${a}.0${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.0${n} <${+o+1}.0.0-0`:l?(jt("replaceCaret pr",l),o==="0"?a==="0"?u=`>=${o}.${a}.${c}-${l} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}-${l} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c}-${l} <${+o+1}.0.0-0`):(jt("no pr"),o==="0"?a==="0"?u=`>=${o}.${a}.${c}${n} <${o}.${a}.${+c+1}-0`:u=`>=${o}.${a}.${c}${n} <${o}.${+a+1}.0-0`:u=`>=${o}.${a}.${c} <${+o+1}.0.0-0`),jt("caret return",u),u})},"replaceCaret"),Cdt=i((t,e)=>(jt("replaceXRanges",t,e),t.split(/\s+/).map(r=>Idt(r,e)).join(" ")),"replaceXRanges"),Idt=i((t,e)=>{t=t.trim();let r=e.loose?Ss[_n.XRANGELOOSE]:Ss[_n.XRANGE];return t.replace(r,(n,s,o,a,c,l)=>{jt("xRange",t,n,s,o,a,c,l);let u=Bs(o),d=u||Bs(a),p=d||Bs(c),m=p;return s==="="&&m&&(s=""),l=e.includePrerelease?"-0":"",u?s===">"||s==="<"?n="<0.0.0-0":n="*":s&&m?(d&&(a=0),c=0,s===">"?(s=">=",d?(o=+o+1,a=0,c=0):(a=+a+1,c=0)):s==="<="&&(s="<",d?o=+o+1:a=+a+1),s==="<"&&(l="-0"),n=`${s+o}.${a}.${c}${l}`):d?n=`>=${o}.0.0${l} <${+o+1}.0.0-0`:p&&(n=`>=${o}.${a}.0${l} <${o}.${+a+1}.0-0`),jt("xRange return",n),n})},"replaceXRange"),xdt=i((t,e)=>(jt("replaceStars",t,e),t.trim().replace(Ss[_n.STAR],"")),"replaceStars"),wdt=i((t,e)=>(jt("replaceGTE0",t,e),t.trim().replace(Ss[e.includePrerelease?_n.GTE0PRE:_n.GTE0],"")),"replaceGTE0"),bdt=i(t=>(e,r,n,s,o,a,c,l,u,d,p,m)=>(Bs(n)?r="":Bs(s)?r=`>=${n}.0.0${t?"-0":""}`:Bs(o)?r=`>=${n}.${s}.0${t?"-0":""}`:a?r=`>=${r}`:r=`>=${r}${t?"-0":""}`,Bs(u)?l="":Bs(d)?l=`<${+u+1}.0.0-0`:Bs(p)?l=`<${u}.${+d+1}.0-0`:m?l=`<=${u}.${d}.${p}-${m}`:t?l=`<${u}.${d}.${+p+1}-0`:l=`<=${l}`,`${r} ${l}`.trim()),"hyphenReplace"),Sdt=i((t,e,r)=>{for(let n=0;n0){let s=t[n].semver;if(s.major===e.major&&s.minor===e.minor&&s.patch===e.patch)return!0}return!1}return!0},"testSet")});var JI=b((mdr,cye)=>{"use strict";var KI=Symbol("SemVer ANY"),gV=class t{static{i(this,"Comparator")}static get ANY(){return KI}constructor(e,r){if(r=nye(r),e instanceof t){if(e.loose===!!r.loose)return e;e=e.value}e=e.trim().split(/\s+/).join(" "),hV("comparator",e,r),this.options=r,this.loose=!!r.loose,this.parse(e),this.semver===KI?this.value="":this.value=this.operator+this.semver.version,hV("comp",this)}parse(e){let r=this.options.loose?sye[oye.COMPARATORLOOSE]:sye[oye.COMPARATOR],n=e.match(r);if(!n)throw new TypeError(`Invalid comparator: ${e}`);this.operator=n[1]!==void 0?n[1]:"",this.operator==="="&&(this.operator=""),n[2]?this.semver=new iye(n[2],this.options.loose):this.semver=KI}toString(){return this.value}test(e){if(hV("Comparator.test",e,this.options.loose),this.semver===KI||e===KI)return!0;if(typeof e=="string")try{e=new iye(e,this.options)}catch{return!1}return AV(e,this.operator,this.semver,this.options)}intersects(e,r){if(!(e instanceof t))throw new TypeError("a Comparator is required");return this.operator===""?this.value===""?!0:new aye(e.value,r).test(this.value):e.operator===""?e.value===""?!0:new aye(this.value,r).test(e.semver):(r=nye(r),r.includePrerelease&&(this.value==="<0.0.0-0"||e.value==="<0.0.0-0")||!r.includePrerelease&&(this.value.startsWith("<0.0.0")||e.value.startsWith("<0.0.0"))?!1:!!(this.operator.startsWith(">")&&e.operator.startsWith(">")||this.operator.startsWith("<")&&e.operator.startsWith("<")||this.semver.version===e.semver.version&&this.operator.includes("=")&&e.operator.includes("=")||AV(this.semver,"<",e.semver,r)&&this.operator.startsWith(">")&&e.operator.startsWith("<")||AV(this.semver,">",e.semver,r)&&this.operator.startsWith("<")&&e.operator.startsWith(">")))}};cye.exports=gV;var nye=LT(),{safeRe:sye,t:oye}=Ag(),AV=dV(),hV=WI(),iye=vn(),aye=Ni()});var XI=b((Adr,lye)=>{"use strict";var Bdt=Ni(),Rdt=i((t,e,r)=>{try{e=new Bdt(e,r)}catch{return!1}return e.test(t)},"satisfies");lye.exports=Rdt});var dye=b((gdr,uye)=>{"use strict";var Ndt=Ni(),Tdt=i((t,e)=>new Ndt(t,e).set.map(r=>r.map(n=>n.value).join(" ").trim().split(" ")),"toComparators");uye.exports=Tdt});var mye=b((Edr,pye)=>{"use strict";var Pdt=vn(),vdt=Ni(),_dt=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new vdt(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===-1)&&(n=a,s=new Pdt(n,r))}),n},"maxSatisfying");pye.exports=_dt});var Aye=b((Idr,fye)=>{"use strict";var Qdt=vn(),Ddt=Ni(),kdt=i((t,e,r)=>{let n=null,s=null,o=null;try{o=new Ddt(e,r)}catch{return null}return t.forEach(a=>{o.test(a)&&(!n||s.compare(a)===1)&&(n=a,s=new Qdt(n,r))}),n},"minSatisfying");fye.exports=kdt});var yye=b((wdr,gye)=>{"use strict";var yV=vn(),Ldt=Ni(),hye=jI(),Odt=i((t,e)=>{t=new Ldt(t,e);let r=new yV("0.0.0");if(t.test(r)||(r=new yV("0.0.0-0"),t.test(r)))return r;r=null;for(let n=0;n{let c=new yV(a.semver.version);switch(a.operator){case">":c.prerelease.length===0?c.patch++:c.prerelease.push(0),c.raw=c.format();case"":case">=":(!o||hye(c,o))&&(o=c);break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${a.operator}`)}}),o&&(!r||hye(r,o))&&(r=o)}return r&&t.test(r)?r:null},"minVersion");gye.exports=Odt});var Cye=b((Sdr,Eye)=>{"use strict";var Mdt=Ni(),Fdt=i((t,e)=>{try{return new Mdt(t,e).range||"*"}catch{return null}},"validRange");Eye.exports=Fdt});var YT=b((Rdr,bye)=>{"use strict";var Udt=vn(),wye=JI(),{ANY:qdt}=wye,$dt=Ni(),Gdt=XI(),Iye=jI(),xye=$T(),Hdt=HT(),zdt=GT(),Vdt=i((t,e,r,n)=>{t=new Udt(t,n),e=new $dt(e,n);let s,o,a,c,l;switch(r){case">":s=Iye,o=Hdt,a=xye,c=">",l=">=";break;case"<":s=xye,o=zdt,a=Iye,c="<",l="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(Gdt(t,e,n))return!1;for(let u=0;u{f.semver===qdt&&(f=new wye(">=0.0.0")),p=p||f,m=m||f,s(f.semver,p.semver,n)?p=f:a(f.semver,m.semver,n)&&(m=f)}),p.operator===c||p.operator===l||(!m.operator||m.operator===c)&&o(t,m.semver))return!1;if(m.operator===l&&a(t,m.semver))return!1}return!0},"outside");bye.exports=Vdt});var Bye=b((Tdr,Sye)=>{"use strict";var Ydt=YT(),Wdt=i((t,e,r)=>Ydt(t,e,">",r),"gtr");Sye.exports=Wdt});var Nye=b((vdr,Rye)=>{"use strict";var jdt=YT(),Jdt=i((t,e,r)=>jdt(t,e,"<",r),"ltr");Rye.exports=Jdt});var vye=b((Qdr,Pye)=>{"use strict";var Tye=Ni(),Kdt=i((t,e,r)=>(t=new Tye(t,r),e=new Tye(e,r),t.intersects(e,r)),"intersects");Pye.exports=Kdt});var Qye=b((kdr,_ye)=>{"use strict";var Xdt=XI(),Zdt=Ri();_ye.exports=(t,e,r)=>{let n=[],s=null,o=null,a=t.sort((d,p)=>Zdt(d,p,r));for(let d of a)Xdt(d,e,r)?(o=d,s||(s=d)):(o&&n.push([s,o]),o=null,s=null);s&&n.push([s,null]);let c=[];for(let[d,p]of n)d===p?c.push(d):!p&&d===a[0]?c.push("*"):p?d===a[0]?c.push(`<=${p}`):c.push(`${d} - ${p}`):c.push(`>=${d}`);let l=c.join(" || "),u=typeof e.raw=="string"?e.raw:String(e);return l.length{"use strict";var Dye=Ni(),IV=JI(),{ANY:EV}=IV,CV=XI(),xV=Ri(),ept=i((t,e,r={})=>{if(t===e)return!0;t=new Dye(t,r),e=new Dye(e,r);let n=!1;e:for(let s of t.set){for(let o of e.set){let a=rpt(s,o,r);if(n=n||a!==null,a)continue e}if(n)return!1}return!0},"subset"),tpt=[new IV(">=0.0.0-0")],kye=[new IV(">=0.0.0")],rpt=i((t,e,r)=>{if(t===e)return!0;if(t.length===1&&t[0].semver===EV){if(e.length===1&&e[0].semver===EV)return!0;r.includePrerelease?t=tpt:t=kye}if(e.length===1&&e[0].semver===EV){if(r.includePrerelease)return!0;e=kye}let n=new Set,s,o;for(let f of t)f.operator===">"||f.operator===">="?s=Lye(s,f,r):f.operator==="<"||f.operator==="<="?o=Oye(o,f,r):n.add(f.semver);if(n.size>1)return null;let a;if(s&&o){if(a=xV(s.semver,o.semver,r),a>0)return null;if(a===0&&(s.operator!==">="||o.operator!=="<="))return null}for(let f of n){if(s&&!CV(f,String(s),r)||o&&!CV(f,String(o),r))return null;for(let g of e)if(!CV(f,String(g),r))return!1;return!0}let c,l,u,d,p=o&&!r.includePrerelease&&o.semver.prerelease.length?o.semver:!1,m=s&&!r.includePrerelease&&s.semver.prerelease.length?s.semver:!1;p&&p.prerelease.length===1&&o.operator==="<"&&p.prerelease[0]===0&&(p=!1);for(let f of e){if(d=d||f.operator===">"||f.operator===">=",u=u||f.operator==="<"||f.operator==="<=",s){if(m&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===m.major&&f.semver.minor===m.minor&&f.semver.patch===m.patch&&(m=!1),f.operator===">"||f.operator===">="){if(c=Lye(s,f,r),c===f&&c!==s)return!1}else if(s.operator===">="&&!f.test(s.semver))return!1}if(o){if(p&&f.semver.prerelease&&f.semver.prerelease.length&&f.semver.major===p.major&&f.semver.minor===p.minor&&f.semver.patch===p.patch&&(p=!1),f.operator==="<"||f.operator==="<="){if(l=Oye(o,f,r),l===f&&l!==o)return!1}else if(o.operator==="<="&&!f.test(o.semver))return!1}if(!f.operator&&(o||s)&&a!==0)return!1}return!(s&&u&&!o&&a!==0||o&&d&&!s&&a!==0||m||p)},"simpleSubset"),Lye=i((t,e,r)=>{if(!t)return e;let n=xV(t.semver,e.semver,r);return n>0?t:n<0||e.operator===">"&&t.operator===">="?e:t},"higherGT"),Oye=i((t,e,r)=>{if(!t)return e;let n=xV(t.semver,e.semver,r);return n<0?t:n>0||e.operator==="<"&&t.operator==="<="?e:t},"lowerLT");Mye.exports=ept});var Gye=b((Mdr,$ye)=>{"use strict";var wV=Ag(),Uye=fg(),npt=vn(),qye=iV(),spt=Md(),opt=dge(),ipt=mge(),apt=hge(),cpt=Ege(),lpt=Ige(),upt=wge(),dpt=Sge(),ppt=Rge(),mpt=Ri(),fpt=vge(),Apt=Qge(),hpt=qT(),gpt=Oge(),ypt=Fge(),Ept=jI(),Cpt=$T(),Ipt=lV(),xpt=uV(),wpt=GT(),bpt=HT(),Spt=dV(),Bpt=Wge(),Rpt=Jge(),Npt=JI(),Tpt=Ni(),Ppt=XI(),vpt=dye(),_pt=mye(),Qpt=Aye(),Dpt=yye(),kpt=Cye(),Lpt=YT(),Opt=Bye(),Mpt=Nye(),Fpt=vye(),Upt=Qye(),qpt=Fye();$ye.exports={parse:spt,valid:opt,clean:ipt,inc:apt,diff:cpt,major:lpt,minor:upt,patch:dpt,prerelease:ppt,compare:mpt,rcompare:fpt,compareLoose:Apt,compareBuild:hpt,sort:gpt,rsort:ypt,gt:Ept,lt:Cpt,eq:Ipt,neq:xpt,gte:wpt,lte:bpt,cmp:Spt,coerce:Bpt,truncate:Rpt,Comparator:Npt,Range:Tpt,satisfies:Ppt,toComparators:vpt,maxSatisfying:_pt,minSatisfying:Qpt,minVersion:Dpt,validRange:kpt,outside:Lpt,gtr:Opt,ltr:Mpt,intersects:Fpt,simplifyRange:Upt,subset:qpt,SemVer:npt,re:wV.re,src:wV.src,tokens:wV.t,SEMVER_SPEC_VERSION:Uye.SEMVER_SPEC_VERSION,RELEASE_TYPES:Uye.RELEASE_TYPES,compareIdentifiers:qye.compareIdentifiers,rcompareIdentifiers:qye.rcompareIdentifiers}});var aEe=b((qdr,uu)=>{var Lt=require("fs"),JT=require("os"),dn=require("path"),Hye=require("crypto"),Mc={fs:Lt.constants,os:JT.constants},zye="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz",jye=/XXXXXX/,$pt=3,Jye=(Mc.O_CREAT||Mc.fs.O_CREAT)|(Mc.O_EXCL||Mc.fs.O_EXCL)|(Mc.O_RDWR||Mc.fs.O_RDWR),Gpt=JT.platform()==="win32",Hpt=Mc.EBADF||Mc.os.errno.EBADF,zpt=Mc.ENOENT||Mc.os.errno.ENOENT,Kye=448,Xye=384,Vpt="exit",hg=[],Zye=Lt.rmdirSync.bind(Lt),eEe=!1;function Ypt(t,e){return Lt.rm(t,{recursive:!0},e)}i(Ypt,"rimraf");function tEe(t){return Lt.rmSync(t,{recursive:!0})}i(tEe,"FN_RIMRAF_SYNC");function RV(t,e){let r=gg(t,e),n=r[0],s=r[1];nmt(n,function(o,a){if(o)return s(o);let c=a.tries;i((function l(){try{let u=nEe(a);Lt.stat(u,function(d){if(!d)return c-- >0?l():s(new Error("Could not get a unique tmp filename, max tries reached "+u));s(null,u)})}catch(u){s(u)}}),"_getUniqueName")()})}i(RV,"tmpName");function NV(t){let e=gg(t),r=e[0],n=smt(r),s=n.tries;do{let o=nEe(n);try{Lt.statSync(o)}catch{return o}}while(s-- >0);throw new Error("Could not get a unique tmp filename, max tries reached")}i(NV,"tmpNameSync");function Wpt(t,e){let r=gg(t,e),n=r[0],s=r[1];RV(n,i(function(a,c){if(a)return s(a);Lt.open(c,Jye,n.mode||Xye,i(function(u,d){if(u)return s(u);if(n.discardDescriptor)return Lt.close(d,i(function(m){return s(m,c,void 0,SV(c,-1,n,!1))},"_discardCallback"));{let p=n.discardDescriptor||n.detachDescriptor;s(null,c,d,SV(c,p?-1:d,n,!1))}},"_fileCreated"))},"_tmpNameCreated"))}i(Wpt,"file");function jpt(t){let e=gg(t),r=e[0],n=r.discardDescriptor||r.detachDescriptor,s=NV(r),o=Lt.openSync(s,Jye,r.mode||Xye);return r.discardDescriptor&&(Lt.closeSync(o),o=void 0),{name:s,fd:o,removeCallback:SV(s,n?-1:o,r,!0)}}i(jpt,"fileSync");function Jpt(t,e){let r=gg(t,e),n=r[0],s=r[1];RV(n,i(function(a,c){if(a)return s(a);Lt.mkdir(c,n.mode||Kye,i(function(u){if(u)return s(u);s(null,c,rEe(c,n,!1))},"_dirCreated"))},"_tmpNameCreated"))}i(Jpt,"dir");function Kpt(t){let e=gg(t),r=e[0],n=NV(r);return Lt.mkdirSync(n,r.mode||Kye),{name:n,removeCallback:rEe(n,r,!0)}}i(Kpt,"dirSync");function Xpt(t,e){let r=i(function(n){if(n&&!BV(n))return e(n);e()},"_handler");0<=t[0]?Lt.close(t[0],function(){Lt.unlink(t[1],r)}):Lt.unlink(t[1],r)}i(Xpt,"_removeFileAsync");function Zpt(t){let e=null;try{0<=t[0]&&Lt.closeSync(t[0])}catch(r){if(!omt(r)&&!BV(r))throw r}finally{try{Lt.unlinkSync(t[1])}catch(r){BV(r)||(e=r)}}if(e!==null)throw e}i(Zpt,"_removeFileSync");function SV(t,e,r,n){let s=jT(Zpt,[e,t],n),o=jT(Xpt,[e,t],n,s);return r.keep||hg.unshift(s),n?s:o}i(SV,"_prepareTmpFileRemoveCallback");function rEe(t,e,r){let n=e.unsafeCleanup?Ypt:Lt.rmdir.bind(Lt),s=e.unsafeCleanup?tEe:Zye,o=jT(s,t,r),a=jT(n,t,r,o);return e.keep||hg.unshift(o),r?o:a}i(rEe,"_prepareTmpDirRemoveCallback");function jT(t,e,r,n){let s=!1;return i(function o(a){if(!s){let c=n||o,l=hg.indexOf(c);return l>=0&&hg.splice(l,1),s=!0,r||t===Zye||t===tEe?t(e):t(e,a||function(){})}},"_cleanupCallback")}i(jT,"_prepareRemoveCallback");function emt(){if(eEe)for(;hg.length;)try{hg[0]()}catch{}}i(emt,"_garbageCollector");function Vye(t){let e=[],r=null;try{r=Hye.randomBytes(t)}catch{r=Hye.pseudoRandomBytes(t)}for(let n=0;n"u"}i(so,"_isUndefined");function gg(t,e){if(typeof t=="function")return[{},t];if(so(t))return[{},e];let r={};for(let n of Object.getOwnPropertyNames(t))r[n]=t[n];return[r,e]}i(gg,"_parseArguments");function tmt(t,e,r){let n=dn.isAbsolute(t)?t:dn.join(e,t);Lt.stat(n,function(s){s?Lt.realpath(dn.dirname(n),function(o,a){if(o)return r(o);r(null,dn.join(a,dn.basename(n)))}):Lt.realpath(n,r)})}i(tmt,"_resolvePath");function rmt(t,e){let r=dn.isAbsolute(t)?t:dn.join(e,t);try{return Lt.statSync(r),Lt.realpathSync(r)}catch{let s=Lt.realpathSync(dn.dirname(r));return dn.join(s,dn.basename(r))}}i(rmt,"_resolvePathSync");function nEe(t){let e=t.tmpdir;if(!so(t.name))return dn.join(e,t.dir,t.name);if(!so(t.template))return dn.join(e,t.dir,t.template).replace(jye,Vye(6));let r=[t.prefix?t.prefix:"tmp","-",process.pid,"-",Vye(12),t.postfix?"-"+t.postfix:""].join("");return dn.join(e,t.dir,r)}i(nEe,"_generateTmpName");function bV(t,e){if(typeof e!="string")throw new Error(`${t} option must be a string, got "${typeof e}".`);if(e.includes(".."))throw new Error("Relative value not allowed");return e}i(bV,"_assertPath");function sEe(t){if(!so(t.name)){let e=t.name;if(dn.isAbsolute(e))throw new Error(`name option must not contain an absolute path, found "${e}".`);let r=dn.basename(e);if(r===".."||r==="."||r!==e)throw new Error(`name option must not contain a path, found "${e}".`)}if(!so(t.template)){if(typeof t.template!="string")throw new Error(`template option must be a string, got "${typeof t.template}".`);if(!t.template.match(jye))throw new Error(`Invalid template, found "${t.template}".`)}if(!so(t.tries)&&isNaN(t.tries)||t.tries<0)throw new Error(`Invalid tries, found "${t.tries}".`);t.tries=so(t.name)?t.tries||$pt:1,t.keep=!!t.keep,t.detachDescriptor=!!t.detachDescriptor,t.discardDescriptor=!!t.discardDescriptor,t.unsafeCleanup=!!t.unsafeCleanup,t.prefix=so(t.prefix)?"":bV("prefix",t.prefix),t.postfix=so(t.postfix)?"":bV("postfix",t.postfix),t.template=so(t.template)?void 0:bV("template",t.template)}i(sEe,"_assertOptionsBase");function Yye(t,e,r,n){if(so(e))return n(null);tmt(e,r,function(s,o){if(s)return n(s);let a=dn.relative(r,o);if(a.startsWith("..")||dn.isAbsolute(a))return n(new Error(`${t} option must be relative to "${r}", found "${a}".`));n(null,a)})}i(Yye,"_getRelativePath");function Wye(t,e,r){if(so(e))return;let n=rmt(e,r),s=dn.relative(r,n);if(s.startsWith("..")||dn.isAbsolute(s))throw new Error(`${t} option must be relative to "${r}", found "${s}".`);return s}i(Wye,"_getRelativePathSync");function nmt(t,e){amt(t,function(r,n){if(r)return e(r);t.tmpdir=n;try{sEe(t,n)}catch(s){return e(s)}Yye("dir",t.dir,n,function(s,o){if(s)return e(s);t.dir=so(o)?"":o,Yye("template",t.template,n,function(a,c){if(a)return e(a);t.template=c,e(null,t)})})})}i(nmt,"_assertAndSanitizeOptions");function smt(t){let e=t.tmpdir=iEe(t);sEe(t,e);let r=Wye("dir",t.dir,e);return t.dir=so(r)?"":r,t.template=Wye("template",t.template,e),t}i(smt,"_assertAndSanitizeOptionsSync");function omt(t){return oEe(t,-Hpt,"EBADF")}i(omt,"_isEBADF");function BV(t){return oEe(t,-zpt,"ENOENT")}i(BV,"_isENOENT");function oEe(t,e,r){return Gpt?t.code===r:t.code===r&&t.errno===e}i(oEe,"_isExpectedError");function imt(){eEe=!0}i(imt,"setGracefulCleanup");function amt(t,e){return Lt.realpath(t&&t.tmpdir||JT.tmpdir(),e)}i(amt,"_getTmpDir");function iEe(t){return Lt.realpathSync(t&&t.tmpdir||JT.tmpdir())}i(iEe,"_getTmpDirSync");process.addListener(Vpt,emt);Object.defineProperty(uu.exports,"tmpdir",{enumerable:!0,configurable:!1,get:i(function(){return iEe()},"get")});uu.exports.dir=Jpt;uu.exports.dirSync=Kpt;uu.exports.file=Wpt;uu.exports.fileSync=jpt;uu.exports.tmpName=RV;uu.exports.tmpNameSync=NV;uu.exports.setGracefulCleanup=imt});var Rs=b($o=>{"use strict";$o.__esModule=!0;$o.extend=dEe;$o.indexOf=pmt;$o.escapeExpression=mmt;$o.isEmpty=fmt;$o.createFrame=Amt;$o.blockParams=hmt;$o.appendContextPath=gmt;var cmt={"&":"&","<":"<",">":">",'"':""","'":"'","`":"`","=":"="},lmt=/[&<>"'`=]/g,umt=/[&<>"'`=]/;function dmt(t){return cmt[t]}i(dmt,"escapeChar");function dEe(t){for(var e=1;e{"use strict";XT.__esModule=!0;var _V=["description","fileName","lineNumber","endLineNumber","message","name","number","stack"];function QV(t,e){var r=e&&e.loc,n=void 0,s=void 0,o=void 0,a=void 0;r&&(n=r.start.line,s=r.end.line,o=r.start.column,a=r.end.column,t+=" - "+n+":"+o);for(var c=Error.prototype.constructor.call(this,t),l=0;l<_V.length;l++)this[_V[l]]=c[_V[l]];Error.captureStackTrace&&Error.captureStackTrace(this,QV);try{r&&(this.lineNumber=n,this.endLineNumber=s,Object.defineProperty?(Object.defineProperty(this,"column",{value:o,enumerable:!0}),Object.defineProperty(this,"endColumn",{value:a,enumerable:!0})):(this.column=o,this.endColumn=a))}catch{}}i(QV,"Exception");QV.prototype=new Error;XT.default=QV;mEe.exports=XT.default});var AEe=b((ZT,fEe)=>{"use strict";ZT.__esModule=!0;var DV=Rs();ZT.default=function(t){t.registerHelper("blockHelperMissing",function(e,r){var n=r.inverse,s=r.fn;if(e===!0)return s(this);if(e===!1||e==null)return n(this);if(DV.isArray(e))return e.length>0?(r.ids&&(r.ids=[r.name]),t.helpers.each(e,r)):n(this);if(r.data&&r.ids){var o=DV.createFrame(r.data);o.contextPath=DV.appendContextPath(r.data.contextPath,r.name),r={data:o}}return s(e,r)})};fEe.exports=ZT.default});var gEe=b((eP,hEe)=>{"use strict";eP.__esModule=!0;function ymt(t){return t&&t.__esModule?t:{default:t}}i(ymt,"_interopRequireDefault");var ZI=Rs(),Emt=Go(),Cmt=ymt(Emt);eP.default=function(t){t.registerHelper("each",function(e,r){if(!r)throw new Cmt.default("Must pass iterator to #each");var n=r.fn,s=r.inverse,o=0,a="",c=void 0,l=void 0;r.data&&r.ids&&(l=ZI.appendContextPath(r.data.contextPath,r.ids[0])+"."),ZI.isFunction(e)&&(e=e.call(this)),r.data&&(c=ZI.createFrame(r.data));function u(g,E,x){c&&(c.key=g,c.index=E,c.first=E===0,c.last=!!x,l&&(c.contextPath=l+g)),a=a+n(e[g],{data:c,blockParams:ZI.blockParams([e[g],g],[l+g,null])})}if(i(u,"execIteration"),e&&typeof e=="object")if(ZI.isArray(e))for(var d=e.length;o{"use strict";tP.__esModule=!0;function Imt(t){return t&&t.__esModule?t:{default:t}}i(Imt,"_interopRequireDefault");var xmt=Go(),wmt=Imt(xmt);tP.default=function(t){t.registerHelper("helperMissing",function(){if(arguments.length!==1)throw new wmt.default('Missing helper: "'+arguments[arguments.length-1].name+'"')})};yEe.exports=tP.default});var wEe=b((rP,xEe)=>{"use strict";rP.__esModule=!0;function bmt(t){return t&&t.__esModule?t:{default:t}}i(bmt,"_interopRequireDefault");var CEe=Rs(),Smt=Go(),IEe=bmt(Smt);rP.default=function(t){t.registerHelper("if",function(e,r){if(arguments.length!=2)throw new IEe.default("#if requires exactly one argument");return CEe.isFunction(e)&&(e=e.call(this)),!r.hash.includeZero&&!e||CEe.isEmpty(e)?r.inverse(this):r.fn(this)}),t.registerHelper("unless",function(e,r){if(arguments.length!=2)throw new IEe.default("#unless requires exactly one argument");return t.helpers.if.call(this,e,{fn:r.inverse,inverse:r.fn,hash:r.hash})})};xEe.exports=rP.default});var SEe=b((nP,bEe)=>{"use strict";nP.__esModule=!0;nP.default=function(t){t.registerHelper("log",function(){for(var e=[void 0],r=arguments[arguments.length-1],n=0;n{"use strict";sP.__esModule=!0;sP.default=function(t){t.registerHelper("lookup",function(e,r,n){return e&&n.lookupProperty(e,r)})};BEe.exports=sP.default});var TEe=b((oP,NEe)=>{"use strict";oP.__esModule=!0;function Bmt(t){return t&&t.__esModule?t:{default:t}}i(Bmt,"_interopRequireDefault");var ex=Rs(),Rmt=Go(),Nmt=Bmt(Rmt);oP.default=function(t){t.registerHelper("with",function(e,r){if(arguments.length!=2)throw new Nmt.default("#with requires exactly one argument");ex.isFunction(e)&&(e=e.call(this));var n=r.fn;if(ex.isEmpty(e))return r.inverse(this);var s=r.data;return r.data&&r.ids&&(s=ex.createFrame(r.data),s.contextPath=ex.appendContextPath(r.data.contextPath,r.ids[0])),n(e,{data:s,blockParams:ex.blockParams([e],[s&&s.contextPath])})})};NEe.exports=oP.default});var kV=b(iP=>{"use strict";iP.__esModule=!0;iP.registerDefaultHelpers=Gmt;iP.moveHelperToHooks=Hmt;function Km(t){return t&&t.__esModule?t:{default:t}}i(Km,"_interopRequireDefault");var Tmt=AEe(),Pmt=Km(Tmt),vmt=gEe(),_mt=Km(vmt),Qmt=EEe(),Dmt=Km(Qmt),kmt=wEe(),Lmt=Km(kmt),Omt=SEe(),Mmt=Km(Omt),Fmt=REe(),Umt=Km(Fmt),qmt=TEe(),$mt=Km(qmt);function Gmt(t){Pmt.default(t),_mt.default(t),Dmt.default(t),Lmt.default(t),Mmt.default(t),Umt.default(t),$mt.default(t)}i(Gmt,"registerDefaultHelpers");function Hmt(t,e,r){t.helpers[e]&&(t.hooks[e]=t.helpers[e],r||(t.helpers[e]=void 0))}i(Hmt,"moveHelperToHooks")});var vEe=b((aP,PEe)=>{"use strict";aP.__esModule=!0;var zmt=Rs();aP.default=function(t){t.registerDecorator("inline",function(e,r,n,s){var o=e;return r.partials||(r.partials={},o=i(function(a,c){var l=n.partials;n.partials=zmt.extend({},l,r.partials);var u=e(a,c);return n.partials=l,u},"ret")),r.partials[s.args[0]]=s.fn,o})};PEe.exports=aP.default});var _Ee=b(LV=>{"use strict";LV.__esModule=!0;LV.registerDefaultDecorators=jmt;function Vmt(t){return t&&t.__esModule?t:{default:t}}i(Vmt,"_interopRequireDefault");var Ymt=vEe(),Wmt=Vmt(Ymt);function jmt(t){Wmt.default(t)}i(jmt,"registerDefaultDecorators")});var OV=b((cP,QEe)=>{"use strict";cP.__esModule=!0;var Jmt=Rs(),yg={methodMap:["debug","info","warn","error"],level:"info",lookupLevel:i(function(e){if(typeof e=="string"){var r=Jmt.indexOf(yg.methodMap,e.toLowerCase());r>=0?e=r:e=parseInt(e,10)}return e},"lookupLevel"),log:i(function(e){if(e=yg.lookupLevel(e),typeof console<"u"&&yg.lookupLevel(yg.level)<=e){var r=yg.methodMap[e];console[r]||(r="log");for(var n=arguments.length,s=Array(n>1?n-1:0),o=1;o{"use strict";tx.__esModule=!0;tx.createProtoAccessControl=eft;tx.resultIsAllowed=tft;tx.resetLoggedProperties=nft;function Kmt(t){return t&&t.__esModule?t:{default:t}}i(Kmt,"_interopRequireDefault");var DEe=Rs(),Xmt=OV(),Zmt=Kmt(Xmt),lP=Object.create(null);function eft(t){var e=Object.create(null);e.__proto__=!1,DEe.extend(e,t.allowedProtoProperties);var r=Object.create(null);return r.constructor=!1,r.__defineGetter__=!1,r.__defineSetter__=!1,r.__lookupGetter__=!1,r.__lookupSetter__=!1,DEe.extend(r,t.allowedProtoMethods),{properties:{whitelist:e,defaultValue:t.allowProtoPropertiesByDefault},methods:{whitelist:r,defaultValue:t.allowProtoMethodsByDefault}}}i(eft,"createProtoAccessControl");function tft(t,e,r){return kEe(typeof t=="function"?e.methods:e.properties,r)}i(tft,"resultIsAllowed");function kEe(t,e){return t.whitelist[e]!==void 0?t.whitelist[e]===!0:t.defaultValue!==void 0?t.defaultValue:(rft(e),!1)}i(kEe,"checkWhiteList");function rft(t){lP[t]!==!0&&(lP[t]=!0,Zmt.default.log("error",'Handlebars: Access has been denied to resolve the property "'+t+`" because it is not an "own property" of its parent. You can add a runtime option to disable the check or this warning: -See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}function tft(){Object.keys(cP).forEach(function(t){delete cP[t]})}});var uP=w(Mc=>{"use strict";Mc.__esModule=!0;Mc.HandlebarsEnvironment=UV;function kEe(t){return t&&t.__esModule?t:{default:t}}var Km=Bs(),rft=$o(),MV=kEe(rft),nft=DV(),sft=vEe(),oft=LV(),lP=kEe(oft),ift=OV(),aft="4.7.9";Mc.VERSION=aft;var cft=8;Mc.COMPILER_REVISION=cft;var lft=7;Mc.LAST_COMPATIBLE_COMPILER_REVISION=lft;var uft={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};Mc.REVISION_CHANGES=uft;var FV="[object Object]";function UV(t,e,r){this.helpers=t||{},this.partials=e||{},this.decorators=r||{},nft.registerDefaultHelpers(this),sft.registerDefaultDecorators(this)}UV.prototype={constructor:UV,logger:lP.default,log:lP.default.log,registerHelper:function(e,r){if(Km.toString.call(e)===FV){if(r)throw new MV.default("Arg not supported with multiple helpers");Km.extend(this.helpers,e)}else this.helpers[e]=r},unregisterHelper:function(e){delete this.helpers[e]},registerPartial:function(e,r){if(Km.toString.call(e)===FV)Km.extend(this.partials,e);else{if(typeof r>"u")throw new MV.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=r}},unregisterPartial:function(e){delete this.partials[e]},registerDecorator:function(e,r){if(Km.toString.call(e)===FV){if(r)throw new MV.default("Arg not supported with multiple decorators");Km.extend(this.decorators,e)}else this.decorators[e]=r},unregisterDecorator:function(e){delete this.decorators[e]},resetLoggedPropertyAccesses:function(){ift.resetLoggedProperties()}};var dft=lP.default.log;Mc.log=dft;Mc.createFrame=Km.createFrame;Mc.logger=lP.default});var OEe=w((dP,LEe)=>{"use strict";dP.__esModule=!0;function qV(t){this.string=t}qV.prototype.toString=qV.prototype.toHTML=function(){return""+this.string};dP.default=qV;LEe.exports=dP.default});var MEe=w($V=>{"use strict";$V.__esModule=!0;$V.wrapHelper=pft;function pft(t,e){if(typeof t!="function")return t;var r=function(){var s=arguments[arguments.length-1];return arguments[arguments.length-1]=e(s),t.apply(this,arguments)};return r}});var HEe=w(Md=>{"use strict";Md.__esModule=!0;Md.checkRevision=yft;Md.template=Eft;Md.wrapProgram=pP;Md.resolvePartial=Cft;Md.invokePartial=Ift;Md.noop=$Ee;function mft(t){return t&&t.__esModule?t:{default:t}}function fft(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}var Aft=Bs(),yg=fft(Aft),hft=$o(),du=mft(hft),pu=uP(),FEe=DV(),gft=MEe(),UEe=OV();function yft(t){var e=t&&t[0]||1,r=pu.COMPILER_REVISION;if(!(e>=pu.LAST_COMPATIBLE_COMPILER_REVISION&&e<=pu.COMPILER_REVISION))if(e{"use strict";fP.__esModule=!0;fP.default=function(t){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var e=globalThis.Handlebars;t.noConflict=function(){return globalThis.Handlebars===t&&(globalThis.Handlebars=e),t}};zEe.exports=fP.default});var JEe=w((AP,jEe)=>{"use strict";AP.__esModule=!0;function zV(t){return t&&t.__esModule?t:{default:t}}function VV(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}var bft=uP(),VEe=VV(bft),Sft=OEe(),Bft=zV(Sft),Rft=$o(),Nft=zV(Rft),Tft=Bs(),HV=VV(Tft),Pft=HEe(),YEe=VV(Pft),vft=GV(),_ft=zV(vft);function WEe(){var t=new VEe.HandlebarsEnvironment;return HV.extend(t,VEe),t.SafeString=Bft.default,t.Exception=Nft.default,t.Utils=HV,t.escapeExpression=HV.escapeExpression,t.VM=YEe,t.template=function(e){return YEe.template(e,t)},t}var ex=WEe();ex.create=WEe;_ft.default(ex);ex.default=ex;AP.default=ex;jEe.exports=AP.default});var YV=w((hP,XEe)=>{"use strict";hP.__esModule=!0;var KEe={helpers:{helperExpression:function(e){return e.type==="SubExpression"||(e.type==="MustacheStatement"||e.type==="BlockStatement")&&!!(e.params&&e.params.length||e.hash)},scopedId:function(e){return/^\.|this\b/.test(e.original)},simpleId:function(e){return e.parts.length===1&&!KEe.helpers.scopedId(e)&&!e.depth}}};hP.default=KEe;XEe.exports=hP.default});var eCe=w((gP,ZEe)=>{"use strict";gP.__esModule=!0;var Qft=(function(){var t={trace:function(){},yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:function(s,o,i,a,c,l,u){var d=l.length-1;switch(c){case 1:return l[d-1];case 2:this.$=a.prepareProgram(l[d]);break;case 3:this.$=l[d];break;case 4:this.$=l[d];break;case 5:this.$=l[d];break;case 6:this.$=l[d];break;case 7:this.$=l[d];break;case 8:this.$=l[d];break;case 9:this.$={type:"CommentStatement",value:a.stripComment(l[d]),strip:a.stripFlags(l[d],l[d]),loc:a.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:l[d],value:l[d],loc:a.locInfo(this._$)};break;case 11:this.$=a.prepareRawBlock(l[d-2],l[d-1],l[d],this._$);break;case 12:this.$={path:l[d-3],params:l[d-2],hash:l[d-1]};break;case 13:this.$=a.prepareBlock(l[d-3],l[d-2],l[d-1],l[d],!1,this._$);break;case 14:this.$=a.prepareBlock(l[d-3],l[d-2],l[d-1],l[d],!0,this._$);break;case 15:this.$={open:l[d-5],path:l[d-4],params:l[d-3],hash:l[d-2],blockParams:l[d-1],strip:a.stripFlags(l[d-5],l[d])};break;case 16:this.$={path:l[d-4],params:l[d-3],hash:l[d-2],blockParams:l[d-1],strip:a.stripFlags(l[d-5],l[d])};break;case 17:this.$={path:l[d-4],params:l[d-3],hash:l[d-2],blockParams:l[d-1],strip:a.stripFlags(l[d-5],l[d])};break;case 18:this.$={strip:a.stripFlags(l[d-1],l[d-1]),program:l[d]};break;case 19:var p=a.prepareBlock(l[d-2],l[d-1],l[d],l[d],!1,this._$),m=a.prepareProgram([p],l[d-1].loc);m.chained=!0,this.$={strip:l[d-2].strip,program:m,chain:!0};break;case 20:this.$=l[d];break;case 21:this.$={path:l[d-1],strip:a.stripFlags(l[d-2],l[d])};break;case 22:this.$=a.prepareMustache(l[d-3],l[d-2],l[d-1],l[d-4],a.stripFlags(l[d-4],l[d]),this._$);break;case 23:this.$=a.prepareMustache(l[d-3],l[d-2],l[d-1],l[d-4],a.stripFlags(l[d-4],l[d]),this._$);break;case 24:this.$={type:"PartialStatement",name:l[d-3],params:l[d-2],hash:l[d-1],indent:"",strip:a.stripFlags(l[d-4],l[d]),loc:a.locInfo(this._$)};break;case 25:this.$=a.preparePartialBlock(l[d-2],l[d-1],l[d],this._$);break;case 26:this.$={path:l[d-3],params:l[d-2],hash:l[d-1],strip:a.stripFlags(l[d-4],l[d])};break;case 27:this.$=l[d];break;case 28:this.$=l[d];break;case 29:this.$={type:"SubExpression",path:l[d-3],params:l[d-2],hash:l[d-1],loc:a.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:l[d],loc:a.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:a.id(l[d-2]),value:l[d],loc:a.locInfo(this._$)};break;case 32:this.$=a.id(l[d-1]);break;case 33:this.$=l[d];break;case 34:this.$=l[d];break;case 35:this.$={type:"StringLiteral",value:l[d],original:l[d],loc:a.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(l[d]),original:Number(l[d]),loc:a.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:l[d]==="true",original:l[d]==="true",loc:a.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:a.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:a.locInfo(this._$)};break;case 40:this.$=l[d];break;case 41:this.$=l[d];break;case 42:this.$=a.preparePath(!0,l[d],this._$);break;case 43:this.$=a.preparePath(!1,l[d],this._$);break;case 44:l[d-2].push({part:a.id(l[d]),original:l[d],separator:l[d-1]}),this.$=l[d-2];break;case 45:this.$=[{part:a.id(l[d]),original:l[d]}];break;case 46:this.$=[];break;case 47:l[d-1].push(l[d]);break;case 48:this.$=[];break;case 49:l[d-1].push(l[d]);break;case 50:this.$=[];break;case 51:l[d-1].push(l[d]);break;case 58:this.$=[];break;case 59:l[d-1].push(l[d]);break;case 64:this.$=[];break;case 65:l[d-1].push(l[d]);break;case 70:this.$=[];break;case 71:l[d-1].push(l[d]);break;case 78:this.$=[];break;case 79:l[d-1].push(l[d]);break;case 82:this.$=[];break;case 83:l[d-1].push(l[d]);break;case 86:this.$=[];break;case 87:l[d-1].push(l[d]);break;case 90:this.$=[];break;case 91:l[d-1].push(l[d]);break;case 94:this.$=[];break;case 95:l[d-1].push(l[d]);break;case 98:this.$=[l[d]];break;case 99:l[d-1].push(l[d]);break;case 100:this.$=[l[d]];break;case 101:l[d-1].push(l[d]);break}},table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:function(s,o){throw new Error(s)},parse:function(s){var o=this,i=[0],a=[null],c=[],l=this.table,u="",d=0,p=0,m=0,h=2,y=1;this.lexer.setInput(s),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var I=this.lexer.yylloc;c.push(I);var x=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function b(it){i.length=i.length-2*it,a.length=a.length-it,c.length=c.length-it}function T(){var it;return it=o.lexer.lex()||1,typeof it!="number"&&(it=o.symbols_[it]||it),it}for(var _,U,O,z,de,De,Be={},ne,ge,G,se;;){if(O=i[i.length-1],this.defaultActions[O]?z=this.defaultActions[O]:((_===null||typeof _>"u")&&(_=T()),z=l[O]&&l[O][_]),typeof z>"u"||!z.length||!z[0]){var Ct="";if(!m){se=[];for(ne in l[O])this.terminals_[ne]&&ne>2&&se.push("'"+this.terminals_[ne]+"'");this.lexer.showPosition?Ct="Parse error on line "+(d+1)+`: +See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`))}i(rft,"logUnexpecedPropertyAccessOnce");function nft(){Object.keys(lP).forEach(function(t){delete lP[t]})}i(nft,"resetLoggedProperties")});var dP=b(Fc=>{"use strict";Fc.__esModule=!0;Fc.HandlebarsEnvironment=qV;function LEe(t){return t&&t.__esModule?t:{default:t}}i(LEe,"_interopRequireDefault");var Xm=Rs(),sft=Go(),FV=LEe(sft),oft=kV(),ift=_Ee(),aft=OV(),uP=LEe(aft),cft=MV(),lft="4.7.9";Fc.VERSION=lft;var uft=8;Fc.COMPILER_REVISION=uft;var dft=7;Fc.LAST_COMPATIBLE_COMPILER_REVISION=dft;var pft={1:"<= 1.0.rc.2",2:"== 1.0.0-rc.3",3:"== 1.0.0-rc.4",4:"== 1.x.x",5:"== 2.0.0-alpha.x",6:">= 2.0.0-beta.1",7:">= 4.0.0 <4.3.0",8:">= 4.3.0"};Fc.REVISION_CHANGES=pft;var UV="[object Object]";function qV(t,e,r){this.helpers=t||{},this.partials=e||{},this.decorators=r||{},oft.registerDefaultHelpers(this),ift.registerDefaultDecorators(this)}i(qV,"HandlebarsEnvironment");qV.prototype={constructor:qV,logger:uP.default,log:uP.default.log,registerHelper:i(function(e,r){if(Xm.toString.call(e)===UV){if(r)throw new FV.default("Arg not supported with multiple helpers");Xm.extend(this.helpers,e)}else this.helpers[e]=r},"registerHelper"),unregisterHelper:i(function(e){delete this.helpers[e]},"unregisterHelper"),registerPartial:i(function(e,r){if(Xm.toString.call(e)===UV)Xm.extend(this.partials,e);else{if(typeof r>"u")throw new FV.default('Attempting to register a partial called "'+e+'" as undefined');this.partials[e]=r}},"registerPartial"),unregisterPartial:i(function(e){delete this.partials[e]},"unregisterPartial"),registerDecorator:i(function(e,r){if(Xm.toString.call(e)===UV){if(r)throw new FV.default("Arg not supported with multiple decorators");Xm.extend(this.decorators,e)}else this.decorators[e]=r},"registerDecorator"),unregisterDecorator:i(function(e){delete this.decorators[e]},"unregisterDecorator"),resetLoggedPropertyAccesses:i(function(){cft.resetLoggedProperties()},"resetLoggedPropertyAccesses")};var mft=uP.default.log;Fc.log=mft;Fc.createFrame=Xm.createFrame;Fc.logger=uP.default});var MEe=b((pP,OEe)=>{"use strict";pP.__esModule=!0;function $V(t){this.string=t}i($V,"SafeString");$V.prototype.toString=$V.prototype.toHTML=function(){return""+this.string};pP.default=$V;OEe.exports=pP.default});var FEe=b(GV=>{"use strict";GV.__esModule=!0;GV.wrapHelper=fft;function fft(t,e){if(typeof t!="function")return t;var r=i(function(){var s=arguments[arguments.length-1];return arguments[arguments.length-1]=e(s),t.apply(this,arguments)},"wrapper");return r}i(fft,"wrapHelper")});var zEe=b(Fd=>{"use strict";Fd.__esModule=!0;Fd.checkRevision=Cft;Fd.template=Ift;Fd.wrapProgram=mP;Fd.resolvePartial=xft;Fd.invokePartial=wft;Fd.noop=GEe;function Aft(t){return t&&t.__esModule?t:{default:t}}i(Aft,"_interopRequireDefault");function hft(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}i(hft,"_interopRequireWildcard");var gft=Rs(),Eg=hft(gft),yft=Go(),pu=Aft(yft),mu=dP(),UEe=kV(),Eft=FEe(),qEe=MV();function Cft(t){var e=t&&t[0]||1,r=mu.COMPILER_REVISION;if(!(e>=mu.LAST_COMPATIBLE_COMPILER_REVISION&&e<=mu.COMPILER_REVISION))if(e{"use strict";AP.__esModule=!0;AP.default=function(t){(function(){typeof globalThis!="object"&&(Object.prototype.__defineGetter__("__magic__",function(){return this}),__magic__.globalThis=__magic__,delete Object.prototype.__magic__)})();var e=globalThis.Handlebars;t.noConflict=function(){return globalThis.Handlebars===t&&(globalThis.Handlebars=e),t}};VEe.exports=AP.default});var KEe=b((hP,JEe)=>{"use strict";hP.__esModule=!0;function VV(t){return t&&t.__esModule?t:{default:t}}i(VV,"_interopRequireDefault");function YV(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}i(YV,"_interopRequireWildcard");var Bft=dP(),YEe=YV(Bft),Rft=MEe(),Nft=VV(Rft),Tft=Go(),Pft=VV(Tft),vft=Rs(),zV=YV(vft),_ft=zEe(),WEe=YV(_ft),Qft=HV(),Dft=VV(Qft);function jEe(){var t=new YEe.HandlebarsEnvironment;return zV.extend(t,YEe),t.SafeString=Nft.default,t.Exception=Pft.default,t.Utils=zV,t.escapeExpression=zV.escapeExpression,t.VM=WEe,t.template=function(e){return WEe.template(e,t)},t}i(jEe,"create");var rx=jEe();rx.create=jEe;Dft.default(rx);rx.default=rx;hP.default=rx;JEe.exports=hP.default});var WV=b((gP,ZEe)=>{"use strict";gP.__esModule=!0;var XEe={helpers:{helperExpression:i(function(e){return e.type==="SubExpression"||(e.type==="MustacheStatement"||e.type==="BlockStatement")&&!!(e.params&&e.params.length||e.hash)},"helperExpression"),scopedId:i(function(e){return/^\.|this\b/.test(e.original)},"scopedId"),simpleId:i(function(e){return e.parts.length===1&&!XEe.helpers.scopedId(e)&&!e.depth},"simpleId")}};gP.default=XEe;ZEe.exports=gP.default});var tCe=b((yP,eCe)=>{"use strict";yP.__esModule=!0;var kft=(function(){var t={trace:i(function(){},"trace"),yy:{},symbols_:{error:2,root:3,program:4,EOF:5,program_repetition0:6,statement:7,mustache:8,block:9,rawBlock:10,partial:11,partialBlock:12,content:13,COMMENT:14,CONTENT:15,openRawBlock:16,rawBlock_repetition0:17,END_RAW_BLOCK:18,OPEN_RAW_BLOCK:19,helperName:20,openRawBlock_repetition0:21,openRawBlock_option0:22,CLOSE_RAW_BLOCK:23,openBlock:24,block_option0:25,closeBlock:26,openInverse:27,block_option1:28,OPEN_BLOCK:29,openBlock_repetition0:30,openBlock_option0:31,openBlock_option1:32,CLOSE:33,OPEN_INVERSE:34,openInverse_repetition0:35,openInverse_option0:36,openInverse_option1:37,openInverseChain:38,OPEN_INVERSE_CHAIN:39,openInverseChain_repetition0:40,openInverseChain_option0:41,openInverseChain_option1:42,inverseAndProgram:43,INVERSE:44,inverseChain:45,inverseChain_option0:46,OPEN_ENDBLOCK:47,OPEN:48,mustache_repetition0:49,mustache_option0:50,OPEN_UNESCAPED:51,mustache_repetition1:52,mustache_option1:53,CLOSE_UNESCAPED:54,OPEN_PARTIAL:55,partialName:56,partial_repetition0:57,partial_option0:58,openPartialBlock:59,OPEN_PARTIAL_BLOCK:60,openPartialBlock_repetition0:61,openPartialBlock_option0:62,param:63,sexpr:64,OPEN_SEXPR:65,sexpr_repetition0:66,sexpr_option0:67,CLOSE_SEXPR:68,hash:69,hash_repetition_plus0:70,hashSegment:71,ID:72,EQUALS:73,blockParams:74,OPEN_BLOCK_PARAMS:75,blockParams_repetition_plus0:76,CLOSE_BLOCK_PARAMS:77,path:78,dataName:79,STRING:80,NUMBER:81,BOOLEAN:82,UNDEFINED:83,NULL:84,DATA:85,pathSegments:86,SEP:87,$accept:0,$end:1},terminals_:{2:"error",5:"EOF",14:"COMMENT",15:"CONTENT",18:"END_RAW_BLOCK",19:"OPEN_RAW_BLOCK",23:"CLOSE_RAW_BLOCK",29:"OPEN_BLOCK",33:"CLOSE",34:"OPEN_INVERSE",39:"OPEN_INVERSE_CHAIN",44:"INVERSE",47:"OPEN_ENDBLOCK",48:"OPEN",51:"OPEN_UNESCAPED",54:"CLOSE_UNESCAPED",55:"OPEN_PARTIAL",60:"OPEN_PARTIAL_BLOCK",65:"OPEN_SEXPR",68:"CLOSE_SEXPR",72:"ID",73:"EQUALS",75:"OPEN_BLOCK_PARAMS",77:"CLOSE_BLOCK_PARAMS",80:"STRING",81:"NUMBER",82:"BOOLEAN",83:"UNDEFINED",84:"NULL",85:"DATA",87:"SEP"},productions_:[0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],performAction:i(function(s,o,a,c,l,u,d){var p=u.length-1;switch(l){case 1:return u[p-1];case 2:this.$=c.prepareProgram(u[p]);break;case 3:this.$=u[p];break;case 4:this.$=u[p];break;case 5:this.$=u[p];break;case 6:this.$=u[p];break;case 7:this.$=u[p];break;case 8:this.$=u[p];break;case 9:this.$={type:"CommentStatement",value:c.stripComment(u[p]),strip:c.stripFlags(u[p],u[p]),loc:c.locInfo(this._$)};break;case 10:this.$={type:"ContentStatement",original:u[p],value:u[p],loc:c.locInfo(this._$)};break;case 11:this.$=c.prepareRawBlock(u[p-2],u[p-1],u[p],this._$);break;case 12:this.$={path:u[p-3],params:u[p-2],hash:u[p-1]};break;case 13:this.$=c.prepareBlock(u[p-3],u[p-2],u[p-1],u[p],!1,this._$);break;case 14:this.$=c.prepareBlock(u[p-3],u[p-2],u[p-1],u[p],!0,this._$);break;case 15:this.$={open:u[p-5],path:u[p-4],params:u[p-3],hash:u[p-2],blockParams:u[p-1],strip:c.stripFlags(u[p-5],u[p])};break;case 16:this.$={path:u[p-4],params:u[p-3],hash:u[p-2],blockParams:u[p-1],strip:c.stripFlags(u[p-5],u[p])};break;case 17:this.$={path:u[p-4],params:u[p-3],hash:u[p-2],blockParams:u[p-1],strip:c.stripFlags(u[p-5],u[p])};break;case 18:this.$={strip:c.stripFlags(u[p-1],u[p-1]),program:u[p]};break;case 19:var m=c.prepareBlock(u[p-2],u[p-1],u[p],u[p],!1,this._$),f=c.prepareProgram([m],u[p-1].loc);f.chained=!0,this.$={strip:u[p-2].strip,program:f,chain:!0};break;case 20:this.$=u[p];break;case 21:this.$={path:u[p-1],strip:c.stripFlags(u[p-2],u[p])};break;case 22:this.$=c.prepareMustache(u[p-3],u[p-2],u[p-1],u[p-4],c.stripFlags(u[p-4],u[p]),this._$);break;case 23:this.$=c.prepareMustache(u[p-3],u[p-2],u[p-1],u[p-4],c.stripFlags(u[p-4],u[p]),this._$);break;case 24:this.$={type:"PartialStatement",name:u[p-3],params:u[p-2],hash:u[p-1],indent:"",strip:c.stripFlags(u[p-4],u[p]),loc:c.locInfo(this._$)};break;case 25:this.$=c.preparePartialBlock(u[p-2],u[p-1],u[p],this._$);break;case 26:this.$={path:u[p-3],params:u[p-2],hash:u[p-1],strip:c.stripFlags(u[p-4],u[p])};break;case 27:this.$=u[p];break;case 28:this.$=u[p];break;case 29:this.$={type:"SubExpression",path:u[p-3],params:u[p-2],hash:u[p-1],loc:c.locInfo(this._$)};break;case 30:this.$={type:"Hash",pairs:u[p],loc:c.locInfo(this._$)};break;case 31:this.$={type:"HashPair",key:c.id(u[p-2]),value:u[p],loc:c.locInfo(this._$)};break;case 32:this.$=c.id(u[p-1]);break;case 33:this.$=u[p];break;case 34:this.$=u[p];break;case 35:this.$={type:"StringLiteral",value:u[p],original:u[p],loc:c.locInfo(this._$)};break;case 36:this.$={type:"NumberLiteral",value:Number(u[p]),original:Number(u[p]),loc:c.locInfo(this._$)};break;case 37:this.$={type:"BooleanLiteral",value:u[p]==="true",original:u[p]==="true",loc:c.locInfo(this._$)};break;case 38:this.$={type:"UndefinedLiteral",original:void 0,value:void 0,loc:c.locInfo(this._$)};break;case 39:this.$={type:"NullLiteral",original:null,value:null,loc:c.locInfo(this._$)};break;case 40:this.$=u[p];break;case 41:this.$=u[p];break;case 42:this.$=c.preparePath(!0,u[p],this._$);break;case 43:this.$=c.preparePath(!1,u[p],this._$);break;case 44:u[p-2].push({part:c.id(u[p]),original:u[p],separator:u[p-1]}),this.$=u[p-2];break;case 45:this.$=[{part:c.id(u[p]),original:u[p]}];break;case 46:this.$=[];break;case 47:u[p-1].push(u[p]);break;case 48:this.$=[];break;case 49:u[p-1].push(u[p]);break;case 50:this.$=[];break;case 51:u[p-1].push(u[p]);break;case 58:this.$=[];break;case 59:u[p-1].push(u[p]);break;case 64:this.$=[];break;case 65:u[p-1].push(u[p]);break;case 70:this.$=[];break;case 71:u[p-1].push(u[p]);break;case 78:this.$=[];break;case 79:u[p-1].push(u[p]);break;case 82:this.$=[];break;case 83:u[p-1].push(u[p]);break;case 86:this.$=[];break;case 87:u[p-1].push(u[p]);break;case 90:this.$=[];break;case 91:u[p-1].push(u[p]);break;case 94:this.$=[];break;case 95:u[p-1].push(u[p]);break;case 98:this.$=[u[p]];break;case 99:u[p-1].push(u[p]);break;case 100:this.$=[u[p]];break;case 101:u[p-1].push(u[p]);break}},"anonymous"),table:[{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],defaultActions:{4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},parseError:i(function(s,o){throw new Error(s)},"parseError"),parse:i(function(s){var o=this,a=[0],c=[null],l=[],u=this.table,d="",p=0,m=0,f=0,g=2,E=1;this.lexer.setInput(s),this.lexer.yy=this.yy,this.yy.lexer=this.lexer,this.yy.parser=this,typeof this.lexer.yylloc>"u"&&(this.lexer.yylloc={});var x=this.lexer.yylloc;l.push(x);var w=this.lexer.options&&this.lexer.options.ranges;typeof this.yy.parseError=="function"&&(this.parseError=this.yy.parseError);function S(at){a.length=a.length-2*at,c.length=c.length-at,l.length=l.length-at}i(S,"popStack");function P(){var at;return at=o.lexer.lex()||1,typeof at!="number"&&(at=o.symbols_[at]||at),at}i(P,"lex");for(var Q,q,M,V,pe,ke,Re={},se,ye,H,oe;;){if(M=a[a.length-1],this.defaultActions[M]?V=this.defaultActions[M]:((Q===null||typeof Q>"u")&&(Q=P()),V=u[M]&&u[M][Q]),typeof V>"u"||!V.length||!V[0]){var It="";if(!f){oe=[];for(se in u[M])this.terminals_[se]&&se>2&&oe.push("'"+this.terminals_[se]+"'");this.lexer.showPosition?It="Parse error on line "+(p+1)+`: `+this.lexer.showPosition()+` -Expecting `+se.join(", ")+", got '"+(this.terminals_[_]||_)+"'":Ct="Parse error on line "+(d+1)+": Unexpected "+(_==1?"end of input":"'"+(this.terminals_[_]||_)+"'"),this.parseError(Ct,{text:this.lexer.match,token:this.terminals_[_]||_,line:this.lexer.yylineno,loc:I,expected:se})}}if(z[0]instanceof Array&&z.length>1)throw new Error("Parse Error: multiple actions possible at state: "+O+", token: "+_);switch(z[0]){case 1:i.push(_),a.push(this.lexer.yytext),c.push(this.lexer.yylloc),i.push(z[1]),_=null,U?(_=U,U=null):(p=this.lexer.yyleng,u=this.lexer.yytext,d=this.lexer.yylineno,I=this.lexer.yylloc,m>0&&m--);break;case 2:if(ge=this.productions_[z[1]][1],Be.$=a[a.length-ge],Be._$={first_line:c[c.length-(ge||1)].first_line,last_line:c[c.length-1].last_line,first_column:c[c.length-(ge||1)].first_column,last_column:c[c.length-1].last_column},x&&(Be._$.range=[c[c.length-(ge||1)].range[0],c[c.length-1].range[1]]),De=this.performAction.call(Be,u,p,d,this.yy,z[1],a,c),typeof De<"u")return De;ge&&(i=i.slice(0,-1*ge*2),a=a.slice(0,-1*ge),c=c.slice(0,-1*ge)),i.push(this.productions_[z[1]][0]),a.push(Be.$),c.push(Be._$),G=l[i[i.length-2]][i[i.length-1]],i.push(G);break;case 3:return!0}}return!0}},e=(function(){var n={EOF:1,parseError:function(o,i){if(this.yy.parser)this.yy.parser.parseError(o,i);else throw new Error(o)},setInput:function(o){return this._input=o,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var i=o.match(/(?:\r\n?|\n).*/g);return i?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},unput:function(o){var i=o.length,a=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-i-1),this.offset-=i;var c=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),a.length-1&&(this.yylineno-=a.length-1);var l=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:a?(a.length===c.length?this.yylloc.first_column:0)+c[c.length-a.length].length-a[0].length:this.yylloc.first_column-i},this.options.ranges&&(this.yylloc.range=[l[0],l[0]+this.yyleng-i]),this},more:function(){return this._more=!0,this},less:function(o){this.unput(this.match.slice(o))},pastInput:function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var o=this.pastInput(),i=new Array(o.length+1).join("-");return o+this.upcomingInput()+` -`+i+"^"},next:function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,i,a,c,l,u;this._more||(this.yytext="",this.match="");for(var d=this._currentRules(),p=0;pi[0].length)&&(i=a,c=p,!this.options.flex)));p++);return i?(u=i[0].match(/(?:\r\n?|\n).*/g),u&&(this.yylineno+=u.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:u?u[u.length-1].length-u[u.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+i[0].length},this.yytext+=i[0],this.match+=i[0],this.matches=i,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(i[0].length),this.matched+=i[0],o=this.performAction.call(this,this.yy,this,d[c],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. -`+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var o=this.next();return typeof o<"u"?o:this.lex()},begin:function(o){this.conditionStack.push(o)},popState:function(){return this.conditionStack.pop()},_currentRules:function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},topState:function(){return this.conditionStack[this.conditionStack.length-2]},pushState:function(o){this.begin(o)}};return n.options={},n.performAction=function(o,i,a,c){function l(d,p){return i.yytext=i.yytext.substring(d,i.yyleng-p+d)}var u=c;switch(a){case 0:if(i.yytext.slice(-2)==="\\\\"?(l(0,1),this.begin("mu")):i.yytext.slice(-1)==="\\"?(l(0,1),this.begin("emu")):this.begin("mu"),i.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(l(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(i.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return i.yytext=l(1,2).replace(/\\"/g,'"'),80;break;case 32:return i.yytext=l(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return i.yytext=i.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n})();t.lexer=e;function r(){this.yy={}}return r.prototype=t,t.Parser=r,new r})();gP.default=Qft;ZEe.exports=gP.default});var IP=w((CP,nCe)=>{"use strict";CP.__esModule=!0;function Dft(t){return t&&t.__esModule?t:{default:t}}var kft=$o(),WV=Dft(kft);function yP(){this.parents=[]}yP.prototype={constructor:yP,mutating:!1,acceptKey:function(e,r){var n=this.accept(e[r]);if(this.mutating){if(n&&!yP.prototype[n.type])throw new WV.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+e.type);e[r]=n}},acceptRequired:function(e,r){if(this.acceptKey(e,r),!e[r])throw new WV.default(e.type+" requires "+r)},acceptArray:function(e){for(var r=0,n=e.length;r{"use strict";xP.__esModule=!0;function Lft(t){return t&&t.__esModule?t:{default:t}}var Oft=IP(),Mft=Lft(Oft);function Fc(){var t=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=t}Fc.prototype=new Mft.default;Fc.prototype.Program=function(t){var e=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=t.body,s=0,o=n.length;s{"use strict";Ni.__esModule=!0;Ni.SourceLocation=qft;Ni.id=$ft;Ni.stripFlags=Gft;Ni.stripComment=Hft;Ni.preparePath=zft;Ni.prepareMustache=Vft;Ni.prepareRawBlock=Yft;Ni.prepareBlock=Wft;Ni.prepareProgram=jft;Ni.preparePartialBlock=Jft;function Fft(t){return t&&t.__esModule?t:{default:t}}var Uft=$o(),KV=Fft(Uft);function XV(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r={loc:t.path.loc};throw new KV.default(t.path.original+" doesn't match "+e,r)}}function qft(t,e){this.source=t,this.start={line:e.first_line,column:e.first_column},this.end={line:e.last_line,column:e.last_column}}function $ft(t){return/^\[.*\]$/.test(t)?t.substring(1,t.length-1):t}function Gft(t,e){return{open:t.charAt(2)==="~",close:e.charAt(e.length-3)==="~"}}function Hft(t){return t.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}function zft(t,e,r){r=this.locInfo(r);for(var n=t?"@":"",s=[],o=0,i=0,a=e.length;i0)throw new KV.default("Invalid path: "+n,{loc:r});c===".."&&o++}else s.push(c)}return{type:"PathExpression",data:t,depth:o,parts:s,original:n,loc:r}}function Vft(t,e,r,n,s,o){var i=n.charAt(3)||n.charAt(2),a=i!=="{"&&i!=="&",c=/\*/.test(n);return{type:c?"Decorator":"MustacheStatement",path:t,params:e,hash:r,escaped:a,strip:s,loc:this.locInfo(o)}}function Yft(t,e,r,n){XV(t,r),n=this.locInfo(n);var s={type:"Program",body:e,strip:{},loc:n};return{type:"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:s,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}function Wft(t,e,r,n,s,o){n&&n.path&&XV(t,n);var i=/\*/.test(t.open);e.blockParams=t.blockParams;var a=void 0,c=void 0;if(r){if(i)throw new KV.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),c=r.strip,a=r.program}return s&&(s=a,a=e,e=s),{type:i?"DecoratorBlock":"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:e,inverse:a,openStrip:t.strip,inverseStrip:c,closeStrip:n&&n.strip,loc:this.locInfo(o)}}function jft(t,e){if(!e&&t.length){var r=t[0].loc,n=t[t.length-1].loc;r&&n&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:t,strip:{},loc:e}}function Jft(t,e,r,n){return XV(t,r),{type:"PartialBlockStatement",name:t.path,params:t.params,hash:t.hash,program:e,openStrip:t.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}});var cCe=w(rx=>{"use strict";rx.__esModule=!0;rx.parseWithoutProcessing=aCe;rx.parse=oAt;function Kft(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}function t4(t){return t&&t.__esModule?t:{default:t}}var Xft=eCe(),ZV=t4(Xft),Zft=oCe(),eAt=t4(Zft),tAt=iCe(),rAt=Kft(tAt),nAt=$o(),tx=t4(nAt),sAt=Bs();rx.parser=ZV.default;var wP={};sAt.extend(wP,rAt);function aCe(t,e){if(t.type==="Program")return iAt(t),t;ZV.default.yy=wP,wP.locInfo=function(n){return new wP.SourceLocation(e&&e.srcName,n)};var r=ZV.default.parse(t);return r}function oAt(t,e){var r=aCe(t,e),n=new eAt.default(e);return n.accept(r)}function iAt(t){e4(t)}function e4(t){if(t!=null){if(Array.isArray(t)){t.forEach(e4);return}if(typeof t=="object"){if(t.type==="PathExpression"){if(!aAt(t.depth))throw new tx.default("Invalid AST: PathExpression.depth must be an integer");if(!Array.isArray(t.parts))throw new tx.default("Invalid AST: PathExpression.parts must be an array");for(var e=0;e=0}});var pCe=w(ix=>{"use strict";ix.__esModule=!0;ix.Compiler=r4;ix.precompile=dAt;ix.compile=pAt;function uCe(t){return t&&t.__esModule?t:{default:t}}var cAt=$o(),sx=uCe(cAt),ox=Bs(),lAt=YV(),nx=uCe(lAt),uAt=[].slice;function r4(){}r4.prototype={compiler:r4,equals:function(e){var r=this.opcodes.length;if(e.opcodes.length!==r)return!1;for(var n=0;n1)throw new sx.default("Unsupported number of partial arguments: "+n.length,e);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var s=e.name.original,o=e.name.type==="SubExpression";o&&this.accept(e.name),this.setupFullMustacheParams(e,r,void 0,!0);var i=e.indent||"";this.options.preventIndent&&i&&(this.opcode("appendContent",i),i=""),this.opcode("invokePartial",o,s,i),this.opcode("append")},PartialBlockStatement:function(e){this.PartialStatement(e)},MustacheStatement:function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},Decorator:function(e){this.DecoratorBlock(e)},ContentStatement:function(e){e.value&&this.opcode("appendContent",e.value)},CommentStatement:function(){},SubExpression:function(e){lCe(e);var r=this.classifySexpr(e);r==="simple"?this.simpleSexpr(e):r==="helper"?this.helperSexpr(e):this.ambiguousSexpr(e)},ambiguousSexpr:function(e,r,n){var s=e.path,o=s.parts[0],i=r!=null||n!=null;this.opcode("getContext",s.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),s.strict=!0,this.accept(s),this.opcode("invokeAmbiguous",o,i)},simpleSexpr:function(e){var r=e.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},helperSexpr:function(e,r,n){var s=this.setupFullMustacheParams(e,r,n),o=e.path,i=o.parts[0];if(this.options.knownHelpers[i])this.opcode("invokeKnownHelper",s.length,i);else{if(this.options.knownHelpersOnly)throw new sx.default("You specified knownHelpersOnly, but used the unknown helper "+i,e);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",s.length,o.original,nx.default.helpers.simpleId(o))}},PathExpression:function(e){this.addDepth(e.depth),this.opcode("getContext",e.depth);var r=e.parts[0],n=nx.default.helpers.scopedId(e),s=!e.depth&&!n&&this.blockParamIndex(r);s?this.opcode("lookupBlockParam",s,e.parts):r?e.data?(this.options.data=!0,this.opcode("lookupData",e.depth,e.parts,e.strict)):this.opcode("lookupOnContext",e.parts,e.falsy,e.strict,n):this.opcode("pushContext")},StringLiteral:function(e){this.opcode("pushString",e.value)},NumberLiteral:function(e){this.opcode("pushLiteral",e.value)},BooleanLiteral:function(e){this.opcode("pushLiteral",e.value)},UndefinedLiteral:function(){this.opcode("pushLiteral","undefined")},NullLiteral:function(){this.opcode("pushLiteral","null")},Hash:function(e){var r=e.pairs,n=0,s=r.length;for(this.opcode("pushHash");n=0)return[r,o]}}};function dAt(t,e,r){if(t==null||typeof t!="string"&&t.type!=="Program")throw new sx.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+t);e=e||{},"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var n=r.parse(t,e),s=new r.Compiler().compile(n,e);return new r.JavaScriptCompiler().compile(s,e)}function pAt(t,e,r){if(e===void 0&&(e={}),t==null||typeof t!="string"&&t.type!=="Program")throw new sx.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+t);e=ox.extend({},e),"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var n=void 0;function s(){var i=r.parse(t,e),a=new r.Compiler().compile(i,e),c=new r.JavaScriptCompiler().compile(a,e,void 0,!0);return r.template(c)}function o(i,a){return n||(n=s()),n.call(this,i,a)}return o._setup=function(i){return n||(n=s()),n._setup(i)},o._child=function(i,a,c,l){return n||(n=s()),n._child(i,a,c,l)},o}function dCe(t,e){if(t===e)return!0;if(ox.isArray(t)&&ox.isArray(e)&&t.length===e.length){for(var r=0;r{var mCe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");n4.encode=function(t){if(0<=t&&t{var ACe=fCe(),s4=5,hCe=1<>1;return e?-r:r}o4.encode=function(e){var r="",n,s=mAt(e);do n=s&gCe,s>>>=s4,s>0&&(n|=yCe),r+=ACe.encode(n);while(s>0);return r};o4.decode=function(e,r,n){var s=e.length,o=0,i=0,a,c;do{if(r>=s)throw new Error("Expected more digits in base 64 VLQ value.");if(c=ACe.decode(e.charCodeAt(r++)),c===-1)throw new Error("Invalid base64 digit: "+e.charAt(r-1));a=!!(c&yCe),c&=gCe,o=o+(c<{function AAt(t,e,r){if(e in t)return t[e];if(arguments.length===3)return r;throw new Error('"'+e+'" is a required argument.')}jn.getArg=AAt;var ECe=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,hAt=/^data:.+\,.+$/;function ax(t){var e=t.match(ECe);return e?{scheme:e[1],auth:e[2],host:e[3],port:e[4],path:e[5]}:null}jn.urlParse=ax;function Eg(t){var e="";return t.scheme&&(e+=t.scheme+":"),e+="//",t.auth&&(e+=t.auth+"@"),t.host&&(e+=t.host),t.port&&(e+=":"+t.port),t.path&&(e+=t.path),e}jn.urlGenerate=Eg;function a4(t){var e=t,r=ax(t);if(r){if(!r.path)return t;e=r.path}for(var n=jn.isAbsolute(e),s=e.split(/\/+/),o,i=0,a=s.length-1;a>=0;a--)o=s[a],o==="."?s.splice(a,1):o===".."?i++:i>0&&(o===""?(s.splice(a+1,i),i=0):(s.splice(a,2),i--));return e=s.join("/"),e===""&&(e=n?"/":"."),r?(r.path=e,Eg(r)):e}jn.normalize=a4;function CCe(t,e){t===""&&(t="."),e===""&&(e=".");var r=ax(e),n=ax(t);if(n&&(t=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Eg(r);if(r||e.match(hAt))return e;if(n&&!n.host&&!n.path)return n.host=e,Eg(n);var s=e.charAt(0)==="/"?e:a4(t.replace(/\/+$/,"")+"/"+e);return n?(n.path=s,Eg(n)):s}jn.join=CCe;jn.isAbsolute=function(t){return t.charAt(0)==="/"||ECe.test(t)};function gAt(t,e){t===""&&(t="."),t=t.replace(/\/$/,"");for(var r=0;e.indexOf(t+"/")!==0;){var n=t.lastIndexOf("/");if(n<0||(t=t.slice(0,n),t.match(/^([^\/]+:\/)?\/*$/)))return e;++r}return Array(r+1).join("../")+e.substr(t.length+1)}jn.relative=gAt;var ICe=(function(){var t=Object.create(null);return!("__proto__"in t)})();function xCe(t){return t}function yAt(t){return wCe(t)?"$"+t:t}jn.toSetString=ICe?xCe:yAt;function EAt(t){return wCe(t)?t.slice(1):t}jn.fromSetString=ICe?xCe:EAt;function wCe(t){if(!t)return!1;var e=t.length;if(e<9||t.charCodeAt(e-1)!==95||t.charCodeAt(e-2)!==95||t.charCodeAt(e-3)!==111||t.charCodeAt(e-4)!==116||t.charCodeAt(e-5)!==111||t.charCodeAt(e-6)!==114||t.charCodeAt(e-7)!==112||t.charCodeAt(e-8)!==95||t.charCodeAt(e-9)!==95)return!1;for(var r=e-10;r>=0;r--)if(t.charCodeAt(r)!==36)return!1;return!0}function CAt(t,e,r){var n=Cg(t.source,e.source);return n!==0||(n=t.originalLine-e.originalLine,n!==0)||(n=t.originalColumn-e.originalColumn,n!==0||r)||(n=t.generatedColumn-e.generatedColumn,n!==0)||(n=t.generatedLine-e.generatedLine,n!==0)?n:Cg(t.name,e.name)}jn.compareByOriginalPositions=CAt;function IAt(t,e,r){var n=t.generatedLine-e.generatedLine;return n!==0||(n=t.generatedColumn-e.generatedColumn,n!==0||r)||(n=Cg(t.source,e.source),n!==0)||(n=t.originalLine-e.originalLine,n!==0)||(n=t.originalColumn-e.originalColumn,n!==0)?n:Cg(t.name,e.name)}jn.compareByGeneratedPositionsDeflated=IAt;function Cg(t,e){return t===e?0:t===null?1:e===null?-1:t>e?1:-1}function xAt(t,e){var r=t.generatedLine-e.generatedLine;return r!==0||(r=t.generatedColumn-e.generatedColumn,r!==0)||(r=Cg(t.source,e.source),r!==0)||(r=t.originalLine-e.originalLine,r!==0)||(r=t.originalColumn-e.originalColumn,r!==0)?r:Cg(t.name,e.name)}jn.compareByGeneratedPositionsInflated=xAt;function wAt(t){return JSON.parse(t.replace(/^\)]}'[^\n]*\n/,""))}jn.parseSourceMapInput=wAt;function bAt(t,e,r){if(e=e||"",t&&(t[t.length-1]!=="/"&&e[0]!=="/"&&(t+="/"),e=t+e),r){var n=ax(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var s=n.path.lastIndexOf("/");s>=0&&(n.path=n.path.substring(0,s+1))}e=CCe(Eg(n),e)}return a4(e)}jn.computeSourceURL=bAt});var u4=w(bCe=>{var c4=Ig(),l4=Object.prototype.hasOwnProperty,Zm=typeof Map<"u";function mu(){this._array=[],this._set=Zm?new Map:Object.create(null)}mu.fromArray=function(e,r){for(var n=new mu,s=0,o=e.length;s=0)return r}else{var n=c4.toSetString(e);if(l4.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')};mu.prototype.at=function(e){if(e>=0&&e{var SCe=Ig();function SAt(t,e){var r=t.generatedLine,n=e.generatedLine,s=t.generatedColumn,o=e.generatedColumn;return n>r||n==r&&o>=s||SCe.compareByGeneratedPositionsInflated(t,e)<=0}function bP(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}bP.prototype.unsortedForEach=function(e,r){this._array.forEach(e,r)};bP.prototype.add=function(e){SAt(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))};bP.prototype.toArray=function(){return this._sorted||(this._array.sort(SCe.compareByGeneratedPositionsInflated),this._sorted=!0),this._array};BCe.MappingList=bP});var d4=w(NCe=>{var cx=i4(),Jr=Ig(),SP=u4().ArraySet,BAt=RCe().MappingList;function Ti(t){t||(t={}),this._file=Jr.getArg(t,"file",null),this._sourceRoot=Jr.getArg(t,"sourceRoot",null),this._skipValidation=Jr.getArg(t,"skipValidation",!1),this._sources=new SP,this._names=new SP,this._mappings=new BAt,this._sourcesContents=null}Ti.prototype._version=3;Ti.fromSourceMap=function(e){var r=e.sourceRoot,n=new Ti({file:e.file,sourceRoot:r});return e.eachMapping(function(s){var o={generated:{line:s.generatedLine,column:s.generatedColumn}};s.source!=null&&(o.source=s.source,r!=null&&(o.source=Jr.relative(r,o.source)),o.original={line:s.originalLine,column:s.originalColumn},s.name!=null&&(o.name=s.name)),n.addMapping(o)}),e.sources.forEach(function(s){var o=s;r!==null&&(o=Jr.relative(r,s)),n._sources.has(o)||n._sources.add(o);var i=e.sourceContentFor(s);i!=null&&n.setSourceContent(s,i)}),n};Ti.prototype.addMapping=function(e){var r=Jr.getArg(e,"generated"),n=Jr.getArg(e,"original",null),s=Jr.getArg(e,"source",null),o=Jr.getArg(e,"name",null);this._skipValidation||this._validateMapping(r,n,s,o),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:s,name:o})};Ti.prototype.setSourceContent=function(e,r){var n=e;this._sourceRoot!=null&&(n=Jr.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Jr.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Jr.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))};Ti.prototype.applySourceMap=function(e,r,n){var s=r;if(r==null){if(e.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);s=e.file}var o=this._sourceRoot;o!=null&&(s=Jr.relative(o,s));var i=new SP,a=new SP;this._mappings.unsortedForEach(function(c){if(c.source===s&&c.originalLine!=null){var l=e.originalPositionFor({line:c.originalLine,column:c.originalColumn});l.source!=null&&(c.source=l.source,n!=null&&(c.source=Jr.join(n,c.source)),o!=null&&(c.source=Jr.relative(o,c.source)),c.originalLine=l.line,c.originalColumn=l.column,l.name!=null&&(c.name=l.name))}var u=c.source;u!=null&&!i.has(u)&&i.add(u);var d=c.name;d!=null&&!a.has(d)&&a.add(d)},this),this._sources=i,this._names=a,e.sources.forEach(function(c){var l=e.sourceContentFor(c);l!=null&&(n!=null&&(c=Jr.join(n,c)),o!=null&&(c=Jr.relative(o,c)),this.setSourceContent(c,l))},this)};Ti.prototype._validateMapping=function(e,r,n,s){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!r&&!n&&!s)){if(e&&"line"in e&&"column"in e&&r&&"line"in r&&"column"in r&&e.line>0&&e.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:r,name:s}))}};Ti.prototype._serializeMappings=function(){for(var e=0,r=1,n=0,s=0,o=0,i=0,a="",c,l,u,d,p=this._mappings.toArray(),m=0,h=p.length;m0){if(!Jr.compareByGeneratedPositionsInflated(l,p[m-1]))continue;c+=","}c+=cx.encode(l.generatedColumn-e),e=l.generatedColumn,l.source!=null&&(d=this._sources.indexOf(l.source),c+=cx.encode(d-i),i=d,c+=cx.encode(l.originalLine-1-s),s=l.originalLine-1,c+=cx.encode(l.originalColumn-n),n=l.originalColumn,l.name!=null&&(u=this._names.indexOf(l.name),c+=cx.encode(u-o),o=u)),a+=c}return a};Ti.prototype._generateSourcesContent=function(e,r){return e.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Jr.relative(r,n));var s=Jr.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,s)?this._sourcesContents[s]:null},this)};Ti.prototype.toJSON=function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(e.file=this._file),this._sourceRoot!=null&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e};Ti.prototype.toString=function(){return JSON.stringify(this.toJSON())};NCe.SourceMapGenerator=Ti});var TCe=w(ef=>{ef.GREATEST_LOWER_BOUND=1;ef.LEAST_UPPER_BOUND=2;function p4(t,e,r,n,s,o){var i=Math.floor((e-t)/2)+t,a=s(r,n[i],!0);return a===0?i:a>0?e-i>1?p4(i,e,r,n,s,o):o==ef.LEAST_UPPER_BOUND?e1?p4(t,i,r,n,s,o):o==ef.LEAST_UPPER_BOUND?i:t<0?-1:t}ef.search=function(e,r,n,s){if(r.length===0)return-1;var o=p4(-1,r.length,e,r,n,s||ef.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o}});var vCe=w(PCe=>{function m4(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function RAt(t,e){return Math.round(t+Math.random()*(e-t))}function f4(t,e,r,n){if(r{var me=Ig(),A4=TCe(),xg=u4().ArraySet,NAt=i4(),lx=vCe().quickSort;function jt(t,e){var r=t;return typeof t=="string"&&(r=me.parseSourceMapInput(t)),r.sections!=null?new ya(r,e):new _n(r,e)}jt.fromSourceMap=function(t,e){return _n.fromSourceMap(t,e)};jt.prototype._version=3;jt.prototype.__generatedMappings=null;Object.defineProperty(jt.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings}});jt.prototype.__originalMappings=null;Object.defineProperty(jt.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings}});jt.prototype._charIsMappingSeparator=function(e,r){var n=e.charAt(r);return n===";"||n===","};jt.prototype._parseMappings=function(e,r){throw new Error("Subclasses must implement _parseMappings")};jt.GENERATED_ORDER=1;jt.ORIGINAL_ORDER=2;jt.GREATEST_LOWER_BOUND=1;jt.LEAST_UPPER_BOUND=2;jt.prototype.eachMapping=function(e,r,n){var s=r||null,o=n||jt.GENERATED_ORDER,i;switch(o){case jt.GENERATED_ORDER:i=this._generatedMappings;break;case jt.ORIGINAL_ORDER:i=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var a=this.sourceRoot;i.map(function(c){var l=c.source===null?null:this._sources.at(c.source);return l=me.computeSourceURL(a,l,this._sourceMapURL),{source:l,generatedLine:c.generatedLine,generatedColumn:c.generatedColumn,originalLine:c.originalLine,originalColumn:c.originalColumn,name:c.name===null?null:this._names.at(c.name)}},this).forEach(e,s)};jt.prototype.allGeneratedPositionsFor=function(e){var r=me.getArg(e,"line"),n={source:me.getArg(e,"source"),originalLine:r,originalColumn:me.getArg(e,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var s=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",me.compareByOriginalPositions,A4.LEAST_UPPER_BOUND);if(o>=0){var i=this._originalMappings[o];if(e.column===void 0)for(var a=i.originalLine;i&&i.originalLine===a;)s.push({line:me.getArg(i,"generatedLine",null),column:me.getArg(i,"generatedColumn",null),lastColumn:me.getArg(i,"lastGeneratedColumn",null)}),i=this._originalMappings[++o];else for(var c=i.originalColumn;i&&i.originalLine===r&&i.originalColumn==c;)s.push({line:me.getArg(i,"generatedLine",null),column:me.getArg(i,"generatedColumn",null),lastColumn:me.getArg(i,"lastGeneratedColumn",null)}),i=this._originalMappings[++o]}return s};BP.SourceMapConsumer=jt;function _n(t,e){var r=t;typeof t=="string"&&(r=me.parseSourceMapInput(t));var n=me.getArg(r,"version"),s=me.getArg(r,"sources"),o=me.getArg(r,"names",[]),i=me.getArg(r,"sourceRoot",null),a=me.getArg(r,"sourcesContent",null),c=me.getArg(r,"mappings"),l=me.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);i&&(i=me.normalize(i)),s=s.map(String).map(me.normalize).map(function(u){return i&&me.isAbsolute(i)&&me.isAbsolute(u)?me.relative(i,u):u}),this._names=xg.fromArray(o.map(String),!0),this._sources=xg.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map(function(u){return me.computeSourceURL(i,u,e)}),this.sourceRoot=i,this.sourcesContent=a,this._mappings=c,this._sourceMapURL=e,this.file=l}_n.prototype=Object.create(jt.prototype);_n.prototype.consumer=jt;_n.prototype._findSourceIndex=function(t){var e=t;if(this.sourceRoot!=null&&(e=me.relative(this.sourceRoot,e)),this._sources.has(e))return this._sources.indexOf(e);var r;for(r=0;r1&&(y.source=a+x[1],a+=x[1],y.originalLine=o+x[2],o=y.originalLine,y.originalLine+=1,y.originalColumn=i+x[3],i=y.originalColumn,x.length>4&&(y.name=c+x[4],c+=x[4])),h.push(y),typeof y.originalLine=="number"&&m.push(y)}lx(h,me.compareByGeneratedPositionsDeflated),this.__generatedMappings=h,lx(m,me.compareByOriginalPositions),this.__originalMappings=m};_n.prototype._findMapping=function(e,r,n,s,o,i){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[s]);return A4.search(e,r,o,i)};_n.prototype.computeColumnSpans=function(){for(var e=0;e=0){var s=this._generatedMappings[n];if(s.generatedLine===r.generatedLine){var o=me.getArg(s,"source",null);o!==null&&(o=this._sources.at(o),o=me.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var i=me.getArg(s,"name",null);return i!==null&&(i=this._names.at(i)),{source:o,line:me.getArg(s,"originalLine",null),column:me.getArg(s,"originalColumn",null),name:i}}}return{source:null,line:null,column:null,name:null}};_n.prototype.hasContentsOfAllSources=function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null}):!1};_n.prototype.sourceContentFor=function(e,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(e);if(n>=0)return this.sourcesContent[n];var s=e;this.sourceRoot!=null&&(s=me.relative(this.sourceRoot,s));var o;if(this.sourceRoot!=null&&(o=me.urlParse(this.sourceRoot))){var i=s.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(i))return this.sourcesContent[this._sources.indexOf(i)];if((!o.path||o.path=="/")&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(r)return null;throw new Error('"'+s+'" is not in the SourceMap.')};_n.prototype.generatedPositionFor=function(e){var r=me.getArg(e,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:me.getArg(e,"line"),originalColumn:me.getArg(e,"column")},s=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",me.compareByOriginalPositions,me.getArg(e,"bias",jt.GREATEST_LOWER_BOUND));if(s>=0){var o=this._originalMappings[s];if(o.source===n.source)return{line:me.getArg(o,"generatedLine",null),column:me.getArg(o,"generatedColumn",null),lastColumn:me.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}};BP.BasicSourceMapConsumer=_n;function ya(t,e){var r=t;typeof t=="string"&&(r=me.parseSourceMapInput(t));var n=me.getArg(r,"version"),s=me.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new xg,this._names=new xg;var o={line:-1,column:0};this._sections=s.map(function(i){if(i.url)throw new Error("Support for url field in sections not implemented.");var a=me.getArg(i,"offset"),c=me.getArg(a,"line"),l=me.getArg(a,"column");if(c{var TAt=d4().SourceMapGenerator,RP=Ig(),PAt=/(\r?\n)/,vAt=10,wg="$$$isSourceNode$$$";function Go(t,e,r,n,s){this.children=[],this.sourceContents={},this.line=t??null,this.column=e??null,this.source=r??null,this.name=s??null,this[wg]=!0,n!=null&&this.add(n)}Go.fromStringWithSourceMap=function(e,r,n){var s=new Go,o=e.split(PAt),i=0,a=function(){var p=h(),m=h()||"";return p+m;function h(){return i=0;r--)this.prepend(e[r]);else if(e[wg]||typeof e=="string")this.children.unshift(e);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);return this};Go.prototype.walk=function(e){for(var r,n=0,s=this.children.length;n0){for(r=[],n=0;n{NP.SourceMapGenerator=d4().SourceMapGenerator;NP.SourceMapConsumer=QCe().SourceMapConsumer;NP.SourceNode=kCe().SourceNode});var UCe=w((TP,FCe)=>{"use strict";TP.__esModule=!0;var g4=Bs(),tf=void 0;try{(typeof define!="function"||!define.amd)&&(OCe=LCe(),tf=OCe.SourceNode)}catch{}var OCe;tf||(tf=function(t,e,r,n){this.src="",n&&this.add(n)},tf.prototype={add:function(e){g4.isArray(e)&&(e=e.join("")),this.src+=e},prepend:function(e){g4.isArray(e)&&(e=e.join("")),this.src=e+this.src},toStringWithSourceMap:function(){return{code:this.toString()}},toString:function(){return this.src}});function h4(t,e,r){if(g4.isArray(t)){for(var n=[],s=0,o=t.length;s{"use strict";PP.__esModule=!0;function GCe(t){return t&&t.__esModule?t:{default:t}}var qCe=uP(),_At=$o(),y4=GCe(_At),QAt=Bs(),DAt=UCe(),$Ce=GCe(DAt);function bg(t){this.value=t}function Sg(){}Sg.prototype={nameLookup:function(e,r){return this.internalNameLookup(e,r)},depthedLookup:function(e){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(e),")"]},compilerInfo:function(){var e=qCe.COMPILER_REVISION,r=qCe.REVISION_CHANGES[e];return[e,r]},appendToBuffer:function(e,r,n){return QAt.isArray(e)||(e=[e]),e=this.source.wrap(e,r),this.environment.isSimple?["return ",e,";"]:n?["buffer += ",e,";"]:(e.appendToBuffer=!0,e)},initializeBuffer:function(){return this.quotedString("")},internalNameLookup:function(e,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",e,",",JSON.stringify(r),")"]},lookupPropertyFunctionIsUsed:!1,compile:function(e,r,n,s){this.environment=e,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!s,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,r),this.useDepths=this.useDepths||e.useDepths||e.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var o=e.opcodes,i=void 0,a=void 0,c=void 0,l=void 0;for(c=0,l=o.length;c1)throw new Error("Parse Error: multiple actions possible at state: "+M+", token: "+Q);switch(V[0]){case 1:a.push(Q),c.push(this.lexer.yytext),l.push(this.lexer.yylloc),a.push(V[1]),Q=null,q?(Q=q,q=null):(m=this.lexer.yyleng,d=this.lexer.yytext,p=this.lexer.yylineno,x=this.lexer.yylloc,f>0&&f--);break;case 2:if(ye=this.productions_[V[1]][1],Re.$=c[c.length-ye],Re._$={first_line:l[l.length-(ye||1)].first_line,last_line:l[l.length-1].last_line,first_column:l[l.length-(ye||1)].first_column,last_column:l[l.length-1].last_column},w&&(Re._$.range=[l[l.length-(ye||1)].range[0],l[l.length-1].range[1]]),ke=this.performAction.call(Re,d,m,p,this.yy,V[1],c,l),typeof ke<"u")return ke;ye&&(a=a.slice(0,-1*ye*2),c=c.slice(0,-1*ye),l=l.slice(0,-1*ye)),a.push(this.productions_[V[1]][0]),c.push(Re.$),l.push(Re._$),H=u[a[a.length-2]][a[a.length-1]],a.push(H);break;case 3:return!0}}return!0},"parse")},e=(function(){var n={EOF:1,parseError:i(function(o,a){if(this.yy.parser)this.yy.parser.parseError(o,a);else throw new Error(o)},"parseError"),setInput:i(function(o){return this._input=o,this._more=this._less=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},"setInput"),input:i(function(){var o=this._input[0];this.yytext+=o,this.yyleng++,this.offset++,this.match+=o,this.matched+=o;var a=o.match(/(?:\r\n?|\n).*/g);return a?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),o},"input"),unput:i(function(o){var a=o.length,c=o.split(/(?:\r\n?|\n)/g);this._input=o+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-a-1),this.offset-=a;var l=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),c.length-1&&(this.yylineno-=c.length-1);var u=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:c?(c.length===l.length?this.yylloc.first_column:0)+l[l.length-c.length].length-c[0].length:this.yylloc.first_column-a},this.options.ranges&&(this.yylloc.range=[u[0],u[0]+this.yyleng-a]),this},"unput"),more:i(function(){return this._more=!0,this},"more"),less:i(function(o){this.unput(this.match.slice(o))},"less"),pastInput:i(function(){var o=this.matched.substr(0,this.matched.length-this.match.length);return(o.length>20?"...":"")+o.substr(-20).replace(/\n/g,"")},"pastInput"),upcomingInput:i(function(){var o=this.match;return o.length<20&&(o+=this._input.substr(0,20-o.length)),(o.substr(0,20)+(o.length>20?"...":"")).replace(/\n/g,"")},"upcomingInput"),showPosition:i(function(){var o=this.pastInput(),a=new Array(o.length+1).join("-");return o+this.upcomingInput()+` +`+a+"^"},"showPosition"),next:i(function(){if(this.done)return this.EOF;this._input||(this.done=!0);var o,a,c,l,u,d;this._more||(this.yytext="",this.match="");for(var p=this._currentRules(),m=0;ma[0].length)&&(a=c,l=m,!this.options.flex)));m++);return a?(d=a[0].match(/(?:\r\n?|\n).*/g),d&&(this.yylineno+=d.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:d?d[d.length-1].length-d[d.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+a[0].length},this.yytext+=a[0],this.match+=a[0],this.matches=a,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._input=this._input.slice(a[0].length),this.matched+=a[0],o=this.performAction.call(this,this.yy,this,p[l],this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),o||void 0):this._input===""?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+`. Unrecognized text. +`+this.showPosition(),{text:"",token:null,line:this.yylineno})},"next"),lex:i(function(){var o=this.next();return typeof o<"u"?o:this.lex()},"lex"),begin:i(function(o){this.conditionStack.push(o)},"begin"),popState:i(function(){return this.conditionStack.pop()},"popState"),_currentRules:i(function(){return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules},"_currentRules"),topState:i(function(){return this.conditionStack[this.conditionStack.length-2]},"topState"),pushState:i(function(o){this.begin(o)},"begin")};return n.options={},n.performAction=i(function(o,a,c,l){function u(p,m){return a.yytext=a.yytext.substring(p,a.yyleng-m+p)}i(u,"strip");var d=l;switch(c){case 0:if(a.yytext.slice(-2)==="\\\\"?(u(0,1),this.begin("mu")):a.yytext.slice(-1)==="\\"?(u(0,1),this.begin("emu")):this.begin("mu"),a.yytext)return 15;break;case 1:return 15;case 2:return this.popState(),15;break;case 3:return this.begin("raw"),15;break;case 4:return this.popState(),this.conditionStack[this.conditionStack.length-1]==="raw"?15:(u(5,9),"END_RAW_BLOCK");case 5:return 15;case 6:return this.popState(),14;break;case 7:return 65;case 8:return 68;case 9:return 19;case 10:return this.popState(),this.begin("raw"),23;break;case 11:return 55;case 12:return 60;case 13:return 29;case 14:return 47;case 15:return this.popState(),44;break;case 16:return this.popState(),44;break;case 17:return 34;case 18:return 39;case 19:return 51;case 20:return 48;case 21:this.unput(a.yytext),this.popState(),this.begin("com");break;case 22:return this.popState(),14;break;case 23:return 48;case 24:return 73;case 25:return 72;case 26:return 72;case 27:return 87;case 28:break;case 29:return this.popState(),54;break;case 30:return this.popState(),33;break;case 31:return a.yytext=u(1,2).replace(/\\"/g,'"'),80;break;case 32:return a.yytext=u(1,2).replace(/\\'/g,"'"),80;break;case 33:return 85;case 34:return 82;case 35:return 82;case 36:return 83;case 37:return 84;case 38:return 81;case 39:return 75;case 40:return 77;case 41:return 72;case 42:return a.yytext=a.yytext.replace(/\\([\\\]])/g,"$1"),72;break;case 43:return"INVALID";case 44:return 5}},"anonymous"),n.rules=[/^(?:[^\x00]*?(?=(\{\{)))/,/^(?:[^\x00]+)/,/^(?:[^\x00]{2,}?(?=(\{\{|\\\{\{|\\\\\{\{|$)))/,/^(?:\{\{\{\{(?=[^\/]))/,/^(?:\{\{\{\{\/[^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=[=}\s\/.])\}\}\}\})/,/^(?:[^\x00]+?(?=(\{\{\{\{)))/,/^(?:[\s\S]*?--(~)?\}\})/,/^(?:\()/,/^(?:\))/,/^(?:\{\{\{\{)/,/^(?:\}\}\}\})/,/^(?:\{\{(~)?>)/,/^(?:\{\{(~)?#>)/,/^(?:\{\{(~)?#\*?)/,/^(?:\{\{(~)?\/)/,/^(?:\{\{(~)?\^\s*(~)?\}\})/,/^(?:\{\{(~)?\s*else\s*(~)?\}\})/,/^(?:\{\{(~)?\^)/,/^(?:\{\{(~)?\s*else\b)/,/^(?:\{\{(~)?\{)/,/^(?:\{\{(~)?&)/,/^(?:\{\{(~)?!--)/,/^(?:\{\{(~)?![\s\S]*?\}\})/,/^(?:\{\{(~)?\*?)/,/^(?:=)/,/^(?:\.\.)/,/^(?:\.(?=([=~}\s\/.)|])))/,/^(?:[\/.])/,/^(?:\s+)/,/^(?:\}(~)?\}\})/,/^(?:(~)?\}\})/,/^(?:"(\\["]|[^"])*")/,/^(?:'(\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\s)])))/,/^(?:false(?=([~}\s)])))/,/^(?:undefined(?=([~}\s)])))/,/^(?:null(?=([~}\s)])))/,/^(?:-?[0-9]+(?:\.[0-9]+)?(?=([~}\s)])))/,/^(?:as\s+\|)/,/^(?:\|)/,/^(?:([^\s!"#%-,\.\/;->@\[-\^`\{-~]+(?=([=~}\s\/.)|]))))/,/^(?:\[(\\\]|[^\]])*\])/,/^(?:.)/,/^(?:$)/],n.conditions={mu:{rules:[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],inclusive:!1},emu:{rules:[2],inclusive:!1},com:{rules:[6],inclusive:!1},raw:{rules:[3,4,5],inclusive:!1},INITIAL:{rules:[0,1,44],inclusive:!0}},n})();t.lexer=e;function r(){this.yy={}}return i(r,"Parser"),r.prototype=t,t.Parser=r,new r})();yP.default=kft;eCe.exports=yP.default});var xP=b((IP,sCe)=>{"use strict";IP.__esModule=!0;function Lft(t){return t&&t.__esModule?t:{default:t}}i(Lft,"_interopRequireDefault");var Oft=Go(),jV=Lft(Oft);function EP(){this.parents=[]}i(EP,"Visitor");EP.prototype={constructor:EP,mutating:!1,acceptKey:i(function(e,r){var n=this.accept(e[r]);if(this.mutating){if(n&&!EP.prototype[n.type])throw new jV.default('Unexpected node type "'+n.type+'" found when accepting '+r+" on "+e.type);e[r]=n}},"acceptKey"),acceptRequired:i(function(e,r){if(this.acceptKey(e,r),!e[r])throw new jV.default(e.type+" requires "+r)},"acceptRequired"),acceptArray:i(function(e){for(var r=0,n=e.length;r{"use strict";wP.__esModule=!0;function Mft(t){return t&&t.__esModule?t:{default:t}}i(Mft,"_interopRequireDefault");var Fft=xP(),Uft=Mft(Fft);function Uc(){var t=arguments.length<=0||arguments[0]===void 0?{}:arguments[0];this.options=t}i(Uc,"WhitespaceControl");Uc.prototype=new Uft.default;Uc.prototype.Program=function(t){var e=!this.options.ignoreStandalone,r=!this.isRootSeen;this.isRootSeen=!0;for(var n=t.body,s=0,o=n.length;s{"use strict";Ti.__esModule=!0;Ti.SourceLocation=Gft;Ti.id=Hft;Ti.stripFlags=zft;Ti.stripComment=Vft;Ti.preparePath=Yft;Ti.prepareMustache=Wft;Ti.prepareRawBlock=jft;Ti.prepareBlock=Jft;Ti.prepareProgram=Kft;Ti.preparePartialBlock=Xft;function qft(t){return t&&t.__esModule?t:{default:t}}i(qft,"_interopRequireDefault");var $ft=Go(),XV=qft($ft);function ZV(t,e){if(e=e.path?e.path.original:e,t.path.original!==e){var r={loc:t.path.loc};throw new XV.default(t.path.original+" doesn't match "+e,r)}}i(ZV,"validateClose");function Gft(t,e){this.source=t,this.start={line:e.first_line,column:e.first_column},this.end={line:e.last_line,column:e.last_column}}i(Gft,"SourceLocation");function Hft(t){return/^\[.*\]$/.test(t)?t.substring(1,t.length-1):t}i(Hft,"id");function zft(t,e){return{open:t.charAt(2)==="~",close:e.charAt(e.length-3)==="~"}}i(zft,"stripFlags");function Vft(t){return t.replace(/^\{\{~?!-?-?/,"").replace(/-?-?~?\}\}$/,"")}i(Vft,"stripComment");function Yft(t,e,r){r=this.locInfo(r);for(var n=t?"@":"",s=[],o=0,a=0,c=e.length;a0)throw new XV.default("Invalid path: "+n,{loc:r});l===".."&&o++}else s.push(l)}return{type:"PathExpression",data:t,depth:o,parts:s,original:n,loc:r}}i(Yft,"preparePath");function Wft(t,e,r,n,s,o){var a=n.charAt(3)||n.charAt(2),c=a!=="{"&&a!=="&",l=/\*/.test(n);return{type:l?"Decorator":"MustacheStatement",path:t,params:e,hash:r,escaped:c,strip:s,loc:this.locInfo(o)}}i(Wft,"prepareMustache");function jft(t,e,r,n){ZV(t,r),n=this.locInfo(n);var s={type:"Program",body:e,strip:{},loc:n};return{type:"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:s,openStrip:{},inverseStrip:{},closeStrip:{},loc:n}}i(jft,"prepareRawBlock");function Jft(t,e,r,n,s,o){n&&n.path&&ZV(t,n);var a=/\*/.test(t.open);e.blockParams=t.blockParams;var c=void 0,l=void 0;if(r){if(a)throw new XV.default("Unexpected inverse block on decorator",r);r.chain&&(r.program.body[0].closeStrip=n.strip),l=r.strip,c=r.program}return s&&(s=c,c=e,e=s),{type:a?"DecoratorBlock":"BlockStatement",path:t.path,params:t.params,hash:t.hash,program:e,inverse:c,openStrip:t.strip,inverseStrip:l,closeStrip:n&&n.strip,loc:this.locInfo(o)}}i(Jft,"prepareBlock");function Kft(t,e){if(!e&&t.length){var r=t[0].loc,n=t[t.length-1].loc;r&&n&&(e={source:r.source,start:{line:r.start.line,column:r.start.column},end:{line:n.end.line,column:n.end.column}})}return{type:"Program",body:t,strip:{},loc:e}}i(Kft,"prepareProgram");function Xft(t,e,r,n){return ZV(t,r),{type:"PartialBlockStatement",name:t.path,params:t.params,hash:t.hash,program:e,openStrip:t.strip,closeStrip:r&&r.strip,loc:this.locInfo(n)}}i(Xft,"preparePartialBlock")});var lCe=b(sx=>{"use strict";sx.__esModule=!0;sx.parseWithoutProcessing=cCe;sx.parse=aAt;function Zft(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e.default=t,e}i(Zft,"_interopRequireWildcard");function r4(t){return t&&t.__esModule?t:{default:t}}i(r4,"_interopRequireDefault");var eAt=tCe(),e4=r4(eAt),tAt=iCe(),rAt=r4(tAt),nAt=aCe(),sAt=Zft(nAt),oAt=Go(),nx=r4(oAt),iAt=Rs();sx.parser=e4.default;var bP={};iAt.extend(bP,sAt);function cCe(t,e){if(t.type==="Program")return cAt(t),t;e4.default.yy=bP,bP.locInfo=function(n){return new bP.SourceLocation(e&&e.srcName,n)};var r=e4.default.parse(t);return r}i(cCe,"parseWithoutProcessing");function aAt(t,e){var r=cCe(t,e),n=new rAt.default(e);return n.accept(r)}i(aAt,"parse");function cAt(t){t4(t)}i(cAt,"validateInputAst");function t4(t){if(t!=null){if(Array.isArray(t)){t.forEach(t4);return}if(typeof t=="object"){if(t.type==="PathExpression"){if(!lAt(t.depth))throw new nx.default("Invalid AST: PathExpression.depth must be an integer");if(!Array.isArray(t.parts))throw new nx.default("Invalid AST: PathExpression.parts must be an array");for(var e=0;e=0}i(lAt,"isValidDepth")});var mCe=b(cx=>{"use strict";cx.__esModule=!0;cx.Compiler=n4;cx.precompile=mAt;cx.compile=fAt;function dCe(t){return t&&t.__esModule?t:{default:t}}i(dCe,"_interopRequireDefault");var uAt=Go(),ix=dCe(uAt),ax=Rs(),dAt=WV(),ox=dCe(dAt),pAt=[].slice;function n4(){}i(n4,"Compiler");n4.prototype={compiler:n4,equals:i(function(e){var r=this.opcodes.length;if(e.opcodes.length!==r)return!1;for(var n=0;n1)throw new ix.default("Unsupported number of partial arguments: "+n.length,e);n.length||(this.options.explicitPartialContext?this.opcode("pushLiteral","undefined"):n.push({type:"PathExpression",parts:[],depth:0}));var s=e.name.original,o=e.name.type==="SubExpression";o&&this.accept(e.name),this.setupFullMustacheParams(e,r,void 0,!0);var a=e.indent||"";this.options.preventIndent&&a&&(this.opcode("appendContent",a),a=""),this.opcode("invokePartial",o,s,a),this.opcode("append")},"PartialStatement"),PartialBlockStatement:i(function(e){this.PartialStatement(e)},"PartialBlockStatement"),MustacheStatement:i(function(e){this.SubExpression(e),e.escaped&&!this.options.noEscape?this.opcode("appendEscaped"):this.opcode("append")},"MustacheStatement"),Decorator:i(function(e){this.DecoratorBlock(e)},"Decorator"),ContentStatement:i(function(e){e.value&&this.opcode("appendContent",e.value)},"ContentStatement"),CommentStatement:i(function(){},"CommentStatement"),SubExpression:i(function(e){uCe(e);var r=this.classifySexpr(e);r==="simple"?this.simpleSexpr(e):r==="helper"?this.helperSexpr(e):this.ambiguousSexpr(e)},"SubExpression"),ambiguousSexpr:i(function(e,r,n){var s=e.path,o=s.parts[0],a=r!=null||n!=null;this.opcode("getContext",s.depth),this.opcode("pushProgram",r),this.opcode("pushProgram",n),s.strict=!0,this.accept(s),this.opcode("invokeAmbiguous",o,a)},"ambiguousSexpr"),simpleSexpr:i(function(e){var r=e.path;r.strict=!0,this.accept(r),this.opcode("resolvePossibleLambda")},"simpleSexpr"),helperSexpr:i(function(e,r,n){var s=this.setupFullMustacheParams(e,r,n),o=e.path,a=o.parts[0];if(this.options.knownHelpers[a])this.opcode("invokeKnownHelper",s.length,a);else{if(this.options.knownHelpersOnly)throw new ix.default("You specified knownHelpersOnly, but used the unknown helper "+a,e);o.strict=!0,o.falsy=!0,this.accept(o),this.opcode("invokeHelper",s.length,o.original,ox.default.helpers.simpleId(o))}},"helperSexpr"),PathExpression:i(function(e){this.addDepth(e.depth),this.opcode("getContext",e.depth);var r=e.parts[0],n=ox.default.helpers.scopedId(e),s=!e.depth&&!n&&this.blockParamIndex(r);s?this.opcode("lookupBlockParam",s,e.parts):r?e.data?(this.options.data=!0,this.opcode("lookupData",e.depth,e.parts,e.strict)):this.opcode("lookupOnContext",e.parts,e.falsy,e.strict,n):this.opcode("pushContext")},"PathExpression"),StringLiteral:i(function(e){this.opcode("pushString",e.value)},"StringLiteral"),NumberLiteral:i(function(e){this.opcode("pushLiteral",e.value)},"NumberLiteral"),BooleanLiteral:i(function(e){this.opcode("pushLiteral",e.value)},"BooleanLiteral"),UndefinedLiteral:i(function(){this.opcode("pushLiteral","undefined")},"UndefinedLiteral"),NullLiteral:i(function(){this.opcode("pushLiteral","null")},"NullLiteral"),Hash:i(function(e){var r=e.pairs,n=0,s=r.length;for(this.opcode("pushHash");n=0)return[r,o]}},"blockParamIndex")};function mAt(t,e,r){if(t==null||typeof t!="string"&&t.type!=="Program")throw new ix.default("You must pass a string or Handlebars AST to Handlebars.precompile. You passed "+t);e=e||{},"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var n=r.parse(t,e),s=new r.Compiler().compile(n,e);return new r.JavaScriptCompiler().compile(s,e)}i(mAt,"precompile");function fAt(t,e,r){if(e===void 0&&(e={}),t==null||typeof t!="string"&&t.type!=="Program")throw new ix.default("You must pass a string or Handlebars AST to Handlebars.compile. You passed "+t);e=ax.extend({},e),"data"in e||(e.data=!0),e.compat&&(e.useDepths=!0);var n=void 0;function s(){var a=r.parse(t,e),c=new r.Compiler().compile(a,e),l=new r.JavaScriptCompiler().compile(c,e,void 0,!0);return r.template(l)}i(s,"compileInput");function o(a,c){return n||(n=s()),n.call(this,a,c)}return i(o,"ret"),o._setup=function(a){return n||(n=s()),n._setup(a)},o._child=function(a,c,l,u){return n||(n=s()),n._child(a,c,l,u)},o}i(fAt,"compile");function pCe(t,e){if(t===e)return!0;if(ax.isArray(t)&&ax.isArray(e)&&t.length===e.length){for(var r=0;r{var fCe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/".split("");s4.encode=function(t){if(0<=t&&t{var hCe=ACe(),o4=5,gCe=1<>1;return e?-r:r}i(hAt,"fromVLQSigned");i4.encode=i(function(e){var r="",n,s=AAt(e);do n=s&yCe,s>>>=o4,s>0&&(n|=ECe),r+=hCe.encode(n);while(s>0);return r},"base64VLQ_encode");i4.decode=i(function(e,r,n){var s=e.length,o=0,a=0,c,l;do{if(r>=s)throw new Error("Expected more digits in base 64 VLQ value.");if(l=hCe.decode(e.charCodeAt(r++)),l===-1)throw new Error("Invalid base64 digit: "+e.charAt(r-1));c=!!(l&ECe),l&=yCe,o=o+(l<{function gAt(t,e,r){if(e in t)return t[e];if(arguments.length===3)return r;throw new Error('"'+e+'" is a required argument.')}i(gAt,"getArg");Jn.getArg=gAt;var CCe=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.-]*)(?::(\d+))?(.*)$/,yAt=/^data:.+\,.+$/;function lx(t){var e=t.match(CCe);return e?{scheme:e[1],auth:e[2],host:e[3],port:e[4],path:e[5]}:null}i(lx,"urlParse");Jn.urlParse=lx;function Cg(t){var e="";return t.scheme&&(e+=t.scheme+":"),e+="//",t.auth&&(e+=t.auth+"@"),t.host&&(e+=t.host),t.port&&(e+=":"+t.port),t.path&&(e+=t.path),e}i(Cg,"urlGenerate");Jn.urlGenerate=Cg;function c4(t){var e=t,r=lx(t);if(r){if(!r.path)return t;e=r.path}for(var n=Jn.isAbsolute(e),s=e.split(/\/+/),o,a=0,c=s.length-1;c>=0;c--)o=s[c],o==="."?s.splice(c,1):o===".."?a++:a>0&&(o===""?(s.splice(c+1,a),a=0):(s.splice(c,2),a--));return e=s.join("/"),e===""&&(e=n?"/":"."),r?(r.path=e,Cg(r)):e}i(c4,"normalize");Jn.normalize=c4;function ICe(t,e){t===""&&(t="."),e===""&&(e=".");var r=lx(e),n=lx(t);if(n&&(t=n.path||"/"),r&&!r.scheme)return n&&(r.scheme=n.scheme),Cg(r);if(r||e.match(yAt))return e;if(n&&!n.host&&!n.path)return n.host=e,Cg(n);var s=e.charAt(0)==="/"?e:c4(t.replace(/\/+$/,"")+"/"+e);return n?(n.path=s,Cg(n)):s}i(ICe,"join");Jn.join=ICe;Jn.isAbsolute=function(t){return t.charAt(0)==="/"||CCe.test(t)};function EAt(t,e){t===""&&(t="."),t=t.replace(/\/$/,"");for(var r=0;e.indexOf(t+"/")!==0;){var n=t.lastIndexOf("/");if(n<0||(t=t.slice(0,n),t.match(/^([^\/]+:\/)?\/*$/)))return e;++r}return Array(r+1).join("../")+e.substr(t.length+1)}i(EAt,"relative");Jn.relative=EAt;var xCe=(function(){var t=Object.create(null);return!("__proto__"in t)})();function wCe(t){return t}i(wCe,"identity");function CAt(t){return bCe(t)?"$"+t:t}i(CAt,"toSetString");Jn.toSetString=xCe?wCe:CAt;function IAt(t){return bCe(t)?t.slice(1):t}i(IAt,"fromSetString");Jn.fromSetString=xCe?wCe:IAt;function bCe(t){if(!t)return!1;var e=t.length;if(e<9||t.charCodeAt(e-1)!==95||t.charCodeAt(e-2)!==95||t.charCodeAt(e-3)!==111||t.charCodeAt(e-4)!==116||t.charCodeAt(e-5)!==111||t.charCodeAt(e-6)!==114||t.charCodeAt(e-7)!==112||t.charCodeAt(e-8)!==95||t.charCodeAt(e-9)!==95)return!1;for(var r=e-10;r>=0;r--)if(t.charCodeAt(r)!==36)return!1;return!0}i(bCe,"isProtoString");function xAt(t,e,r){var n=Ig(t.source,e.source);return n!==0||(n=t.originalLine-e.originalLine,n!==0)||(n=t.originalColumn-e.originalColumn,n!==0||r)||(n=t.generatedColumn-e.generatedColumn,n!==0)||(n=t.generatedLine-e.generatedLine,n!==0)?n:Ig(t.name,e.name)}i(xAt,"compareByOriginalPositions");Jn.compareByOriginalPositions=xAt;function wAt(t,e,r){var n=t.generatedLine-e.generatedLine;return n!==0||(n=t.generatedColumn-e.generatedColumn,n!==0||r)||(n=Ig(t.source,e.source),n!==0)||(n=t.originalLine-e.originalLine,n!==0)||(n=t.originalColumn-e.originalColumn,n!==0)?n:Ig(t.name,e.name)}i(wAt,"compareByGeneratedPositionsDeflated");Jn.compareByGeneratedPositionsDeflated=wAt;function Ig(t,e){return t===e?0:t===null?1:e===null?-1:t>e?1:-1}i(Ig,"strcmp");function bAt(t,e){var r=t.generatedLine-e.generatedLine;return r!==0||(r=t.generatedColumn-e.generatedColumn,r!==0)||(r=Ig(t.source,e.source),r!==0)||(r=t.originalLine-e.originalLine,r!==0)||(r=t.originalColumn-e.originalColumn,r!==0)?r:Ig(t.name,e.name)}i(bAt,"compareByGeneratedPositionsInflated");Jn.compareByGeneratedPositionsInflated=bAt;function SAt(t){return JSON.parse(t.replace(/^\)]}'[^\n]*\n/,""))}i(SAt,"parseSourceMapInput");Jn.parseSourceMapInput=SAt;function BAt(t,e,r){if(e=e||"",t&&(t[t.length-1]!=="/"&&e[0]!=="/"&&(t+="/"),e=t+e),r){var n=lx(r);if(!n)throw new Error("sourceMapURL could not be parsed");if(n.path){var s=n.path.lastIndexOf("/");s>=0&&(n.path=n.path.substring(0,s+1))}e=ICe(Cg(n),e)}return c4(e)}i(BAt,"computeSourceURL");Jn.computeSourceURL=BAt});var d4=b(SCe=>{var l4=xg(),u4=Object.prototype.hasOwnProperty,ef=typeof Map<"u";function fu(){this._array=[],this._set=ef?new Map:Object.create(null)}i(fu,"ArraySet");fu.fromArray=i(function(e,r){for(var n=new fu,s=0,o=e.length;s=0)return r}else{var n=l4.toSetString(e);if(u4.call(this._set,n))return this._set[n]}throw new Error('"'+e+'" is not in the set.')},"ArraySet_indexOf");fu.prototype.at=i(function(e){if(e>=0&&e{var BCe=xg();function RAt(t,e){var r=t.generatedLine,n=e.generatedLine,s=t.generatedColumn,o=e.generatedColumn;return n>r||n==r&&o>=s||BCe.compareByGeneratedPositionsInflated(t,e)<=0}i(RAt,"generatedPositionAfter");function SP(){this._array=[],this._sorted=!0,this._last={generatedLine:-1,generatedColumn:0}}i(SP,"MappingList");SP.prototype.unsortedForEach=i(function(e,r){this._array.forEach(e,r)},"MappingList_forEach");SP.prototype.add=i(function(e){RAt(this._last,e)?(this._last=e,this._array.push(e)):(this._sorted=!1,this._array.push(e))},"MappingList_add");SP.prototype.toArray=i(function(){return this._sorted||(this._array.sort(BCe.compareByGeneratedPositionsInflated),this._sorted=!0),this._array},"MappingList_toArray");RCe.MappingList=SP});var p4=b(TCe=>{var ux=a4(),Kr=xg(),BP=d4().ArraySet,NAt=NCe().MappingList;function Pi(t){t||(t={}),this._file=Kr.getArg(t,"file",null),this._sourceRoot=Kr.getArg(t,"sourceRoot",null),this._skipValidation=Kr.getArg(t,"skipValidation",!1),this._sources=new BP,this._names=new BP,this._mappings=new NAt,this._sourcesContents=null}i(Pi,"SourceMapGenerator");Pi.prototype._version=3;Pi.fromSourceMap=i(function(e){var r=e.sourceRoot,n=new Pi({file:e.file,sourceRoot:r});return e.eachMapping(function(s){var o={generated:{line:s.generatedLine,column:s.generatedColumn}};s.source!=null&&(o.source=s.source,r!=null&&(o.source=Kr.relative(r,o.source)),o.original={line:s.originalLine,column:s.originalColumn},s.name!=null&&(o.name=s.name)),n.addMapping(o)}),e.sources.forEach(function(s){var o=s;r!==null&&(o=Kr.relative(r,s)),n._sources.has(o)||n._sources.add(o);var a=e.sourceContentFor(s);a!=null&&n.setSourceContent(s,a)}),n},"SourceMapGenerator_fromSourceMap");Pi.prototype.addMapping=i(function(e){var r=Kr.getArg(e,"generated"),n=Kr.getArg(e,"original",null),s=Kr.getArg(e,"source",null),o=Kr.getArg(e,"name",null);this._skipValidation||this._validateMapping(r,n,s,o),s!=null&&(s=String(s),this._sources.has(s)||this._sources.add(s)),o!=null&&(o=String(o),this._names.has(o)||this._names.add(o)),this._mappings.add({generatedLine:r.line,generatedColumn:r.column,originalLine:n!=null&&n.line,originalColumn:n!=null&&n.column,source:s,name:o})},"SourceMapGenerator_addMapping");Pi.prototype.setSourceContent=i(function(e,r){var n=e;this._sourceRoot!=null&&(n=Kr.relative(this._sourceRoot,n)),r!=null?(this._sourcesContents||(this._sourcesContents=Object.create(null)),this._sourcesContents[Kr.toSetString(n)]=r):this._sourcesContents&&(delete this._sourcesContents[Kr.toSetString(n)],Object.keys(this._sourcesContents).length===0&&(this._sourcesContents=null))},"SourceMapGenerator_setSourceContent");Pi.prototype.applySourceMap=i(function(e,r,n){var s=r;if(r==null){if(e.file==null)throw new Error(`SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, or the source map's "file" property. Both were omitted.`);s=e.file}var o=this._sourceRoot;o!=null&&(s=Kr.relative(o,s));var a=new BP,c=new BP;this._mappings.unsortedForEach(function(l){if(l.source===s&&l.originalLine!=null){var u=e.originalPositionFor({line:l.originalLine,column:l.originalColumn});u.source!=null&&(l.source=u.source,n!=null&&(l.source=Kr.join(n,l.source)),o!=null&&(l.source=Kr.relative(o,l.source)),l.originalLine=u.line,l.originalColumn=u.column,u.name!=null&&(l.name=u.name))}var d=l.source;d!=null&&!a.has(d)&&a.add(d);var p=l.name;p!=null&&!c.has(p)&&c.add(p)},this),this._sources=a,this._names=c,e.sources.forEach(function(l){var u=e.sourceContentFor(l);u!=null&&(n!=null&&(l=Kr.join(n,l)),o!=null&&(l=Kr.relative(o,l)),this.setSourceContent(l,u))},this)},"SourceMapGenerator_applySourceMap");Pi.prototype._validateMapping=i(function(e,r,n,s){if(r&&typeof r.line!="number"&&typeof r.column!="number")throw new Error("original.line and original.column are not numbers -- you probably meant to omit the original mapping entirely and only map the generated position. If so, pass null for the original mapping instead of an object with empty or null values.");if(!(e&&"line"in e&&"column"in e&&e.line>0&&e.column>=0&&!r&&!n&&!s)){if(e&&"line"in e&&"column"in e&&r&&"line"in r&&"column"in r&&e.line>0&&e.column>=0&&r.line>0&&r.column>=0&&n)return;throw new Error("Invalid mapping: "+JSON.stringify({generated:e,source:n,original:r,name:s}))}},"SourceMapGenerator_validateMapping");Pi.prototype._serializeMappings=i(function(){for(var e=0,r=1,n=0,s=0,o=0,a=0,c="",l,u,d,p,m=this._mappings.toArray(),f=0,g=m.length;f0){if(!Kr.compareByGeneratedPositionsInflated(u,m[f-1]))continue;l+=","}l+=ux.encode(u.generatedColumn-e),e=u.generatedColumn,u.source!=null&&(p=this._sources.indexOf(u.source),l+=ux.encode(p-a),a=p,l+=ux.encode(u.originalLine-1-s),s=u.originalLine-1,l+=ux.encode(u.originalColumn-n),n=u.originalColumn,u.name!=null&&(d=this._names.indexOf(u.name),l+=ux.encode(d-o),o=d)),c+=l}return c},"SourceMapGenerator_serializeMappings");Pi.prototype._generateSourcesContent=i(function(e,r){return e.map(function(n){if(!this._sourcesContents)return null;r!=null&&(n=Kr.relative(r,n));var s=Kr.toSetString(n);return Object.prototype.hasOwnProperty.call(this._sourcesContents,s)?this._sourcesContents[s]:null},this)},"SourceMapGenerator_generateSourcesContent");Pi.prototype.toJSON=i(function(){var e={version:this._version,sources:this._sources.toArray(),names:this._names.toArray(),mappings:this._serializeMappings()};return this._file!=null&&(e.file=this._file),this._sourceRoot!=null&&(e.sourceRoot=this._sourceRoot),this._sourcesContents&&(e.sourcesContent=this._generateSourcesContent(e.sources,e.sourceRoot)),e},"SourceMapGenerator_toJSON");Pi.prototype.toString=i(function(){return JSON.stringify(this.toJSON())},"SourceMapGenerator_toString");TCe.SourceMapGenerator=Pi});var PCe=b(tf=>{tf.GREATEST_LOWER_BOUND=1;tf.LEAST_UPPER_BOUND=2;function m4(t,e,r,n,s,o){var a=Math.floor((e-t)/2)+t,c=s(r,n[a],!0);return c===0?a:c>0?e-a>1?m4(a,e,r,n,s,o):o==tf.LEAST_UPPER_BOUND?e1?m4(t,a,r,n,s,o):o==tf.LEAST_UPPER_BOUND?a:t<0?-1:t}i(m4,"recursiveSearch");tf.search=i(function(e,r,n,s){if(r.length===0)return-1;var o=m4(-1,r.length,e,r,n,s||tf.GREATEST_LOWER_BOUND);if(o<0)return-1;for(;o-1>=0&&n(r[o],r[o-1],!0)===0;)--o;return o},"search")});var _Ce=b(vCe=>{function f4(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}i(f4,"swap");function TAt(t,e){return Math.round(t+Math.random()*(e-t))}i(TAt,"randomIntInRange");function A4(t,e,r,n){if(r{var fe=xg(),h4=PCe(),wg=d4().ArraySet,PAt=a4(),dx=_Ce().quickSort;function Jt(t,e){var r=t;return typeof t=="string"&&(r=fe.parseSourceMapInput(t)),r.sections!=null?new Ea(r,e):new Qn(r,e)}i(Jt,"SourceMapConsumer");Jt.fromSourceMap=function(t,e){return Qn.fromSourceMap(t,e)};Jt.prototype._version=3;Jt.prototype.__generatedMappings=null;Object.defineProperty(Jt.prototype,"_generatedMappings",{configurable:!0,enumerable:!0,get:i(function(){return this.__generatedMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__generatedMappings},"get")});Jt.prototype.__originalMappings=null;Object.defineProperty(Jt.prototype,"_originalMappings",{configurable:!0,enumerable:!0,get:i(function(){return this.__originalMappings||this._parseMappings(this._mappings,this.sourceRoot),this.__originalMappings},"get")});Jt.prototype._charIsMappingSeparator=i(function(e,r){var n=e.charAt(r);return n===";"||n===","},"SourceMapConsumer_charIsMappingSeparator");Jt.prototype._parseMappings=i(function(e,r){throw new Error("Subclasses must implement _parseMappings")},"SourceMapConsumer_parseMappings");Jt.GENERATED_ORDER=1;Jt.ORIGINAL_ORDER=2;Jt.GREATEST_LOWER_BOUND=1;Jt.LEAST_UPPER_BOUND=2;Jt.prototype.eachMapping=i(function(e,r,n){var s=r||null,o=n||Jt.GENERATED_ORDER,a;switch(o){case Jt.GENERATED_ORDER:a=this._generatedMappings;break;case Jt.ORIGINAL_ORDER:a=this._originalMappings;break;default:throw new Error("Unknown order of iteration.")}var c=this.sourceRoot;a.map(function(l){var u=l.source===null?null:this._sources.at(l.source);return u=fe.computeSourceURL(c,u,this._sourceMapURL),{source:u,generatedLine:l.generatedLine,generatedColumn:l.generatedColumn,originalLine:l.originalLine,originalColumn:l.originalColumn,name:l.name===null?null:this._names.at(l.name)}},this).forEach(e,s)},"SourceMapConsumer_eachMapping");Jt.prototype.allGeneratedPositionsFor=i(function(e){var r=fe.getArg(e,"line"),n={source:fe.getArg(e,"source"),originalLine:r,originalColumn:fe.getArg(e,"column",0)};if(n.source=this._findSourceIndex(n.source),n.source<0)return[];var s=[],o=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",fe.compareByOriginalPositions,h4.LEAST_UPPER_BOUND);if(o>=0){var a=this._originalMappings[o];if(e.column===void 0)for(var c=a.originalLine;a&&a.originalLine===c;)s.push({line:fe.getArg(a,"generatedLine",null),column:fe.getArg(a,"generatedColumn",null),lastColumn:fe.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++o];else for(var l=a.originalColumn;a&&a.originalLine===r&&a.originalColumn==l;)s.push({line:fe.getArg(a,"generatedLine",null),column:fe.getArg(a,"generatedColumn",null),lastColumn:fe.getArg(a,"lastGeneratedColumn",null)}),a=this._originalMappings[++o]}return s},"SourceMapConsumer_allGeneratedPositionsFor");RP.SourceMapConsumer=Jt;function Qn(t,e){var r=t;typeof t=="string"&&(r=fe.parseSourceMapInput(t));var n=fe.getArg(r,"version"),s=fe.getArg(r,"sources"),o=fe.getArg(r,"names",[]),a=fe.getArg(r,"sourceRoot",null),c=fe.getArg(r,"sourcesContent",null),l=fe.getArg(r,"mappings"),u=fe.getArg(r,"file",null);if(n!=this._version)throw new Error("Unsupported version: "+n);a&&(a=fe.normalize(a)),s=s.map(String).map(fe.normalize).map(function(d){return a&&fe.isAbsolute(a)&&fe.isAbsolute(d)?fe.relative(a,d):d}),this._names=wg.fromArray(o.map(String),!0),this._sources=wg.fromArray(s,!0),this._absoluteSources=this._sources.toArray().map(function(d){return fe.computeSourceURL(a,d,e)}),this.sourceRoot=a,this.sourcesContent=c,this._mappings=l,this._sourceMapURL=e,this.file=u}i(Qn,"BasicSourceMapConsumer");Qn.prototype=Object.create(Jt.prototype);Qn.prototype.consumer=Jt;Qn.prototype._findSourceIndex=function(t){var e=t;if(this.sourceRoot!=null&&(e=fe.relative(this.sourceRoot,e)),this._sources.has(e))return this._sources.indexOf(e);var r;for(r=0;r1&&(E.source=c+w[1],c+=w[1],E.originalLine=o+w[2],o=E.originalLine,E.originalLine+=1,E.originalColumn=a+w[3],a=E.originalColumn,w.length>4&&(E.name=l+w[4],l+=w[4])),g.push(E),typeof E.originalLine=="number"&&f.push(E)}dx(g,fe.compareByGeneratedPositionsDeflated),this.__generatedMappings=g,dx(f,fe.compareByOriginalPositions),this.__originalMappings=f},"SourceMapConsumer_parseMappings");Qn.prototype._findMapping=i(function(e,r,n,s,o,a){if(e[n]<=0)throw new TypeError("Line must be greater than or equal to 1, got "+e[n]);if(e[s]<0)throw new TypeError("Column must be greater than or equal to 0, got "+e[s]);return h4.search(e,r,o,a)},"SourceMapConsumer_findMapping");Qn.prototype.computeColumnSpans=i(function(){for(var e=0;e=0){var s=this._generatedMappings[n];if(s.generatedLine===r.generatedLine){var o=fe.getArg(s,"source",null);o!==null&&(o=this._sources.at(o),o=fe.computeSourceURL(this.sourceRoot,o,this._sourceMapURL));var a=fe.getArg(s,"name",null);return a!==null&&(a=this._names.at(a)),{source:o,line:fe.getArg(s,"originalLine",null),column:fe.getArg(s,"originalColumn",null),name:a}}}return{source:null,line:null,column:null,name:null}},"SourceMapConsumer_originalPositionFor");Qn.prototype.hasContentsOfAllSources=i(function(){return this.sourcesContent?this.sourcesContent.length>=this._sources.size()&&!this.sourcesContent.some(function(e){return e==null}):!1},"BasicSourceMapConsumer_hasContentsOfAllSources");Qn.prototype.sourceContentFor=i(function(e,r){if(!this.sourcesContent)return null;var n=this._findSourceIndex(e);if(n>=0)return this.sourcesContent[n];var s=e;this.sourceRoot!=null&&(s=fe.relative(this.sourceRoot,s));var o;if(this.sourceRoot!=null&&(o=fe.urlParse(this.sourceRoot))){var a=s.replace(/^file:\/\//,"");if(o.scheme=="file"&&this._sources.has(a))return this.sourcesContent[this._sources.indexOf(a)];if((!o.path||o.path=="/")&&this._sources.has("/"+s))return this.sourcesContent[this._sources.indexOf("/"+s)]}if(r)return null;throw new Error('"'+s+'" is not in the SourceMap.')},"SourceMapConsumer_sourceContentFor");Qn.prototype.generatedPositionFor=i(function(e){var r=fe.getArg(e,"source");if(r=this._findSourceIndex(r),r<0)return{line:null,column:null,lastColumn:null};var n={source:r,originalLine:fe.getArg(e,"line"),originalColumn:fe.getArg(e,"column")},s=this._findMapping(n,this._originalMappings,"originalLine","originalColumn",fe.compareByOriginalPositions,fe.getArg(e,"bias",Jt.GREATEST_LOWER_BOUND));if(s>=0){var o=this._originalMappings[s];if(o.source===n.source)return{line:fe.getArg(o,"generatedLine",null),column:fe.getArg(o,"generatedColumn",null),lastColumn:fe.getArg(o,"lastGeneratedColumn",null)}}return{line:null,column:null,lastColumn:null}},"SourceMapConsumer_generatedPositionFor");RP.BasicSourceMapConsumer=Qn;function Ea(t,e){var r=t;typeof t=="string"&&(r=fe.parseSourceMapInput(t));var n=fe.getArg(r,"version"),s=fe.getArg(r,"sections");if(n!=this._version)throw new Error("Unsupported version: "+n);this._sources=new wg,this._names=new wg;var o={line:-1,column:0};this._sections=s.map(function(a){if(a.url)throw new Error("Support for url field in sections not implemented.");var c=fe.getArg(a,"offset"),l=fe.getArg(c,"line"),u=fe.getArg(c,"column");if(l{var vAt=p4().SourceMapGenerator,NP=xg(),_At=/(\r?\n)/,QAt=10,bg="$$$isSourceNode$$$";function Ho(t,e,r,n,s){this.children=[],this.sourceContents={},this.line=t??null,this.column=e??null,this.source=r??null,this.name=s??null,this[bg]=!0,n!=null&&this.add(n)}i(Ho,"SourceNode");Ho.fromStringWithSourceMap=i(function(e,r,n){var s=new Ho,o=e.split(_At),a=0,c=i(function(){var m=g(),f=g()||"";return m+f;function g(){return a=0;r--)this.prepend(e[r]);else if(e[bg]||typeof e=="string")this.children.unshift(e);else throw new TypeError("Expected a SourceNode, string, or an array of SourceNodes and strings. Got "+e);return this},"SourceNode_prepend");Ho.prototype.walk=i(function(e){for(var r,n=0,s=this.children.length;n0){for(r=[],n=0;n{TP.SourceMapGenerator=p4().SourceMapGenerator;TP.SourceMapConsumer=DCe().SourceMapConsumer;TP.SourceNode=LCe().SourceNode});var qCe=b((PP,UCe)=>{"use strict";PP.__esModule=!0;var y4=Rs(),rf=void 0;try{(typeof define!="function"||!define.amd)&&(MCe=OCe(),rf=MCe.SourceNode)}catch{}var MCe;rf||(rf=i(function(t,e,r,n){this.src="",n&&this.add(n)},"SourceNode"),rf.prototype={add:i(function(e){y4.isArray(e)&&(e=e.join("")),this.src+=e},"add"),prepend:i(function(e){y4.isArray(e)&&(e=e.join("")),this.src=e+this.src},"prepend"),toStringWithSourceMap:i(function(){return{code:this.toString()}},"toStringWithSourceMap"),toString:i(function(){return this.src},"toString")});function g4(t,e,r){if(y4.isArray(t)){for(var n=[],s=0,o=t.length;s{"use strict";vP.__esModule=!0;function HCe(t){return t&&t.__esModule?t:{default:t}}i(HCe,"_interopRequireDefault");var $Ce=dP(),DAt=Go(),E4=HCe(DAt),kAt=Rs(),LAt=qCe(),GCe=HCe(LAt);function Sg(t){this.value=t}i(Sg,"Literal");function Bg(){}i(Bg,"JavaScriptCompiler");Bg.prototype={nameLookup:i(function(e,r){return this.internalNameLookup(e,r)},"nameLookup"),depthedLookup:i(function(e){return[this.aliasable("container.lookup"),"(depths, ",JSON.stringify(e),")"]},"depthedLookup"),compilerInfo:i(function(){var e=$Ce.COMPILER_REVISION,r=$Ce.REVISION_CHANGES[e];return[e,r]},"compilerInfo"),appendToBuffer:i(function(e,r,n){return kAt.isArray(e)||(e=[e]),e=this.source.wrap(e,r),this.environment.isSimple?["return ",e,";"]:n?["buffer += ",e,";"]:(e.appendToBuffer=!0,e)},"appendToBuffer"),initializeBuffer:i(function(){return this.quotedString("")},"initializeBuffer"),internalNameLookup:i(function(e,r){return this.lookupPropertyFunctionIsUsed=!0,["lookupProperty(",e,",",JSON.stringify(r),")"]},"internalNameLookup"),lookupPropertyFunctionIsUsed:!1,compile:i(function(e,r,n,s){this.environment=e,this.options=r,this.stringParams=this.options.stringParams,this.trackIds=this.options.trackIds,this.precompile=!s,this.name=this.environment.name,this.isChild=!!n,this.context=n||{decorators:[],programs:[],environments:[]},this.preamble(),this.stackSlot=0,this.stackVars=[],this.aliases={},this.registers={list:[]},this.hashes=[],this.compileStack=[],this.inlineStack=[],this.blockParams=[],this.compileChildren(e,r),this.useDepths=this.useDepths||e.useDepths||e.useDecorators||this.options.compat,this.useBlockParams=this.useBlockParams||e.useBlockParams;var o=e.opcodes,a=void 0,c=void 0,l=void 0,u=void 0;for(l=0,u=o.length;l0&&(n+=", "+s.join(", "));var o=0;Object.keys(this.aliases).forEach(function(c){var l=r.aliases[c];l.children&&l.referenceCount>1&&(n+=", alias"+ ++o+"="+c,l.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var i=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&i.push("blockParams"),this.useDepths&&i.push("depths");var a=this.mergeSource(n);return e?(i.push(a),Function.apply(this,i)):this.source.wrap(["function(",i.join(","),`) { - `,a,"}"])},mergeSource:function(e){var r=this.environment.isSimple,n=!this.forceBuffer,s=void 0,o=void 0,i=void 0,a=void 0;return this.source.each(function(c){c.appendToBuffer?(i?c.prepend(" + "):i=c,a=c):(i&&(o?i.prepend("buffer += "):s=!0,a.add(";"),i=a=void 0),o=!0,r||(n=!1))}),n?i?(i.prepend("return "),a.add(";")):o||this.source.push('return "";'):(e+=", buffer = "+(s?"":this.initializeBuffer()),i?(i.prepend("return buffer + "),a.add(";")):this.source.push("return buffer;")),e&&this.source.prepend("var "+e.substring(2)+(s?"":`; -`)),this.source.merge()},lookupPropertyFunctionVarDeclaration:function(){return` +`),this.decorators=this.decorators.merge()));var d=this.createFunctionContext(s);if(this.isChild)return d;var p={compiler:this.compilerInfo(),main:d};this.decorators&&(p.main_d=this.decorators,p.useDecorators=!0);var m=this.context,f=m.programs,g=m.decorators;for(l=0,u=f.length;l0&&(n+=", "+s.join(", "));var o=0;Object.keys(this.aliases).forEach(function(l){var u=r.aliases[l];u.children&&u.referenceCount>1&&(n+=", alias"+ ++o+"="+l,u.children[0]="alias"+o)}),this.lookupPropertyFunctionIsUsed&&(n+=", "+this.lookupPropertyFunctionVarDeclaration());var a=["container","depth0","helpers","partials","data"];(this.useBlockParams||this.useDepths)&&a.push("blockParams"),this.useDepths&&a.push("depths");var c=this.mergeSource(n);return e?(a.push(c),Function.apply(this,a)):this.source.wrap(["function(",a.join(","),`) { + `,c,"}"])},"createFunctionContext"),mergeSource:i(function(e){var r=this.environment.isSimple,n=!this.forceBuffer,s=void 0,o=void 0,a=void 0,c=void 0;return this.source.each(function(l){l.appendToBuffer?(a?l.prepend(" + "):a=l,c=l):(a&&(o?a.prepend("buffer += "):s=!0,c.add(";"),a=c=void 0),o=!0,r||(n=!1))}),n?a?(a.prepend("return "),c.add(";")):o||this.source.push('return "";'):(e+=", buffer = "+(s?"":this.initializeBuffer()),a?(a.prepend("return buffer + "),c.add(";")):this.source.push("return buffer;")),e&&this.source.prepend("var "+e.substring(2)+(s?"":`; +`)),this.source.merge()},"mergeSource"),lookupPropertyFunctionVarDeclaration:i(function(){return` lookupProperty = container.lookupProperty || function(parent, propertyName) { if (Object.prototype.hasOwnProperty.call(parent, propertyName)) { return parent[propertyName]; } return undefined } - `.trim()},blockValue:function(e){var r=this.aliasable("container.hooks.blockHelperMissing"),n=[this.contextName(0)];this.setupHelperArgs(e,0,n);var s=this.popStack();n.splice(1,0,s),this.push(this.source.functionCall(r,"call",n))},ambiguousBlockValue:function(){var e=this.aliasable("container.hooks.blockHelperMissing"),r=[this.contextName(0)];this.setupHelperArgs("",0,r,!0),this.flushInline();var n=this.topStack();r.splice(1,0,n),this.pushSource(["if (!",this.lastHelper,") { ",n," = ",this.source.functionCall(e,"call",r),"}"])},appendContent:function(e){this.pendingContent?e=this.pendingContent+e:this.pendingLocation=this.source.currentLocation,this.pendingContent=e},append:function(){if(this.isInline())this.replaceStack(function(r){return[" != null ? ",r,' : ""']}),this.pushSource(this.appendToBuffer(this.popStack()));else{var e=this.popStack();this.pushSource(["if (",e," != null) { ",this.appendToBuffer(e,void 0,!0)," }"]),this.environment.isSimple&&this.pushSource(["else { ",this.appendToBuffer("''",void 0,!0)," }"])}},appendEscaped:function(){this.pushSource(this.appendToBuffer([this.aliasable("container.escapeExpression"),"(",this.popStack(),")"]))},getContext:function(e){this.lastContext=e},pushContext:function(){this.pushStackLiteral(this.contextName(this.lastContext))},lookupOnContext:function(e,r,n,s){var o=0;!s&&this.options.compat&&!this.lastContext?this.push(this.depthedLookup(e[o++])):this.pushContext(),this.resolvePath("context",e,o,r,n)},lookupBlockParam:function(e,r){this.useBlockParams=!0,this.push(["blockParams[",e[0],"][",e[1],"]"]),this.resolvePath("context",r,1)},lookupData:function(e,r,n){e?this.pushStackLiteral("container.data(data, "+e+")"):this.pushStackLiteral("data"),this.resolvePath("data",r,0,!0,n)},resolvePath:function(e,r,n,s,o){var i=this;if(this.options.strict||this.options.assumeObjects){this.push(kAt(this.options.strict&&o,this,r,n,e));return}for(var a=r.length,c=function(u){i.replaceStack(function(d){var p=i.nameLookup(d,r[u],e);return s?[" && ",p]:[" != null ? ",p," : ",d]})},l=n;lthis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},topStackName:function(){return"stack"+this.stackSlot},flushInline:function(){var e=this.inlineStack;this.inlineStack=[];for(var r=0,n=e.length;r{"use strict";vP.__esModule=!0;function ux(t){return t&&t.__esModule?t:{default:t}}var LAt=JEe(),OAt=ux(LAt),MAt=YV(),FAt=ux(MAt),E4=cCe(),C4=pCe(),UAt=zCe(),qAt=ux(UAt),$At=IP(),GAt=ux($At),HAt=GV(),zAt=ux(HAt),VAt=OAt.default.create;function VCe(){var t=VAt();return t.compile=function(e,r){return C4.compile(e,r,t)},t.precompile=function(e,r){return C4.precompile(e,r,t)},t.AST=FAt.default,t.Compiler=C4.Compiler,t.JavaScriptCompiler=qAt.default,t.Parser=E4.parser,t.parse=E4.parse,t.parseWithoutProcessing=E4.parseWithoutProcessing,t}var Bg=VCe();Bg.create=VCe;zAt.default(Bg);Bg.Visitor=GAt.default;Bg.default=Bg;vP.default=Bg;YCe.exports=vP.default});var jCe=w(_P=>{"use strict";_P.__esModule=!0;_P.print=JAt;_P.PrintVisitor=Rr;function YAt(t){return t&&t.__esModule?t:{default:t}}var WAt=IP(),jAt=YAt(WAt);function JAt(t){return new Rr().accept(t)}function Rr(){this.padding=0}Rr.prototype=new jAt.default;Rr.prototype.pad=function(t){for(var e="",r=0,n=this.padding;r "+e+" }}")};Rr.prototype.PartialBlockStatement=function(t){var e="PARTIAL BLOCK:"+t.name.original;return t.params[0]&&(e+=" "+this.accept(t.params[0])),t.hash&&(e+=" "+this.accept(t.hash)),e+=" "+this.pad("PROGRAM:"),this.padding++,e+=this.accept(t.program),this.padding--,this.pad("{{> "+e+" }}")};Rr.prototype.ContentStatement=function(t){return this.pad("CONTENT[ '"+t.value+"' ]")};Rr.prototype.CommentStatement=function(t){return this.pad("{{! '"+t.value+"' }}")};Rr.prototype.SubExpression=function(t){for(var e=t.params,r=[],n=void 0,s=0,o=e.length;s{"use strict";Object.defineProperty(OP,"__esModule",{value:!0});OP.getProxyUrl=sht;OP.checkBypass=dIe;function sht(t){let e=t.protocol==="https:";if(dIe(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new LP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new LP(`http://${r}`)}else return}function dIe(t){if(!t.hostname)return!1;let e=t.hostname;if(oht(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(i=>i.trim().toUpperCase()).filter(i=>i))if(o==="*"||s.some(i=>i===o||i.endsWith(`.${o}`)||o.startsWith(".")&&i.endsWith(`${o}`)))return!0;return!1}function oht(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}var LP=class extends URL{constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var fIe=w(sr=>{"use strict";var iht=sr&&sr.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),aht=sr&&sr.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),qP=sr&&sr.__importStar||(function(){var t=function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)};return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;sFr(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return Fr(this,void 0,void 0,function*(){return new Promise(e=>Fr(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};sr.HttpClientResponse=UP;function Aht(t){return new URL(t).protocol==="https:"}var N4=class{constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return Fr(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return Fr(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return Fr(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return Fr(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return Fr(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return Fr(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return Fr(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return Fr(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return Fr(this,arguments,void 0,function*(r,n={}){n[Rs.Accept]=this._getExistingOrDefaultHeader(n,Rs.Accept,fu.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return Fr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Rs.Accept]=this._getExistingOrDefaultHeader(o,Rs.Accept,fu.ApplicationJson),o[Rs.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,fu.ApplicationJson);let a=yield this.post(n,i,o);return this._processResponse(a,this.requestOptions)})}putJson(e,r){return Fr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Rs.Accept]=this._getExistingOrDefaultHeader(o,Rs.Accept,fu.ApplicationJson),o[Rs.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,fu.ApplicationJson);let a=yield this.put(n,i,o);return this._processResponse(a,this.requestOptions)})}patchJson(e,r){return Fr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Rs.Accept]=this._getExistingOrDefaultHeader(o,Rs.Accept,fu.ApplicationJson),o[Rs.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,fu.ApplicationJson);let a=yield this.patch(n,i,o);return this._processResponse(a,this.requestOptions)})}request(e,r,n,s){return Fr(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),i=this._prepareRequest(e,o,s),a=this._allowRetries&&pht.includes(e)?this._maxRetries+1:1,c=0,l;do{if(l=yield this.requestRaw(i,n),l&&l.message&&l.message.statusCode===Pi.Unauthorized){let d;for(let p of this.handlers)if(p.canHandleAuthentication(l)){d=p;break}return d?d.handleAuthentication(this,i,n):l}let u=this._maxRedirects;for(;l.message.statusCode&&uht.includes(l.message.statusCode)&&this._allowRedirects&&u>0;){let d=l.message.headers.location;if(!d)break;let p=new URL(d);if(o.protocol==="https:"&&o.protocol!==p.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 l.readBody(),p.hostname!==o.hostname)for(let m in s)m.toLowerCase()==="authorization"&&delete s[m];i=this._prepareRequest(e,p,s),l=yield this.requestRaw(i,n),u--}if(!l.message.statusCode||!dht.includes(l.message.statusCode))return l;c+=1,c{function o(i,a){i?s(i):a?n(a):s(new Error("Unknown error"))}this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(c,l){s||(s=!0,n(c,l))}let i=e.httpModule.request(e.options,c=>{let l=new UP(c);o(void 0,l)}),a;i.on("socket",c=>{a=c}),i.setTimeout(this._socketTimeout||3*6e4,()=>{a&&a.end(),o(new Error(`Request timeout: ${e.options.path}`))}),i.on("error",function(c){o(c)}),r&&typeof r=="string"&&i.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){i.end()}),r.pipe(i)):i.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=R4.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?mIe:B4;let i=o?443:80;if(s.options={},s.options.host=s.parsedUrl.hostname,s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):i,s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||""),s.options.method=e,s.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(s.options.headers["user-agent"]=this.userAgent),s.options.agent=this._getAgent(s.parsedUrl),this.handlers)for(let a of this.handlers)a.prepareRequest(s.options);return s}_mergeHeaders(e){return this.requestOptions&&this.requestOptions.headers?Object.assign({},mx(this.requestOptions.headers),mx(e||{})):mx(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let i=mx(this.requestOptions.headers)[r];i&&(s=typeof i=="number"?i.toString():i)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=mx(this.requestOptions.headers)[Rs.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[Rs.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=R4.getProxyUrl(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",i=100;if(this.requestOptions&&(i=this.requestOptions.maxSockets||B4.globalAgent.maxSockets),n&&n.hostname){let a={maxSockets:i,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},c,l=n.protocol==="https:";o?c=l?MP.httpsOverHttps:MP.httpsOverHttp:c=l?MP.httpOverHttps:MP.httpOverHttp,r=c(a),this._proxyAgent=r}if(!r){let a={keepAlive:this._keepAlive,maxSockets:i};r=o?new mIe.Agent(a):new B4.Agent(a),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new cht.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return Fr(this,void 0,void 0,function*(){e=Math.min(mht,e);let r=fht*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return Fr(this,void 0,void 0,function*(){return new Promise((n,s)=>Fr(this,void 0,void 0,function*(){let o=e.message.statusCode||0,i={statusCode:o,result:null,headers:{}};o===Pi.NotFound&&n(i);function a(u,d){if(typeof d=="string"){let p=new Date(d);if(!isNaN(p.valueOf()))return p}return d}let c,l;try{l=yield e.readBody(),l&&l.length>0&&(r&&r.deserializeDates?c=JSON.parse(l,a):c=JSON.parse(l),i.result=c),i.headers=e.message.headers}catch{}if(o>299){let u;c&&c.message?u=c.message:l&&l.length>0?u=l:u=`Failed request: (${o})`;let d=new FP(u,o);d.result=i.result,s(d)}else n(i)}))})}};sr.HttpClient=N4;var mx=t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{})});var LIe=w((jrr,Ax)=>{"use strict";var zP=function(){};zP.prototype=Object.create(null);var GP=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,HP=/\\([\v\u0020-\u00ff])/gu,QIe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,rf={type:"",parameters:new zP};Object.freeze(rf.parameters);Object.freeze(rf);function DIe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(QIe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new zP};if(e===-1)return n;let s,o,i;for(GP.lastIndex=e;o=GP.exec(t);){if(o.index!==e)throw new TypeError("invalid parameter format");e+=o[0].length,s=o[1].toLowerCase(),i=o[2],i[0]==='"'&&(i=i.slice(1,i.length-1),HP.test(i)&&(i=i.replace(HP,"$1"))),n.parameters[s]=i}if(e!==t.length)throw new TypeError("invalid parameter format");return n}function kIe(t){if(typeof t!="string")return rf;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(QIe.test(r)===!1)return rf;let n={type:r.toLowerCase(),parameters:new zP};if(e===-1)return n;let s,o,i;for(GP.lastIndex=e;o=GP.exec(t);){if(o.index!==e)return rf;e+=o[0].length,s=o[1].toLowerCase(),i=o[2],i[0]==='"'&&(i=i.slice(1,i.length-1),HP.test(i)&&(i=i.replace(HP,"$1"))),n.parameters[s]=i}return e!==t.length?rf:n}Ax.exports.default={parse:DIe,safeParse:kIe};Ax.exports.parse=DIe;Ax.exports.safeParse=kIe;Ax.exports.defaultContentType=rf});var Ex,Uc,dxe=C(()=>{Ex={warningEmitted:!1},Uc=t=>{if(t&&!Ex.warningEmitted){if(process.env.AWS_SDK_JS_NODE_VERSION_SUPPORT_WARNING_DISABLED==="true"){Ex.warningEmitted=!0;return}let e=parseInt(t.substring(1,t.indexOf("."))),r=22;ethis.stackVars.length&&this.stackVars.push("stack"+this.stackSlot),this.topStackName()},"incrStack"),topStackName:i(function(){return"stack"+this.stackSlot},"topStackName"),flushInline:i(function(){var e=this.inlineStack;this.inlineStack=[];for(var r=0,n=e.length;r{"use strict";_P.__esModule=!0;function px(t){return t&&t.__esModule?t:{default:t}}i(px,"_interopRequireDefault");var MAt=KEe(),FAt=px(MAt),UAt=WV(),qAt=px(UAt),C4=lCe(),I4=mCe(),$At=VCe(),GAt=px($At),HAt=xP(),zAt=px(HAt),VAt=HV(),YAt=px(VAt),WAt=FAt.default.create;function YCe(){var t=WAt();return t.compile=function(e,r){return I4.compile(e,r,t)},t.precompile=function(e,r){return I4.precompile(e,r,t)},t.AST=qAt.default,t.Compiler=I4.Compiler,t.JavaScriptCompiler=GAt.default,t.Parser=C4.parser,t.parse=C4.parse,t.parseWithoutProcessing=C4.parseWithoutProcessing,t}i(YCe,"create");var Rg=YCe();Rg.create=YCe;YAt.default(Rg);Rg.Visitor=zAt.default;Rg.default=Rg;_P.default=Rg;WCe.exports=_P.default});var JCe=b(QP=>{"use strict";QP.__esModule=!0;QP.print=XAt;QP.PrintVisitor=Nr;function jAt(t){return t&&t.__esModule?t:{default:t}}i(jAt,"_interopRequireDefault");var JAt=xP(),KAt=jAt(JAt);function XAt(t){return new Nr().accept(t)}i(XAt,"print");function Nr(){this.padding=0}i(Nr,"PrintVisitor");Nr.prototype=new KAt.default;Nr.prototype.pad=function(t){for(var e="",r=0,n=this.padding;r "+e+" }}")};Nr.prototype.PartialBlockStatement=function(t){var e="PARTIAL BLOCK:"+t.name.original;return t.params[0]&&(e+=" "+this.accept(t.params[0])),t.hash&&(e+=" "+this.accept(t.hash)),e+=" "+this.pad("PROGRAM:"),this.padding++,e+=this.accept(t.program),this.padding--,this.pad("{{> "+e+" }}")};Nr.prototype.ContentStatement=function(t){return this.pad("CONTENT[ '"+t.value+"' ]")};Nr.prototype.CommentStatement=function(t){return this.pad("{{! '"+t.value+"' }}")};Nr.prototype.SubExpression=function(t){for(var e=t.params,r=[],n=void 0,s=0,o=e.length;s{"use strict";Object.defineProperty(MP,"__esModule",{value:!0});MP.getProxyUrl=iht;MP.checkBypass=pIe;function iht(t){let e=t.protocol==="https:";if(pIe(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new OP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new OP(`http://${r}`)}else return}i(iht,"getProxyUrl");function pIe(t){if(!t.hostname)return!1;let e=t.hostname;if(aht(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(o==="*"||s.some(a=>a===o||a.endsWith(`.${o}`)||o.startsWith(".")&&a.endsWith(`${o}`)))return!0;return!1}i(pIe,"checkBypass");function aht(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}i(aht,"isLoopbackAddress");var OP=class extends URL{static{i(this,"DecodedURL")}constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}}});var AIe=b(or=>{"use strict";var cht=or&&or.__createBinding||(Object.create?(function(t,e,r,n){n===void 0&&(n=r);var s=Object.getOwnPropertyDescriptor(e,r);(!s||("get"in s?!e.__esModule:s.writable||s.configurable))&&(s={enumerable:!0,get:i(function(){return e[r]},"get")}),Object.defineProperty(t,n,s)}):(function(t,e,r,n){n===void 0&&(n=r),t[n]=e[r]})),lht=or&&or.__setModuleDefault||(Object.create?(function(t,e){Object.defineProperty(t,"default",{enumerable:!0,value:e})}):function(t,e){t.default=e}),$P=or&&or.__importStar||(function(){var t=i(function(e){return t=Object.getOwnPropertyNames||function(r){var n=[];for(var s in r)Object.prototype.hasOwnProperty.call(r,s)&&(n[n.length]=s);return n},t(e)},"ownKeys");return function(e){if(e&&e.__esModule)return e;var r={};if(e!=null)for(var n=t(e),s=0;sUr(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return Ur(this,void 0,void 0,function*(){return new Promise(e=>Ur(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};or.HttpClientResponse=qP;function ght(t){return new URL(t).protocol==="https:"}i(ght,"isHttps");var T4=class{static{i(this,"HttpClient")}constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return Ur(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return Ur(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return Ur(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return Ur(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return Ur(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return Ur(this,arguments,void 0,function*(r,n={}){n[Ns.Accept]=this._getExistingOrDefaultHeader(n,Ns.Accept,Au.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let c=yield this.post(n,a,o);return this._processResponse(c,this.requestOptions)})}putJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let c=yield this.put(n,a,o);return this._processResponse(c,this.requestOptions)})}patchJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let c=yield this.patch(n,a,o);return this._processResponse(c,this.requestOptions)})}request(e,r,n,s){return Ur(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),a=this._prepareRequest(e,o,s),c=this._allowRetries&&fht.includes(e)?this._maxRetries+1:1,l=0,u;do{if(u=yield this.requestRaw(a,n),u&&u.message&&u.message.statusCode===vi.Unauthorized){let p;for(let m of this.handlers)if(m.canHandleAuthentication(u)){p=m;break}return p?p.handleAuthentication(this,a,n):u}let d=this._maxRedirects;for(;u.message.statusCode&&pht.includes(u.message.statusCode)&&this._allowRedirects&&d>0;){let p=u.message.headers.location;if(!p)break;let m=new URL(p);if(o.protocol==="https:"&&o.protocol!==m.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 u.readBody(),m.hostname!==o.hostname)for(let f in s)f.toLowerCase()==="authorization"&&delete s[f];a=this._prepareRequest(e,m,s),u=yield this.requestRaw(a,n),d--}if(!u.message.statusCode||!mht.includes(u.message.statusCode))return u;l+=1,l{function o(a,c){a?s(a):c?n(c):s(new Error("Unknown error"))}i(o,"callbackForResult"),this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(l,u){s||(s=!0,n(l,u))}i(o,"handleResult");let a=e.httpModule.request(e.options,l=>{let u=new qP(l);o(void 0,u)}),c;a.on("socket",l=>{c=l}),a.setTimeout(this._socketTimeout||3*6e4,()=>{c&&c.end(),o(new Error(`Request timeout: ${e.options.path}`))}),a.on("error",function(l){o(l)}),r&&typeof r=="string"&&a.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){a.end()}),r.pipe(a)):a.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=N4.getProxyUrl(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?fIe:R4;let a=o?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(n),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({},Ax(this.requestOptions.headers),Ax(e||{})):Ax(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let a=Ax(this.requestOptions.headers)[r];a&&(s=typeof a=="number"?a.toString():a)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=Ax(this.requestOptions.headers)[Ns.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[Ns.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=N4.getProxyUrl(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||R4.globalAgent.maxSockets),n&&n.hostname){let c={maxSockets:a,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},l,u=n.protocol==="https:";o?l=u?FP.httpsOverHttps:FP.httpsOverHttp:l=u?FP.httpOverHttps:FP.httpOverHttp,r=l(c),this._proxyAgent=r}if(!r){let c={keepAlive:this._keepAlive,maxSockets:a};r=o?new fIe.Agent(c):new R4.Agent(c),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new uht.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return Ur(this,void 0,void 0,function*(){e=Math.min(Aht,e);let r=hht*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return Ur(this,void 0,void 0,function*(){return new Promise((n,s)=>Ur(this,void 0,void 0,function*(){let o=e.message.statusCode||0,a={statusCode:o,result:null,headers:{}};o===vi.NotFound&&n(a);function c(d,p){if(typeof p=="string"){let m=new Date(p);if(!isNaN(m.valueOf()))return m}return p}i(c,"dateTimeDeserializer");let l,u;try{u=yield e.readBody(),u&&u.length>0&&(r&&r.deserializeDates?l=JSON.parse(u,c):l=JSON.parse(u),a.result=l),a.headers=e.message.headers}catch{}if(o>299){let d;l&&l.message?d=l.message:u&&u.length>0?d=u:d=`Failed request: (${o})`;let p=new UP(d,o);p.result=a.result,s(p)}else n(a)}))})}};or.HttpClient=T4;var Ax=i(t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{}),"lowercaseKeys")});var OIe=b((ofr,gx)=>{"use strict";var VP=i(function(){},"NullObject");VP.prototype=Object.create(null);var HP=/; *([!#$%&'*+.^\w`|~-]+)=("(?:[\v\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\v\u0020-\u00ff])*"|[!#$%&'*+.^\w`|~-]+) */gu,zP=/\\([\v\u0020-\u00ff])/gu,DIe=/^[!#$%&'*+.^\w|~-]+\/[!#$%&'*+.^\w|~-]+$/u,nf={type:"",parameters:new VP};Object.freeze(nf.parameters);Object.freeze(nf);function kIe(t){if(typeof t!="string")throw new TypeError("argument header is required and must be a string");let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(DIe.test(r)===!1)throw new TypeError("invalid media type");let n={type:r.toLowerCase(),parameters:new VP};if(e===-1)return n;let s,o,a;for(HP.lastIndex=e;o=HP.exec(t);){if(o.index!==e)throw new TypeError("invalid parameter format");e+=o[0].length,s=o[1].toLowerCase(),a=o[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zP.test(a)&&(a=a.replace(zP,"$1"))),n.parameters[s]=a}if(e!==t.length)throw new TypeError("invalid parameter format");return n}i(kIe,"parse");function LIe(t){if(typeof t!="string")return nf;let e=t.indexOf(";"),r=e!==-1?t.slice(0,e).trim():t.trim();if(DIe.test(r)===!1)return nf;let n={type:r.toLowerCase(),parameters:new VP};if(e===-1)return n;let s,o,a;for(HP.lastIndex=e;o=HP.exec(t);){if(o.index!==e)return nf;e+=o[0].length,s=o[1].toLowerCase(),a=o[2],a[0]==='"'&&(a=a.slice(1,a.length-1),zP.test(a)&&(a=a.replace(zP,"$1"))),n.parameters[s]=a}return e!==t.length?nf:n}i(LIe,"safeParse");gx.exports.default={parse:kIe,safeParse:LIe};gx.exports.parse=kIe;gx.exports.safeParse=LIe;gx.exports.defaultContentType=nf});var Ix,qc,pxe=I(()=>{Ix={warningEmitted:!1},qc=i(t=>{if(t&&!Ix.warningEmitted){if(process.env.AWS_SDK_JS_NODE_VERSION_SUPPORT_WARNING_DISABLED==="true"){Ix.warningEmitted=!0;return}let e=parseInt(t.substring(1,t.indexOf("."))),r=22;e=${r}. You are running node ${t}. To continue receiving updates to AWS services, bug fixes, and security updates please upgrade to node >=${r}. -More information can be found at: https://a.co/c895JFp`))}}});var Rgt,Ngt,pxe,mxe=C(()=>{Rgt=()=>(t,e)=>async r=>(e.__retryLongPoll=!0,t(r)),Ngt={name:"longPollMiddleware",tags:["RETRY"],step:"initialize",override:!0},pxe=t=>({applyToStack:e=>{e.add(Rgt(),Ngt)}})});function Hd(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var fxe=C(()=>{});var Axe,J4,hxe=C(()=>{Axe=require("node:stream"),J4=t=>t?.body instanceof Axe.Readable||typeof ReadableStream<"u"&&t?.body instanceof ReadableStream});var af,zd,Vd,gxe,yxe,KP=C(()=>{af=(t,e)=>{let r=[];if(t&&r.push(t),e)for(let n of e)r.push(n);return r},zd=(t,e)=>`${t||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,Vd=()=>{let t=[],e=[],r=!1,n=new Set,s=d=>d.sort((p,m)=>gxe[m.step]-gxe[p.step]||yxe[m.priority||"normal"]-yxe[p.priority||"normal"]),o=d=>{let p=!1,m=h=>{let y=af(h.name,h.aliases);if(y.includes(d)){p=!0;for(let I of y)n.delete(I);return!1}return!0};return t=t.filter(m),e=e.filter(m),p},i=d=>{let p=!1,m=h=>{if(h.middleware===d){p=!0;for(let y of af(h.name,h.aliases))n.delete(y);return!1}return!0};return t=t.filter(m),e=e.filter(m),p},a=d=>(t.forEach(p=>{d.add(p.middleware,{...p})}),e.forEach(p=>{d.addRelativeTo(p.middleware,{...p})}),d.identifyOnResolve?.(u.identifyOnResolve()),d),c=d=>{let p=[];return d.before.forEach(m=>{m.before.length===0&&m.after.length===0?p.push(m):p.push(...c(m))}),p.push(d),d.after.reverse().forEach(m=>{m.before.length===0&&m.after.length===0?p.push(m):p.push(...c(m))}),p},l=(d=!1)=>{let p=[],m=[],h={};return t.forEach(I=>{let x={...I,before:[],after:[]};for(let b of af(x.name,x.aliases))h[b]=x;p.push(x)}),e.forEach(I=>{let x={...I,before:[],after:[]};for(let b of af(x.name,x.aliases))h[b]=x;m.push(x)}),m.forEach(I=>{if(I.toMiddleware){let x=h[I.toMiddleware];if(x===void 0){if(d)return;throw new Error(`${I.toMiddleware} is not found when adding ${zd(I.name,I.aliases)} middleware ${I.relation} ${I.toMiddleware}`)}I.relation==="after"&&x.after.push(I),I.relation==="before"&&x.before.push(I)}}),s(p).map(c).reduce((I,x)=>(I.push(...x),I),[])},u={add:(d,p={})=>{let{name:m,override:h,aliases:y}=p,I={step:"initialize",priority:"normal",middleware:d,...p},x=af(m,y);if(x.length>0){if(x.some(b=>n.has(b))){if(!h)throw new Error(`Duplicate middleware name '${zd(m,y)}'`);for(let b of x){let T=t.findIndex(U=>U.name===b||U.aliases?.some(O=>O===b));if(T===-1)continue;let _=t[T];if(_.step!==I.step||I.priority!==_.priority)throw new Error(`"${zd(_.name,_.aliases)}" middleware with ${_.priority} priority in ${_.step} step cannot be overridden by "${zd(m,y)}" middleware with ${I.priority} priority in ${I.step} step.`);t.splice(T,1)}}for(let b of x)n.add(b)}t.push(I)},addRelativeTo:(d,p)=>{let{name:m,override:h,aliases:y}=p,I={middleware:d,...p},x=af(m,y);if(x.length>0){if(x.some(b=>n.has(b))){if(!h)throw new Error(`Duplicate middleware name '${zd(m,y)}'`);for(let b of x){let T=e.findIndex(U=>U.name===b||U.aliases?.some(O=>O===b));if(T===-1)continue;let _=e[T];if(_.toMiddleware!==I.toMiddleware||_.relation!==I.relation)throw new Error(`"${zd(_.name,_.aliases)}" middleware ${_.relation} "${_.toMiddleware}" middleware cannot be overridden by "${zd(m,y)}" middleware ${I.relation} "${I.toMiddleware}" middleware.`);e.splice(T,1)}}for(let b of x)n.add(b)}e.push(I)},clone:()=>a(Vd()),use:d=>{d.applyToStack(u)},remove:d=>typeof d=="string"?o(d):i(d),removeByTag:d=>{let p=!1,m=h=>{let{tags:y,name:I,aliases:x}=h;if(y&&y.includes(d)){let b=af(I,x);for(let T of b)n.delete(T);return p=!0,!1}return!0};return t=t.filter(m),e=e.filter(m),p},concat:d=>{let p=a(Vd());return p.use(d),p.identifyOnResolve(r||p.identifyOnResolve()||(d.identifyOnResolve?.()??!1)),p},applyToStack:a,identify:()=>l(!0).map(d=>{let p=d.step??d.relation+" "+d.toMiddleware;return zd(d.name,d.aliases)+" - "+p}),identifyOnResolve(d){return typeof d=="boolean"&&(r=d),r},resolve:(d,p)=>{for(let m of l().map(h=>h.middleware).reverse())d=m(d,p);return r&&console.log(u.identify()),d}};return u},gxe={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},yxe={high:3,normal:2,low:1}});var Ea=w(Mt=>{"use strict";Mt.HttpAuthLocation=void 0;(function(t){t.HEADER="header",t.QUERY="query"})(Mt.HttpAuthLocation||(Mt.HttpAuthLocation={}));Mt.HttpApiKeyAuthLocation=void 0;(function(t){t.HEADER="header",t.QUERY="query"})(Mt.HttpApiKeyAuthLocation||(Mt.HttpApiKeyAuthLocation={}));Mt.EndpointURLScheme=void 0;(function(t){t.HTTP="http",t.HTTPS="https"})(Mt.EndpointURLScheme||(Mt.EndpointURLScheme={}));Mt.AlgorithmId=void 0;(function(t){t.MD5="md5",t.CRC32="crc32",t.CRC32C="crc32c",t.SHA1="sha1",t.SHA256="sha256"})(Mt.AlgorithmId||(Mt.AlgorithmId={}));var Tgt=t=>{let e=[];return t.sha256!==void 0&&e.push({algorithmId:()=>Mt.AlgorithmId.SHA256,checksumConstructor:()=>t.sha256}),t.md5!=null&&e.push({algorithmId:()=>Mt.AlgorithmId.MD5,checksumConstructor:()=>t.md5}),{addChecksumAlgorithm(r){e.push(r)},checksumAlgorithms(){return e}}},Pgt=t=>{let e={};return t.checksumAlgorithms().forEach(r=>{e[r.algorithmId()]=r.checksumConstructor()}),e},vgt=t=>Tgt(t),_gt=t=>Pgt(t);Mt.FieldPosition=void 0;(function(t){t[t.HEADER=0]="HEADER",t[t.TRAILER=1]="TRAILER"})(Mt.FieldPosition||(Mt.FieldPosition={}));var Qgt="__smithy_context";Mt.IniSectionType=void 0;(function(t){t.PROFILE="profile",t.SSO_SESSION="sso-session",t.SERVICES="services"})(Mt.IniSectionType||(Mt.IniSectionType={}));Mt.RequestHandlerProtocol=void 0;(function(t){t.HTTP_0_9="http/0.9",t.HTTP_1_0="http/1.0",t.TDS_8_0="tds/8.0"})(Mt.RequestHandlerProtocol||(Mt.RequestHandlerProtocol={}));Mt.SMITHY_CONTEXT_KEY=Qgt;Mt.getDefaultClientConfiguration=vgt;Mt.resolveDefaultRuntimeConfig=_gt});var K4,mr,Exe=C(()=>{K4=Q(Ea()),mr=t=>t[K4.SMITHY_CONTEXT_KEY]||(t[K4.SMITHY_CONTEXT_KEY]={})});var Ft,Cxe=C(()=>{Ft=t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e}});var Ixe,xxe=C(()=>{Ixe=t=>()=>{throw new Error(t)}});var wxe,bxe=C(()=>{wxe=t=>()=>Promise.reject(t)});var Qg,X4=C(()=>{Qg=()=>{let t=new WeakSet;return(e,r)=>{if(typeof r=="object"&&r!==null){if(t.has(r))return"[Circular]";t.add(r)}return r}}});var Sxe,Bxe=C(()=>{Sxe=t=>new Promise(e=>setTimeout(e,t*1e3))});var XP,Ho,Rxe,ZP=C(()=>{X4();XP={minDelay:2,maxDelay:120};(function(t){t.ABORTED="ABORTED",t.FAILURE="FAILURE",t.SUCCESS="SUCCESS",t.RETRY="RETRY",t.TIMEOUT="TIMEOUT"})(Ho||(Ho={}));Rxe=t=>{if(t.state===Ho.ABORTED){let e=new Error(`${JSON.stringify({...t,reason:"Request was aborted"},Qg())}`);throw e.name="AbortError",e}else if(t.state===Ho.TIMEOUT){let e=new Error(`${JSON.stringify({...t,reason:"Waiter has timed out"},Qg())}`);throw e.name="TimeoutError",e}else if(t.state!==Ho.SUCCESS)throw new Error(`${JSON.stringify(t,Qg())}`);return t}});var Nxe,Dgt,kgt,Lgt,Ogt,Txe=C(()=>{X4();Bxe();ZP();Nxe=async({minDelay:t,maxDelay:e,maxWaitTime:r,abortController:n,client:s,abortSignal:o},i,a)=>{let c={},[l,u]=[t*1e3,e*1e3],d=0,p=Date.now()+r*1e3,m=Date.now()+6e4,h=!1;for(;;){if(d>0){let x=Lgt(l,u,d,p);if(n?.signal?.aborted||o?.aborted){let b="AbortController signal aborted.";return c[b]|=0,c[b]+=1,{state:Ho.ABORTED,observedResponses:c}}if(Date.now()+x>p)return{state:Ho.TIMEOUT,observedResponses:c};await Sxe(x/1e3)}let{state:y,reason:I}=await a(s,i);if(I){let x=kgt(I);c[x]|=0,c[x]+=1}if(y!==Ho.RETRY)return{state:y,reason:I,final:I,observedResponses:c};d+=1,!h&&Date.now()>=m&&(Dgt(c,s),h=!0)}},Dgt=(t={},e)=>{let r=Object.keys(t),n=0,s=0;for(let a of r){let c=t[a]|0;n=Math.max(c,n),a.startsWith("403:")&&(s+=c)}let o=e?.config?.logger,i=typeof o?.warn=="function"&&!o.constructor?.name?.includes?.("NoOpLogger")?o:console;(s>=3||r[r.length-1]?.startsWith("403:"))&&i.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},kgt=t=>{let e=t?.$response?.statusCode??t?.$metadata?.httpStatusCode;return t?.$responseBodyText?`${e?e+": ":""}Deserialization error for body: ${t.$responseBodyText}`:e?t?.$response||t?.message?`${e??"Unknown"}: ${t?.message}`:`${e}: OK`:String(t?.message??JSON.stringify(t,Qg())??"Unknown")},Lgt=(t,e,r,n)=>{let s=Math.log(e/t)/Math.log(2)+1;if(r>s)return e;let o=t*2**(r-1),i=Math.min(o,e),a=Ogt(t,i);if(Date.now()+a>n){let c=n-Date.now();return Math.max(0,c-500)}return a},Ogt=(t,e)=>t+Math.random()*(e-t)});var Pxe,vxe=C(()=>{Pxe=t=>{if(t.maxWaitTime<=0)throw new Error("WaiterConfiguration.maxWaitTime must be greater than 0");if(t.minDelay<=0)throw new Error("WaiterConfiguration.minDelay must be greater than 0");if(t.maxDelay<=0)throw new Error("WaiterConfiguration.maxDelay must be greater than 0");if(t.maxWaitTime<=t.minDelay)throw new Error(`WaiterConfiguration.maxWaitTime [${t.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${t.minDelay}] for this waiter`);if(t.maxDelay{Txe();vxe();ZP();_xe=t=>{let e,r=new Promise(n=>{e=()=>n({state:Ho.ABORTED}),typeof t.addEventListener=="function"?t.addEventListener("abort",e):t.onabort=e});return{clearListener(){typeof t.removeEventListener=="function"&&t.removeEventListener("abort",e)},aborted:r}},Qxe=async(t,e,r)=>{let n={...XP,...t};Pxe(n);let s=[Nxe(n,e,r)],o=[];if(t.abortSignal){let{aborted:i,clearListener:a}=_xe(t.abortSignal);o.push(a),s.push(i)}if(t.abortController?.signal){let{aborted:i,clearListener:a}=_xe(t.abortController.signal);o.push(a),s.push(i)}return Promise.race(s).then(i=>{for(let a of o)a();return i})}});var Jn,kxe=C(()=>{KP();Jn=class{config;middlewareStack=Vd();initConfig;handlers;constructor(e){this.config=e;let{protocol:r,protocolSettings:n}=e;n&&typeof r=="function"&&(e.protocol=new r(n))}send(e,r,n){let s=typeof r!="function"?r:void 0,o=typeof r=="function"?r:n,i=s===void 0&&this.config.cacheMiddleware===!0,a;if(i){this.handlers||(this.handlers=new WeakMap);let c=this.handlers;c.has(e.constructor)?a=c.get(e.constructor):(a=e.resolveMiddleware(this.middlewareStack,this.config,s),c.set(e.constructor,a))}else delete this.handlers,a=e.resolveMiddleware(this.middlewareStack,this.config,s);if(o)a(e).then(c=>o(null,c.output),c=>o(c)).catch(()=>{});else return a(e).then(c=>c.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}});var Ca,Z4=C(()=>{Ca=t=>typeof t=="function"?t():t});var ev,eY=C(()=>{ev=t=>typeof ArrayBuffer=="function"&&t instanceof ArrayBuffer||Object.prototype.toString.call(t)==="[object ArrayBuffer]"});var Ia,Yd,Wd=C(()=>{eY();Ia=(t,e=0,r=t.byteLength-e)=>{if(!ev(t))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof t} (${t})`);return Buffer.from(t,e,r)},Yd=(t,e)=>{if(typeof t!="string")throw new TypeError(`The "input" argument must be of type string. Received type ${typeof t} (${t})`);return e?Buffer.from(t,e):Buffer.from(t)}});var Mgt,qr,Lxe=C(()=>{Wd();Mgt=/^[A-Za-z0-9+/]*={0,2}$/,qr=t=>{if(t.length*3%4!==0)throw new TypeError("Incorrect padding on base64 string.");if(!Mgt.exec(t))throw new TypeError("Invalid base64 string.");let e=Yd(t,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)}});var $r,tv=C(()=>{Wd();$r=t=>{let e=Yd(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT)}});var fr,tY=C(()=>{Wd();tv();fr=t=>{let e;if(typeof t=="string"?e=$r(t):e=t,typeof e!="object"||typeof e.byteOffset!="number"||typeof e.byteLength!="number")throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return Ia(e.buffer,e.byteOffset,e.byteLength).toString("base64")}});function Oxe(t,e,r,n){return class rv extends Uint8Array{static fromString(o,i="utf-8"){if(typeof o=="string")return i==="base64"?rv.mutate(n(o)):rv.mutate(e(o));throw new Error(`Unsupported conversion from ${typeof o} to Uint8ArrayBlobAdapter.`)}static mutate(o){return Object.setPrototypeOf(o,rv.prototype),o}transformToString(o="utf-8"){return o==="base64"?r(this):t(this)}}}var Mxe=C(()=>{});var Ar,Fxe=C(()=>{Wd();Ar=t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return Ia(t.buffer,t.byteOffset,t.byteLength).toString("utf8")}});function Uxe(t){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?()=>crypto.randomUUID():()=>{let e=new Uint8Array(16);return t(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128,Kn[e[0]]+Kn[e[1]]+Kn[e[2]]+Kn[e[3]]+"-"+Kn[e[4]]+Kn[e[5]]+"-"+Kn[e[6]]+Kn[e[7]]+"-"+Kn[e[8]]+Kn[e[9]]+"-"+Kn[e[10]]+Kn[e[11]]+Kn[e[12]]+Kn[e[13]]+Kn[e[14]]+Kn[e[15]]}}var Kn,qxe=C(()=>{Kn=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"))});var $xe,Gxe=C(()=>{$xe=(t,e,r=n=>n)=>t});var Hxe,zxe,Dg,Fgt,Cx,kg,Vxe,nv,sv,ov,rY,Ugt,Yxe,nY,Wxe,av,Ix,jxe,cv,qgt,Og,lv,Jxe,Kxe,Xxe,Zxe,sY,ewe,twe,jd,uv,iv,Lg,oY=C(()=>{Hxe=t=>{switch(t){case"true":return!0;case"false":return!1;default:throw new Error(`Unable to parse boolean value "${t}"`)}},zxe=t=>{if(t!=null){if(typeof t=="number"){if((t===0||t===1)&&Lg.warn(iv(`Expected boolean, got ${typeof t}: ${t}`)),t===0)return!1;if(t===1)return!0}if(typeof t=="string"){let e=t.toLowerCase();if((e==="false"||e==="true")&&Lg.warn(iv(`Expected boolean, got ${typeof t}: ${t}`)),e==="false")return!1;if(e==="true")return!0}if(typeof t=="boolean")return t;throw new TypeError(`Expected boolean, got ${typeof t}: ${t}`)}},Dg=t=>{if(t!=null){if(typeof t=="string"){let e=parseFloat(t);if(!Number.isNaN(e))return String(e)!==String(t)&&Lg.warn(iv(`Expected number but observed string: ${t}`)),e}if(typeof t=="number")return t;throw new TypeError(`Expected number, got ${typeof t}: ${t}`)}},Fgt=Math.ceil(34028234663852886e22),Cx=t=>{let e=Dg(t);if(e!==void 0&&!Number.isNaN(e)&&e!==1/0&&e!==-1/0&&Math.abs(e)>Fgt)throw new TypeError(`Expected 32-bit float, got ${t}`);return e},kg=t=>{if(t!=null){if(Number.isInteger(t)&&!Number.isNaN(t))return t;throw new TypeError(`Expected integer, got ${typeof t}: ${t}`)}},Vxe=kg,nv=t=>rY(t,32),sv=t=>rY(t,16),ov=t=>rY(t,8),rY=(t,e)=>{let r=kg(t);if(r!==void 0&&Ugt(r,e)!==r)throw new TypeError(`Expected ${e}-bit integer, got ${t}`);return r},Ugt=(t,e)=>{switch(e){case 32:return Int32Array.of(t)[0];case 16:return Int16Array.of(t)[0];case 8:return Int8Array.of(t)[0]}},Yxe=(t,e)=>{if(t==null)throw e?new TypeError(`Expected a non-null value for ${e}`):new TypeError("Expected a non-null value");return t},nY=t=>{if(t==null)return;if(typeof t=="object"&&!Array.isArray(t))return t;let e=Array.isArray(t)?"array":typeof t;throw new TypeError(`Expected object, got ${e}: ${t}`)},Wxe=t=>{if(t!=null){if(typeof t=="string")return t;if(["boolean","number","bigint"].includes(typeof t))return Lg.warn(iv(`Expected string, got ${typeof t}: ${t}`)),String(t);throw new TypeError(`Expected string, got ${typeof t}: ${t}`)}},av=t=>{if(t==null)return;let e=nY(t),r=[];for(let n in e)e[n]!=null&&r.push(n);if(r.length===0)throw new TypeError("Unions must have exactly one non-null member. None were found.");if(r.length>1)throw new TypeError(`Unions must have exactly one non-null member. Keys ${r} were not null.`);return e},Ix=t=>Dg(typeof t=="string"?Og(t):t),jxe=Ix,cv=t=>Cx(typeof t=="string"?Og(t):t),qgt=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,Og=t=>{let e=t.match(qgt);if(e===null||e[0].length!==t.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(t)},lv=t=>typeof t=="string"?Zxe(t):Dg(t),Jxe=lv,Kxe=lv,Xxe=t=>typeof t=="string"?Zxe(t):Cx(t),Zxe=t=>{switch(t){case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-1/0;default:throw new Error(`Unable to parse float value: ${t}`)}},sY=t=>kg(typeof t=="string"?Og(t):t),ewe=sY,twe=t=>nv(typeof t=="string"?Og(t):t),jd=t=>sv(typeof t=="string"?Og(t):t),uv=t=>ov(typeof t=="string"?Og(t):t),iv=t=>String(new TypeError(t).stack||t).split(` +More information can be found at: https://a.co/c895JFp`))}},"emitWarningIfUnsupportedVersion")});var Tgt,Pgt,mxe,fxe=I(()=>{Tgt=i(()=>(t,e)=>async r=>(e.__retryLongPoll=!0,t(r)),"longPollMiddleware"),Pgt={name:"longPollMiddleware",tags:["RETRY"],step:"initialize",override:!0},mxe=i(t=>({applyToStack:i(e=>{e.add(Tgt(),Pgt)},"applyToStack")}),"getLongPollPlugin")});function zd(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var Axe=I(()=>{i(zd,"setCredentialFeature")});var hxe,K4,gxe=I(()=>{hxe=require("node:stream"),K4=i(t=>t?.body instanceof hxe.Readable||typeof ReadableStream<"u"&&t?.body instanceof ReadableStream,"isStreamingPayload")});var cf,Vd,Yd,yxe,Exe,XP=I(()=>{cf=i((t,e)=>{let r=[];if(t&&r.push(t),e)for(let n of e)r.push(n);return r},"getAllAliases"),Vd=i((t,e)=>`${t||"anonymous"}${e&&e.length>0?` (a.k.a. ${e.join(",")})`:""}`,"getMiddlewareNameWithAliases"),Yd=i(()=>{let t=[],e=[],r=!1,n=new Set,s=i(p=>p.sort((m,f)=>yxe[f.step]-yxe[m.step]||Exe[f.priority||"normal"]-Exe[m.priority||"normal"]),"sort"),o=i(p=>{let m=!1,f=i(g=>{let E=cf(g.name,g.aliases);if(E.includes(p)){m=!0;for(let x of E)n.delete(x);return!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByName"),a=i(p=>{let m=!1,f=i(g=>{if(g.middleware===p){m=!0;for(let E of cf(g.name,g.aliases))n.delete(E);return!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByReference"),c=i(p=>(t.forEach(m=>{p.add(m.middleware,{...m})}),e.forEach(m=>{p.addRelativeTo(m.middleware,{...m})}),p.identifyOnResolve?.(d.identifyOnResolve()),p),"cloneTo"),l=i(p=>{let m=[];return p.before.forEach(f=>{f.before.length===0&&f.after.length===0?m.push(f):m.push(...l(f))}),m.push(p),p.after.reverse().forEach(f=>{f.before.length===0&&f.after.length===0?m.push(f):m.push(...l(f))}),m},"expandRelativeMiddlewareList"),u=i((p=!1)=>{let m=[],f=[],g={};return t.forEach(x=>{let w={...x,before:[],after:[]};for(let S of cf(w.name,w.aliases))g[S]=w;m.push(w)}),e.forEach(x=>{let w={...x,before:[],after:[]};for(let S of cf(w.name,w.aliases))g[S]=w;f.push(w)}),f.forEach(x=>{if(x.toMiddleware){let w=g[x.toMiddleware];if(w===void 0){if(p)return;throw new Error(`${x.toMiddleware} is not found when adding ${Vd(x.name,x.aliases)} middleware ${x.relation} ${x.toMiddleware}`)}x.relation==="after"&&w.after.push(x),x.relation==="before"&&w.before.push(x)}}),s(m).map(l).reduce((x,w)=>(x.push(...w),x),[])},"getMiddlewareList"),d={add:i((p,m={})=>{let{name:f,override:g,aliases:E}=m,x={step:"initialize",priority:"normal",middleware:p,...m},w=cf(f,E);if(w.length>0){if(w.some(S=>n.has(S))){if(!g)throw new Error(`Duplicate middleware name '${Vd(f,E)}'`);for(let S of w){let P=t.findIndex(q=>q.name===S||q.aliases?.some(M=>M===S));if(P===-1)continue;let Q=t[P];if(Q.step!==x.step||x.priority!==Q.priority)throw new Error(`"${Vd(Q.name,Q.aliases)}" middleware with ${Q.priority} priority in ${Q.step} step cannot be overridden by "${Vd(f,E)}" middleware with ${x.priority} priority in ${x.step} step.`);t.splice(P,1)}}for(let S of w)n.add(S)}t.push(x)},"add"),addRelativeTo:i((p,m)=>{let{name:f,override:g,aliases:E}=m,x={middleware:p,...m},w=cf(f,E);if(w.length>0){if(w.some(S=>n.has(S))){if(!g)throw new Error(`Duplicate middleware name '${Vd(f,E)}'`);for(let S of w){let P=e.findIndex(q=>q.name===S||q.aliases?.some(M=>M===S));if(P===-1)continue;let Q=e[P];if(Q.toMiddleware!==x.toMiddleware||Q.relation!==x.relation)throw new Error(`"${Vd(Q.name,Q.aliases)}" middleware ${Q.relation} "${Q.toMiddleware}" middleware cannot be overridden by "${Vd(f,E)}" middleware ${x.relation} "${x.toMiddleware}" middleware.`);e.splice(P,1)}}for(let S of w)n.add(S)}e.push(x)},"addRelativeTo"),clone:i(()=>c(Yd()),"clone"),use:i(p=>{p.applyToStack(d)},"use"),remove:i(p=>typeof p=="string"?o(p):a(p),"remove"),removeByTag:i(p=>{let m=!1,f=i(g=>{let{tags:E,name:x,aliases:w}=g;if(E&&E.includes(p)){let S=cf(x,w);for(let P of S)n.delete(P);return m=!0,!1}return!0},"filterCb");return t=t.filter(f),e=e.filter(f),m},"removeByTag"),concat:i(p=>{let m=c(Yd());return m.use(p),m.identifyOnResolve(r||m.identifyOnResolve()||(p.identifyOnResolve?.()??!1)),m},"concat"),applyToStack:c,identify:i(()=>u(!0).map(p=>{let m=p.step??p.relation+" "+p.toMiddleware;return Vd(p.name,p.aliases)+" - "+m}),"identify"),identifyOnResolve(p){return typeof p=="boolean"&&(r=p),r},resolve:i((p,m)=>{for(let f of u().map(g=>g.middleware).reverse())p=f(p,m);return r&&console.log(d.identify()),p},"resolve")};return d},"constructStack"),yxe={initialize:5,serialize:4,build:3,finalizeRequest:2,deserialize:1},Exe={high:3,normal:2,low:1}});var Ca=b(Ft=>{"use strict";Ft.HttpAuthLocation=void 0;(function(t){t.HEADER="header",t.QUERY="query"})(Ft.HttpAuthLocation||(Ft.HttpAuthLocation={}));Ft.HttpApiKeyAuthLocation=void 0;(function(t){t.HEADER="header",t.QUERY="query"})(Ft.HttpApiKeyAuthLocation||(Ft.HttpApiKeyAuthLocation={}));Ft.EndpointURLScheme=void 0;(function(t){t.HTTP="http",t.HTTPS="https"})(Ft.EndpointURLScheme||(Ft.EndpointURLScheme={}));Ft.AlgorithmId=void 0;(function(t){t.MD5="md5",t.CRC32="crc32",t.CRC32C="crc32c",t.SHA1="sha1",t.SHA256="sha256"})(Ft.AlgorithmId||(Ft.AlgorithmId={}));var vgt=i(t=>{let e=[];return t.sha256!==void 0&&e.push({algorithmId:i(()=>Ft.AlgorithmId.SHA256,"algorithmId"),checksumConstructor:i(()=>t.sha256,"checksumConstructor")}),t.md5!=null&&e.push({algorithmId:i(()=>Ft.AlgorithmId.MD5,"algorithmId"),checksumConstructor:i(()=>t.md5,"checksumConstructor")}),{addChecksumAlgorithm(r){e.push(r)},checksumAlgorithms(){return e}}},"getChecksumConfiguration"),_gt=i(t=>{let e={};return t.checksumAlgorithms().forEach(r=>{e[r.algorithmId()]=r.checksumConstructor()}),e},"resolveChecksumRuntimeConfig"),Qgt=i(t=>vgt(t),"getDefaultClientConfiguration"),Dgt=i(t=>_gt(t),"resolveDefaultRuntimeConfig");Ft.FieldPosition=void 0;(function(t){t[t.HEADER=0]="HEADER",t[t.TRAILER=1]="TRAILER"})(Ft.FieldPosition||(Ft.FieldPosition={}));var kgt="__smithy_context";Ft.IniSectionType=void 0;(function(t){t.PROFILE="profile",t.SSO_SESSION="sso-session",t.SERVICES="services"})(Ft.IniSectionType||(Ft.IniSectionType={}));Ft.RequestHandlerProtocol=void 0;(function(t){t.HTTP_0_9="http/0.9",t.HTTP_1_0="http/1.0",t.TDS_8_0="tds/8.0"})(Ft.RequestHandlerProtocol||(Ft.RequestHandlerProtocol={}));Ft.SMITHY_CONTEXT_KEY=kgt;Ft.getDefaultClientConfiguration=Qgt;Ft.resolveDefaultRuntimeConfig=Dgt});var X4,fr,Cxe=I(()=>{X4=D(Ca()),fr=i(t=>t[X4.SMITHY_CONTEXT_KEY]||(t[X4.SMITHY_CONTEXT_KEY]={}),"getSmithyContext")});var Ut,Ixe=I(()=>{Ut=i(t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e},"normalizeProvider")});var xxe,wxe=I(()=>{xxe=i(t=>()=>{throw new Error(t)},"invalidFunction")});var bxe,Sxe=I(()=>{bxe=i(t=>()=>Promise.reject(t),"invalidProvider")});var Dg,Z4=I(()=>{Dg=i(()=>{let t=new WeakSet;return(e,r)=>{if(typeof r=="object"&&r!==null){if(t.has(r))return"[Circular]";t.add(r)}return r}},"getCircularReplacer")});var Bxe,Rxe=I(()=>{Bxe=i(t=>new Promise(e=>setTimeout(e,t*1e3)),"sleep")});var ZP,zo,Nxe,ev=I(()=>{Z4();ZP={minDelay:2,maxDelay:120};(function(t){t.ABORTED="ABORTED",t.FAILURE="FAILURE",t.SUCCESS="SUCCESS",t.RETRY="RETRY",t.TIMEOUT="TIMEOUT"})(zo||(zo={}));Nxe=i(t=>{if(t.state===zo.ABORTED){let e=new Error(`${JSON.stringify({...t,reason:"Request was aborted"},Dg())}`);throw e.name="AbortError",e}else if(t.state===zo.TIMEOUT){let e=new Error(`${JSON.stringify({...t,reason:"Waiter has timed out"},Dg())}`);throw e.name="TimeoutError",e}else if(t.state!==zo.SUCCESS)throw new Error(`${JSON.stringify(t,Dg())}`);return t},"checkExceptions")});var Txe,Lgt,Ogt,Mgt,Fgt,Pxe=I(()=>{Z4();Rxe();ev();Txe=i(async({minDelay:t,maxDelay:e,maxWaitTime:r,abortController:n,client:s,abortSignal:o},a,c)=>{let l={},[u,d]=[t*1e3,e*1e3],p=0,m=Date.now()+r*1e3,f=Date.now()+6e4,g=!1;for(;;){if(p>0){let w=Mgt(u,d,p,m);if(n?.signal?.aborted||o?.aborted){let S="AbortController signal aborted.";return l[S]|=0,l[S]+=1,{state:zo.ABORTED,observedResponses:l}}if(Date.now()+w>m)return{state:zo.TIMEOUT,observedResponses:l};await Bxe(w/1e3)}let{state:E,reason:x}=await c(s,a);if(x){let w=Ogt(x);l[w]|=0,l[w]+=1}if(E!==zo.RETRY)return{state:E,reason:x,final:x,observedResponses:l};p+=1,!g&&Date.now()>=f&&(Lgt(l,s),g=!0)}},"runPolling"),Lgt=i((t={},e)=>{let r=Object.keys(t),n=0,s=0;for(let c of r){let l=t[c]|0;n=Math.max(l,n),c.startsWith("403:")&&(s+=l)}let o=e?.config?.logger,a=typeof o?.warn=="function"&&!o.constructor?.name?.includes?.("NoOpLogger")?o:console;(s>=3||r[r.length-1]?.startsWith("403:"))&&a.warn("@smithy/util-waiter WARN - 403 status code encountered during waiter polling.")},"checkWarn403"),Ogt=i(t=>{let e=t?.$response?.statusCode??t?.$metadata?.httpStatusCode;return t?.$responseBodyText?`${e?e+": ":""}Deserialization error for body: ${t.$responseBodyText}`:e?t?.$response||t?.message?`${e??"Unknown"}: ${t?.message}`:`${e}: OK`:String(t?.message??JSON.stringify(t,Dg())??"Unknown")},"createMessageFromResponse"),Mgt=i((t,e,r,n)=>{let s=Math.log(e/t)/Math.log(2)+1;if(r>s)return e;let o=t*2**(r-1),a=Math.min(o,e),c=Fgt(t,a);if(Date.now()+c>n){let l=n-Date.now();return Math.max(0,l-500)}return c},"exponentialBackoffWithJitter"),Fgt=i((t,e)=>t+Math.random()*(e-t),"randomInRange")});var vxe,_xe=I(()=>{vxe=i(t=>{if(t.maxWaitTime<=0)throw new Error("WaiterConfiguration.maxWaitTime must be greater than 0");if(t.minDelay<=0)throw new Error("WaiterConfiguration.minDelay must be greater than 0");if(t.maxDelay<=0)throw new Error("WaiterConfiguration.maxDelay must be greater than 0");if(t.maxWaitTime<=t.minDelay)throw new Error(`WaiterConfiguration.maxWaitTime [${t.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${t.minDelay}] for this waiter`);if(t.maxDelay{Pxe();_xe();ev();Qxe=i(t=>{let e,r=new Promise(n=>{e=i(()=>n({state:zo.ABORTED}),"onAbort"),typeof t.addEventListener=="function"?t.addEventListener("abort",e):t.onabort=e});return{clearListener(){typeof t.removeEventListener=="function"&&t.removeEventListener("abort",e)},aborted:r}},"abortTimeout"),Dxe=i(async(t,e,r)=>{let n={...ZP,...t};vxe(n);let s=[Txe(n,e,r)],o=[];if(t.abortSignal){let{aborted:a,clearListener:c}=Qxe(t.abortSignal);o.push(c),s.push(a)}if(t.abortController?.signal){let{aborted:a,clearListener:c}=Qxe(t.abortController.signal);o.push(c),s.push(a)}return Promise.race(s).then(a=>{for(let c of o)c();return a})},"createWaiter")});var Kn,Lxe=I(()=>{XP();Kn=class{static{i(this,"Client")}config;middlewareStack=Yd();initConfig;handlers;constructor(e){this.config=e;let{protocol:r,protocolSettings:n}=e;n&&typeof r=="function"&&(e.protocol=new r(n))}send(e,r,n){let s=typeof r!="function"?r:void 0,o=typeof r=="function"?r:n,a=s===void 0&&this.config.cacheMiddleware===!0,c;if(a){this.handlers||(this.handlers=new WeakMap);let l=this.handlers;l.has(e.constructor)?c=l.get(e.constructor):(c=e.resolveMiddleware(this.middlewareStack,this.config,s),l.set(e.constructor,c))}else delete this.handlers,c=e.resolveMiddleware(this.middlewareStack,this.config,s);if(o)c(e).then(l=>o(null,l.output),l=>o(l)).catch(()=>{});else return c(e).then(l=>l.output)}destroy(){this.config?.requestHandler?.destroy?.(),delete this.handlers}}});var Ia,eY=I(()=>{Ia=i(t=>typeof t=="function"?t():t,"deref")});var tv,tY=I(()=>{tv=i(t=>typeof ArrayBuffer=="function"&&t instanceof ArrayBuffer||Object.prototype.toString.call(t)==="[object ArrayBuffer]","isArrayBuffer")});var xa,Wd,jd=I(()=>{tY();xa=i((t,e=0,r=t.byteLength-e)=>{if(!tv(t))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof t} (${t})`);return Buffer.from(t,e,r)},"fromArrayBuffer"),Wd=i((t,e)=>{if(typeof t!="string")throw new TypeError(`The "input" argument must be of type string. Received type ${typeof t} (${t})`);return e?Buffer.from(t,e):Buffer.from(t)},"fromString")});var Ugt,$r,Oxe=I(()=>{jd();Ugt=/^[A-Za-z0-9+/]*={0,2}$/,$r=i(t=>{if(t.length*3%4!==0)throw new TypeError("Incorrect padding on base64 string.");if(!Ugt.exec(t))throw new TypeError("Invalid base64 string.");let e=Wd(t,"base64");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength)},"fromBase64")});var Gr,rv=I(()=>{jd();Gr=i(t=>{let e=Wd(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT)},"fromUtf8")});var Ar,rY=I(()=>{jd();rv();Ar=i(t=>{let e;if(typeof t=="string"?e=Gr(t):e=t,typeof e!="object"||typeof e.byteOffset!="number"||typeof e.byteLength!="number")throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");return xa(e.buffer,e.byteOffset,e.byteLength).toString("base64")},"toBase64")});function Mxe(t,e,r,n){return class nv extends Uint8Array{static{i(this,"Uint8ArrayBlobAdapter")}static fromString(o,a="utf-8"){if(typeof o=="string")return a==="base64"?nv.mutate(n(o)):nv.mutate(e(o));throw new Error(`Unsupported conversion from ${typeof o} to Uint8ArrayBlobAdapter.`)}static mutate(o){return Object.setPrototypeOf(o,nv.prototype),o}transformToString(o="utf-8"){return o==="base64"?r(this):t(this)}}}var Fxe=I(()=>{i(Mxe,"bindUint8ArrayBlobAdapter")});var hr,Uxe=I(()=>{jd();hr=i(t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return xa(t.buffer,t.byteOffset,t.byteLength).toString("utf8")},"toUtf8")});function qxe(t){return typeof crypto<"u"&&typeof crypto.randomUUID=="function"?()=>crypto.randomUUID():()=>{let e=new Uint8Array(16);return t(e),e[6]=e[6]&15|64,e[8]=e[8]&63|128,Xn[e[0]]+Xn[e[1]]+Xn[e[2]]+Xn[e[3]]+"-"+Xn[e[4]]+Xn[e[5]]+"-"+Xn[e[6]]+Xn[e[7]]+"-"+Xn[e[8]]+Xn[e[9]]+"-"+Xn[e[10]]+Xn[e[11]]+Xn[e[12]]+Xn[e[13]]+Xn[e[14]]+Xn[e[15]]}}var Xn,$xe=I(()=>{Xn=Array.from({length:256},(t,e)=>e.toString(16).padStart(2,"0"));i(qxe,"bindV4")});var Gxe,Hxe=I(()=>{Gxe=i((t,e,r=n=>n)=>t,"copyDocumentWithTransform")});var zxe,Vxe,kg,qgt,xx,Lg,Yxe,sv,ov,iv,nY,$gt,Wxe,sY,jxe,cv,wx,Jxe,lv,Ggt,Mg,uv,Kxe,Xxe,Zxe,ewe,oY,twe,rwe,Jd,dv,av,Og,iY=I(()=>{zxe=i(t=>{switch(t){case"true":return!0;case"false":return!1;default:throw new Error(`Unable to parse boolean value "${t}"`)}},"parseBoolean"),Vxe=i(t=>{if(t!=null){if(typeof t=="number"){if((t===0||t===1)&&Og.warn(av(`Expected boolean, got ${typeof t}: ${t}`)),t===0)return!1;if(t===1)return!0}if(typeof t=="string"){let e=t.toLowerCase();if((e==="false"||e==="true")&&Og.warn(av(`Expected boolean, got ${typeof t}: ${t}`)),e==="false")return!1;if(e==="true")return!0}if(typeof t=="boolean")return t;throw new TypeError(`Expected boolean, got ${typeof t}: ${t}`)}},"expectBoolean"),kg=i(t=>{if(t!=null){if(typeof t=="string"){let e=parseFloat(t);if(!Number.isNaN(e))return String(e)!==String(t)&&Og.warn(av(`Expected number but observed string: ${t}`)),e}if(typeof t=="number")return t;throw new TypeError(`Expected number, got ${typeof t}: ${t}`)}},"expectNumber"),qgt=Math.ceil(2**127*(2-2**-23)),xx=i(t=>{let e=kg(t);if(e!==void 0&&!Number.isNaN(e)&&e!==1/0&&e!==-1/0&&Math.abs(e)>qgt)throw new TypeError(`Expected 32-bit float, got ${t}`);return e},"expectFloat32"),Lg=i(t=>{if(t!=null){if(Number.isInteger(t)&&!Number.isNaN(t))return t;throw new TypeError(`Expected integer, got ${typeof t}: ${t}`)}},"expectLong"),Yxe=Lg,sv=i(t=>nY(t,32),"expectInt32"),ov=i(t=>nY(t,16),"expectShort"),iv=i(t=>nY(t,8),"expectByte"),nY=i((t,e)=>{let r=Lg(t);if(r!==void 0&&$gt(r,e)!==r)throw new TypeError(`Expected ${e}-bit integer, got ${t}`);return r},"expectSizedInt"),$gt=i((t,e)=>{switch(e){case 32:return Int32Array.of(t)[0];case 16:return Int16Array.of(t)[0];case 8:return Int8Array.of(t)[0]}},"castInt"),Wxe=i((t,e)=>{if(t==null)throw e?new TypeError(`Expected a non-null value for ${e}`):new TypeError("Expected a non-null value");return t},"expectNonNull"),sY=i(t=>{if(t==null)return;if(typeof t=="object"&&!Array.isArray(t))return t;let e=Array.isArray(t)?"array":typeof t;throw new TypeError(`Expected object, got ${e}: ${t}`)},"expectObject"),jxe=i(t=>{if(t!=null){if(typeof t=="string")return t;if(["boolean","number","bigint"].includes(typeof t))return Og.warn(av(`Expected string, got ${typeof t}: ${t}`)),String(t);throw new TypeError(`Expected string, got ${typeof t}: ${t}`)}},"expectString"),cv=i(t=>{if(t==null)return;let e=sY(t),r=[];for(let n in e)e[n]!=null&&r.push(n);if(r.length===0)throw new TypeError("Unions must have exactly one non-null member. None were found.");if(r.length>1)throw new TypeError(`Unions must have exactly one non-null member. Keys ${r} were not null.`);return e},"expectUnion"),wx=i(t=>kg(typeof t=="string"?Mg(t):t),"strictParseDouble"),Jxe=wx,lv=i(t=>xx(typeof t=="string"?Mg(t):t),"strictParseFloat32"),Ggt=/(-?(?:0|[1-9]\d*)(?:\.\d+)?(?:[eE][+-]?\d+)?)|(-?Infinity)|(NaN)/g,Mg=i(t=>{let e=t.match(Ggt);if(e===null||e[0].length!==t.length)throw new TypeError("Expected real number, got implicit NaN");return parseFloat(t)},"parseNumber"),uv=i(t=>typeof t=="string"?ewe(t):kg(t),"limitedParseDouble"),Kxe=uv,Xxe=uv,Zxe=i(t=>typeof t=="string"?ewe(t):xx(t),"limitedParseFloat32"),ewe=i(t=>{switch(t){case"NaN":return NaN;case"Infinity":return 1/0;case"-Infinity":return-1/0;default:throw new Error(`Unable to parse float value: ${t}`)}},"parseFloatString"),oY=i(t=>Lg(typeof t=="string"?Mg(t):t),"strictParseLong"),twe=oY,rwe=i(t=>sv(typeof t=="string"?Mg(t):t),"strictParseInt32"),Jd=i(t=>ov(typeof t=="string"?Mg(t):t),"strictParseShort"),dv=i(t=>iv(typeof t=="string"?Mg(t):t),"strictParseByte"),av=i(t=>String(new TypeError(t).stack||t).split(` `).slice(0,5).filter(e=>!e.includes("stackTraceWarning")).join(` -`),Lg={warn:console.warn}});function xa(t){let e=t.getUTCFullYear(),r=t.getUTCMonth(),n=t.getUTCDay(),s=t.getUTCDate(),o=t.getUTCHours(),i=t.getUTCMinutes(),a=t.getUTCSeconds(),c=s<10?`0${s}`:`${s}`,l=o<10?`0${o}`:`${o}`,u=i<10?`0${i}`:`${i}`,d=a<10?`0${a}`:`${a}`;return`${$gt[n]}, ${c} ${aY[r]} ${e} ${l}:${u}:${d} GMT`}var $gt,aY,Ggt,rwe,Hgt,dv,zgt,Vgt,Ygt,Fg,pv,xx,Wgt,jgt,Jgt,iY,Kgt,Xgt,Zgt,qc,eyt,tyt,Mg,nwe=C(()=>{oY();$gt=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],aY=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];Ggt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),rwe=t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=Ggt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,i,a,c,l]=e,u=jd(Mg(n)),d=qc(s,"month",1,12),p=qc(o,"day",1,31);return xx(u,d,p,{hours:i,minutes:a,seconds:c,fractionalMilliseconds:l})},Hgt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),dv=t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=Hgt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,i,a,c,l,u]=e,d=jd(Mg(n)),p=qc(s,"month",1,12),m=qc(o,"day",1,31),h=xx(d,p,m,{hours:i,minutes:a,seconds:c,fractionalMilliseconds:l});return u.toUpperCase()!="Z"&&h.setTime(h.getTime()-tyt(u)),h},zgt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),Vgt=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),Ygt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),Fg=t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let e=zgt.exec(t);if(e){let[r,n,s,o,i,a,c,l]=e;return xx(jd(Mg(o)),iY(s),qc(n,"day",1,31),{hours:i,minutes:a,seconds:c,fractionalMilliseconds:l})}if(e=Vgt.exec(t),e){let[r,n,s,o,i,a,c,l]=e;return Jgt(xx(Wgt(o),iY(s),qc(n,"day",1,31),{hours:i,minutes:a,seconds:c,fractionalMilliseconds:l}))}if(e=Ygt.exec(t),e){let[r,n,s,o,i,a,c,l]=e;return xx(jd(Mg(l)),iY(n),qc(s.trimLeft(),"day",1,31),{hours:o,minutes:i,seconds:a,fractionalMilliseconds:c})}throw new TypeError("Invalid RFC-7231 date-time value")},pv=t=>{if(t==null)return;let e;if(typeof t=="number")e=t;else if(typeof t=="string")e=Ix(t);else if(typeof t=="object"&&t.tag===1)e=t.value;else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(e)||e===1/0||e===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(e*1e3))},xx=(t,e,r,n)=>{let s=e-1;return Xgt(t,s,r),new Date(Date.UTC(t,s,r,qc(n.hours,"hour",0,23),qc(n.minutes,"minute",0,59),qc(n.seconds,"seconds",0,60),eyt(n.fractionalMilliseconds)))},Wgt=t=>{let e=new Date().getUTCFullYear(),r=Math.floor(e/100)*100+jd(Mg(t));return rt.getTime()-new Date().getTime()>jgt?new Date(Date.UTC(t.getUTCFullYear()-100,t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds())):t,iY=t=>{let e=aY.indexOf(t);if(e<0)throw new TypeError(`Invalid month: ${t}`);return e+1},Kgt=[31,28,31,30,31,30,31,31,30,31,30,31],Xgt=(t,e,r)=>{let n=Kgt[e];if(e===1&&Zgt(t)&&(n=29),r>n)throw new TypeError(`Invalid day for ${aY[e]} in ${t}: ${r}`)},Zgt=t=>t%4===0&&(t%100!==0||t%400===0),qc=(t,e,r,n)=>{let s=uv(Mg(t));if(sn)throw new TypeError(`${e} must be between ${r} and ${n}, inclusive`);return s},eyt=t=>t==null?0:cv("0."+t)*1e3,tyt=t=>{let e=t[0],r=1;if(e=="+")r=1;else if(e=="-")r=-1;else throw new TypeError(`Offset direction, ${e}, must be "+" or "-"`);let n=Number(t.substring(1,3)),s=Number(t.substring(4,6));return r*(n*60+s)*60*1e3},Mg=t=>{let e=0;for(;e{Xn=function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})};Xn.from=t=>t&&typeof t=="object"&&(t instanceof Xn||"deserializeJSON"in t)?t:typeof t=="string"||Object.getPrototypeOf(t)===String.prototype?Xn(String(t)):Xn(JSON.stringify(t));Xn.fromObject=Xn.from});function mv(t){return(t.includes(",")||t.includes('"'))&&(t=`"${t.replace(/"/g,'\\"')}"`),t}var owe=C(()=>{});function hu(t,e,r){let n=Number(t);if(nr)throw new Error(`Value ${n} out of range [${e}, ${r}]`)}var cY,lY,uY,iwe,awe,ryt,nyt,syt,oyt,iyt,cf,fv,Av,cwe=C(()=>{cY="(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?",lY="(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",uY="(\\d?\\d):(\\d{2}):(\\d{2})(?:\\.(\\d+))?",iwe="(\\d?\\d)",awe="(\\d{4})",ryt=new RegExp(/^(\d{4})-(\d\d)-(\d\d)[tT](\d\d):(\d\d):(\d\d)(\.(\d+))?(([-+]\d\d:\d\d)|[zZ])$/),nyt=new RegExp(`^${cY}, ${iwe} ${lY} ${awe} ${uY} GMT$`),syt=new RegExp(`^${cY}, ${iwe}-${lY}-(\\d\\d) ${uY} GMT$`),oyt=new RegExp(`^${cY} ${lY} ( [1-9]|\\d\\d) ${uY} ${awe}$`),iyt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],cf=t=>{if(t==null)return;let e=NaN;if(typeof t=="number")e=t;else if(typeof t=="string"){if(!/^-?\d*\.?\d+$/.test(t))throw new TypeError("parseEpochTimestamp - numeric string invalid.");e=Number.parseFloat(t)}else typeof t=="object"&&t.tag===1&&(e=t.value);if(isNaN(e)||Math.abs(e)===1/0)throw new TypeError("Epoch timestamps must be valid finite numbers.");return new Date(Math.round(e*1e3))},fv=t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC3339 timestamps must be strings");let e=ryt.exec(t);if(!e)throw new TypeError(`Invalid RFC3339 timestamp format ${t}`);let[,r,n,s,o,i,a,,c,l]=e;hu(n,1,12),hu(s,1,31),hu(o,0,23),hu(i,0,59),hu(a,0,60);let u=new Date(Date.UTC(Number(r),Number(n)-1,Number(s),Number(o),Number(i),Number(a),Number(c)?Math.round(parseFloat(`0.${c}`)*1e3):0));if(u.setUTCFullYear(Number(r)),l.toUpperCase()!="Z"){let[,d,p,m]=/([+-])(\d\d):(\d\d)/.exec(l)||[void 0,"+",0,0],h=d==="-"?1:-1;u.setTime(u.getTime()+h*(Number(p)*60*60*1e3+Number(m)*60*1e3))}return u},Av=t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC7231 timestamps must be strings.");let e,r,n,s,o,i,a,c;if((c=nyt.exec(t))?[,e,r,n,s,o,i,a]=c:(c=syt.exec(t))?([,e,r,n,s,o,i,a]=c,n=(Number(n)+1900).toString()):(c=oyt.exec(t))&&([,r,e,s,o,i,a,n]=c),n&&i){let l=Date.UTC(Number(n),iyt.indexOf(r),Number(e),Number(s),Number(o),Number(i),a?Math.round(parseFloat(`0.${a}`)*1e3):0);hu(e,1,31),hu(s,0,23),hu(o,0,59),hu(i,0,60);let u=new Date(l);return u.setUTCFullYear(Number(n)),u}throw new TypeError(`Invalid RFC7231 date-time value ${t}.`)}});function hv(t,e,r){if(r<=0||!Number.isInteger(r))throw new Error("Invalid number of delimiters ("+r+") for splitEvery.");let n=t.split(e);if(r===1)return n;let s=[],o="";for(let i=0;i{});var Ug,uwe=C(()=>{Ug=t=>{let e=t.length,r=[],n=!1,s,o=0;for(let i=0;i{i=i.trim();let a=i.length;return a<2?i:(i[0]==='"'&&i[a-1]==='"'&&(i=i.slice(1,a-1)),i.replace(/\\"/g,'"'))})}});function gv(t){return new Ut(String(t),"bigDecimal")}var dwe,Ut,pwe=C(()=>{dwe=/^-?\d*(\.\d+)?$/,Ut=class t{string;type;constructor(e,r){if(this.string=e,this.type=r,!dwe.test(e))throw new Error('@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".')}toString(){return this.string}static[Symbol.hasInstance](e){if(!e||typeof e!="object")return!1;let r=e;return t.prototype.isPrototypeOf(e)||r.type==="bigDecimal"&&dwe.test(r.string)}}});function yv(t){if(t.length%2!==0)throw new Error("Hex encoded strings must have an even number length");let e=new Uint8Array(t.length/2);for(let r=0;r{mwe={},dY={};for(let t=0;t<256;t++){let e=t.toString(16).toLowerCase();e.length===1&&(e=`0${e}`),mwe[t]=e,dY[e]=t}});var qg,$c,fwe=C(()=>{qg=require("node:fs"),$c=t=>{if(!t)return 0;if(typeof t=="string")return Buffer.byteLength(t);if(typeof t.byteLength=="number")return t.byteLength;if(typeof t.size=="number")return t.size;if(typeof t.start=="number"&&typeof t.end=="number")return t.end+1-t.start;if(t instanceof qg.ReadStream){if(t.path!=null)return(0,qg.lstatSync)(t.path).size;if(typeof t.fd=="number")return(0,qg.fstatSync)(t.fd).size}throw new Error(`Body Length computation failed for ${t}`)}});var Ev,mY=C(()=>{tv();Ev=t=>typeof t=="string"?$r(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t)});var Cv,fY,AY=C(()=>{_e();Cv=(t,e)=>(r,n)=>async s=>{let{response:o}=await r(s);try{let i=await e(o,t);return{response:o,output:i}}catch(i){if(Object.defineProperty(i,"$response",{value:o,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in i)){let a="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";try{i.message+=` - `+a}catch{!n.logger||n.logger?.constructor?.name==="NoOpLogger"?console.warn(a):n.logger?.warn?.(a)}typeof i.$responseBodyText<"u"&&i.$response&&(i.$response.body=i.$responseBodyText);try{if(Zn.isInstance(o)){let{headers:c={}}=o,l=Object.entries(c);i.$metadata={httpStatusCode:o.statusCode,requestId:fY(/^x-[\w-]+-request-?id$/,l),extendedRequestId:fY(/^x-[\w-]+-id-2$/,l),cfId:fY(/^x-[\w-]+-cf-id$/,l)}}}catch{}}throw i}},fY=(t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1]});var zo,wx=C(()=>{zo=class t extends Error{name="ProviderError";tryNextLink;constructor(e,r=!0){let n,s=!0;typeof r=="boolean"?(n=void 0,s=r):r!=null&&typeof r=="object"&&(n=r.logger,s=r.tryNextLink??!0),super(e),this.tryNextLink=s,Object.setPrototypeOf(this,t.prototype),n?.debug?.(`@smithy/property-provider ${s?"->":"(!)"} ${e}`)}static from(e,r=!0){return Object.assign(new this(e.message,r),e)}}});var Jd,Iv=C(()=>{wx();Jd=class t extends zo{name="CredentialsProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var xv,Awe=C(()=>{wx();xv=class t extends zo{name="TokenProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var wv,hY=C(()=>{wx();wv=(...t)=>async()=>{if(t.length===0)throw new zo("No providers in chain");let e;for(let r of t)try{return await r()}catch(n){if(e=n,n?.tryNextLink)continue;throw n}throw e}});var bv,gY=C(()=>{bv=t=>()=>Promise.resolve(t)});var $g,Sv=C(()=>{$g=(t,e,r)=>{let n,s,o,i=!1,a=async()=>{s||(s=t());try{n=await s,o=!0,i=!1}finally{s=void 0}return n};return e===void 0?async c=>((!o||c?.forceRefresh)&&(n=await a()),n):async c=>((!o||c?.forceRefresh)&&(n=await a()),i?n:r&&!r(n)?(i=!0,n):(e(n)&&await a(),n))}});var oo,Bv=C(()=>{oo=(t,e,r)=>{if(e in t){if(t[e]==="true")return!0;if(t[e]==="false")return!1;throw new Error(`Cannot load ${r} "${e}". Expected "true" or "false", got ${t[e]}.`)}}});var hwe,gwe=C(()=>{hwe=(t,e,r)=>{if(!(e in t))return;let n=parseInt(t[e],10);if(Number.isNaN(n))throw new TypeError(`Cannot load ${r} '${e}'. Expected number, got '${t[e]}'.`);return n}});var es,Rv=C(()=>{(function(t){t.ENV="env",t.CONFIG="shared config entry"})(es||(es={}))});var ywe,Ewe,yY,ayt,Gc,Gg=C(()=>{ywe=require("node:os"),Ewe=require("node:path"),yY={},ayt=()=>process&&process.geteuid?`${process.geteuid()}`:"DEFAULT",Gc=()=>{let{HOME:t,USERPROFILE:e,HOMEPATH:r,HOMEDRIVE:n=`C:${Ewe.sep}`}=process.env;if(t)return t;if(e)return e;if(r)return`${n}${r}`;let s=ayt();return yY[s]||(yY[s]=(0,ywe.homedir)()),yY[s]}});var EY,CY,Nv,IY=C(()=>{EY="AWS_PROFILE",CY="default",Nv=t=>t.profile||process.env[EY]||CY});var Cwe,Iwe,Tv,xY=C(()=>{Cwe=require("node:crypto"),Iwe=require("node:path");Gg();Tv=t=>{let r=(0,Cwe.createHash)("sha1").update(t).digest("hex");return(0,Iwe.join)(Gc(),".aws","sso","cache",`${r}.json`)}});var xwe,bx,wwe,wY=C(()=>{xwe=require("node:fs/promises");xY();bx={},wwe=async t=>{if(bx[t])return bx[t];let e=Tv(t),r=await(0,xwe.readFile)(e,"utf8");return JSON.parse(r)}});var Hc,bwe=C(()=>{Hc="."});var bY,Swe,Bwe=C(()=>{bY=Q(Ea()),Swe=t=>Object.entries(t).filter(([e])=>{let r=e.indexOf(".");return r===-1?!1:Object.values(bY.IniSectionType).includes(e.substring(0,r))}).reduce((e,[r,n])=>{let s=r.indexOf("."),o=r.substring(0,s)===bY.IniSectionType.PROFILE?r.substring(s+1):r;return e[o]=n,e},{...t.default&&{default:t.default}})});var Rwe,cyt,Pv,SY=C(()=>{Rwe=require("node:path");Gg();cyt="AWS_CONFIG_FILE",Pv=()=>process.env[cyt]||(0,Rwe.join)(Gc(),".aws","config")});var Nwe,lyt,Twe,Pwe=C(()=>{Nwe=require("node:path");Gg();lyt="AWS_SHARED_CREDENTIALS_FILE",Twe=()=>process.env[lyt]||(0,Nwe.join)(Gc(),".aws","credentials")});var vwe,uyt,dyt,Sx,BY=C(()=>{vwe=Q(Ea()),uyt=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,dyt=["__proto__","profile __proto__"],Sx=t=>{let e={},r,n;for(let s of t.split(/\r?\n/)){let o=s.split(/(^|\s)[;#]/)[0].trim();if(o[0]==="["&&o[o.length-1]==="]"){r=void 0,n=void 0;let a=o.substring(1,o.length-1),c=uyt.exec(a);if(c){let[,l,,u]=c;Object.values(vwe.IniSectionType).includes(l)&&(r=[l,u].join("."))}else r=a;if(dyt.includes(a))throw new Error(`Found invalid profile name "${a}"`)}else if(r){let a=o.indexOf("=");if(![0,-1].includes(a)){let[c,l]=[o.substring(0,a).trim(),o.substring(a+1).trim()];if(l==="")n=c;else{n&&s.trimStart()===s&&(n=void 0),e[r]=e[r]||{};let u=n?[n,c].join("."):c;e[r][u]=l}}}}return e}});var _we,RY,Bx,lf,Rx=C(()=>{_we=require("node:fs/promises"),RY={},Bx={},lf=(t,e)=>Bx[t]!==void 0?Bx[t]:((!RY[t]||e?.ignoreCache)&&(RY[t]=(0,_we.readFile)(t,"utf8")),RY[t])});var NY,Qwe,Hg,vv=C(()=>{NY=require("node:path");Bwe();SY();Pwe();Gg();BY();Rx();Qwe=()=>({}),Hg=async(t={})=>{let{filepath:e=Twe(),configFilepath:r=Pv()}=t,n=Gc(),s="~/",o=e;e.startsWith(s)&&(o=(0,NY.join)(n,e.slice(2)));let i=r;r.startsWith(s)&&(i=(0,NY.join)(n,r.slice(2)));let a=await Promise.all([lf(i,{ignoreCache:t.ignoreCache}).then(Sx).then(Swe).catch(Qwe),lf(o,{ignoreCache:t.ignoreCache}).then(Sx).catch(Qwe)]);return{configFile:a[0],credentialsFile:a[1]}}});var Dwe,kwe,Lwe=C(()=>{Dwe=Q(Ea()),kwe=t=>Object.entries(t).filter(([e])=>e.startsWith(Dwe.IniSectionType.SSO_SESSION+".")).reduce((e,[r,n])=>({...e,[r.substring(r.indexOf(".")+1)]:n}),{})});var pyt,Owe,Mwe=C(()=>{SY();Lwe();BY();Rx();pyt=()=>({}),Owe=async(t={})=>lf(t.configFilepath??Pv()).then(Sx).then(kwe).catch(pyt)});var Fwe,Uwe=C(()=>{Fwe=(...t)=>{let e={};for(let r of t)for(let[n,s]of Object.entries(r))e[n]!==void 0?Object.assign(e[n],s):e[n]=s;return e}});var qwe,$we=C(()=>{vv();Uwe();qwe=async t=>{let e=await Hg(t);return Fwe(e.configFile,e.credentialsFile)}});var Gwe,Hwe=C(()=>{wY();Rx();Gwe={getFileRecord(){return Bx},interceptFile(t,e){Bx[t]=Promise.resolve(e)},getTokenRecord(){return bx},interceptToken(t,e){bx[t]=e}}});function _v(t){try{let e=new Set(Array.from(t.match(/([A-Z_]){3,}/g)??[]));return e.delete("CONFIG"),e.delete("CONFIG_PREFIX_SEPARATOR"),e.delete("ENV"),[...e].join(", ")}catch{return t}}var TY=C(()=>{});var zwe,Vwe=C(()=>{Iv();TY();zwe=(t,e)=>async()=>{try{let r=t(process.env,e);if(r===void 0)throw new Error;return r}catch(r){throw new Jd(r.message||`Not found in ENV: ${_v(t.toString())}`,{logger:e?.logger})}}});var Ywe,Wwe=C(()=>{Iv();IY();vv();TY();Ywe=(t,{preferredFile:e="config",...r}={})=>async()=>{let n=Nv(r),{configFile:s,credentialsFile:o}=await Hg(r),i=o[n]||{},a=s[n]||{},c=e==="config"?{...i,...a}:{...a,...i};try{let u=t(c,e==="config"?s:o);if(u===void 0)throw new Error;return u}catch(l){throw new Jd(l.message||`Not found in config files w/ profile [${n}]: ${_v(t.toString())}`,{logger:r.logger})}}});var myt,Qv,PY=C(()=>{gY();myt=t=>typeof t=="function",Qv=t=>myt(t)?async()=>await t():bv(t)});var rt,vY=C(()=>{hY();Sv();Vwe();Wwe();PY();rt=({environmentVariableSelector:t,configFileSelector:e,default:r},n={})=>{let{signingName:s,logger:o}=n;return $g(wv(zwe(t,{signingName:s,logger:o}),Ywe(e,n),Qv(r)))}});var Dv,kv,jwe,zc,Jwe,Kwe=C(()=>{Bv();Rv();Dv="AWS_USE_DUALSTACK_ENDPOINT",kv="use_dualstack_endpoint",jwe=!1,zc={environmentVariableSelector:t=>oo(t,Dv,es.ENV),configFileSelector:t=>oo(t,kv,es.CONFIG),default:!1},Jwe={environmentVariableSelector:t=>oo(t,Dv,es.ENV),configFileSelector:t=>oo(t,kv,es.CONFIG),default:void 0}});var Lv,Ov,Xwe,Vc,Zwe,e0e=C(()=>{Bv();Rv();Lv="AWS_USE_FIPS_ENDPOINT",Ov="use_fips_endpoint",Xwe=!1,Vc={environmentVariableSelector:t=>oo(t,Lv,es.ENV),configFileSelector:t=>oo(t,Ov,es.CONFIG),default:!1},Zwe={environmentVariableSelector:t=>oo(t,Lv,es.ENV),configFileSelector:t=>oo(t,Ov,es.CONFIG),default:void 0}});var t0e,r0e=C(()=>{Ee();t0e=t=>{let{tls:e,endpoint:r,urlParser:n,useDualstackEndpoint:s}=t;return Object.assign(t,{tls:e??!0,endpoint:Ft(typeof r=="string"?n(r):r),isCustomEndpoint:!0,useDualstackEndpoint:Ft(s??!1)})}});var n0e,s0e=C(()=>{n0e=async t=>{let{tls:e=!0}=t,r=await t.region();if(!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(r))throw new Error("Invalid region in client config");let s=await t.useDualstackEndpoint(),o=await t.useFipsEndpoint(),{hostname:i}=await t.regionInfoProvider(r,{useDualstackEndpoint:s,useFipsEndpoint:o})??{};if(!i)throw new Error("Cannot resolve hostname from client config");return t.urlParser(`${e?"https:":"http:"}//${i}`)}});var o0e,i0e=C(()=>{Ee();s0e();o0e=t=>{let e=Ft(t.useDualstackEndpoint??!1),{endpoint:r,useFipsEndpoint:n,urlParser:s,tls:o}=t;return Object.assign(t,{tls:o??!0,endpoint:r?Ft(typeof r=="string"?s(r):r):()=>n0e({...t,useDualstackEndpoint:e,useFipsEndpoint:n}),isCustomEndpoint:!!r,useDualstackEndpoint:e})}});var zg,Vg,Qn,Ts,_Y=C(()=>{zg="AWS_REGION",Vg="region",Qn={environmentVariableSelector:t=>t[zg],configFileSelector:t=>t[Vg],default:()=>{throw new Error("Region is missing")}},Ts={preferredFile:"credentials"}});var a0e,c0e,l0e=C(()=>{It();a0e=new Set,c0e=(t,e=gu)=>{if(!a0e.has(t)&&!e(t))if(t==="*")console.warn('@smithy/config-resolver WARN - Please use the caller region instead of "*". See "sigv4a" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.');else throw new Error(`Region not accepted: region="${t}" is not a valid hostname component.`);else a0e.add(t)}});var Mv,QY=C(()=>{Mv=t=>typeof t=="string"&&(t.startsWith("fips-")||t.endsWith("-fips"))});var u0e,d0e=C(()=>{QY();u0e=t=>Mv(t)?["fips-aws-global","aws-fips"].includes(t)?"us-east-1":t.replace(/fips-(dkr-|prod-)?|-fips/,""):t});var Vo,p0e=C(()=>{l0e();d0e();QY();Vo=t=>{let{region:e,useFipsEndpoint:r}=t;if(!e)throw new Error("Region is missing");return Object.assign(t,{region:async()=>{let n=typeof e=="function"?await e():e,s=u0e(n);return c0e(s),s},useFipsEndpoint:async()=>{let n=typeof e=="string"?e:await e();return Mv(n)?!0:typeof r!="function"?Promise.resolve(!!r):r()}})}});var DY,m0e=C(()=>{DY=(t=[],{useFipsEndpoint:e,useDualstackEndpoint:r})=>t.find(({tags:n})=>e===n.includes("fips")&&r===n.includes("dualstack"))?.hostname});var f0e,A0e=C(()=>{f0e=(t,{regionHostname:e,partitionHostname:r})=>e||(r?r.replace("{region}",t):void 0)});var h0e,g0e=C(()=>{h0e=(t,{partitionHash:e})=>Object.keys(e||{}).find(r=>e[r].regions.includes(t))??"aws"});var y0e,E0e=C(()=>{y0e=(t,{signingRegion:e,regionRegex:r,useFipsEndpoint:n})=>{if(e)return e;if(n){let s=r.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),o=t.match(s);if(o)return o[0].slice(1,-1)}}});var C0e,I0e=C(()=>{m0e();A0e();g0e();E0e();C0e=(t,{useFipsEndpoint:e=!1,useDualstackEndpoint:r=!1,signingService:n,regionHash:s,partitionHash:o})=>{let i=h0e(t,{partitionHash:o}),a=t in s?t:o[i]?.endpoint??t,c={useFipsEndpoint:e,useDualstackEndpoint:r},l=DY(s[a]?.variants,c),u=DY(o[i]?.variants,c),d=f0e(a,{regionHostname:l,partitionHostname:u});if(d===void 0)throw new Error(`Endpoint resolution failed for: ${{resolvedRegion:a,useFipsEndpoint:e,useDualstackEndpoint:r}}`);let p=y0e(d,{signingRegion:s[a]?.signingRegion,regionRegex:o[i].regionRegex,useFipsEndpoint:e});return{partition:i,signingService:n,hostname:d,...p&&{signingRegion:p},...s[a]?.signingService&&{signingService:s[a].signingService}}}});var x0e,kY,LY,w0e,b0e,S0e,B0e=C(()=>{x0e="AWS_EXECUTION_ENV",kY="AWS_REGION",LY="AWS_DEFAULT_REGION",w0e="AWS_EC2_METADATA_DISABLED",b0e=["in-region","cross-region","mobile","standard","legacy"],S0e="/latest/meta-data/placement/region"});var fyt,Ayt,R0e,N0e=C(()=>{fyt="AWS_DEFAULTS_MODE",Ayt="defaults_mode",R0e={environmentVariableSelector:t=>t[fyt],configFileSelector:t=>t[Ayt],default:"legacy"}});var Yc,hyt,gyt,yyt,Eyt,T0e=C(()=>{_Y();vY();Sv();B0e();N0e();Yc=({region:t=rt(Qn),defaultsMode:e=rt(R0e)}={})=>$g(async()=>{let r=typeof e=="function"?await e():e;switch(r?.toLowerCase()){case"auto":return hyt(t);case"in-region":case"cross-region":case"mobile":case"standard":case"legacy":return Promise.resolve(r?.toLocaleLowerCase());case void 0:return Promise.resolve("legacy");default:throw new Error(`Invalid parameter for "defaultsMode", expect ${b0e.join(", ")}, got ${r}`)}}),hyt=async t=>{if(t){let e=typeof t=="function"?await t():t,r=await gyt();return r?e===r?"in-region":"cross-region":"standard"}return"standard"},gyt=async()=>{if(process.env[x0e]&&(process.env[kY]||process.env[LY]))return process.env[kY]??process.env[LY];if(!process.env[w0e])try{let t=await yyt();return(await Eyt({hostname:t.hostname,path:S0e})).toString()}catch{}},yyt=async()=>{let t=process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT;if(t){let r=new URL(t);return{hostname:r.hostname,path:r.pathname}}return process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE==="IPv6"?{hostname:"fd00:ec2::254",path:"/"}:{hostname:"169.254.169.254",path:"/"}},Eyt=async({hostname:t,path:e})=>{let{request:r}=await import("node:http");return new Promise((n,s)=>{let o=r({method:"GET",hostname:t.replace(/^\[(.+)]$/,"$1"),path:e,timeout:1e3,signal:AbortSignal.timeout(1e3)});o.on("error",i=>{s(i),o.destroy()}),o.on("timeout",()=>{s(new Error("TimeoutError from instance metadata service")),o.destroy()}),o.on("response",i=>{let{statusCode:a=400}=i;if(a<200||300<=a){s(Object.assign(new Error("Error response received from instance metadata service"),{statusCode:a})),o.destroy();return}let c=[];i.on("data",l=>c.push(l)),i.on("end",()=>{n(Buffer.concat(c)),o.destroy()})}),o.end()})}});var Dn={};Zr(Dn,{CONFIG_PREFIX_SEPARATOR:()=>Hc,CONFIG_USE_DUALSTACK_ENDPOINT:()=>kv,CONFIG_USE_FIPS_ENDPOINT:()=>Ov,CredentialsProviderError:()=>Jd,DEFAULT_PROFILE:()=>CY,DEFAULT_USE_DUALSTACK_ENDPOINT:()=>jwe,DEFAULT_USE_FIPS_ENDPOINT:()=>Xwe,ENV_PROFILE:()=>EY,ENV_USE_DUALSTACK_ENDPOINT:()=>Dv,ENV_USE_FIPS_ENDPOINT:()=>Lv,NODE_REGION_CONFIG_FILE_OPTIONS:()=>Ts,NODE_REGION_CONFIG_OPTIONS:()=>Qn,NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS:()=>zc,NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS:()=>Vc,ProviderError:()=>zo,REGION_ENV_NAME:()=>zg,REGION_INI_NAME:()=>Vg,SelectorType:()=>es,TokenProviderError:()=>xv,booleanSelector:()=>oo,chain:()=>wv,externalDataInterceptor:()=>Gwe,fromStatic:()=>Qv,fromValue:()=>bv,getHomeDir:()=>Gc,getProfileName:()=>Nv,getRegionInfo:()=>C0e,getSSOTokenFilepath:()=>Tv,getSSOTokenFromFile:()=>wwe,loadConfig:()=>rt,loadSharedConfigFiles:()=>Hg,loadSsoSessionData:()=>Owe,memoize:()=>$g,nodeDualstackConfigSelectors:()=>Jwe,nodeFipsConfigSelectors:()=>Zwe,numberSelector:()=>hwe,parseKnownFiles:()=>qwe,readFile:()=>lf,resolveCustomEndpointsConfig:()=>t0e,resolveDefaultsModeConfig:()=>Yc,resolveEndpointsConfig:()=>o0e,resolveRegionConfig:()=>Vo});var Nt=C(()=>{wx();Iv();Awe();hY();gY();Sv();Bv();gwe();Rv();Gg();IY();xY();wY();bwe();vv();Mwe();$we();Hwe();Rx();vY();PY();Kwe();e0e();r0e();i0e();_Y();p0e();I0e();T0e()});var P0e,v0e,_0e,Q0e=C(()=>{P0e="AWS_ENDPOINT_URL",v0e="endpoint_url",_0e=t=>({environmentVariableSelector:e=>{let r=t.split(" ").map(o=>o.toUpperCase()),n=e[[P0e,...r].join("_")];if(n)return n;let s=e[P0e];if(s)return s},configFileSelector:(e,r)=>{if(r&&e.services){let s=r[["services",e.services].join(".")];if(s){let o=t.split(" ").map(a=>a.toLowerCase()),i=s[[o.join("_"),v0e].join(".")];if(i)return i}}let n=e[v0e];if(n)return n},default:void 0})});var Nx,D0e=C(()=>{Nt();Q0e();Nx=async t=>rt(_0e(t??""))()});var k0e,Cyt,Iyt,xyt,wyt,byt,L0e=C(()=>{k0e=async t=>{let e=t?.Bucket||"";if(typeof t.Bucket=="string"&&(t.Bucket=e.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"))),byt(e)){if(t.ForcePathStyle===!0)throw new Error("Path-style addressing cannot be used with ARN buckets")}else(!wyt(e)||e.indexOf(".")!==-1&&!String(t.Endpoint).startsWith("http:")||e.toLowerCase()!==e||e.length<3)&&(t.ForcePathStyle=!0);return t.DisableMultiRegionAccessPoints&&(t.disableMultiRegionAccessPoints=!0,t.DisableMRAP=!0),t},Cyt=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,Iyt=/(\d+\.){3}\d+/,xyt=/\.\./,wyt=t=>Cyt.test(t)&&!Iyt.test(t)&&!xyt.test(t),byt=t=>{let[e,r,n,,,s]=t.split(":"),o=e==="arn"&&t.split(":").length>=6,i=!!(o&&r&&n&&s);if(o&&!i)throw new Error(`Invalid ARN: ${t} was an invalid ARN.`);return i}});var O0e=C(()=>{L0e()});var M0e,F0e=C(()=>{M0e=(t,e,r,n=!1)=>{let s=async()=>{let o;return n?o=r.clientContextParams?.[t]??r[t]??r[e]:o=r[t]??r[e],typeof o=="function"?o():o};return t==="credentialScope"||e==="CredentialScope"?async()=>{let o=typeof r.credentials=="function"?await r.credentials():r.credentials;return o?.credentialScope??o?.CredentialScope}:t==="accountId"||e==="AccountId"?async()=>{let o=typeof r.credentials=="function"?await r.credentials():r.credentials;return o?.accountId??o?.AccountId}:t==="endpoint"||e==="endpoint"?async()=>{if(r.isCustomEndpoint===!1)return;let o=await s();if(o&&typeof o=="object"){if("url"in o)return o.url.href;if("hostname"in o){let{protocol:i,hostname:a,port:c,path:l}=o;return`${i}//${a}${c?":"+c:""}${l}`}}return o}:s}});var wa,OY=C(()=>{_e();wa=t=>{if(typeof t=="object"){if("url"in t){let e=ts(t.url);if(t.headers){e.headers={};for(let r in t.headers)e.headers[r.toLowerCase()]=t.headers[r].join(", ")}return e}return t}return ts(t)}});var Fv=C(()=>{OY()});function Uv(t){return async(e,r,n,s)=>{if(!n.isCustomEndpoint){let a;n.serviceConfiguredEndpoint?a=await n.serviceConfiguredEndpoint():a=await t(n.serviceId),a&&(n.endpoint=()=>Promise.resolve(wa(a)),n.isCustomEndpoint=!0)}let o=await Tx(e,r,n);if(typeof n.endpointProvider!="function")throw new Error("config.endpointProvider is not set.");let i=n.endpointProvider(o,s);if(n.isCustomEndpoint&&n.endpoint){let a=await n.endpoint();if(a?.headers){i.headers??={};for(let[c,l]of Object.entries(a.headers))i.headers[c]=Array.isArray(l)?l:[l]}}return i}}var Tx,qv=C(()=>{O0e();F0e();Fv();Tx=async(t,e,r)=>{let n={},s=e?.getEndpointParameterInstructions?.()||{};for(let[o,i]of Object.entries(s))switch(i.type){case"staticContextParams":n[o]=i.value;break;case"contextParams":n[o]=t[i.name];break;case"clientContextParams":case"builtInParams":n[o]=await M0e(i.name,o,r,i.type!=="builtInParams")();break;case"operationContextParams":n[o]=i.get(t);break;default:throw new Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(i))}return Object.keys(s).length===0&&Object.assign(n,r),String(r.serviceId).toLowerCase()==="s3"&&await k0e(n),n}});function Syt(t,e,r){t.__smithy_context?t.__smithy_context.features||(t.__smithy_context.features={}):t.__smithy_context={features:{}},t.__smithy_context.features[e]=r}function $v(t){let e=Uv(t);return({config:r,instructions:n})=>(s,o)=>async i=>{r.isCustomEndpoint&&Syt(o,"ENDPOINT_OVERRIDE","N");let a=await e(i.input,{getEndpointParameterInstructions(){return n}},{...r},o);o.endpointV2=a,o.authSchemes=a.properties?.authSchemes;let c=o.authSchemes?.[0];if(c){o.signing_region=c.signingRegion,o.signing_service=c.signingName;let u=mr(o)?.selectedHttpAuthScheme?.httpAuthOption;u&&(u.signingProperties=Object.assign(u.signingProperties||{},{signing_region:c.signingRegion,signingRegion:c.signingRegion,signing_service:c.signingName,signingName:c.signingName,signingRegionSet:c.signingRegionSet},c.properties))}return s({...i})}}var MY=C(()=>{Ee();qv()});function U0e(t){let e=$v(t);return(r,n)=>({applyToStack:s=>{s.addRelativeTo(e({config:r,instructions:n}),FY)}})}var Byt,FY,UY=C(()=>{MY();Byt={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0},FY={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:Byt.name}});function q0e(t){return e=>{let r=e.tls??!0,{endpoint:n,useDualstackEndpoint:s,useFipsEndpoint:o}=e,i=n!=null?async()=>wa(await Ft(n)()):void 0,c=Object.assign(e,{endpoint:i,tls:r,isCustomEndpoint:!!n,useDualstackEndpoint:Ft(s??!1),useFipsEndpoint:Ft(o??!1)}),l;return c.serviceConfiguredEndpoint=async()=>(e.serviceId&&!l&&(l=t(e.serviceId)),l),c}}var $0e=C(()=>{Ee();Fv()});var Di,G0e=C(()=>{Di=class t{nodes;root;conditions;results;constructor(e,r,n,s){this.nodes=e,this.root=r,this.conditions=n,this.results=s}static from(e,r,n,s){return new t(e,r,n,s)}}});var ki,H0e=C(()=>{ki=class{capacity;data=new Map;parameters=[];constructor({size:e,params:r}){this.capacity=e??50,r&&(this.parameters=r)}get(e,r){let n=this.hash(e);if(n===!1)return r();if(!this.data.has(n)){if(this.data.size>this.capacity+10){let s=this.data.keys(),o=0;for(;;){let{value:i,done:a}=s.next();if(this.data.delete(i),a||++o>10)break}}this.data.set(n,r())}return this.data.get(n)}size(){return this.data.size}hash(e){let r="",{parameters:n}=this;if(n.length===0)return!1;for(let s of n){let o=String(e[s]??"");if(o.includes("|;"))return!1;r+=o+"|;"}return r}}});var bt,z0e=C(()=>{bt=class extends Error{constructor(e){super(e),this.name="EndpointError"}}});var V0e=C(()=>{});var Y0e=C(()=>{});var W0e=C(()=>{});var j0e=C(()=>{});var J0e=C(()=>{});var K0e=C(()=>{});var Yo=C(()=>{z0e();V0e();Y0e();W0e();j0e();J0e();K0e()});var yu,X0e=C(()=>{yu="endpoints"});function Li(t){return typeof t!="object"||t==null?t:"ref"in t?`$${Li(t.ref)}`:"fn"in t?`${t.fn}(${(t.argv||[]).map(Li).join(", ")})`:JSON.stringify(t,null,2)}var Z0e=C(()=>{});var Px=C(()=>{X0e();Z0e()});var io,Gv=C(()=>{io={}});var ebe,tbe=C(()=>{ebe=(t,e)=>t===e});function rbe(...t){for(let e of t)if(e!=null)return e}var nbe=C(()=>{});var sbe,obe=C(()=>{Yo();sbe=t=>{let e=t.split("."),r=[];for(let n of e){let s=n.indexOf("[");if(s!==-1){if(n.indexOf("]")!==n.length-1)throw new bt(`Path: '${t}' does not end with ']'`);let o=n.slice(s+1,-1);if(Number.isNaN(parseInt(o)))throw new bt(`Invalid array index: '${o}' in path: '${t}'`);s!==0&&r.push(n.slice(0,s)),r.push(o)}else r.push(n)}return r}});var Hv,ibe=C(()=>{Yo();obe();Hv=(t,e)=>sbe(e).reduce((r,n)=>{if(typeof r!="object")throw new bt(`Index '${n}' in '${e}' not found in '${JSON.stringify(t)}'`);if(Array.isArray(r)){let s=parseInt(n);return r[s<0?r.length+s:s]}return r[n]},t)});var abe,cbe=C(()=>{abe=t=>t!=null});var Ryt,gu,qY=C(()=>{Ryt=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),gu=(t,e=!1)=>{if(!e)return Ryt.test(t);let r=t.split(".");for(let n of r)if(!gu(n))return!1;return!0}});function lbe(t,e,r){return t?e:r}var ube=C(()=>{});var dbe,pbe=C(()=>{dbe=t=>!t});var Nyt,Eu,$Y=C(()=>{Nyt=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),Eu=t=>Nyt.test(t)||t.startsWith("[")&&t.endsWith("]")});var zv,GY,mbe,fbe=C(()=>{zv=Q(Ea());$Y();GY={[zv.EndpointURLScheme.HTTP]:80,[zv.EndpointURLScheme.HTTPS]:443},mbe=t=>{let e=(()=>{try{if(t instanceof URL)return t;if(typeof t=="object"&&"hostname"in t){let{hostname:p,port:m,protocol:h="",path:y="",query:I={}}=t,x=new URL(`${h}//${p}${m?`:${m}`:""}${y}`);return x.search=Object.entries(I).map(([b,T])=>`${b}=${T}`).join("&"),x}return new URL(t)}catch{return null}})();if(!e)return console.error(`Unable to parse ${JSON.stringify(t)} as a whatwg URL.`),null;let r=e.href,{host:n,hostname:s,pathname:o,protocol:i,search:a}=e;if(a)return null;let c=i.slice(0,-1);if(!Object.values(zv.EndpointURLScheme).includes(c))return null;let l=Eu(s),u=r.includes(`${n}:${GY[c]}`)||typeof t=="string"&&t.includes(`${n}:${GY[c]}`),d=`${n}${u?`:${GY[c]}`:""}`;return{scheme:c,authority:d,path:o,normalizedPath:o.endsWith("/")?o:`${o}/`,isIp:l}}});function Abe(t,e,r){if(r===1)return[t];if(t==="")return[""];let n=t.split(e);return r===0?n:n.slice(0,r-1).concat(n.slice(1).join(e))}var hbe=C(()=>{});var gbe,ybe=C(()=>{gbe=(t,e)=>t===e});var Ebe,Cbe=C(()=>{Ebe=(t,e,r,n)=>t==null||e>=r||t.length{Ibe=t=>encodeURIComponent(t).replace(/[!*'()]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`)});var HY=C(()=>{tbe();nbe();ibe();cbe();qY();ube();pbe();fbe();hbe();ybe();Cbe();xbe()});var wbe,bbe=C(()=>{HY();wbe={booleanEquals:ebe,coalesce:rbe,getAttr:Hv,isSet:abe,isValidHostLabel:gu,ite:lbe,not:dbe,parseURL:mbe,split:Abe,stringEquals:gbe,substring:Ebe,uriEncode:Ibe}});var Vv,zY=C(()=>{HY();Vv=(t,e)=>{let r=[],{referenceRecord:n,endpointParams:s}=e,o=0;for(;o{Sbe=({ref:t},e)=>e.referenceRecord[t]??e.endpointParams[t]});var Cu,Yv,Rbe,Yg=C(()=>{Yo();Gv();bbe();zY();Bbe();Cu=(t,e,r)=>{if(typeof t=="string")return Vv(t,r);if(t.fn)return Rbe.callFunction(t,r);if(t.ref)return Sbe(t,r);throw new bt(`'${e}': ${String(t)} is not a string, function or reference.`)},Yv=({fn:t,argv:e},r)=>{let n=Array(e.length);for(let i=0;i{Yg()});var Wv,VY=C(()=>{Px();Yo();Nbe();Wv=(t,e)=>{let{assign:r}=t;if(r&&r in e.referenceRecord)throw new bt(`'${r}' is already defined in Reference Record.`);let n=Yv(t,e);e.logger?.debug?.(`${yu} evaluateCondition: ${Li(t)} = ${Li(n)}`);let s=n===""?!0:!!n;return r!=null?{result:s,toAssign:{name:r,value:n}}:{result:s}}});var jv,YY=C(()=>{Yo();Yg();jv=(t,e)=>Object.entries(t??{}).reduce((r,[n,s])=>(r[n]=s.map(o=>{let i=Cu(o,"Header value entry",e);if(typeof i!="string")throw new bt(`Header '${n}' value '${i}' is not a string`);return i}),r),{})});var vx,Tbe,Pbe,WY=C(()=>{Yo();zY();vx=(t,e)=>Object.entries(t).reduce((r,[n,s])=>(r[n]=Pbe.getEndpointProperty(s,e),r),{}),Tbe=(t,e)=>{if(Array.isArray(t))return t.map(r=>Tbe(r,e));switch(typeof t){case"string":return Vv(t,e);case"object":if(t===null)throw new bt(`Unexpected endpoint property: ${t}`);return Pbe.getEndpointProperties(t,e);case"boolean":return t;default:throw new bt(`Unexpected endpoint property type: ${typeof t}`)}},Pbe={getEndpointProperty:Tbe,getEndpointProperties:vx}});var Jv,jY=C(()=>{Yo();Yg();Jv=(t,e)=>{let r=Cu(t,"Endpoint URL",e);if(typeof r=="string")try{return new URL(r)}catch(n){throw console.error(`Failed to construct URL with ${r}`,n),n}throw new bt(`Endpoint URL must be a string, got ${typeof r}`)}});var JY,Wc,vbe=C(()=>{Yo();VY();Yg();YY();WY();jY();JY=1e8,Wc=(t,e)=>{let{nodes:r,root:n,results:s,conditions:o}=t,i=n,a={},c={referenceRecord:a,endpointParams:e.endpointParams,logger:e.logger};for(;i!==1&&i!==-1&&i=0===I.result?d:p}if(i>=JY){let l=s[i-JY];if(l[0]===-1){let[,m]=l;throw new bt(Cu(m,"Error",c))}let[u,d,p]=l;return{url:Jv(u,c),properties:vx(d,c),headers:jv(p??{},c)}}throw new bt("No matching endpoint.")}});var Wg,Kv=C(()=>{Px();VY();Wg=(t=[],e)=>{let r={},n={...e,referenceRecord:{...e.referenceRecord}},s=!1;for(let o of t){let{result:i,toAssign:a}=Wv(o,n);if(!i)return{result:i};a&&(s=!0,r[a.name]=a.value,n.referenceRecord[a.name]=a.value,e.logger?.debug?.(`${yu} assign: ${a.name} := ${Li(a.value)}`))}return s?{result:!0,referenceRecord:r}:{result:!0}}});var _be,Qbe=C(()=>{Px();Kv();YY();WY();jY();_be=(t,e)=>{let{conditions:r,endpoint:n}=t,{result:s,referenceRecord:o}=Wg(r,e);if(!s)return;let i=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e,{url:a,properties:c,headers:l}=n;e.logger?.debug?.(`${yu} Resolving endpoint from template: ${Li(n)}`);let u={url:Jv(a,i)};return l!=null&&(u.headers=jv(l,i)),c!=null&&(u.properties=vx(c,i)),u}});var Dbe,kbe=C(()=>{Yo();Kv();Yg();Dbe=(t,e)=>{let{conditions:r,error:n}=t,{result:s,referenceRecord:o}=Wg(r,e);if(!s)return;let i=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e;throw new bt(Cu(n,"Error",i))}});var KY,Tyt,Lbe,Obe=C(()=>{Yo();Kv();Qbe();kbe();KY=(t,e)=>{for(let r of t)if(r.type==="endpoint"){let n=_be(r,e);if(n)return n}else if(r.type==="error")Dbe(r,e);else if(r.type==="tree"){let n=Lbe.evaluateTreeRule(r,e);if(n)return n}else throw new bt(`Unknown endpoint rule: ${r}`);throw new bt("Rules evaluation failed")},Tyt=(t,e)=>{let{conditions:r,rules:n}=t,{result:s,referenceRecord:o}=Wg(r,e);if(!s)return;let i=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e;return Lbe.evaluateRules(n,i)},Lbe={evaluateRules:KY,evaluateTreeRule:Tyt}});var Mbe=C(()=>{Gv();Obe()});var _x,Fbe=C(()=>{Px();Yo();Mbe();_x=(t,e)=>{let{endpointParams:r,logger:n}=e,{parameters:s,rules:o}=t;e.logger?.debug?.(`${yu} Initial EndpointParams: ${Li(r)}`);for(let a in s){let c=s[a],l=r[a];if(l==null&&c.default!=null){r[a]=c.default;continue}if(c.required&&l==null)throw new bt(`Missing required parameter: '${a}'`)}let i=KY(o,{endpointParams:r,logger:n,referenceRecord:{}});return e.logger?.debug?.(`${yu} Resolved endpoint: ${Li(i)}`),i}});var Ube,qbe=C(()=>{Ube=t=>{let{endpoint:e}=t;return e===void 0&&(t.endpoint=async()=>{throw new Error("@smithy/middleware-endpoint: (default endpointRuleSet) endpoint is not set - you must configure an endpoint.")}),t}});var uf={};Zr(uf,{BinaryDecisionDiagram:()=>Di,EndpointCache:()=>ki,EndpointError:()=>bt,customEndpointFunctions:()=>io,decideEndpoint:()=>Wc,endpointMiddleware:()=>vyt,endpointMiddlewareOptions:()=>FY,getEndpointFromInstructions:()=>Pyt,getEndpointPlugin:()=>ba,isIpAddress:()=>Eu,isValidHostLabel:()=>gu,middlewareEndpointToEndpointV1:()=>wa,resolveEndpoint:()=>_x,resolveEndpointConfig:()=>Iu,resolveEndpointRequiredConfig:()=>Ube,resolveParams:()=>Tx,toEndpointV1:()=>wa});var Pyt,Iu,vyt,ba,It=C(()=>{D0e();qv();MY();UY();$0e();OY();G0e();H0e();vbe();$Y();qY();Gv();Fbe();Yo();qv();Fv();UY();qbe();Pyt=Uv(Nx),Iu=q0e(Nx),vyt=$v(Nx),ba=U0e(Nx)});var Xv,XY=C(()=>{It();Xv=(t,e)=>(r,n)=>async s=>{let o=t,i=n.endpointV2?async()=>wa(n.endpointV2):o.endpoint;if(!i)throw new Error("No valid endpoint provider available.");let a=await e(s.input,{...t,endpoint:i});return r({...s,request:a})}});function $be(t,e,r){return{applyToStack:n=>{n.add(Cv(t,r),ZY),n.add(Xv(t,e),eW)}}}var ZY,eW,Gbe=C(()=>{AY();XY();ZY={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},eW={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0}});function Hbe(t,e){return Buffer.isBuffer(t)?t:typeof t=="string"?Yd(t,e):ArrayBuffer.isView(t)?Ia(t.buffer,t.byteOffset,t.byteLength):Ia(t)}var Zv,Oi,zbe=C(()=>{Zv=require("node:crypto");Wd();mY();Oi=class{algorithmIdentifier;secret;hash;constructor(e,r){this.algorithmIdentifier=e,this.secret=r,this.reset()}update(e,r){this.hash.update(Ev(Hbe(e,r)))}digest(){return Promise.resolve(this.hash.digest())}reset(){this.hash=this.secret?(0,Zv.createHmac)(this.algorithmIdentifier,Hbe(this.secret)):(0,Zv.createHash)(this.algorithmIdentifier)}}});var Vbe,jg,tW=C(()=>{Vbe=require("node:stream");tY();jg=class extends Vbe.Duplex{expectedChecksum;checksumSourceLocation;checksum;source;base64Encoder;pendingCallback=null;constructor({expectedChecksum:e,checksum:r,source:n,checksumSourceLocation:s,base64Encoder:o}){if(super(),typeof n.pipe=="function")this.source=n;else throw new Error(`@smithy/util-stream: unsupported source type ${n?.constructor?.name??n} in ChecksumStream.`);this.base64Encoder=o??fr,this.expectedChecksum=e,this.checksum=r,this.checksumSourceLocation=s,this.source.pipe(this)}_read(e){if(this.pendingCallback){let r=this.pendingCallback;this.pendingCallback=null,r()}}_write(e,r,n){try{if(this.checksum.update(e),!this.push(e)){this.pendingCallback=n;return}}catch(s){return n(s)}return n()}async _final(e){try{let r=await this.checksum.digest(),n=this.base64Encoder(r);if(this.expectedChecksum!==n)return e(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${n}" in response header "${this.checksumSourceLocation}".`))}catch(r){return e(r)}return this.push(null),e()}}});var kn,e_,xu=C(()=>{kn=t=>typeof ReadableStream=="function"&&(t?.constructor?.name===ReadableStream.name||t instanceof ReadableStream),e_=t=>typeof Blob=="function"&&(t?.constructor?.name===Blob.name||t instanceof Blob)});var Ybe,Wbe=C(()=>{Ybe=t=>new TextEncoder().encode(t)});var jbe,rW,Jbe,Kd,df,Kbe,nW=C(()=>{jbe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",rW=Object.entries(jbe).reduce((t,[e,r])=>(t[r]=Number(e),t),{}),Jbe=jbe.split(""),Kd=6,df=8,Kbe=63});function t_(t){let e;typeof t=="string"?e=Ybe(t):e=t;let r=typeof e=="object"&&typeof e.length=="number",n=typeof e=="object"&&typeof e.byteOffset=="number"&&typeof e.byteLength=="number";if(!r&&!n)throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");let s="";for(let o=0;o>u]}s+="==".slice(0,4-c)}return s}var sW=C(()=>{Wbe();nW()});var _yt,r_,Xbe=C(()=>{_yt=typeof ReadableStream=="function"?ReadableStream:function(){},r_=class extends _yt{}});var Zbe,eSe=C(()=>{sW();xu();Xbe();Zbe=({expectedChecksum:t,checksum:e,source:r,checksumSourceLocation:n,base64Encoder:s})=>{if(!kn(r))throw new Error(`@smithy/util-stream: unsupported source type ${r?.constructor?.name??r} in ChecksumStream.`);let o=s??t_;if(typeof TransformStream!="function")throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");let i=new TransformStream({start(){},async transform(c,l){e.update(c),l.enqueue(c)},async flush(c){let l=await e.digest(),u=o(l);if(t!==u){let d=new Error(`Checksum mismatch: expected "${t}" but received "${u}" in response header "${n}".`);c.error(d)}else c.terminate()}});r.pipeThrough(i);let a=i.readable;return Object.setPrototypeOf(a,r_.prototype),a}});function tSe(t){return typeof ReadableStream=="function"&&kn(t.source)?Zbe(t):new jg(t)}var rSe=C(()=>{xu();tW();eSe()});var pf,oW=C(()=>{pf=class{allocByteArray;byteLength=0;byteArrays=[];constructor(e){this.allocByteArray=e}push(e){this.byteArrays.push(e),this.byteLength+=e.byteLength}flush(){if(this.byteArrays.length===1){let n=this.byteArrays[0];return this.reset(),n}let e=this.allocByteArray(this.byteLength),r=0;for(let n=0;nnew Uint8Array(l))],a=-1,c=async l=>{let{value:u,done:d}=await n.read(),p=u;if(d){if(a!==-1){let m=mf(i,a);wu(m)>0&&l.enqueue(m)}l.close()}else{let m=aW(p,!1);if(a!==m&&(a>=0&&l.enqueue(mf(i,a)),a=m),a===-1){l.enqueue(p);return}let h=wu(p);o+=h;let y=wu(i[a]);if(h>=e&&y===0)l.enqueue(p);else{let I=iW(i,a,p);!s&&o>e*2&&(s=!0,r?.warn(`@smithy/util-stream - stream chunk size ${h} is below threshold of ${e}, automatically buffering.`)),I>=e?l.enqueue(mf(i,a)):await c(l)}}};return new ReadableStream({pull:c})}function iW(t,e,r){switch(e){case 0:return t[0]+=r,wu(t[0]);case 1:case 2:return t[e].push(r),wu(t[e])}}function mf(t,e){switch(e){case 0:let r=t[0];return t[0]="",r;case 1:case 2:return t[e].flush()}throw new Error(`@smithy/util-stream - invalid index ${e} given to flush()`)}function wu(t){return t?.byteLength??t?.length??0}function aW(t,e=!0){return e&&typeof Buffer<"u"&&t instanceof Buffer?2:t instanceof Uint8Array?1:typeof t=="string"?0:-1}var sSe=C(()=>{oW()});function iSe(t,e,r){if(kn(t))return nSe(t,e,r);let n=new oSe.Readable({read(){}}),s=!1,o=0,i=["",new pf(c=>new Uint8Array(c)),new pf(c=>Buffer.from(new Uint8Array(c)))],a=-1;return t.on("data",c=>{let l=aW(c,!0);if(a!==l&&(a>=0&&n.push(mf(i,a)),a=l),a===-1){n.push(c);return}let u=wu(c);o+=u;let d=wu(i[a]);if(u>=e&&d===0)n.push(c);else{let p=iW(i,a,c);!s&&o>e*2&&(s=!0,r?.warn(`@smithy/util-stream - stream chunk size ${u} is below threshold of ${e}, automatically buffering.`)),p>=e&&n.push(mf(i,a))}}),t.on("end",()=>{if(a!==-1){let c=mf(i,a);wu(c)>0&&n.push(c)}n.push(null)}),n}var oSe,aSe=C(()=>{oSe=require("node:stream");oW();sSe();xu()});var cSe,lSe=C(()=>{cSe=(t,e)=>{let{base64Encoder:r,bodyLengthChecker:n,checksumAlgorithmFn:s,checksumLocationName:o,streamHasher:i}=e,a=r!==void 0&&n!==void 0&&s!==void 0&&o!==void 0&&i!==void 0,c=a?i(s,t):void 0,l=t.getReader();return new ReadableStream({async pull(u){let{value:d,done:p}=await l.read();if(p){if(u.enqueue(`0\r -`),a){let m=r(await c);u.enqueue(`${o}:${m}\r -`),u.enqueue(`\r -`)}u.close()}else u.enqueue(`${(n(d)||0).toString(16)}\r -${d}\r -`)}})}});function dSe(t,e){let r=t,n=t;if(kn(n))return cSe(n,e);let{base64Encoder:s,bodyLengthChecker:o,checksumAlgorithmFn:i,checksumLocationName:a,streamHasher:c}=e,l=s!==void 0&&i!==void 0&&a!==void 0&&c!==void 0,u=l?c(i,r):void 0,d=new uSe.Readable({read:()=>{}});return r.on("data",p=>{let m=o(p)||0;m!==0&&(d.push(`${m.toString(16)}\r -`),d.push(p),d.push(`\r -`))}),r.on("end",async()=>{if(d.push(`0\r -`),l){let p=s(await u);d.push(`${a}:${p}\r -`),d.push(`\r -`)}d.push(null)}),d}var uSe,pSe=C(()=>{uSe=require("node:stream");lSe();xu()});async function mSe(t,e){let r=0,n=[],s=t.getReader(),o=!1;for(;!o;){let{done:c,value:l}=await s.read();if(l&&(n.push(l),r+=l?.byteLength??0),r>=e)break;o=c}s.releaseLock();let i=new Uint8Array(Math.min(e,r)),a=0;for(let c of n){if(c.byteLength>i.byteLength-a){i.set(c.subarray(0,i.byteLength-a),a);break}else i.set(c,a);a+=c.length}return i}var fSe=C(()=>{});var ASe,hSe,cW,gSe=C(()=>{ASe=require("node:stream");fSe();xu();hSe=(t,e)=>kn(t)?mSe(t,e):new Promise((r,n)=>{let s=new cW;s.limit=e,t.pipe(s),t.on("error",o=>{s.end(),n(o)}),s.on("error",n),s.on("finish",function(){let o=new Uint8Array(Buffer.concat(this.buffers));r(o)})}),cW=class extends ASe.Writable{buffers=[];limit=1/0;bytesBuffered=0;_write(e,r,n){if(this.buffers.push(e),this.bytesBuffered+=e.byteLength??0,this.bytesBuffered>=this.limit){let s=this.bytesBuffered-this.limit,o=this.buffers[this.buffers.length-1];this.buffers[this.buffers.length-1]=o.subarray(0,o.byteLength-s),this.emit("finish")}n()}}});var ySe,ESe=C(()=>{ySe=t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return new TextDecoder("utf-8").decode(t)}});var CSe,ISe=C(()=>{nW();CSe=t=>{let e=t.length/4*3;t.slice(-2)==="=="?e-=2:t.slice(-1)==="="&&e--;let r=new ArrayBuffer(e),n=new DataView(r);for(let s=0;s>=Kd;let a=s/4*3;o>>=i%df;let c=Math.floor(i/df);for(let l=0;l>u)}}return new Uint8Array(r)}});async function Qyt(t){let e=await kyt(t),r=CSe(e);return new Uint8Array(r)}async function Dyt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:a,value:c}=await r.read();c&&(e.push(c),s+=c.length),n=a}let o=new Uint8Array(s),i=0;for(let a of e)o.set(a,i),i+=a.length;return o}function kyt(t){return new Promise((e,r)=>{let n=new FileReader;n.onloadend=()=>{if(n.readyState!==2)return r(new Error("Reader aborted too early"));let s=n.result??"",o=s.indexOf(","),i=o>-1?o+1:s.length;e(s.substring(i))},n.onabort=()=>r(new Error("Read aborted")),n.onerror=()=>r(n.error),n.readAsDataURL(t)})}var xSe,wSe=C(()=>{ISe();xSe=async t=>typeof Blob=="function"&&t instanceof Blob||t.constructor?.name==="Blob"?Blob.prototype.arrayBuffer!==void 0?new Uint8Array(await t.arrayBuffer()):Qyt(t):Dyt(t)});var bSe,BSe,SSe,RSe=C(()=>{sW();pY();ESe();wSe();xu();bSe="The stream has already been transformed.",BSe=t=>{if(!SSe(t)&&!kn(t)){let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${s}`)}let e=!1,r=async()=>{if(e)throw new Error(bSe);return e=!0,await xSe(t)},n=s=>{if(typeof s.stream!="function")throw new Error(`Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled. -If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body`);return s.stream()};return Object.assign(t,{transformToByteArray:r,transformToString:async s=>{let o=await r();if(s==="base64")return t_(o);if(s==="hex")return Qi(o);if(s===void 0||s==="utf8"||s==="utf-8")return ySe(o);if(typeof TextDecoder=="function")return new TextDecoder(s).decode(o);throw new Error("TextDecoder is not available, please make sure polyfill is provided.")},transformToWebStream:()=>{if(e)throw new Error(bSe);if(e=!0,SSe(t))return n(t);if(kn(t))return t;throw new Error(`Cannot transform payload to web stream, got ${t}`)}})},SSe=t=>typeof Blob=="function"&&t instanceof Blob});async function Oyt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:a,value:c}=await r.read();c&&(e.push(c),s+=c.length),n=a}let o=new Uint8Array(s),i=0;for(let a of e)o.set(a,i),i+=a.length;return o}var NSe,lW,Lyt,TSe,PSe=C(()=>{NSe=require("node:stream"),lW=class extends NSe.Writable{bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}},Lyt=t=>typeof ReadableStream=="function"&&t instanceof ReadableStream;TSe=t=>Lyt(t)?Oyt(t):new Promise((e,r)=>{let n=new lW;t.pipe(n),t.on("error",s=>{n.end(),r(s)}),n.on("error",r),n.on("finish",function(){let s=new Uint8Array(Buffer.concat(this.bufferedBytes));e(s)})})});var n_,vSe,s_,_Se=C(()=>{n_=require("node:stream");Wd();RSe();PSe();vSe="The stream has already been transformed.",s_=t=>{if(!(t instanceof n_.Readable))try{return BSe(t)}catch{let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${s}`)}let e=!1,r=async()=>{if(e)throw new Error(vSe);return e=!0,await TSe(t)};return Object.assign(t,{transformToByteArray:r,transformToString:async n=>{let s=await r();return n===void 0||Buffer.isEncoding(n)?Ia(s.buffer,s.byteOffset,s.byteLength).toString(n):new TextDecoder(n).decode(s)},transformToWebStream:()=>{if(e)throw new Error(vSe);if(t.readableFlowing!==null)throw new Error("The stream has been consumed by other callbacks.");if(typeof n_.Readable.toWeb!="function")throw new Error("Readable.toWeb() is not supported. Please ensure a polyfill is available.");return e=!0,n_.Readable.toWeb(t)}})}});async function QSe(t){return typeof t.stream=="function"&&(t=t.stream()),t.tee()}var DSe=C(()=>{});async function kSe(t){if(kn(t)||e_(t))return QSe(t);let e=new uW.PassThrough,r=new uW.PassThrough;return t.pipe(e),t.pipe(r),[e,r]}var uW,LSe=C(()=>{uW=require("node:stream");DSe();xu()});var Xd={};Zr(Xd,{ChecksumStream:()=>jg,Hash:()=>Oi,LazyJsonString:()=>Xn,NumericValue:()=>Ut,Uint8ArrayBlobAdapter:()=>ff,_parseEpochTimestamp:()=>cf,_parseRfc3339DateTimeWithOffset:()=>fv,_parseRfc7231DateTime:()=>Av,calculateBodyLength:()=>$c,copyDocumentWithTransform:()=>$xe,createBufferedReadable:()=>iSe,createChecksumStream:()=>tSe,dateToUtcString:()=>xa,deserializerMiddleware:()=>Cv,deserializerMiddlewareOption:()=>ZY,expectBoolean:()=>zxe,expectByte:()=>ov,expectFloat32:()=>Cx,expectInt:()=>Vxe,expectInt32:()=>nv,expectLong:()=>kg,expectNonNull:()=>Yxe,expectNumber:()=>Dg,expectObject:()=>nY,expectShort:()=>sv,expectString:()=>Wxe,expectUnion:()=>av,fromArrayBuffer:()=>Ia,fromBase64:()=>qr,fromHex:()=>yv,fromString:()=>Yd,fromUtf8:()=>$r,generateIdempotencyToken:()=>Sa,getAwsChunkedEncodingStream:()=>dSe,getSerdePlugin:()=>$be,handleFloat:()=>Jxe,headStream:()=>hSe,isArrayBuffer:()=>ev,isBlob:()=>e_,isReadableStream:()=>kn,limitedParseDouble:()=>lv,limitedParseFloat:()=>Kxe,limitedParseFloat32:()=>Xxe,logger:()=>Lg,nv:()=>gv,parseBoolean:()=>Hxe,parseEpochTimestamp:()=>pv,parseRfc3339DateTime:()=>rwe,parseRfc3339DateTimeWithOffset:()=>dv,parseRfc7231DateTime:()=>Fg,quoteHeader:()=>mv,sdkStreamMixin:()=>s_,serializerMiddleware:()=>Xv,serializerMiddlewareOption:()=>eW,splitEvery:()=>hv,splitHeader:()=>Ug,splitStream:()=>kSe,strictParseByte:()=>uv,strictParseDouble:()=>Ix,strictParseFloat:()=>jxe,strictParseFloat32:()=>cv,strictParseInt:()=>ewe,strictParseInt32:()=>twe,strictParseLong:()=>sY,strictParseShort:()=>jd,toBase64:()=>fr,toHex:()=>Qi,toUint8Array:()=>Ev,toUtf8:()=>Ar,v4:()=>Jg});var OSe,ff,Myt,Jg,Sa,nt=C(()=>{OSe=require("node:crypto");Lxe();tY();Mxe();tv();Fxe();qxe();Gxe();nwe();swe();oY();owe();cwe();lwe();uwe();pwe();pY();fwe();mY();Wd();eY();AY();Gbe();XY();zbe();tW();rSe();aSe();pSe();gSe();_Se();LSe();xu();ff=class extends Oxe(Ar,$r,fr,qr){},Myt=OSe.getRandomValues,Jg=Uxe(Myt),Sa=Jg});var ao,o_=C(()=>{nt();ao=async(t=new Uint8Array,e)=>{if(t instanceof Uint8Array)return ff.mutate(t);if(!t)return ff.mutate(new Uint8Array);let r=e.streamCollector(t);return ff.mutate(await r)}});function jc(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}var i_=C(()=>{});var Ps,Kg=C(()=>{Ps=class{serdeContext;setSerdeContext(e){this.serdeContext=e}}});function Fyt(t){return Object.keys(t).reduce((e,r)=>{let n=t[r];return{...e,[r]:Array.isArray(n)?[...n]:n}},{})}var pt,Af=C(()=>{pt=class t{method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?e.protocol.slice(-1)!==":"?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?e.path.charAt(0)!=="/"?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){let r=new t({...e,headers:{...e.headers}});return r.query&&(r.query=Fyt(r.query)),r}static isInstance(e){if(!e)return!1;let r=e;return"method"in r&&"protocol"in r&&"hostname"in r&&"path"in r&&typeof r.query=="object"&&typeof r.headers=="object"}clone(){return t.clone(this)}}});var Zn,dW=C(()=>{Zn=class{statusCode;reason;headers;body;constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;let r=e;return typeof r.statusCode=="number"&&typeof r.headers=="object"}}});var Zg={};Zr(Zg,{__addDisposableResource:()=>sBe,__assign:()=>a_,__asyncDelegator:()=>JSe,__asyncGenerator:()=>jSe,__asyncValues:()=>KSe,__await:()=>Xg,__awaiter:()=>GSe,__classPrivateFieldGet:()=>tBe,__classPrivateFieldIn:()=>nBe,__classPrivateFieldSet:()=>rBe,__createBinding:()=>l_,__decorate:()=>USe,__disposeResources:()=>oBe,__esDecorate:()=>Uyt,__exportStar:()=>zSe,__extends:()=>MSe,__generator:()=>HSe,__importDefault:()=>eBe,__importStar:()=>ZSe,__makeTemplateObject:()=>XSe,__metadata:()=>$Se,__param:()=>qSe,__propKey:()=>$yt,__read:()=>mW,__rest:()=>FSe,__runInitializers:()=>qyt,__setFunctionName:()=>Gyt,__spread:()=>VSe,__spreadArray:()=>WSe,__spreadArrays:()=>YSe,__values:()=>c_,default:()=>Vyt});function MSe(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");pW(t,e);function r(){this.constructor=t}t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function FSe(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s=0;a--)(i=t[a])&&(o=(s<3?i(o):s>3?i(e,r,o):i(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}function qSe(t,e){return function(r,n){e(r,n,t)}}function Uyt(t,e,r,n,s,o){function i(x){if(x!==void 0&&typeof x!="function")throw new TypeError("Function expected");return x}for(var a=n.kind,c=a==="getter"?"get":a==="setter"?"set":"value",l=!e&&t?n.static?t:t.prototype:null,u=e||(l?Object.getOwnPropertyDescriptor(l,n.name):{}),d,p=!1,m=r.length-1;m>=0;m--){var h={};for(var y in n)h[y]=y==="access"?{}:n[y];for(var y in n.access)h.access[y]=n.access[y];h.addInitializer=function(x){if(p)throw new TypeError("Cannot add initializers after decoration has completed");o.push(i(x||null))};var I=(0,r[m])(a==="accessor"?{get:u.get,set:u.set}:u[c],h);if(a==="accessor"){if(I===void 0)continue;if(I===null||typeof I!="object")throw new TypeError("Object expected");(d=i(I.get))&&(u.get=d),(d=i(I.set))&&(u.set=d),(d=i(I.init))&&s.unshift(d)}else(d=i(I))&&(a==="field"?s.unshift(d):u[c]=d)}l&&Object.defineProperty(l,n.name,u),p=!0}function qyt(t,e,r){for(var n=arguments.length>2,s=0;s0&&o[o.length-1])&&(l[0]===6||l[0]===2)){r=0;continue}if(l[0]===3&&(!o||l[1]>o[0]&&l[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}}};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function mW(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),s,o=[],i;try{for(;(e===void 0||e-- >0)&&!(s=n.next()).done;)o.push(s.value)}catch(a){i={error:a}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(i)throw i.error}}return o}function VSe(){for(var t=[],e=0;e1||a(p,m)})})}function a(p,m){try{c(n[p](m))}catch(h){d(o[0][3],h)}}function c(p){p.value instanceof Xg?Promise.resolve(p.value.v).then(l,u):d(o[0][2],p)}function l(p){a("next",p)}function u(p){a("throw",p)}function d(p,m){p(m),o.shift(),o.length&&a(o[0][0],o[0][1])}}function JSe(t){var e,r;return e={},n("next"),n("throw",function(s){throw s}),n("return"),e[Symbol.iterator]=function(){return this},e;function n(s,o){e[s]=t[s]?function(i){return(r=!r)?{value:Xg(t[s](i)),done:!1}:o?o(i):i}:o}}function KSe(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof c_=="function"?c_(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(i){return new Promise(function(a,c){i=t[o](i),s(a,c,i.done,i.value)})}}function s(o,i,a,c){Promise.resolve(c).then(function(l){o({value:l,done:a})},i)}}function XSe(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function ZSe(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&l_(e,t,r);return Hyt(e,t),e}function eBe(t){return t&&t.__esModule?t:{default:t}}function tBe(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)}function rBe(t,e,r,n,s){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?s.call(t,r):s?s.value=r:e.set(t,r),r}function nBe(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function sBe(t,e,r){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var n;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=e[Symbol.asyncDispose]}if(n===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=e[Symbol.dispose]}if(typeof n!="function")throw new TypeError("Object not disposable.");t.stack.push({value:e,dispose:n,async:r})}else r&&t.stack.push({async:!0});return e}function oBe(t){function e(n){t.error=t.hasError?new zyt(n,t.error,"An error was suppressed during disposal."):n,t.hasError=!0}function r(){for(;t.stack.length;){var n=t.stack.pop();try{var s=n.dispose&&n.dispose.call(n.value);if(n.async)return Promise.resolve(s).then(r,function(o){return e(o),r()})}catch(o){e(o)}}if(t.hasError)throw t.error}return r()}var pW,a_,l_,Hyt,zyt,Vyt,ey=C(()=>{pW=function(t,e){return pW=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])},pW(t,e)};a_=function(){return a_=Object.assign||function(e){for(var r,n=1,s=arguments.length;n{var u_=Object.defineProperty,Yyt=Object.getOwnPropertyDescriptor,Wyt=Object.getOwnPropertyNames,jyt=Object.prototype.hasOwnProperty,Jyt=(t,e)=>u_(t,"name",{value:e,configurable:!0}),Kyt=(t,e)=>{for(var r in e)u_(t,r,{get:e[r],enumerable:!0})},Xyt=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Wyt(e))!jyt.call(t,s)&&s!==r&&u_(t,s,{get:()=>e[s],enumerable:!(n=Yyt(e,s))||n.enumerable});return t},Zyt=t=>Xyt(u_({},"__esModule",{value:!0}),t),iBe={};Kyt(iBe,{isArrayBuffer:()=>eEt});aBe.exports=Zyt(iBe);var eEt=Jyt(t=>typeof ArrayBuffer=="function"&&t instanceof ArrayBuffer||Object.prototype.toString.call(t)==="[object ArrayBuffer]","isArrayBuffer")});var pBe=w((Kdr,dBe)=>{var d_=Object.defineProperty,tEt=Object.getOwnPropertyDescriptor,rEt=Object.getOwnPropertyNames,nEt=Object.prototype.hasOwnProperty,lBe=(t,e)=>d_(t,"name",{value:e,configurable:!0}),sEt=(t,e)=>{for(var r in e)d_(t,r,{get:e[r],enumerable:!0})},oEt=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of rEt(e))!nEt.call(t,s)&&s!==r&&d_(t,s,{get:()=>e[s],enumerable:!(n=tEt(e,s))||n.enumerable});return t},iEt=t=>oEt(d_({},"__esModule",{value:!0}),t),uBe={};sEt(uBe,{fromArrayBuffer:()=>cEt,fromString:()=>lEt});dBe.exports=iEt(uBe);var aEt=cBe(),fW=require("buffer"),cEt=lBe((t,e=0,r=t.byteLength-e)=>{if(!(0,aEt.isArrayBuffer)(t))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof t} (${t})`);return fW.Buffer.from(t,e,r)},"fromArrayBuffer"),lEt=lBe((t,e)=>{if(typeof t!="string")throw new TypeError(`The "input" argument must be of type string. Received type ${typeof t} (${t})`);return e?fW.Buffer.from(t,e):fW.Buffer.from(t)},"fromString")});var gBe=w((Xdr,hBe)=>{var p_=Object.defineProperty,uEt=Object.getOwnPropertyDescriptor,dEt=Object.getOwnPropertyNames,pEt=Object.prototype.hasOwnProperty,AW=(t,e)=>p_(t,"name",{value:e,configurable:!0}),mEt=(t,e)=>{for(var r in e)p_(t,r,{get:e[r],enumerable:!0})},fEt=(t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of dEt(e))!pEt.call(t,s)&&s!==r&&p_(t,s,{get:()=>e[s],enumerable:!(n=uEt(e,s))||n.enumerable});return t},AEt=t=>fEt(p_({},"__esModule",{value:!0}),t),mBe={};mEt(mBe,{fromUtf8:()=>ABe,toUint8Array:()=>hEt,toUtf8:()=>gEt});hBe.exports=AEt(mBe);var fBe=pBe(),ABe=AW(t=>{let e=(0,fBe.fromString)(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT)},"fromUtf8"),hEt=AW(t=>typeof t=="string"?ABe(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t),"toUint8Array"),gEt=AW(t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return(0,fBe.fromArrayBuffer)(t.buffer,t.byteOffset,t.byteLength).toString("utf8")},"toUtf8")});var yBe=w(m_=>{"use strict";Object.defineProperty(m_,"__esModule",{value:!0});m_.convertToBuffer=void 0;var yEt=gBe(),EEt=typeof Buffer<"u"&&Buffer.from?function(t){return Buffer.from(t,"utf8")}:yEt.fromUtf8;function CEt(t){return t instanceof Uint8Array?t:typeof t=="string"?EEt(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t)}m_.convertToBuffer=CEt});var EBe=w(f_=>{"use strict";Object.defineProperty(f_,"__esModule",{value:!0});f_.isEmptyData=void 0;function IEt(t){return typeof t=="string"?t.length===0:t.byteLength===0}f_.isEmptyData=IEt});var CBe=w(A_=>{"use strict";Object.defineProperty(A_,"__esModule",{value:!0});A_.numToUint8=void 0;function xEt(t){return new Uint8Array([(t&4278190080)>>24,(t&16711680)>>16,(t&65280)>>8,t&255])}A_.numToUint8=xEt});var IBe=w(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});h_.uint32ArrayFrom=void 0;function wEt(t){if(!Uint32Array.from){for(var e=new Uint32Array(t.length),r=0;r{"use strict";Object.defineProperty(Jc,"__esModule",{value:!0});Jc.uint32ArrayFrom=Jc.numToUint8=Jc.isEmptyData=Jc.convertToBuffer=void 0;var bEt=yBe();Object.defineProperty(Jc,"convertToBuffer",{enumerable:!0,get:function(){return bEt.convertToBuffer}});var SEt=EBe();Object.defineProperty(Jc,"isEmptyData",{enumerable:!0,get:function(){return SEt.isEmptyData}});var BEt=CBe();Object.defineProperty(Jc,"numToUint8",{enumerable:!0,get:function(){return BEt.numToUint8}});var REt=IBe();Object.defineProperty(Jc,"uint32ArrayFrom",{enumerable:!0,get:function(){return REt.uint32ArrayFrom}})});var bBe=w(g_=>{"use strict";Object.defineProperty(g_,"__esModule",{value:!0});g_.AwsCrc32=void 0;var xBe=(ey(),Y(Zg)),gW=hW(),wBe=y_(),NEt=(function(){function t(){this.crc32=new wBe.Crc32}return t.prototype.update=function(e){(0,gW.isEmptyData)(e)||this.crc32.update((0,gW.convertToBuffer)(e))},t.prototype.digest=function(){return xBe.__awaiter(this,void 0,void 0,function(){return xBe.__generator(this,function(e){return[2,(0,gW.numToUint8)(this.crc32.digest())]})})},t.prototype.reset=function(){this.crc32=new wBe.Crc32},t})();g_.AwsCrc32=NEt});var y_=w(Zd=>{"use strict";Object.defineProperty(Zd,"__esModule",{value:!0});Zd.AwsCrc32=Zd.Crc32=Zd.crc32=void 0;var TEt=(ey(),Y(Zg)),PEt=hW();function vEt(t){return new SBe().update(t).digest()}Zd.crc32=vEt;var SBe=(function(){function t(){this.checksum=4294967295}return t.prototype.update=function(e){var r,n;try{for(var s=TEt.__values(e),o=s.next();!o.done;o=s.next()){var i=o.value;this.checksum=this.checksum>>>8^QEt[(this.checksum^i)&255]}}catch(a){r={error:a}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return this},t.prototype.digest=function(){return(this.checksum^4294967295)>>>0},t})();Zd.Crc32=SBe;var _Et=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],QEt=(0,PEt.uint32ArrayFrom)(_Et),DEt=bBe();Object.defineProperty(Zd,"AwsCrc32",{enumerable:!0,get:function(){return DEt.AwsCrc32}})});function BBe(t){for(let e=0;e<8;e++)t[e]^=255;for(let e=7;e>-1&&(t[e]++,t[e]===0);e--);}var ep,yW=C(()=>{nt();ep=class t{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let r=new Uint8Array(8);for(let n=7,s=Math.abs(Math.round(e));n>-1&&s>0;n--,s/=256)r[n]=s;return e<0&&BBe(r),new t(r)}valueOf(){let e=this.bytes.slice(0),r=e[0]&128;return r&&BBe(e),parseInt(Qi(e),16)*(r?-1:1)}toString(){return String(this.valueOf())}}});var ty,RBe,NBe,kEt,LEt,OEt,MEt,FEt,UEt,qEt,$Et,GEt,EW=C(()=>{nt();yW();ty=class{toUtf8;fromUtf8;constructor(e,r){this.toUtf8=e,this.fromUtf8=r}format(e){let r=[];for(let o of Object.keys(e)){let i=this.fromUtf8(o);r.push(Uint8Array.from([i.byteLength]),i,this.formatHeaderValue(e[o]))}let n=new Uint8Array(r.reduce((o,i)=>o+i.byteLength,0)),s=0;for(let o of r)n.set(o,s),s+=o.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let r=new DataView(new ArrayBuffer(3));return r.setUint8(0,3),r.setInt16(1,e.value,!1),new Uint8Array(r.buffer);case"integer":let n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":let s=new Uint8Array(9);return s[0]=5,s.set(e.value.bytes,1),s;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let i=new Uint8Array(o.buffer);return i.set(e.value,3),i;case"string":let a=this.fromUtf8(e.value),c=new DataView(new ArrayBuffer(3+a.byteLength));c.setUint8(0,7),c.setUint16(1,a.byteLength,!1);let l=new Uint8Array(c.buffer);return l.set(a,3),l;case"timestamp":let u=new Uint8Array(9);return u[0]=8,u.set(ep.fromNumber(e.value.valueOf()).bytes,1),u;case"uuid":if(!GEt.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);let d=new Uint8Array(17);return d[0]=9,d.set(yv(e.value.replace(/\-/g,"")),1),d}}parse(e){let r={},n=0;for(;n{TBe=Q(y_()),PBe=4,tp=PBe*2,hf=4,HEt=tp+hf*2});var QBe,ry,CW=C(()=>{QBe=Q(y_());EW();_Be();ry=class{headerMarshaller;messageBuffer;isEndOfStream;constructor(e,r){this.headerMarshaller=new ty(e,r),this.messageBuffer=[],this.isEndOfStream=!1}feed(e){this.messageBuffer.push(this.decode(e))}endOfStream(){this.isEndOfStream=!0}getMessage(){let e=this.messageBuffer.pop(),r=this.isEndOfStream;return{getMessage(){return e},isEndOfStream(){return r}}}getAvailableMessages(){let e=this.messageBuffer;this.messageBuffer=[];let r=this.isEndOfStream;return{getMessages(){return e},isEndOfStream(){return r}}}encode({headers:e,body:r}){let n=this.headerMarshaller.format(e),s=n.byteLength+r.byteLength+16,o=new Uint8Array(s),i=new DataView(o.buffer,o.byteOffset,o.byteLength),a=new QBe.Crc32;return i.setUint32(0,s,!1),i.setUint32(4,n.byteLength,!1),i.setUint32(8,a.update(o.subarray(0,8)).digest(),!1),o.set(n,12),o.set(r,n.byteLength+12),i.setUint32(s-4,a.update(o.subarray(8,s-4)).digest(),!1),o}decode(e){let{headers:r,body:n}=vBe(e);return{headers:this.headerMarshaller.parse(r),body:n}}formatHeaders(e){return this.headerMarshaller.format(e)}}});var ny,IW=C(()=>{ny=class{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.inputStream)yield this.options.decoder.decode(e)}}});var sy,xW=C(()=>{sy=class{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.messageStream)yield this.options.encoder.encode(e);this.options.includeEndFrame&&(yield new Uint8Array(0))}}});var oy,wW=C(()=>{oy=class{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.messageStream){let r=await this.options.deserializer(e);r!==void 0&&(yield r)}}}});var iy,bW=C(()=>{iy=class{options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.inputStream)yield this.options.serializer(e)}}});function E_(t){let e=0,r=0,n=null,s=null,o=a=>{if(typeof a!="number")throw new Error("Attempted to allocate an event message where size was not a number: "+a);e=a,r=4,n=new Uint8Array(a),new DataView(n.buffer).setUint32(0,a,!1)},i=async function*(){let a=t[Symbol.asyncIterator]();for(;;){let{value:c,done:l}=await a.next();if(l){if(e)if(e===r)yield n;else throw new Error("Truncated event message received.");else return;return}let u=c.length,d=0;for(;d{});function DBe(t,e){let r=Qx(e.deserializer,e.toUtf8);return{[Symbol.asyncIterator]:async function*(){for await(let n of t){let s=e.eventStreamCodec.decode(n),o=await r(s);o!==void 0&&(yield o)}}}}function Qx(t,e){return async function(r){let{value:n}=r.headers[":message-type"];if(n==="error"){let s=new Error(r.headers[":error-message"].value||"UnknownError");throw s.name=r.headers[":error-code"].value,s}else if(n==="exception"){let s=r.headers[":exception-type"].value,o={[s]:r},i=await t(o);if(i.$unknown){let a=new Error(e(r.body));throw a.name=s,a}throw i[s]}else if(n==="event"){let s={[r.headers[":event-type"].value]:r},o=await t(s);return o.$unknown?void 0:o}else throw Error(`Unrecognizable event type: ${r.headers[":event-type"].value}`)}}var BW=C(()=>{});var gf,kBe,RW=C(()=>{CW();IW();xW();wW();bW();SW();BW();gf=class{eventStreamCodec;utfEncoder;constructor({utf8Encoder:e,utf8Decoder:r}){this.eventStreamCodec=new ry(e,r),this.utfEncoder=e}deserialize(e,r){let n=E_(e);return new oy({messageStream:new ny({inputStream:n,decoder:this.eventStreamCodec}),deserializer:Qx(r,this.utfEncoder)})}serialize(e,r){return new sy({messageStream:new iy({inputStream:e,serializer:r}),encoder:this.eventStreamCodec,includeEndFrame:!0})}},kBe=t=>new gf(t)});async function*zEt(t){let e=!1,r=!1,n=new Array;for(t.on("error",s=>{if(e||(e=!0),s)throw s}),t.on("data",s=>{n.push(s)}),t.on("end",()=>{e=!0});!r;){let s=await new Promise(o=>setTimeout(()=>o(n.shift()),0));s&&(yield s),r=e&&n.length===0}}var LBe,Dx,OBe,MBe=C(()=>{LBe=require("node:stream");RW();Dx=class{universalMarshaller;constructor({utf8Encoder:e,utf8Decoder:r}){this.universalMarshaller=new gf({utf8Decoder:r,utf8Encoder:e})}deserialize(e,r){let n=typeof e[Symbol.asyncIterator]=="function"?e:zEt(e);return this.universalMarshaller.deserialize(n,r)}serialize(e,r){return LBe.Readable.from(this.universalMarshaller.serialize(e,r))}},OBe=t=>new Dx(t)});var FBe,UBe,qBe=C(()=>{FBe=t=>({[Symbol.asyncIterator]:async function*(){let e=t.getReader();try{for(;;){let{done:r,value:n}=await e.read();if(r)return;yield n}}finally{e.releaseLock()}}}),UBe=t=>{let e=t[Symbol.asyncIterator]();return new ReadableStream({async pull(r){let{done:n,value:s}=await e.next();if(n)return r.close();r.enqueue(s)}})}});var $Be,GBe=C(()=>{$Be=t=>Object.assign(t,{eventStreamMarshaller:t.eventStreamSerdeProvider(t)})});var C_,HBe=C(()=>{nt();C_=class{marshaller;serializer;deserializer;serdeContext;defaultContentType;constructor({marshaller:e,serializer:r,deserializer:n,serdeContext:s,defaultContentType:o}){this.marshaller=e,this.serializer=r,this.deserializer=n,this.serdeContext=s,this.defaultContentType=o}async serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n}){let s=this.marshaller,o=r.getEventStreamMember(),i=r.getMemberSchema(o),a=this.serializer,c=this.defaultContentType,l=Symbol("initialRequestMarker"),u={async*[Symbol.asyncIterator](){if(n){let d={":event-type":{type:"string",value:"initial-request"},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:c}};a.write(r,n);let p=a.flush();yield{[l]:!0,headers:d,body:p}}for await(let d of e)yield d}};return s.serialize(u,d=>{if(d[l])return{headers:d.headers,body:d.body};let p="";for(let b in d)if(b!=="__type"){p=b;break}let{additionalHeaders:m,body:h,eventType:y,explicitPayloadContentType:I}=this.writeEventBody(p,i,d);return{headers:{":event-type":{type:"string",value:y},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:I??c},...m},body:h}})}async deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n}){let s=this.marshaller,o=r.getEventStreamMember(),a=r.getMemberSchema(o).getMemberSchemas(),c=Symbol("initialResponseMarker"),l=s.deserialize(e.body,async p=>{let m="";for(let y in p)if(y!=="__type"){m=y;break}let h=p[m].body;if(m==="initial-response"){let y=await this.deserializer.read(r,h);return delete y[o],{[c]:!0,...y}}else if(m in a){let y=a[m];if(y.isStructSchema()){let I={},x=!1;for(let[b,T]of y.structIterator()){let{eventHeader:_,eventPayload:U}=T.getMergedTraits();if(x=x||!!(_||U),U)T.isBlobSchema()?I[b]=h:T.isStringSchema()?I[b]=(this.serdeContext?.utf8Encoder??Ar)(h):T.isStructSchema()&&(I[b]=await this.deserializer.read(T,h));else if(_){let O=p[m].headers[b]?.value;O!=null&&(T.isNumericSchema()?O&&typeof O=="object"&&"bytes"in O?I[b]=BigInt(O.toString()):I[b]=Number(O):I[b]=O)}}if(x)return{[m]:I};if(h.byteLength===0)return{[m]:{}}}return{[m]:await this.deserializer.read(y,h)}}else return{$unknown:p}}),u=l[Symbol.asyncIterator](),d=await u.next();if(d.done)return l;if(d.value?.[c]){if(!r)throw new Error("@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.");for(let p in d.value)n[p]=d.value[p]}return{async*[Symbol.asyncIterator](){for(d?.value?.[c]||(yield d.value);;){let{done:p,value:m}=await u.next();if(p)break;yield m}}}}writeEventBody(e,r,n){let s=this.serializer,o=e,i=null,a,c=r.getSchema()[4].includes(e),l={};if(c){let p=r.getMemberSchema(e);if(p.isStructSchema()){for(let[m,h]of p.structIterator()){let{eventHeader:y,eventPayload:I}=h.getMergedTraits();if(I)i=m;else if(y){let x=n[e][m],b="binary";h.isNumericSchema()?(-2)**31<=x&&x<=2**31-1?b="integer":b="long":h.isTimestampSchema()?b="timestamp":h.isStringSchema()?b="string":h.isBooleanSchema()&&(b="boolean"),x!=null&&(l[m]={type:b,value:x},delete n[e][m])}}if(i!==null){let m=p.getMemberSchema(i);m.isBlobSchema()?a="application/octet-stream":m.isStringSchema()&&(a="text/plain"),s.write(m,n[e][i])}else s.write(p,n[e])}else if(p.isUnitSchema())s.write(p,{});else throw new Error("@smithy/core/event-streams - non-struct member not supported in event stream union.")}else{let[p,m]=n[e];o=p,s.write(15,m)}let u=s.flush()??new Uint8Array;return{body:typeof u=="string"?(this.serdeContext?.utf8Decoder??$r)(u):u,eventType:o,explicitPayloadContentType:a,additionalHeaders:l}}}});var zBe={};Zr(zBe,{EventStreamCodec:()=>ry,EventStreamMarshaller:()=>Dx,EventStreamSerde:()=>C_,HeaderMarshaller:()=>ty,Int64:()=>ep,MessageDecoderStream:()=>ny,MessageEncoderStream:()=>sy,SmithyMessageDecoderStream:()=>oy,SmithyMessageEncoderStream:()=>iy,UniversalEventStreamMarshaller:()=>gf,eventStreamSerdeProvider:()=>OBe,getChunkedStream:()=>E_,getMessageUnmarshaller:()=>Qx,getUnmarshalledStream:()=>DBe,iterableToReadableStream:()=>UBe,readableStreamToIterable:()=>FBe,resolveEventStreamSerdeConfig:()=>$Be,universalEventStreamSerdeProvider:()=>kBe});var VBe=C(()=>{CW();EW();yW();IW();xW();wW();bW();MBe();qBe();RW();SW();BW();GBe();HBe()});var yf,I_=C(()=>{Et();Kg();Af();dW();yf=class extends Ps{options;compositeErrorRegistry;constructor(e){super(),this.options=e,this.compositeErrorRegistry=hr.for(e.defaultNamespace);for(let r of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(r)}getRequestType(){return pt}getResponseType(){return Zn}setSerdeContext(e){this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec()&&this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,r){if("url"in r){e.protocol=r.url.protocol,e.hostname=r.url.hostname,e.port=r.url.port?Number(r.url.port):void 0,e.path=r.url.pathname,e.fragment=r.url.hash||void 0,e.username=r.url.username||void 0,e.password=r.url.password||void 0,e.query||(e.query={});for(let[n,s]of r.url.searchParams.entries())e.query[n]=s;if(r.headers)for(let n in r.headers)e.headers[n]=r.headers[n].join(", ");return e}else{if(e.protocol=r.protocol,e.hostname=r.hostname,e.port=r.port?Number(r.port):void 0,e.path=r.path,e.query={...r.query},r.headers)for(let n in r.headers)e.headers[n]=r.headers[n];return e}}setHostPrefix(e,r,n){if(this.serdeContext?.disableHostPrefix)return;let s=ye.of(r.input),o=Kc(r.traits??{});if(o.endpoint){let i=o.endpoint?.[0];if(typeof i=="string"){for(let[a,c]of s.structIterator()){if(!c.getMergedTraits().hostLabel)continue;let l=n[a];if(typeof l!="string")throw new Error(`@smithy/core/schema - ${a} in input must be a string as hostLabel.`);i=i.replace(`{${a}}`,l)}e.hostname=i+e.hostname}}}deserializeMetadata(e){return{httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}}async serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n})}async deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n})}async loadEventStreamCapability(){let{EventStreamSerde:e}=await Promise.resolve().then(()=>(VBe(),zBe));return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,r,n,s,o){return[]}getEventStreamMarshaller(){let e=this.serdeContext;if(!e.eventStreamMarshaller)throw new Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}});var Ef,YBe=C(()=>{Et();nt();I_();o_();i_();Af();Ef=class extends yf{async serializeRequest(e,r,n){let s=r&&typeof r=="object"?r:{},o=this.serializer,i={},a={},c=await n.endpoint(),l=ye.of(e?.input),u=[],d=[],p=!1,m,h=new pt({protocol:"",hostname:"",port:void 0,path:"",fragment:void 0,query:i,headers:a,body:void 0});if(c){this.updateServiceEndpoint(h,c),this.setHostPrefix(h,e,s);let y=Kc(e.traits);if(y.http){h.method=y.http[0];let[I,x]=y.http[1].split("?");h.path=="/"?h.path=I:h.path+=I;let b=new URLSearchParams(x??"");for(let[T,_]of b)i[T]=_}}for(let[y,I]of l.structIterator()){let x=I.getMergedTraits()??{},b=s[y];if(b==null&&!I.isIdempotencyToken()){if(x.httpLabel&&(h.path.includes(`{${y}+}`)||h.path.includes(`{${y}}`)))throw new Error(`No value provided for input HTTP label: ${y}.`);continue}if(x.httpPayload)I.isStreaming()?I.isStructSchema()?s[y]&&(m=await this.serializeEventStream({eventStream:s[y],requestSchema:l})):m=b:(o.write(I,b),m=o.flush());else if(x.httpLabel){o.write(I,b);let T=o.flush();h.path.includes(`{${y}+}`)?h.path=h.path.replace(`{${y}+}`,T.split("/").map(jc).join("/")):h.path.includes(`{${y}}`)&&(h.path=h.path.replace(`{${y}}`,jc(T)))}else if(x.httpHeader)o.write(I,b),a[x.httpHeader.toLowerCase()]=String(o.flush());else if(typeof x.httpPrefixHeaders=="string")for(let T in b){let _=b[T],U=x.httpPrefixHeaders+T;o.write([I.getValueSchema(),{httpHeader:U}],_),a[U.toLowerCase()]=o.flush()}else x.httpQuery||x.httpQueryParams?this.serializeQuery(I,b,i):(p=!0,u.push(y),d.push(I))}if(p&&s){let[y,I]=(l.getName(!0)??"#Unknown").split("#"),x=l.getSchema()[6],b=[3,y,I,l.getMergedTraits(),u,d,void 0];x?b[6]=x:b.pop(),o.write(b,s),m=o.flush()}return h.headers=a,h.query=i,h.body=m,h}serializeQuery(e,r,n){let s=this.serializer,o=e.getMergedTraits();if(o.httpQueryParams){for(let i in r)if(!(i in n)){let a=r[i],c=e.getValueSchema();Object.assign(c.getMergedTraits(),{...o,httpQuery:i,httpQueryParams:void 0}),this.serializeQuery(c,a,n)}return}if(e.isListSchema()){let i=!!e.getMergedTraits().sparse,a=[];for(let c of r){s.write([e.getValueSchema(),o],c);let l=s.flush();(i||l!==void 0)&&a.push(l)}n[o.httpQuery]=a}else s.write([e,o],r),n[o.httpQuery]=s.flush()}async deserializeResponse(e,r,n){let s=this.deserializer,o=ye.of(e.output),i={};if(n.statusCode>=300){let c=await ao(n.body,r);throw c.byteLength>0&&Object.assign(i,await s.read(15,c)),await this.handleError(e,r,n,i,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - HTTP Protocol error handler failed to throw.")}for(let c in n.headers){let l=n.headers[c];delete n.headers[c],n.headers[c.toLowerCase()]=l}let a=await this.deserializeHttpMessage(o,r,n,i);if(a.length){let c=await ao(n.body,r);if(c.byteLength>0){let l=await s.read(o,c);for(let u of a)l[u]!=null&&(i[u]=l[u])}}else a.discardResponseBody&&await ao(n.body,r);return i.$metadata=this.deserializeMetadata(n),i}async deserializeHttpMessage(e,r,n,s,o){let i;s instanceof Set?i=o:i=s;let a=!0,c=this.deserializer,l=ye.of(e),u=[];for(let[d,p]of l.structIterator()){let m=p.getMemberTraits();if(m.httpPayload){if(a=!1,p.isStreaming())p.isStructSchema()?i[d]=await this.deserializeEventStream({response:n,responseSchema:l}):i[d]=s_(n.body);else if(n.body){let y=await ao(n.body,r);y.byteLength>0&&(i[d]=await c.read(p,y))}}else if(m.httpHeader){let h=String(m.httpHeader).toLowerCase(),y=n.headers[h];if(y!=null)if(p.isListSchema()){let I=p.getValueSchema();I.getMergedTraits().httpHeader=h;let x;I.isTimestampSchema()&&I.getSchema()===4?x=hv(y,",",2):x=Ug(y);let b=[];for(let T of x)b.push(await c.read(I,T.trim()));i[d]=b}else i[d]=await c.read(p,y)}else if(m.httpPrefixHeaders!==void 0){i[d]={};for(let h in n.headers)if(h.startsWith(m.httpPrefixHeaders)){let y=n.headers[h],I=p.getValueSchema();I.getMergedTraits().httpHeader=h,i[d][h.slice(m.httpPrefixHeaders.length)]=await c.read(I,y)}}else m.httpResponseCode?i[d]=n.statusCode:u.push(d)}return u.discardResponseBody=a,u}}});var bu,WBe=C(()=>{Et();I_();o_();Af();bu=class extends yf{async serializeRequest(e,r,n){let s=this.serializer,o={},i={},a=await n.endpoint(),c=ye.of(e?.input),l=c.getSchema(),u,d=r&&typeof r=="object"?r:{},p=new pt({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:o,headers:i,body:void 0});if(a&&(this.updateServiceEndpoint(p,a),this.setHostPrefix(p,e,d)),d){let m=c.getEventStreamMember();if(m){if(d[m]){let h={};for(let[y,I]of c.structIterator())y!==m&&d[y]&&(s.write(I,d[y]),h[y]=s.flush());u=await this.serializeEventStream({eventStream:d[m],requestSchema:c,initialRequest:h})}}else s.write(l,d),u=s.flush()}return p.headers=Object.assign(p.headers,i),p.query=o,p.body=u,p.method="POST",p}async deserializeResponse(e,r,n){let s=this.deserializer,o=ye.of(e.output),i={};if(n.statusCode>=300){let c=await ao(n.body,r);throw c.byteLength>0&&Object.assign(i,await s.read(15,c)),await this.handleError(e,r,n,i,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(let c in n.headers){let l=n.headers[c];delete n.headers[c],n.headers[c.toLowerCase()]=l}let a=o.getEventStreamMember();if(a)i[a]=await this.deserializeEventStream({response:n,responseSchema:o,initialResponseContainer:i});else{let c=await ao(n.body,r);c.byteLength>0&&Object.assign(i,await s.read(o,c))}return i.$metadata=this.deserializeMetadata(n),i}}});var NW,TW=C(()=>{i_();NW=(t,e,r,n,s,o)=>{if(e!=null&&e[r]!==void 0){let i=n();if(i==null||i.length<=0)throw new Error("Empty value provided for input HTTP label: "+r+".");t=t.replace(s,o?i.split("/").map(a=>jc(a)).join("/"):jc(i))}else throw new Error("No value provided for input HTTP label: "+r+".");return t}});function PW(t,e){return new x_(t,e)}var x_,jBe=C(()=>{Af();TW();x_=class{input;context;query={};method="";headers={};path="";body=null;hostname="";resolvePathStack=[];constructor(e,r){this.input=e,this.context=r}async build(){let{hostname:e,protocol:r="https",port:n,path:s}=await this.context.endpoint();this.path=s;for(let o of this.resolvePathStack)o(this.path);return new pt({protocol:r,hostname:this.hostname||e,port:n,method:this.method,path:this.path,query:this.query,body:this.body,headers:this.headers})}hn(e){return this.hostname=e,this}bp(e){return this.resolvePathStack.push(r=>{this.path=`${r?.endsWith("/")?r.slice(0,-1):r||""}`+e}),this}p(e,r,n,s){return this.resolvePathStack.push(o=>{this.path=NW(o,this.input,e,r,n,s)}),this}h(e){return this.headers=e,this}q(e){return this.query=e,this}b(e){return this.body=e,this}m(e){return this.method=e,this}}});function Wo(t,e){if(e.timestampFormat.useTrait&&t.isTimestampSchema()&&(t.getSchema()===5||t.getSchema()===6||t.getSchema()===7))return t.getSchema();let{httpLabel:r,httpPrefixHeaders:n,httpHeader:s,httpQuery:o}=t.getMergedTraits();return(e.httpBindings?typeof n=="string"||s?6:o||r?5:void 0:void 0)??e.timestampFormat.default}var w_=C(()=>{});var Cf,vW=C(()=>{Et();nt();Kg();w_();Cf=class extends Ps{settings;constructor(e){super(),this.settings=e}read(e,r){let n=ye.of(e);if(n.isListSchema())return Ug(r).map(s=>this.read(n.getValueSchema(),s));if(n.isBlobSchema())return(this.serdeContext?.base64Decoder??qr)(r);if(n.isTimestampSchema())switch(Wo(n,this.settings)){case 5:return fv(r);case 6:return Av(r);case 7:return cf(r);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",r),new Date(r)}if(n.isStringSchema()){let s=n.getMergedTraits().mediaType,o=r;if(s)return n.getMergedTraits().httpHeader&&(o=this.base64ToUtf8(o)),(s==="application/json"||s.endsWith("+json"))&&(o=Xn.from(o)),o}return n.isNumericSchema()?Number(r):n.isBigIntegerSchema()?BigInt(r):n.isBigDecimalSchema()?new Ut(r,"bigDecimal"):n.isBooleanSchema()?String(r).toLowerCase()==="true":r}base64ToUtf8(e){return(this.serdeContext?.utf8Encoder??Ar)((this.serdeContext?.base64Decoder??qr)(e))}}});var If,JBe=C(()=>{Et();nt();Kg();vW();If=class extends Ps{codecDeserializer;stringDeserializer;constructor(e,r){super(),this.codecDeserializer=e,this.stringDeserializer=new Cf(r)}setSerdeContext(e){this.stringDeserializer.setSerdeContext(e),this.codecDeserializer.setSerdeContext(e),this.serdeContext=e}read(e,r){let n=ye.of(e),s=n.getMergedTraits(),o=this.serdeContext?.utf8Encoder??Ar;if(s.httpHeader||s.httpResponseCode)return this.stringDeserializer.read(n,o(r));if(s.httpPayload){if(n.isBlobSchema()){let i=this.serdeContext?.utf8Decoder??$r;return typeof r=="string"?i(r):r}else if(n.isStringSchema())return"byteLength"in r?o(r):r}return this.codecDeserializer.read(n,r)}}});var kx,_W=C(()=>{Et();nt();Kg();w_();kx=class extends Ps{settings;stringBuffer="";constructor(e){super(),this.settings=e}write(e,r){let n=ye.of(e);switch(typeof r){case"object":if(r===null){this.stringBuffer="null";return}if(n.isTimestampSchema()){if(!(r instanceof Date))throw new Error(`@smithy/core/protocols - received non-Date value ${r} when schema expected Date in ${n.getName(!0)}`);switch(Wo(n,this.settings)){case 5:this.stringBuffer=r.toISOString().replace(".000Z","Z");break;case 6:this.stringBuffer=xa(r);break;case 7:this.stringBuffer=String(r.getTime()/1e3);break;default:console.warn("Missing timestamp format, using epoch seconds",r),this.stringBuffer=String(r.getTime()/1e3)}return}if(n.isBlobSchema()&&"byteLength"in r){this.stringBuffer=(this.serdeContext?.base64Encoder??fr)(r);return}if(n.isListSchema()&&Array.isArray(r)){let i="";for(let a of r){this.write([n.getValueSchema(),n.getMergedTraits()],a);let c=this.flush(),l=n.getValueSchema().isTimestampSchema()?c:mv(c);i!==""&&(i+=", "),i+=l}this.stringBuffer=i;return}this.stringBuffer=JSON.stringify(r,null,2);break;case"string":let s=n.getMergedTraits().mediaType,o=r;if(s&&((s==="application/json"||s.endsWith("+json"))&&(o=Xn.from(o)),n.getMergedTraits().httpHeader)){this.stringBuffer=(this.serdeContext?.base64Encoder??fr)(o.toString());return}this.stringBuffer=r;break;default:n.isIdempotencyToken()?this.stringBuffer=Sa():this.stringBuffer=String(r)}}flush(){let e=this.stringBuffer;return this.stringBuffer="",e}}});var xf,KBe=C(()=>{Et();_W();xf=class{codecSerializer;stringSerializer;buffer;constructor(e,r,n=new kx(r)){this.codecSerializer=e,this.stringSerializer=n}setSerdeContext(e){this.codecSerializer.setSerdeContext(e),this.stringSerializer.setSerdeContext(e)}write(e,r){let n=ye.of(e),s=n.getMergedTraits();if(s.httpHeader||s.httpLabel||s.httpQuery){this.stringSerializer.write(n,r),this.buffer=this.stringSerializer.flush();return}return this.codecSerializer.write(n,r)}flush(){if(this.buffer!==void 0){let e=this.buffer;return this.buffer=void 0,e}return this.codecSerializer.flush()}}});var XBe,b_,ZBe=C(()=>{XBe=Q(Ea()),b_=class{name;kind;values;constructor({name:e,kind:r=XBe.FieldPosition.HEADER,values:n=[]}){this.name=e,this.kind=r,this.values=n}add(e){this.values.push(e)}set(e){this.values=e}remove(e){this.values=this.values.filter(r=>r!==e)}toString(){return this.values.map(e=>e.includes(",")||e.includes(" ")?`"${e}"`:e).join(", ")}get(){return this.values}}});var S_,eRe=C(()=>{S_=class{entries={};encoding;constructor({fields:e=[],encoding:r="utf-8"}){e.forEach(this.setField.bind(this)),this.encoding=r}setField(e){this.entries[e.name.toLowerCase()]=e}getField(e){return this.entries[e.toLowerCase()]}removeField(e){delete this.entries[e.toLowerCase()]}getByType(e){return Object.values(this.entries).filter(r=>r.kind===e)}}});function tRe(t){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(t)}var rRe=C(()=>{});var Xc,Zc,nRe=C(()=>{Xc=t=>({setHttpHandler(e){t.httpHandler=e},httpHandler(){return t.httpHandler},updateHttpClientConfig(e,r){t.httpHandler?.updateHttpClientConfig(e,r)},httpHandlerConfigs(){return t.httpHandler.httpHandlerConfigs()}}),Zc=t=>({httpHandler:t.httpHandler()})});function QW(t){return e=>async r=>{let n=r.request;if(pt.isInstance(n)){let{body:s,headers:o}=n;if(s&&Object.keys(o).map(i=>i.toLowerCase()).indexOf(sRe)===-1)try{let i=t(s);n.headers={...n.headers,[sRe]:String(i)}}catch{}}return e({...r,request:n})}}var sRe,DW,el,oRe=C(()=>{Af();sRe="content-length";DW={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},el=t=>({applyToStack:e=>{e.add(QW(t.bodyLengthChecker),DW)}})});var rp,VEt,B_=C(()=>{rp=t=>encodeURIComponent(t).replace(/[!'()*]/g,VEt),VEt=t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`});var iRe,aRe=C(()=>{B_();iRe=t=>t.split("/").map(rp).join("/")});function cRe(t){let e=[];for(let r of Object.keys(t).sort()){let n=t[r];if(r=rp(r),Array.isArray(n))for(let s=0,o=n.length;s{B_()});function R_(t){let e={};if(t=t.replace(/^\?/,""),t)for(let r of t.split("&")){let[n,s=null]=r.split("=");n=decodeURIComponent(n),s&&(s=decodeURIComponent(s)),n in e?Array.isArray(e[n])?e[n].push(s):e[n]=[e[n],s]:e[n]=s}return e}var kW=C(()=>{});var ts,uRe=C(()=>{kW();ts=t=>{if(typeof t=="string")return ts(new URL(t));let{hostname:e,pathname:r,port:n,protocol:s,search:o}=t,i;return o&&(i=R_(o)),{hostname:e,port:n?parseInt(n):void 0,protocol:s,path:r,query:i}}});var tl={};Zr(tl,{Field:()=>b_,Fields:()=>S_,FromStringShapeDeserializer:()=>Cf,HttpBindingProtocol:()=>Ef,HttpInterceptingShapeDeserializer:()=>If,HttpInterceptingShapeSerializer:()=>xf,HttpProtocol:()=>yf,HttpRequest:()=>pt,HttpResponse:()=>Zn,RequestBuilder:()=>x_,RpcProtocol:()=>bu,SerdeContext:()=>Ps,ToStringShapeSerializer:()=>kx,buildQueryString:()=>cRe,collectBody:()=>ao,contentLengthMiddleware:()=>QW,contentLengthMiddlewareOptions:()=>DW,determineTimestampFormat:()=>Wo,escapeUri:()=>rp,escapeUriPath:()=>iRe,extendedEncodeURIComponent:()=>jc,getContentLengthPlugin:()=>el,getHttpHandlerExtensionConfiguration:()=>Xc,isValidHostname:()=>tRe,parseQueryString:()=>R_,parseUrl:()=>ts,requestBuilder:()=>PW,resolveHttpHandlerRuntimeConfig:()=>Zc,resolvedPath:()=>NW});var _e=C(()=>{o_();i_();YBe();I_();WBe();jBe();TW();vW();JBe();KBe();_W();w_();Kg();ZBe();eRe();Af();dW();rRe();nRe();oRe();B_();aRe();lRe();kW();uRe()});var Lx,N_=C(()=>{Lx=(t,e,r,n,s)=>({name:e,namespace:t,traits:r,input:n,output:s})});var dRe,LW,pRe=C(()=>{Ee();_e();N_();dRe=t=>(e,r)=>async n=>{let{response:s}=await e(n),{operationSchema:o}=mr(r),[,i,a,c,l,u]=o??[];try{let d=await t.protocol.deserializeResponse(Lx(i,a,c,l,u),{...t,...r},s);return{response:s,output:d}}catch(d){if(Object.defineProperty(d,"$response",{value:s,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in d)){let p="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";try{d.message+=` - `+p}catch{!r.logger||r.logger?.constructor?.name==="NoOpLogger"?console.warn(p):r.logger?.warn?.(p)}typeof d.$responseBodyText<"u"&&d.$response&&(d.$response.body=d.$responseBodyText);try{if(Zn.isInstance(s)){let{headers:m={}}=s,h=Object.entries(m);d.$metadata={httpStatusCode:s.statusCode,requestId:LW(/^x-[\w-]+-request-?id$/,h),extendedRequestId:LW(/^x-[\w-]+-id-2$/,h),cfId:LW(/^x-[\w-]+-cf-id$/,h)}}}catch{}}throw d}},LW=(t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1]});var mRe,fRe=C(()=>{Ee();It();N_();mRe=t=>(e,r)=>async n=>{let{operationSchema:s}=mr(r),[,o,i,a,c,l]=s??[],u=r.endpointV2?async()=>wa(r.endpointV2):t.endpoint,d=await t.protocol.serializeRequest(Lx(o,i,a,c,l),n.input,{...t,...r,endpoint:u});return e({...n,request:d})}});function Su(t){return{applyToStack:e=>{e.add(mRe(t),hRe),e.add(dRe(t),ARe),t.protocol.setSerdeContext(t)}}}var ARe,hRe,gRe=C(()=>{pRe();fRe();ARe={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},hRe={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0}});var Gr,np=C(()=>{Gr=class{name;namespace;traits;static assign(e,r){return Object.assign(e,r)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}getName(){return this.namespace+"#"+this.name}}});var T_,YEt,yRe=C(()=>{np();T_=class t extends Gr{static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=t.symbol},YEt=(t,e,r,n)=>Gr.assign(new T_,{name:e,namespace:t,traits:r,valueSchema:n})});var P_,WEt,ERe=C(()=>{np();P_=class t extends Gr{static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=t.symbol},WEt=(t,e,r,n,s)=>Gr.assign(new P_,{name:e,namespace:t,traits:r,keySchema:n,valueSchema:s})});var v_,jEt,CRe=C(()=>{np();v_=class t extends Gr{static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=t.symbol},jEt=(t,e,r,n,s)=>Gr.assign(new v_,{name:e,namespace:t,traits:r,input:n,output:s})});var ay,JEt,OW=C(()=>{np();ay=class t extends Gr{static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=t.symbol},JEt=(t,e,r,n,s)=>Gr.assign(new ay,{name:e,namespace:t,traits:r,memberNames:n,memberList:s})});var __,KEt,IRe=C(()=>{np();OW();__=class t extends ay{static symbol=Symbol.for("@smithy/err");ctor;symbol=t.symbol},KEt=(t,e,r,n,s,o)=>Gr.assign(new __,{name:e,namespace:t,traits:r,memberNames:n,memberList:s,ctor:null})});function Kc(t){if(typeof t=="object")return t;if(t=t|0,Q_[t])return Q_[t];let e={},r=0;for(let n of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])(t>>r++&1)===1&&(e[n]=1);return Q_[t]=e}var Q_,MW=C(()=>{Q_=[]});function Mx(t,e){if(t instanceof ye)return Object.assign(t,{memberName:e,_isMemberSchema:!0});let r=ye;return new r(t,e)}var Ox,D_,k_,ye,FW,xRe,wRe=C(()=>{Z4();MW();Ox={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},D_=[],k_={},ye=class t{ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=t.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor(e,r){this.ref=e,this.memberName=r;let n=[],s=e,o=e;for(this._isMemberSchema=!1;FW(s);)n.push(s[1]),s=s[0],o=Ca(s),this._isMemberSchema=!0;if(n.length>0){this.memberTraits={};for(let i=n.length-1;i>=0;--i){let a=n[i];Object.assign(this.memberTraits,Kc(a))}}else this.memberTraits=0;if(o instanceof t){let i=this.memberTraits;Object.assign(this,o),this.memberTraits=Object.assign({},i,o.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=r??o.memberName;return}if(this.schema=Ca(o),xRe(this.schema)?(this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3]):(this.name=this.memberName??String(o),this.traits=0),this._isMemberSchema&&!r)throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}static of(e){let r=typeof e=="function"||typeof e=="object"&&e!==null;if(typeof e=="number"){if(D_[e])return D_[e]}else if(typeof e=="string"){if(k_[e])return k_[e]}else if(r&&e[Ox.ns])return e[Ox.ns];let n=Ca(e);if(n instanceof t)return n;if(FW(n)){let[o,i]=n;if(o instanceof t)return Object.assign(o.getMergedTraits(),Kc(i)),o;throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(e,null,2)}.`)}let s=new t(n);return r?e[Ox.ns]=s:typeof n=="string"?k_[n]=s:typeof n=="number"?D_[n]=s:s}getSchema(){let e=this.schema;return Array.isArray(e)&&e[0]===0?e[4]:e}getName(e=!1){let{name:r}=this;return!e&&r&&r.includes("#")?r.split("#")[1]:r||void 0}getMemberName(){return this.memberName}isMemberSchema(){return this._isMemberSchema}isListSchema(){let e=this.getSchema();return typeof e=="number"?e>=64&&e<128:e[0]===1}isMapSchema(){let e=this.getSchema();return typeof e=="number"?e>=128&&e<=255:e[0]===2}isStructSchema(){let e=this.getSchema();if(typeof e!="object")return!1;let r=e[0];return r===3||r===-3||r===4}isUnionSchema(){let e=this.getSchema();return typeof e!="object"?!1:e[0]===4}isBlobSchema(){let e=this.getSchema();return e===21||e===42}isTimestampSchema(){let e=this.getSchema();return typeof e=="number"&&e>=4&&e<=7}isUnitSchema(){return this.getSchema()==="unit"}isDocumentSchema(){return this.getSchema()===15}isStringSchema(){return this.getSchema()===0}isBooleanSchema(){return this.getSchema()===2}isNumericSchema(){return this.getSchema()===1}isBigIntegerSchema(){return this.getSchema()===17}isBigDecimalSchema(){return this.getSchema()===19}isStreaming(){let{streaming:e}=this.getMergedTraits();return!!e||this.getSchema()===42}isIdempotencyToken(){return!!this.getMergedTraits().idempotencyToken}getMergedTraits(){return this.normalizedTraits??(this.normalizedTraits={...this.getOwnTraits(),...this.getMemberTraits()})}getMemberTraits(){return Kc(this.memberTraits)}getOwnTraits(){return Kc(this.traits)}getKeySchema(){let[e,r]=[this.isDocumentSchema(),this.isMapSchema()];if(!e&&!r)throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(!0)}`);let n=this.getSchema(),s=e?15:n[4]??0;return Mx([s,0],"key")}getValueSchema(){let e=this.getSchema(),[r,n,s]=[this.isDocumentSchema(),this.isMapSchema(),this.isListSchema()],o=typeof e=="number"?63&e:e&&typeof e=="object"&&(n||s)?e[3+e[0]]:r?15:void 0;if(o!=null)return Mx([o,0],n?"value":"member");throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no value member.`)}getMemberSchema(e){let r=this.getSchema();if(this.isStructSchema()&&r[4].includes(e)){let n=r[4].indexOf(e),s=r[5][n];return Mx(FW(s)?s:[s,0],e)}if(this.isDocumentSchema())return Mx([15,0],e);throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no member=${e}.`)}getMemberSchemas(){let e={};try{for(let[r,n]of this.structIterator())e[r]=n}catch{}return e}getEventStreamMember(){if(this.isStructSchema()){for(let[e,r]of this.structIterator())if(r.isStreaming()&&r.isStructSchema())return e}return""}*structIterator(){if(this.isUnitSchema())return;if(!this.isStructSchema())throw new Error("@smithy/core/schema - cannot iterate non-struct schema.");let e=this.getSchema(),r=e[4].length,n=e[Ox.it];if(n&&r===n.length){yield*n;return}n=Array(r);for(let s=0;sArray.isArray(t)&&t.length===2,xRe=t=>Array.isArray(t)&&t.length>=5});var Fx,XEt,ZEt,bRe=C(()=>{np();Fx=class t extends Gr{static symbol=Symbol.for("@smithy/sim");name;schemaRef;traits;symbol=t.symbol},XEt=(t,e,r,n)=>Gr.assign(new Fx,{name:e,namespace:t,traits:n,schemaRef:r}),ZEt=(t,e,r,n)=>Gr.assign(new Fx,{name:e,namespace:t,traits:r,schemaRef:n})});var eCt,SRe=C(()=>{eCt={BLOB:21,STREAMING_BLOB:42,BOOLEAN:2,STRING:0,NUMERIC:1,BIG_INTEGER:17,BIG_DECIMAL:19,DOCUMENT:15,TIMESTAMP_DEFAULT:4,TIMESTAMP_DATE_TIME:5,TIMESTAMP_HTTP_DATE:6,TIMESTAMP_EPOCH_SECONDS:7,LIST_MODIFIER:64,MAP_MODIFIER:128}});var hr,BRe=C(()=>{hr=class t{namespace;schemas;exceptions;static registries=new Map;constructor(e,r=new Map,n=new Map){this.namespace=e,this.schemas=r,this.exceptions=n}static for(e){return t.registries.has(e)||t.registries.set(e,new t(e)),t.registries.get(e)}copyFrom(e){let{schemas:r,exceptions:n}=this;for(let[s,o]of e.schemas)r.has(s)||r.set(s,o);for(let[s,o]of e.exceptions)n.has(s)||n.set(s,o)}register(e,r){let n=this.normalizeShapeId(e);for(let s of[this,t.for(n.split("#")[0])])s.schemas.set(n,r)}getSchema(e){let r=this.normalizeShapeId(e);if(!this.schemas.has(r)){if(!e.includes("#")){let n="#"+e,s=[];for(let[o,i]of this.schemas.entries())o.endsWith(n)&&s.push(i);if(s.length===1)return s[0]}throw new Error(`@smithy/core/schema - schema not found for ${r}`)}return this.schemas.get(r)}registerError(e,r){let n=e,s=n[1];for(let o of[this,t.for(s)])o.schemas.set(s+"#"+n[2],n),o.exceptions.set(n,r)}getErrorCtor(e){let r=e;return this.exceptions.has(r)?this.exceptions.get(r):t.for(r[1]).exceptions.get(r)}getBaseException(){for(let e of this.exceptions.keys())if(Array.isArray(e)){let[,r,n]=e,s=r+"#"+n;if(s.startsWith("smithy.ts.sdk.synthetic.")&&s.endsWith("ServiceException"))return e}}find(e){for(let r of this.schemas.values())if(e(r))return r}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId(e){return e.includes("#")?e:this.namespace+"#"+e}}});var Ux={};Zr(Ux,{ErrorSchema:()=>__,ListSchema:()=>T_,MapSchema:()=>P_,NormalizedSchema:()=>ye,OperationSchema:()=>v_,SCHEMA:()=>eCt,Schema:()=>Gr,SimpleSchema:()=>Fx,StructureSchema:()=>ay,TypeRegistry:()=>hr,deref:()=>Ca,deserializerMiddlewareOption:()=>ARe,error:()=>KEt,getSchemaSerdePlugin:()=>Su,isStaticSchema:()=>xRe,list:()=>YEt,map:()=>WEt,op:()=>jEt,operation:()=>Lx,serializerMiddlewareOption:()=>hRe,sim:()=>XEt,simAdapter:()=>ZEt,simpleSchemaCacheN:()=>D_,simpleSchemaCacheS:()=>k_,struct:()=>JEt,traitsCache:()=>Q_,translateTraits:()=>Kc});var Et=C(()=>{Z4();gRe();yRe();ERe();CRe();N_();IRe();wRe();np();bRe();OW();SRe();MW();BRe()});function cy(t,e){if(e==null)return e;let r=ye.of(t);if(r.getMergedTraits().sensitive)return UW;if(r.isListSchema()){if(!!r.getValueSchema().getMergedTraits().sensitive)return UW}else if(r.isMapSchema()){if(!!r.getKeySchema().getMergedTraits().sensitive||!!r.getValueSchema().getMergedTraits().sensitive)return UW}else if(r.isStructSchema()&&typeof e=="object"){let n=e,s={};for(let[o,i]of r.structIterator())n[o]!=null&&(s[o]=cy(i,n[o]));return s}return e}var UW,qW=C(()=>{Et();UW="***SensitiveInformation***"});var RRe,dn,$W,NRe=C(()=>{RRe=Q(Ea());KP();qW();dn=class{middlewareStack=Vd();schema;static classBuilder(){return new $W}resolveMiddlewareWithContext(e,r,n,{middlewareFn:s,clientName:o,commandName:i,inputFilterSensitiveLog:a,outputFilterSensitiveLog:c,smithyContext:l,additionalContext:u,CommandCtor:d}){for(let x of s.bind(this)(d,e,r,n))this.middlewareStack.use(x);let p=e.concat(this.middlewareStack),{logger:m}=r,h={logger:m,clientName:o,commandName:i,inputFilterSensitiveLog:a,outputFilterSensitiveLog:c,[RRe.SMITHY_CONTEXT_KEY]:{commandInstance:this,...l},...u},{requestHandler:y}=r,I=n??{};return l.eventStream&&(I={isEventStream:!0,...I}),p.resolve(x=>y.handle(x.request,I),h)}},$W=class{_init=()=>{};_ep={};_middlewareFn=()=>[];_commandName="";_clientName="";_additionalContext={};_smithyContext={};_inputFilterSensitiveLog=void 0;_outputFilterSensitiveLog=void 0;_serializer=null;_deserializer=null;_operationSchema;init(e){this._init=e}ep(e){return this._ep=e,this}m(e){return this._middlewareFn=e,this}s(e,r,n={}){return this._smithyContext={service:e,operation:r,...n},this}c(e={}){return this._additionalContext=e,this}n(e,r){return this._clientName=e,this._commandName=r,this}f(e=n=>n,r=n=>n){return this._inputFilterSensitiveLog=e,this._outputFilterSensitiveLog=r,this}ser(e){return this._serializer=e,this}de(e){return this._deserializer=e,this}sc(e){return this._operationSchema=e,this._smithyContext.operationSchema=e,this}build(){let e=this,r;return r=class extends dn{input;static getEndpointParameterInstructions(){return e._ep}constructor(...[n]){super(),this.input=n??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(n,s,o){let i=e._operationSchema,a=i?.[4]??i?.input,c=i?.[5]??i?.output;return this.resolveMiddlewareWithContext(n,s,o,{CommandCtor:r,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(i?cy.bind(null,a):l=>l),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(i?cy.bind(null,c):l=>l),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}});var TRe,PRe=C(()=>{TRe="***SensitiveInformation***"});var rl,vRe=C(()=>{rl=(t,e,r)=>{for(let[o,i]of Object.entries(t)){let a=async function(l,u,d){let p=new i(l);if(typeof u=="function")this.send(p,u);else if(typeof d=="function"){if(typeof u!="object")throw new Error(`Expected http options but got ${typeof u}`);this.send(p,u||{},d)}else return this.send(p,u)},c=(o[0].toLowerCase()+o.slice(1)).replace(/Command$/,"");e.prototype[c]=a}let{paginators:n={},waiters:s={}}=r??{};for(let[o,i]of Object.entries(n))e.prototype[o]===void 0&&(e.prototype[o]=function(a={},c,...l){return i({...c,client:this},a,...l)});for(let[o,i]of Object.entries(s))e.prototype[o]===void 0&&(e.prototype[o]=async function(a={},c,...l){let u=c;return typeof c=="number"&&(u={maxWaitTime:c}),i({...u,client:this},a,...l)})}});var Mi,wf,GW=C(()=>{Mi=class t extends Error{$fault;$response;$retryable;$metadata;constructor(e){super(e.message),Object.setPrototypeOf(this,Object.getPrototypeOf(this).constructor.prototype),this.name=e.name,this.$fault=e.$fault,this.$metadata=e.$metadata}static isInstance(e){if(!e)return!1;let r=e;return t.prototype.isPrototypeOf(r)||!!r.$fault&&!!r.$metadata&&(r.$fault==="client"||r.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;let r=e;return this===t?t.isInstance(e):t.isInstance(e)?r.name&&this.name?this.prototype.isPrototypeOf(e)||r.name===this.name:this.prototype.isPrototypeOf(e):!1}},wf=(t,e={})=>{Object.entries(e).filter(([,n])=>n!==void 0).forEach(([n,s])=>{(t[n]==null||t[n]==="")&&(t[n]=s)});let r=t.message||t.Message||"UnknownError";return t.message=r,delete t.Message,t}});var HW,_Re,tCt,QRe=C(()=>{GW();HW=({output:t,parsedBody:e,exceptionCtor:r,errorCode:n})=>{let s=tCt(t),o=s.httpStatusCode?s.httpStatusCode+"":void 0,i=new r({name:e?.code||e?.Code||n||o||"UnknownError",$fault:"client",$metadata:s});throw wf(i,e)},_Re=t=>({output:e,parsedBody:r,errorCode:n})=>{HW({output:e,parsedBody:r,exceptionCtor:t,errorCode:n})},tCt=t=>({httpStatusCode:t.statusCode,requestId:t.headers["x-amzn-requestid"]??t.headers["x-amzn-request-id"]??t.headers["x-amz-request-id"],extendedRequestId:t.headers["x-amz-id-2"],cfId:t.headers["x-amz-cf-id"]})});var nl,DRe=C(()=>{nl=t=>{switch(t){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:3e4};default:return{}}}});var kRe,sl,LRe=C(()=>{kRe=!1,sl=t=>{t&&!kRe&&parseInt(t.substring(1,t.indexOf(".")))<16&&(kRe=!0)}});var ly,ORe,L_,O_,zW=C(()=>{ly=Q(Ea()),ORe=Object.values(ly.AlgorithmId),L_=t=>{let e=[];for(let r in ly.AlgorithmId){let n=ly.AlgorithmId[r];t[n]!==void 0&&e.push({algorithmId:()=>n,checksumConstructor:()=>t[n]})}for(let[r,n]of Object.entries(t.checksumAlgorithms??{}))e.push({algorithmId:()=>r,checksumConstructor:()=>n});return{addChecksumAlgorithm(r){t.checksumAlgorithms=t.checksumAlgorithms??{};let n=r.algorithmId(),s=r.checksumConstructor();ORe.includes(n)?t.checksumAlgorithms[n.toUpperCase()]=s:t.checksumAlgorithms[n]=s,e.push(r)},checksumAlgorithms(){return e}}},O_=t=>{let e={};return t.checksumAlgorithms().forEach(r=>{let n=r.algorithmId();ORe.includes(n)&&(e[n]=r.checksumConstructor())}),e}});var M_,F_,VW=C(()=>{M_=t=>({setRetryStrategy(e){t.retryStrategy=e},retryStrategy(){return t.retryStrategy}}),F_=t=>{let e={};return e.retryStrategy=t.retryStrategy(),e}});var Ba,MRe,ol,FRe=C(()=>{zW();VW();Ba=t=>Object.assign(L_(t),M_(t)),MRe=Ba,ol=t=>Object.assign(O_(t),F_(t))});var URe,qRe=C(()=>{URe=t=>Array.isArray(t)?t:[t]});var bf,$Re=C(()=>{bf=t=>{let e="#text";for(let r in t)t.hasOwnProperty(r)&&t[r][e]!==void 0?t[r]=t[r][e]:typeof t[r]=="object"&&t[r]!==null&&(t[r]=bf(t[r]));return t}});var GRe,HRe=C(()=>{GRe=t=>t!=null});var co,zRe=C(()=>{co=class{trace(){}debug(){}info(){}warn(){}error(){}}});function YW(t,e,r){let n,s,o;if(typeof e>"u"&&typeof r>"u")n={},o=t;else{if(n=t,typeof e=="function")return s=e,o=r,rCt(n,s,o);o=e}for(let i of Object.keys(o)){if(!Array.isArray(o[i])){n[i]=o[i];continue}WRe(n,null,o,i)}return n}var VRe,YRe,rCt,WRe,nCt,sCt,jRe=C(()=>{VRe=t=>{let e={};for(let[r,n]of Object.entries(t||{}))e[r]=[,n];return e},YRe=(t,e)=>{let r={};for(let n in e)WRe(r,t,e,n);return r},rCt=(t,e,r)=>YW(t,Object.entries(r).reduce((n,[s,o])=>(Array.isArray(o)?n[s]=o:typeof o=="function"?n[s]=[e,o()]:n[s]=[e,o],n),{})),WRe=(t,e,r,n)=>{if(e!==null){let i=r[n];typeof i=="function"&&(i=[,i]);let[a=nCt,c=sCt,l=n]=i;(typeof a=="function"&&a(e[l])||typeof a!="function"&&a)&&(t[n]=c(e[l]));return}let[s,o]=r[n];if(typeof o=="function"){let i,a=s===void 0&&(i=o())!=null,c=typeof s=="function"&&!!s(void 0)||typeof s!="function"&&!!s;a?t[n]=i:c&&(t[n]=o())}else{let i=s===void 0&&o!=null,a=typeof s=="function"&&!!s(o)||typeof s!="function"&&!!s;(i||a)&&(t[n]=o)}},nCt=t=>t!=null,sCt=t=>t});var JRe,KRe,XRe=C(()=>{JRe=t=>{if(t!==t)return"NaN";switch(t){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return t}},KRe=t=>t.toISOString().replace(".000Z","Z")});var U_,ZRe=C(()=>{U_=t=>{if(t==null)return{};if(Array.isArray(t))return t.filter(e=>e!=null).map(U_);if(typeof t=="object"){let e={};for(let r of Object.keys(t))t[r]!=null&&(e[r]=U_(t[r]));return e}return t}});var Fi={};Zr(Fi,{AlgorithmId:()=>ly.AlgorithmId,Client:()=>Jn,Command:()=>dn,NoOpLogger:()=>co,SENSITIVE_STRING:()=>TRe,ServiceException:()=>Mi,WaiterState:()=>Ho,_json:()=>U_,checkExceptions:()=>Rxe,constructStack:()=>Vd,convertMap:()=>VRe,createAggregatedClient:()=>rl,createWaiter:()=>Qxe,decorateServiceException:()=>wf,emitWarningIfUnsupportedVersion:()=>sl,getArrayIfSingleItem:()=>URe,getChecksumConfiguration:()=>L_,getDefaultClientConfiguration:()=>MRe,getDefaultExtensionConfiguration:()=>Ba,getRetryConfiguration:()=>M_,getSmithyContext:()=>mr,getValueFromTextNode:()=>bf,invalidFunction:()=>Ixe,invalidProvider:()=>wxe,isSerializableHeaderValue:()=>GRe,loadConfigsForDefaultMode:()=>nl,map:()=>YW,normalizeProvider:()=>Ft,resolveChecksumRuntimeConfig:()=>O_,resolveDefaultRuntimeConfig:()=>ol,resolveRetryRuntimeConfig:()=>F_,schemaLogFilter:()=>cy,serializeDateTime:()=>KRe,serializeFloat:()=>JRe,take:()=>YRe,throwDefaultError:()=>HW,waiterServiceDefaults:()=>XP,withBaseException:()=>_Re});var Ee=C(()=>{KP();Exe();Cxe();xxe();bxe();Dxe();ZP();kxe();NRe();PRe();vRe();QRe();DRe();LRe();GW();FRe();zW();VW();qRe();$Re();HRe();zRe();jRe();qW();XRe();ZRe()});var eNe,tNe,rNe,nNe,sNe,oNe,iNe=C(()=>{eNe=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],tNe=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],rNe=["TimeoutError","RequestTimeout","RequestTimeoutException"],nNe=[500,502,503,504],sNe=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],oNe=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"]});function JW(t){return t.code==="ERR_HTTP2_STREAM_ERROR"&&t.message.includes("NGHTTP2_REFUSED_STREAM")}var qx,q_,WW,jW,il,sp,$_,uy=C(()=>{iNe();qx=t=>t?.$retryable!==void 0,q_=t=>eNe.includes(t.name),WW=t=>t.$metadata?.clockSkewCorrected,jW=t=>{let e=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);return t&&t instanceof TypeError?e.has(t.message):!1},il=t=>t.$metadata?.httpStatusCode===429||tNe.includes(t.name)||t.$retryable?.throttling==!0,sp=(t,e=0)=>qx(t)||WW(t)||t.name==="InvalidSignatureException"&&t.message?.includes("Signature expired")||rNe.includes(t.name)||sNe.includes(t?.code||"")||oNe.includes(t?.code||"")||nNe.includes(t.$metadata?.httpStatusCode||0)||jW(t)||JW(t)||t.cause!==void 0&&e<=10&&sp(t.cause,e+1),$_=t=>{if(t.$metadata?.httpStatusCode!==void 0){let e=t.$metadata.httpStatusCode;return 500<=e&&e<=599&&!sp(t)}return!1}});var G_,$x,H_,dy,KW,XW,z_,op,ip,Gx=C(()=>{G_=100,$x=2e4,H_=500,dy=500,KW=5,XW=10,z_=1,op="amz-sdk-invocation-id",ip="amz-sdk-request"});function ZW(t,e){if(Zn.isInstance(t))for(let r of Object.keys(t.headers)){let n=r.toLowerCase();if(n==="retry-after"){let s=t.headers[r],o=NaN;if(s.endsWith("GMT"))try{o=(Fg(s).getTime()-Date.now())/1e3}catch(i){e?.trace?.("Failed to parse retry-after header"),e?.trace?.(i)}else s.match(/ GMT, ((\d+)|(\d+\.\d+))$/)?o=Number(s.match(/ GMT, ([\d.]+)$/)?.[1]):s.match(/^((\d+)|(\d+\.\d+))$/)?o=Number(s):Date.parse(s)>=Date.now()&&(o=(Date.parse(s)-Date.now())/1e3);return isNaN(o)?void 0:new Date(Date.now()+o*1e3)}else if(n==="x-amz-retry-after"){let s=t.headers[r],o=Number(s);if(isNaN(o)){e?.trace?.(`Failed to parse x-amz-retry-after=${s}`);return}return new Date(Date.now()+o)}}}function aNe(t,e){return ZW(t,e)}var e8=C(()=>{_e();nt()});var V_,t8=C(()=>{V_=t=>t instanceof Error?t:t instanceof Object?Object.assign(new Error,t):typeof t=="string"?new Error(t):new Error(`AWS SDK error wrapper for ${t}`)});function r8(t){return e=>(r,n)=>async s=>{let o=await e.retryStrategy(),i=await e.maxAttempts();if(oCt(o)){o=o;let a=await o.acquireInitialRetryToken((n.partition_id??"")+(n.__retryLongPoll?":longpoll":"")),c=new Error,l=0,u=0,{request:d}=s,p=pt.isInstance(d);for(p&&(d.headers[op]=Jg());;)try{p&&(d.headers[ip]=`attempt=${l+1}; max=${i}`);let{response:m,output:h}=await r(s);return o.recordSuccess(a),h.$metadata.attempts=l+1,h.$metadata.totalRetryDelay=u,{response:m,output:h}}catch(m){let h=iCt(m,e.logger);if(c=V_(m),p&&t(d))throw(n.logger instanceof co?console:n.logger)?.warn("An error was encountered in a non-retryable streaming request."),c;try{a=await o.refreshRetryTokenForRetry(a,h)}catch(I){throw typeof I.$backoff=="number"&&await cNe(I.$backoff),c.$metadata||(c.$metadata={}),c.$metadata.attempts=l+1,c.$metadata.totalRetryDelay=u,c}l=a.getRetryCount();let y=a.getRetryDelay();u+=y,await cNe(y)}}else return o=o,o?.mode&&(n.userAgent=[...n.userAgent||[],["cfg/retry-mode",o.mode]]),o.retry(r,s)}}function lNe(t){let e=r8(t);return r=>({applyToStack:n=>{n.add(e(r),n8)}})}var cNe,oCt,iCt,aCt,n8,s8=C(()=>{Ee();_e();nt();uy();Gx();e8();t8();cNe=t=>new Promise(e=>setTimeout(e,t)),oCt=t=>typeof t.acquireInitialRetryToken<"u"&&typeof t.refreshRetryTokenForRetry<"u"&&typeof t.recordSuccess<"u",iCt=(t,e)=>{let r={error:t,errorType:aCt(t)},n=ZW(t.$response,e);return n&&(r.retryAfterHint=n),r},aCt=t=>il(t)?"THROTTLING":sp(t)?"TRANSIENT":$_(t)?"SERVER_ERROR":"CLIENT_ERROR",n8={name:"retryMiddleware",tags:["RETRY"],step:"finalizeRequest",priority:"high",override:!0}});var ap,Y_=C(()=>{uy();ap=class t{static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(e){this.beta=e?.beta??.7,this.minCapacity=e?.minCapacity??1,this.minFillRate=e?.minFillRate??.5,this.scaleConstant=e?.scaleConstant??.4,this.smooth=e?.smooth??.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(e){let r;this.updateMeasuredRate();let n=e;if(n?.errorType==="THROTTLING"||il(n?.error??e)){let i=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=i,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),r=this.cubicThrottle(i),this.enableTokenBucket()}else this.calculateTimeWindow(),r=this.cubicSuccess(this.getCurrentTimeInSeconds());let o=Math.min(r,2*this.measuredTxRate);this.updateTokenBucketRate(o)}getCurrentTimeInSeconds(){return Date.now()/1e3}async acquireTokenBucket(e){if(this.enabled){for(this.refillTokenBucket();e>this.availableTokens;){let r=(e-this.availableTokens)/this.fillRate*1e3;await new Promise(n=>t.setTimeoutFn(n,r)),this.refillTokenBucket()}this.availableTokens=this.availableTokens-e}}refillTokenBucket(){let e=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=e;return}let r=(e-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+r),this.lastTimestamp=e}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))}cubicThrottle(e){return this.getPrecise(e*this.beta)}cubicSuccess(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let e=this.getCurrentTimeInSeconds(),r=Math.floor(e*2)/2;if(this.requestCount++,r>this.lastTxRateBucket){let n=this.requestCount/(r-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(n*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=r}}getPrecise(e){return parseFloat(e.toFixed(8))}}});var pn,Hx=C(()=>{pn=class t{static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return t.v2026?50:100}static throttlingDelay(){return t.v2026?1e3:500}static cost(){return t.v2026?14:5}static throttlingCost(){return t.v2026?5:10}static modifiedCostType(){return t.v2026?"THROTTLING":"TRANSIENT"}}});var W_,uNe=C(()=>{Hx();W_=class{x=pn.delay();computeNextBackoffDelay(e){let s=Math.random()*Math.min(this.x*2**e,2e4);return Math.floor(s)}setDelayBase(e){this.x=e}}});var zx,dNe=C(()=>{zx=class{delay;count;cost;longPoll;constructor(e,r,n,s){this.delay=e,this.count=r,this.cost=n,this.longPoll=s}getRetryCount(){return this.count}getRetryDelay(){return Math.min(2e4,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}});var In,Ra,Ui,Sf=C(()=>{(function(t){t.STANDARD="standard",t.ADAPTIVE="adaptive"})(In||(In={}));Ra=3,Ui=In.STANDARD});var j_,Na,Vx=C(()=>{uNe();dNe();Sf();Hx();j_={incompatible:1,attempts:2,capacity:3},Na=class{mode=In.STANDARD;capacity=500;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(e){typeof e=="number"?this.maxAttemptsProvider=async()=>e:typeof e=="function"?this.maxAttemptsProvider=e:e&&typeof e=="object"&&(this.maxAttemptsProvider=async()=>e.maxAttempts,this.baseDelay=e.baseDelay,this.retryBackoffStrategy=e.backoff),this.maxAttemptsProvider??=async()=>Ra,this.baseDelay??=pn.delay(),this.retryBackoffStrategy??=new W_}async acquireInitialRetryToken(e){return new zx(pn.delay(),0,void 0,pn.v2026&&e.includes(":longpoll"))}async refreshRetryTokenForRetry(e,r){let n=await this.getMaxAttempts(),s=this.retryCode(e,r,n),o=s===0,i=e.isLongPoll?.();if(o||i){let a=r.errorType;this.retryBackoffStrategy.setDelayBase(a==="THROTTLING"?pn.throttlingDelay():this.baseDelay);let c=this.retryBackoffStrategy.computeNextBackoffDelay(e.getRetryCount()),l=c;if(r.retryAfterHint instanceof Date&&(l=Math.max(c,Math.min(r.retryAfterHint.getTime()-Date.now(),c+5e3))),o){let u=this.getCapacityCost(a);return this.capacity-=u,new zx(l,e.getRetryCount()+1,u,e.isLongPoll?.()??!1)}else throw Object.assign(new Error("No retry token available"),{$backoff:pn.v2026&&s===j_.capacity&&i?l:0})}throw new Error("No retry token available")}recordSuccess(e){this.capacity=Math.min(500,this.capacity+(e.getRetryCost()??1))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch{return console.warn(`Max attempts provider could not resolve. Using default of ${Ra}`),Ra}}retryCode(e,r,n){let s=e.getRetryCount()+1,o=this.isRetryableError(r.errorType)?0:j_.incompatible,i=s=this.getCapacityCost(r.errorType)?0:j_.capacity;return o||i||a}getCapacityCost(e){return e===pn.modifiedCostType()?pn.throttlingCost():pn.cost()}isRetryableError(e){return e==="THROTTLING"||e==="TRANSIENT"}}});var py,o8=C(()=>{Y_();Vx();Sf();py=class{mode=In.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(e,r){let{rateLimiter:n}=r??{};this.rateLimiter=n??new ap,this.standardRetryStrategy=r?new Na({maxAttempts:typeof e=="number"?e:3,...r}):new Na(e)}async acquireInitialRetryToken(e){let r=await this.standardRetryStrategy.acquireInitialRetryToken(e);return await this.rateLimiter.getSendToken(),r}async refreshRetryTokenForRetry(e,r){this.rateLimiter.updateClientSendingRate(r);let n=await this.standardRetryStrategy.refreshRetryTokenForRetry(e,r);return await this.rateLimiter.getSendToken(),n}recordSuccess(e){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(e)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}});var J_,pNe=C(()=>{Vx();Hx();J_=class extends Na{computeNextBackoffDelay;constructor(e,r=pn.delay()){super(typeof e=="function"?e:async()=>e),typeof r=="number"?this.computeNextBackoffDelay=()=>r:this.computeNextBackoffDelay=r}async refreshRetryTokenForRetry(e,r){let n=await super.refreshRetryTokenForRetry(e,r);return n.getRetryDelay=()=>this.computeNextBackoffDelay(n.getRetryCount()),n}}});var mNe,fNe=C(()=>{mNe=(t,e)=>{let r=t,n=e?.noRetryIncrement??1,s=e?.retryCost??5,o=e?.timeoutRetryCost??10,i=t,a=d=>d.name==="TimeoutError"?o:s,c=d=>a(d)<=i;return Object.freeze({hasRetryTokens:c,retrieveRetryTokens:d=>{if(!c(d))throw new Error("No retry token available");let p=a(d);return i-=p,p},releaseRetryTokens:d=>{i+=d??n,i=Math.min(i,r)}})}});var K_,i8=C(()=>{K_=(t,e)=>Math.floor(Math.min(2e4,Math.random()*2**e*t))});var X_,a8=C(()=>{uy();X_=t=>t?qx(t)||q_(t)||il(t)||sp(t):!1});var my,cCt,c8=C(()=>{_e();nt();uy();Sf();Gx();t8();fNe();i8();a8();my=class{maxAttemptsProvider;retryDecider;delayDecider;retryQuota;mode=In.STANDARD;constructor(e,r){this.maxAttemptsProvider=e,this.retryDecider=r?.retryDecider??X_,this.delayDecider=r?.delayDecider??K_,this.retryQuota=r?.retryQuota??mNe(500)}shouldRetry(e,r,n){return rsetTimeout(h,m));continue}throw u.$metadata||(u.$metadata={}),u.$metadata.attempts=o,u.$metadata.totalRetryDelay=i,u}}},cCt=t=>{if(!Zn.isInstance(t))return;let e=Object.keys(t.headers).find(o=>o.toLowerCase()==="retry-after");if(!e)return;let r=t.headers[e],n=Number(r);return Number.isNaN(n)?new Date(r).getTime()-Date.now():n*1e3}});var Z_,ANe=C(()=>{Y_();Sf();c8();Z_=class extends my{rateLimiter;constructor(e,r){let{rateLimiter:n,...s}=r??{};super(e,s),this.rateLimiter=n??new ap,this.mode=In.ADAPTIVE}async retry(e,r){return super.retry(e,r,{beforeRequest:async()=>this.rateLimiter.getSendToken(),afterRequest:n=>{this.rateLimiter.updateClientSendingRate(n)}})}}});var eQ,tQ,al,cl,l8,u8,ll,hNe=C(()=>{Ee();o8();Vx();Sf();eQ="AWS_MAX_ATTEMPTS",tQ="max_attempts",al={environmentVariableSelector:t=>{let e=t[eQ];if(!e)return;let r=parseInt(e);if(Number.isNaN(r))throw new Error(`Environment variable ${eQ} mast be a number, got "${e}"`);return r},configFileSelector:t=>{let e=t[tQ];if(!e)return;let r=parseInt(e);if(Number.isNaN(r))throw new Error(`Shared config file entry ${tQ} mast be a number, got "${e}"`);return r},default:Ra},cl=t=>{let{retryStrategy:e,retryMode:r}=t,n=Ft(t.maxAttempts??Ra),s=e?Promise.resolve(e):void 0,o=async()=>await Ft(r)()===In.ADAPTIVE?new py(n):new Na(n);return Object.assign(t,{maxAttempts:n,retryStrategy:()=>s??=o()})},l8="AWS_RETRY_MODE",u8="retry_mode",ll={environmentVariableSelector:t=>t[l8],configFileSelector:t=>t[u8],default:Ui}});var d8,p8,gNe,yNe=C(()=>{_e();Gx();d8=()=>t=>async e=>{let{request:r}=e;return pt.isInstance(r)&&(delete r.headers[op],delete r.headers[ip]),t(e)},p8={name:"omitRetryHeadersMiddleware",tags:["RETRY","HEADERS","OMIT_RETRY_HEADERS"],relation:"before",toMiddleware:"awsAuthMiddleware",override:!0},gNe=t=>({applyToStack:e=>{e.addRelativeTo(d8(),p8)}})});var Yx={};Zr(Yx,{AdaptiveRetryStrategy:()=>py,CONFIG_MAX_ATTEMPTS:()=>tQ,CONFIG_RETRY_MODE:()=>u8,ConfiguredRetryStrategy:()=>J_,DEFAULT_MAX_ATTEMPTS:()=>Ra,DEFAULT_RETRY_DELAY_BASE:()=>G_,DEFAULT_RETRY_MODE:()=>Ui,DefaultRateLimiter:()=>ap,DeprecatedAdaptiveRetryStrategy:()=>Z_,DeprecatedStandardRetryStrategy:()=>my,ENV_MAX_ATTEMPTS:()=>eQ,ENV_RETRY_MODE:()=>l8,INITIAL_RETRY_TOKENS:()=>dy,INVOCATION_ID_HEADER:()=>op,MAXIMUM_RETRY_DELAY:()=>$x,NODE_MAX_ATTEMPT_CONFIG_OPTIONS:()=>al,NODE_RETRY_MODE_CONFIG_OPTIONS:()=>ll,NO_RETRY_INCREMENT:()=>z_,REQUEST_HEADER:()=>ip,RETRY_COST:()=>KW,RETRY_MODES:()=>In,Retry:()=>pn,StandardRetryStrategy:()=>Na,THROTTLING_RETRY_DELAY_BASE:()=>H_,TIMEOUT_RETRY_COST:()=>XW,defaultDelayDecider:()=>K_,defaultRetryDecider:()=>X_,getOmitRetryHeadersPlugin:()=>gNe,getRetryAfterHint:()=>aNe,getRetryPlugin:()=>Bu,isBrowserNetworkError:()=>jW,isClockSkewCorrectedError:()=>WW,isClockSkewError:()=>q_,isNodeJsHttp2TransientError:()=>JW,isRetryableByTrait:()=>qx,isServerError:()=>$_,isThrottlingError:()=>il,isTransientError:()=>sp,omitRetryHeadersMiddleware:()=>d8,omitRetryHeadersMiddlewareOptions:()=>p8,resolveRetryConfig:()=>cl,retryMiddleware:()=>lCt,retryMiddlewareOptions:()=>n8});var lCt,Bu,vs=C(()=>{hxe();s8();uy();o8();pNe();Y_();Vx();Sf();Gx();Hx();ANe();c8();i8();a8();hNe();yNe();s8();e8();lCt=r8(J4),Bu=lNe(J4)});function qi(t,e,r){t.__aws_sdk_context?t.__aws_sdk_context.features||(t.__aws_sdk_context.features={}):t.__aws_sdk_context={features:{}},t.__aws_sdk_context.features[e]=r}var m8=C(()=>{vs();pn.v2026||=typeof process=="object"&&process.env?.AWS_NEW_RETRIES_2026==="true"});function ENe(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var CNe=C(()=>{});function fy(t){return t}var f8,A8,ul,INe=C(()=>{_e();f8=t=>e=>async r=>{if(!pt.isInstance(r.request))return e(r);let{request:n}=r,{handlerProtocol:s=""}=t.requestHandler.metadata||{};if(s.indexOf("h2")>=0&&!n.headers[":authority"])delete n.headers.host,n.headers[":authority"]=n.hostname+(n.port?":"+n.port:"");else if(!n.headers.host){let o=n.hostname;n.port!=null&&(o+=`:${n.port}`),n.headers.host=o}return e(r)},A8={name:"hostHeaderMiddleware",step:"build",priority:"low",tags:["HOST"],override:!0},ul=t=>({applyToStack:e=>{e.add(f8(t),A8)}})});var h8,g8,dl,xNe=C(()=>{h8=()=>(t,e)=>async r=>{try{let n=await t(r),{clientName:s,commandName:o,logger:i,dynamoDbDocumentClientOptions:a={}}=e,{overrideInputFilterSensitiveLog:c,overrideOutputFilterSensitiveLog:l}=a,u=c??e.inputFilterSensitiveLog,d=l??e.outputFilterSensitiveLog,{$metadata:p,...m}=n.output;return i?.info?.({clientName:s,commandName:o,input:u(r.input),output:d(m),metadata:p}),n}catch(n){let{clientName:s,commandName:o,logger:i,dynamoDbDocumentClientOptions:a={}}=e,{overrideInputFilterSensitiveLog:c}=a,l=c??e.inputFilterSensitiveLog;throw i?.error?.({clientName:s,commandName:o,input:l(r.input),error:n,metadata:n.$metadata}),n}},g8={name:"loggerMiddleware",tags:["LOGGER"],step:"initialize",override:!0},dl=t=>({applyToStack:e=>{e.add(h8(),g8)}})});var rQ,y8=C(()=>{rQ={step:"build",tags:["RECURSION_DETECTION"],name:"recursionDetectionMiddleware",override:!0,priority:"low"}});var Wx,E8,nQ,C8,I8,sQ,wNe=C(()=>{Wx={REQUEST_ID:Symbol.for("_AWS_LAMBDA_REQUEST_ID"),X_RAY_TRACE_ID:Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"),TENANT_ID:Symbol.for("_AWS_LAMBDA_TENANT_ID")},E8=["true","1"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA??"");E8||(globalThis.awslambda=globalThis.awslambda||{});nQ=class{static PROTECTED_KEYS=Wx;isProtectedKey(e){return Object.values(Wx).includes(e)}getRequestId(){return this.get(Wx.REQUEST_ID)??"-"}getXRayTraceId(){return this.get(Wx.X_RAY_TRACE_ID)}getTenantId(){return this.get(Wx.TENANT_ID)}},C8=class extends nQ{currentContext;getContext(){return this.currentContext}hasContext(){return this.currentContext!==void 0}get(e){return this.currentContext?.[e]}set(e,r){if(this.isProtectedKey(e))throw new Error(`Cannot modify protected Lambda context field: ${String(e)}`);this.currentContext=this.currentContext||{},this.currentContext[e]=r}run(e,r){return this.currentContext=e,r()}},I8=class t extends nQ{als;static async create(){let e=new t,r=await import("node:async_hooks");return e.als=new r.AsyncLocalStorage,e}getContext(){return this.als.getStore()}hasContext(){return this.als.getStore()!==void 0}get(e){return this.als.getStore()?.[e]}set(e,r){if(this.isProtectedKey(e))throw new Error(`Cannot modify protected Lambda context field: ${String(e)}`);let n=this.als.getStore();if(!n)throw new Error("No context available");n[e]=r}run(e,r){return this.als.run(e,r)}};(function(t){let e=null;async function r(){return e||(e=(async()=>{let s="AWS_LAMBDA_MAX_CONCURRENCY"in process.env?await I8.create():new C8;return!E8&&globalThis.awslambda?.InvokeStore?globalThis.awslambda.InvokeStore:(!E8&&globalThis.awslambda&&(globalThis.awslambda.InvokeStore=s),s)})()),e}t.getInstanceAsync=r,t._testing=process.env.AWS_LAMBDA_BENCHMARK_MODE==="1"?{reset:()=>{e=null,globalThis.awslambda?.InvokeStore&&delete globalThis.awslambda.InvokeStore,globalThis.awslambda={InvokeStore:void 0}}}:void 0})(sQ||(sQ={}))});var x8,uCt,dCt,oQ,w8=C(()=>{wNe();_e();x8="X-Amzn-Trace-Id",uCt="AWS_LAMBDA_FUNCTION_NAME",dCt="_X_AMZN_TRACE_ID",oQ=()=>t=>async e=>{let{request:r}=e;if(!pt.isInstance(r))return t(e);let n=Object.keys(r.headers??{}).find(u=>u.toLowerCase()===x8.toLowerCase())??x8;if(r.headers.hasOwnProperty(n))return t(e);let s=process.env[uCt],o=process.env[dCt],c=(await sQ.getInstanceAsync())?.getXRayTraceId()??o,l=u=>typeof u=="string"&&u.length>0;return l(s)&&l(c)&&(r.headers[x8]=c),t({...e,request:r})}});var pl,bNe=C(()=>{y8();w8();pl=t=>({applyToStack:e=>{e.add(oQ(),rQ)}})});var b8,pCt,SNe=C(()=>{b8=Q(Ea()),pCt=t=>t[b8.SMITHY_CONTEXT_KEY]||(t[b8.SMITHY_CONTEXT_KEY]={})});var BNe,RNe=C(()=>{BNe=(t,e)=>{if(!e||e.length===0)return t;let r=[];for(let n of e)for(let s of t)s.schemeId.split("#")[1]===n&&r.push(s);for(let n of t)r.find(({schemeId:s})=>s===n.schemeId)||r.push(n);return r}});function mCt(t){let e=new Map;for(let r of t)e.set(r.schemeId,r);return e}var jx,iQ=C(()=>{Ee();RNe();jx=(t,e)=>(r,n)=>async s=>{let o=t.httpAuthSchemeProvider(await e.httpAuthSchemeParametersProvider(t,n,s.input)),i=t.authSchemePreference?await t.authSchemePreference():[],a=BNe(o,i),c=mCt(t.httpAuthSchemes),l=mr(n),u=[];for(let d of a){let p=c.get(d.schemeId);if(!p){u.push(`HttpAuthScheme \`${d.schemeId}\` was not enabled for this service.`);continue}let m=p.identityProvider(await e.identityProviderConfigProvider(t));if(!m){u.push(`HttpAuthScheme \`${d.schemeId}\` did not have an IdentityProvider configured.`);continue}let{identityProperties:h={},signingProperties:y={}}=d.propertiesExtractor?.(t,n)||{};d.identityProperties=Object.assign(d.identityProperties||{},h),d.signingProperties=Object.assign(d.signingProperties||{},y),l.selectedHttpAuthScheme={httpAuthOption:d,identity:await m(d.identityProperties),signer:p.signer};break}if(!l.selectedHttpAuthScheme)throw new Error(u.join(` -`));return r(s)}});var NNe,Ru,TNe=C(()=>{iQ();NNe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"endpointV2Middleware"},Ru=(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:n=>{n.addRelativeTo(jx(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),NNe)}})});var PNe,fCt,vNe=C(()=>{iQ();PNe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"serializerMiddleware"},fCt=(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:n=>{n.addRelativeTo(jx(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),PNe)}})});var _Ne=C(()=>{iQ();TNe();vNe()});var ACt,hCt,S8,B8=C(()=>{Ee();_e();ACt=t=>e=>{throw e},hCt=(t,e)=>{},S8=t=>(e,r)=>async n=>{if(!pt.isInstance(n.request))return e(n);let o=mr(r).selectedHttpAuthScheme;if(!o)throw new Error("No HttpAuthScheme was selected: unable to sign request");let{httpAuthOption:{signingProperties:i={}},identity:a,signer:c}=o,l=await e({...n,request:await c.sign(n.request,a,i)}).catch((c.errorHandler||ACt)(i));return(c.successHandler||hCt)(l.response,i),l}});var QNe,Nu,DNe=C(()=>{B8();QNe={step:"finalizeRequest",tags:["HTTP_SIGNING"],name:"httpSigningMiddleware",aliases:["apiKeyMiddleware","tokenMiddleware","awsAuthMiddleware"],override:!0,relation:"after",toMiddleware:"retryMiddleware"},Nu=t=>({applyToStack:e=>{e.addRelativeTo(S8(t),QNe)}})});var kNe=C(()=>{B8();DNe()});var ml,LNe=C(()=>{ml=t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e}});function ONe(t,e,r,n,s){return async function*(i,a,...c){let l=a,u=i.startingToken??l[r],d=!0,p;for(;d;){if(l[r]=u,s&&(l[s]=l[s]??i.pageSize),i.client instanceof t)p=await gCt(e,i.client,a,i.withCommand,...c);else throw new Error(`Invalid client, expected instance of ${t.name}`);yield p;let m=u;u=yCt(p,n),d=!!(u&&(!i.stopOnSameToken||u!==m))}return void 0}}var gCt,yCt,MNe=C(()=>{gCt=async(t,e,r,n=o=>o,...s)=>{let o=new t(r);return o=n(o)??o,await e.send(o,...s)};yCt=(t,e)=>{let r=t,n=e.split(".");for(let s of n){if(!r||typeof r!="object")return;r=r[s]}return r}});var FNe=C(()=>{_e()});function ECt(t,e,r){t.__smithy_context?t.__smithy_context.features||(t.__smithy_context.features={}):t.__smithy_context={features:{}},t.__smithy_context.features[e]=r}var UNe=C(()=>{});var Ta,qNe=C(()=>{Ta=class{authSchemes=new Map;constructor(e){for(let r in e){let n=e[r];n!==void 0&&this.authSchemes.set(r,n)}}getIdentityProvider(e){return this.authSchemes.get(e)}}});var R8,N8,$Ne=C(()=>{_e();R8=Q(Ea()),N8=class{async sign(e,r,n){if(!n)throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");if(!n.name)throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");if(!n.in)throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");if(!r.apiKey)throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");let s=pt.clone(e);if(n.in===R8.HttpApiKeyAuthLocation.QUERY)s.query[n.name]=r.apiKey;else if(n.in===R8.HttpApiKeyAuthLocation.HEADER)s.headers[n.name]=n.scheme?`${n.scheme} ${r.apiKey}`:r.apiKey;else throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `"+n.in+"`");return s}}});var T8,GNe=C(()=>{_e();T8=class{async sign(e,r,n){let s=pt.clone(e);if(!r.token)throw new Error("request could not be signed with `token` since the `token` is not defined");return s.headers.Authorization=`Bearer ${r.token}`,s}}});var jo,HNe=C(()=>{jo=class{async sign(e,r,n){return e}}});var zNe=C(()=>{$Ne();GNe();HNe()});var VNe,CCt,P8,aQ,v8,YNe=C(()=>{VNe=t=>function(r){return aQ(r)&&r.expiration.getTime()-Date.now()t.expiration!==void 0,v8=(t,e,r)=>{if(t===void 0)return;let n=typeof t!="function"?async()=>Promise.resolve(t):t,s,o,i,a=!1,c=async l=>{o||(o=n(l));try{s=await o,i=!0,a=!1}finally{o=void 0}return s};return e===void 0?async l=>((!i||l?.forceRefresh)&&(s=await c(l)),s):async l=>((!i||l?.forceRefresh)&&(s=await c(l)),a?s:r(s)?(e(s)&&await c(l),s):(a=!0,s))}});var WNe=C(()=>{qNe();zNe();YNe()});var _8={};Zr(_8,{DefaultIdentityProviderConfig:()=>Ta,EXPIRATION_MS:()=>CCt,HttpApiKeyAuthSigner:()=>N8,HttpBearerAuthSigner:()=>T8,NoAuthSigner:()=>jo,createIsIdentityExpiredFunction:()=>VNe,createPaginator:()=>ONe,doesIdentityRequireRefresh:()=>aQ,getHttpAuthSchemeEndpointRuleSetPlugin:()=>Ru,getHttpAuthSchemePlugin:()=>fCt,getHttpSigningPlugin:()=>Nu,getSmithyContext:()=>pCt,httpAuthSchemeEndpointRuleSetMiddlewareOptions:()=>NNe,httpAuthSchemeMiddleware:()=>jx,httpAuthSchemeMiddlewareOptions:()=>PNe,httpSigningMiddleware:()=>S8,httpSigningMiddlewareOptions:()=>QNe,isIdentityExpired:()=>P8,memoizeIdentityProvider:()=>v8,normalizeProvider:()=>ml,requestBuilder:()=>PW,setFeature:()=>ECt});var _s=C(()=>{SNe();_Ne();kNe();LNe();MNe();FNe();UNe();WNe()});function ICt(t){return t===void 0?!0:typeof t=="string"&&t.length<=50}function fl(t){let e=ml(t.userAgentAppId??Jx),{customUserAgent:r}=t;return Object.assign(t,{customUserAgent:typeof r=="string"?[[r]]:r,userAgentAppId:async()=>{let n=await e();if(!ICt(n)){let s=t.logger?.constructor?.name==="NoOpLogger"||!t.logger?console:t.logger;typeof n!="string"?s?.warn("userAgentAppId must be a string or undefined."):n.length>50&&s?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters.")}return n}})}var Jx,Q8=C(()=>{_s();Jx=void 0});var D8,jNe=C(()=>{D8={partitions:[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-east-2":{description:"Asia Pacific (Taipei)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"ap-southeast-5":{description:"Asia Pacific (Malaysia)"},"ap-southeast-6":{description:"Asia Pacific (New Zealand)"},"ap-southeast-7":{description:"Asia Pacific (Thailand)"},"aws-global":{description:"aws global region"},"ca-central-1":{description:"Canada (Central)"},"ca-west-1":{description:"Canada West (Calgary)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"mx-central-1":{description:"Mexico (Central)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"aws-cn global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-eusc",outputs:{dnsSuffix:"amazonaws.eu",dualStackDnsSuffix:"api.amazonwebservices.eu",implicitGlobalRegion:"eusc-de-east-1",name:"aws-eusc",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eusc\\-(de)\\-\\w+\\-\\d+$",regions:{"eusc-de-east-1":{description:"AWS European Sovereign Cloud (Germany)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"api.aws.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"aws-iso global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"api.aws.scloud",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"aws-iso-b global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"},"us-isob-west-1":{description:"US ISOB West"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"api.cloud-aws.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{"aws-iso-e-global":{description:"aws-iso-e global region"},"eu-isoe-west-1":{description:"EU ISOE West"}}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"api.aws.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{"aws-iso-f-global":{description:"aws-iso-f global region"},"us-isof-east-1":{description:"US ISOF EAST"},"us-isof-south-1":{description:"US ISOF SOUTH"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"aws-us-gov global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}}],version:"1.1"}});var JNe,KNe,cQ,k8,XNe,lQ,uQ=C(()=>{jNe();JNe=D8,KNe="",cQ=t=>{let{partitions:e}=JNe;for(let n of e){let{regions:s,outputs:o}=n;for(let[i,a]of Object.entries(s))if(i===t)return{...o,...a}}for(let n of e){let{regionRegex:s,outputs:o}=n;if(new RegExp(s).test(t))return{...o}}let r=e.find(n=>n.id==="aws");if(!r)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...r.outputs}},k8=(t,e="")=>{JNe=t,KNe=e},XNe=()=>{k8(D8,"")},lQ=()=>KNe});async function ZNe(t,e,r){if(r.request?.headers?.["smithy-protocol"]==="rpc-v2-cbor"&&qi(t,"PROTOCOL_RPC_V2_CBOR","M"),typeof e.retryStrategy=="function"){let o=await e.retryStrategy();if(typeof o.mode=="string")switch(o.mode){case In.ADAPTIVE:qi(t,"RETRY_MODE_ADAPTIVE","F");break;case In.STANDARD:qi(t,"RETRY_MODE_STANDARD","E");break}}if(typeof e.accountIdEndpointMode=="function"){let o=t.endpointV2;switch(String(o?.url?.hostname).match(xCt)&&qi(t,"ACCOUNT_ID_ENDPOINT","O"),await e.accountIdEndpointMode?.()){case"disabled":qi(t,"ACCOUNT_ID_MODE_DISABLED","Q");break;case"preferred":qi(t,"ACCOUNT_ID_MODE_PREFERRED","P");break;case"required":qi(t,"ACCOUNT_ID_MODE_REQUIRED","R");break}}let s=t.__smithy_context?.selectedHttpAuthScheme?.identity;if(s?.$source){let o=s;o.accountId&&qi(t,"RESOLVED_ACCOUNT_ID","T");for(let[i,a]of Object.entries(o.$source??{}))qi(t,i,a)}}var xCt,eTe=C(()=>{vs();m8();xCt=/\d{12}\.ddb/});var L8,dQ,tTe,rTe,nTe=C(()=>{L8="user-agent",dQ="x-amz-user-agent",tTe=/[^!$%&'*+\-.^_`|~\w]/g,rTe=/[^!$%&'*+\-.^_`|~\w#]/g});function sTe(t){let e="";for(let r in t){let n=t[r];if(e.length+n.length+1<=1024){e.length?e+=","+n:e+=n;continue}break}return e}var oTe=C(()=>{});var M8,pQ,F8,Al,cTe=C(()=>{_e();uQ();eTe();nTe();oTe();M8=t=>(e,r)=>async n=>{let{request:s}=n;if(!pt.isInstance(s))return e(n);let{headers:o}=s,i=r?.userAgent?.map(pQ)||[],a=(await t.defaultUserAgentProvider()).map(pQ);await ZNe(r,t,n);let c=r;a.push(`m/${sTe(Object.assign({},r.__smithy_context?.features,c.__aws_sdk_context?.features))}`);let l=t?.customUserAgent?.map(pQ)||[],u=await t.userAgentAppId();u&&a.push(pQ(["app",`${u}`]));let d=lQ(),p=(d?[d]:[]).concat([...a,...i,...l]).join(" "),m=[...a.filter(h=>h.startsWith("aws-sdk-")),...l].join(" ");return t.runtime!=="browser"?(m&&(o[dQ]=o[dQ]?`${o[L8]} ${m}`:m),o[L8]=p):o[dQ]=p,e({...n,request:s})},pQ=t=>{let e=t[0].split("/").map(i=>i.replace(tTe,"-")).join("/"),r=t[1]?.replace(rTe,"-"),n=e.indexOf("/"),s=e.substring(0,n),o=e.substring(n+1);return s==="api"&&(o=o.toLowerCase()),[s,o,r].filter(i=>i&&i.length>0).reduce((i,a,c)=>{switch(c){case 0:return a;case 1:return`${i}/${a}`;default:return`${i}#${a}`}},"")},F8={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},Al=t=>({applyToStack:e=>{e.add(M8(t),F8)}})});var mQ,lTe,uTe=C(()=>{mQ=require("node:process"),lTe=()=>{let t=["deno","bun","llrt"];for(let e of t)if(mQ.versions[e])return[`md/${e}`,mQ.versions[e]];return["md/nodejs",mQ.versions.node]}});var Kx,dTe,pTe=C(()=>{Kx=require("node:path"),dTe=t=>{let e=process.cwd();if(!t)return[e];let r=(0,Kx.normalize)(t),n=r.split(Kx.sep),s=n.indexOf("node_modules"),o=s!==-1?n.slice(0,s).join(Kx.sep):r;return e===o?[e]:[o,e]}});var wCt,fQ,U8=C(()=>{wCt=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*)?$/,fQ=(t="")=>{let e=t.match(wCt);if(!e)return;let[r,n,s,o]=[e[1],e[2],e[3],e[4]];return o?`${r}.${n}.${s}-${o}`:`${r}.${n}.${s}`}});var bCt,SCt,mTe,fTe=C(()=>{U8();bCt=["^","~",">=","<=",">","<"],SCt=["latest","beta","dev","rc","insiders","next"],mTe=(t="")=>{if(SCt.includes(t))return t;let e=bCt.find(n=>t.startsWith(n))??"",r=fQ(t.slice(e.length));if(r)return`${e}${r}`}});var q8,AQ,hl,BCt,ATe,hTe=C(()=>{Nt();q8=require("node:fs/promises"),AQ=require("node:path");pTe();fTe();U8();BCt=(0,AQ.join)("node_modules","typescript","package.json"),ATe=async()=>{if(hl===null)return;if(typeof hl=="string")return["md/tsc",hl];let t=!1;try{t=oo(process.env,"AWS_SDK_JS_TYPESCRIPT_DETECTION_DISABLED",es.ENV)||!1}catch{}if(t){hl=null;return}let r=dTe(typeof __dirname<"u"?__dirname:void 0),n;for(let i of r)try{let a=(0,AQ.join)(i,"package.json"),c=await(0,q8.readFile)(a,"utf-8"),{dependencies:l,devDependencies:u}=JSON.parse(c),d=u?.typescript??l?.typescript;if(typeof d!="string")continue;n=d;break}catch{}if(!n){hl=null;return}let s;for(let i of r)try{let a=(0,AQ.join)(i,BCt),c=await(0,q8.readFile)(a,"utf-8"),{version:l}=JSON.parse(c),u=fQ(l);if(typeof u!="string")continue;s=u;break}catch{}if(s)return hl=s,["md/tsc",hl];let o=mTe(n);if(typeof o!="string"){hl=null;return}return hl=`dev_${o}`,["md/tsc",hl]}});var Xx,$8=C(()=>{Xx={isCrtAvailable:!1}});var gTe,yTe=C(()=>{$8();gTe=()=>Xx.isCrtAvailable?["md/crt-avail"]:null});var hQ,G8,Pa,ETe,CTe=C(()=>{hQ=require("node:os"),G8=require("node:process");uTe();hTe();yTe();$8();Pa=({serviceId:t,clientVersion:e})=>{let r=lTe();return async n=>{let s=[["aws-sdk-js",e],["ua","2.1"],[`os/${(0,hQ.platform)()}`,(0,hQ.release)()],["lang/js"],r],o=await ATe();o&&s.push(o);let i=gTe();i&&s.push(i),t&&s.push([`api/${t}`,e]),G8.env.AWS_EXECUTION_ENV&&s.push([`exec-env/${G8.env.AWS_EXECUTION_ENV}`]);let a=await n?.userAgentAppId?.();return a?[...s,[`app/${a}`]]:[...s]}},ETe=Pa});var H8,z8,RCt,gl,ITe=C(()=>{Q8();H8="AWS_SDK_UA_APP_ID",z8="sdk_ua_app_id",RCt="sdk-ua-app-id",gl={environmentVariableSelector:t=>t[H8],configFileSelector:t=>t[z8]??t[RCt],default:Jx}});var xTe=w((Zx,V8)=>{(function(t,e){typeof Zx=="object"&&typeof V8=="object"?V8.exports=e():typeof define=="function"&&define.amd?define([],e):typeof Zx=="object"?Zx.bowser=e():t.bowser=e()})(Zx,(function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var s=e[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return r.m=t,r.c=e,r.d=function(n,s,o){r.o(n,s)||Object.defineProperty(n,s,{enumerable:!0,get:o})},r.r=function(n){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},r.t=function(n,s){if(1&s&&(n=r(n)),8&s||4&s&&typeof n=="object"&&n&&n.__esModule)return n;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&s&&typeof n!="string")for(var i in n)r.d(o,i,function(a){return n[a]}.bind(null,i));return o},r.n=function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(s,"a",s),s},r.o=function(n,s){return Object.prototype.hasOwnProperty.call(n,s)},r.p="",r(r.s=90)})({17:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n=r(18),s=(function(){function o(){}return o.getFirstMatch=function(i,a){var c=a.match(i);return c&&c.length>0&&c[1]||""},o.getSecondMatch=function(i,a){var c=a.match(i);return c&&c.length>1&&c[2]||""},o.matchAndReturnConst=function(i,a,c){if(i.test(a))return c},o.getWindowsVersionName=function(i){switch(i){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},o.getMacOSVersionName=function(i){var a=i.split(".").splice(0,2).map((function(c){return parseInt(c,10)||0}));if(a.push(0),a[0]===10)switch(a[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},o.getAndroidVersionName=function(i){var a=i.split(".").splice(0,2).map((function(c){return parseInt(c,10)||0}));if(a.push(0),!(a[0]===1&&a[1]<5))return a[0]===1&&a[1]<6?"Cupcake":a[0]===1&&a[1]>=6?"Donut":a[0]===2&&a[1]<2?"Eclair":a[0]===2&&a[1]===2?"Froyo":a[0]===2&&a[1]>2?"Gingerbread":a[0]===3?"Honeycomb":a[0]===4&&a[1]<1?"Ice Cream Sandwich":a[0]===4&&a[1]<4?"Jelly Bean":a[0]===4&&a[1]>=4?"KitKat":a[0]===5?"Lollipop":a[0]===6?"Marshmallow":a[0]===7?"Nougat":a[0]===8?"Oreo":a[0]===9?"Pie":void 0},o.getVersionPrecision=function(i){return i.split(".").length},o.compareVersions=function(i,a,c){c===void 0&&(c=!1);var l=o.getVersionPrecision(i),u=o.getVersionPrecision(a),d=Math.max(l,u),p=0,m=o.map([i,a],(function(h){var y=d-o.getVersionPrecision(h),I=h+new Array(y+1).join(".0");return o.map(I.split("."),(function(x){return new Array(20-x.length).join("0")+x})).reverse()}));for(c&&(p=d-Math.min(l,u)),d-=1;d>=p;){if(m[0][d]>m[1][d])return 1;if(m[0][d]===m[1][d]){if(d===p)return 0;d-=1}else if(m[0][d]1?u-1:0),p=1;p0){var b=Object.keys(h),T=a.default.find(b,(function(De){return m.isOS(De)}));if(T){var _=this.satisfies(h[T]);if(_!==void 0)return _}var U=a.default.find(b,(function(De){return m.isPlatform(De)}));if(U){var O=this.satisfies(h[U]);if(O!==void 0)return O}}if(x>0){var z=Object.keys(I),de=a.default.find(z,(function(De){return m.isBrowser(De,!0)}));if(de!==void 0)return this.compareVersion(I[de])}},d.isBrowser=function(p,m){m===void 0&&(m=!1);var h=this.getBrowserName().toLowerCase(),y=p.toLowerCase(),I=a.default.getBrowserTypeByAlias(y);return m&&I&&(y=I.toLowerCase()),y===h},d.compareVersion=function(p){var m=[0],h=p,y=!1,I=this.getBrowserVersion();if(typeof I=="string")return p[0]===">"||p[0]==="<"?(h=p.substr(1),p[1]==="="?(y=!0,h=p.substr(2)):m=[],p[0]===">"?m.push(1):m.push(-1)):p[0]==="="?h=p.substr(1):p[0]==="~"&&(y=!0,h=p.substr(1)),m.indexOf(a.default.compareVersions(I,h,y))>-1},d.isOS=function(p){return this.getOSName(!0)===String(p).toLowerCase()},d.isPlatform=function(p){return this.getPlatformType(!0)===String(p).toLowerCase()},d.isEngine=function(p){return this.getEngineName(!0)===String(p).toLowerCase()},d.is=function(p,m){return m===void 0&&(m=!1),this.isBrowser(p,m)||this.isOS(p)||this.isPlatform(p)},d.some=function(p){var m=this;return p===void 0&&(p=[]),p.some((function(h){return m.is(h)}))},u})();e.default=l,t.exports=e.default},92:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,i=[{test:[/googlebot/i],describe:function(a){var c={name:"Googlebot"},l=s.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/opera/i],describe:function(a){var c={name:"Opera"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/opr\/|opios/i],describe:function(a){var c={name:"Opera"},l=s.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/SamsungBrowser/i],describe:function(a){var c={name:"Samsung Internet for Android"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/Whale/i],describe:function(a){var c={name:"NAVER Whale Browser"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/MZBrowser/i],describe:function(a){var c={name:"MZ Browser"},l=s.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/focus/i],describe:function(a){var c={name:"Focus"},l=s.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/swing/i],describe:function(a){var c={name:"Swing"},l=s.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/coast/i],describe:function(a){var c={name:"Opera Coast"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:function(a){var c={name:"Opera Touch"},l=s.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/yabrowser/i],describe:function(a){var c={name:"Yandex Browser"},l=s.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/ucbrowser/i],describe:function(a){var c={name:"UC Browser"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/Maxthon|mxios/i],describe:function(a){var c={name:"Maxthon"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/epiphany/i],describe:function(a){var c={name:"Epiphany"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/puffin/i],describe:function(a){var c={name:"Puffin"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/sleipnir/i],describe:function(a){var c={name:"Sleipnir"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/k-meleon/i],describe:function(a){var c={name:"K-Meleon"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/micromessenger/i],describe:function(a){var c={name:"WeChat"},l=s.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/qqbrowser/i],describe:function(a){var c={name:/qqbrowserlite/i.test(a)?"QQ Browser Lite":"QQ Browser"},l=s.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/msie|trident/i],describe:function(a){var c={name:"Internet Explorer"},l=s.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/\sedg\//i],describe:function(a){var c={name:"Microsoft Edge"},l=s.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/edg([ea]|ios)/i],describe:function(a){var c={name:"Microsoft Edge"},l=s.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/vivaldi/i],describe:function(a){var c={name:"Vivaldi"},l=s.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/seamonkey/i],describe:function(a){var c={name:"SeaMonkey"},l=s.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/sailfish/i],describe:function(a){var c={name:"Sailfish"},l=s.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,a);return l&&(c.version=l),c}},{test:[/silk/i],describe:function(a){var c={name:"Amazon Silk"},l=s.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/phantom/i],describe:function(a){var c={name:"PhantomJS"},l=s.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/slimerjs/i],describe:function(a){var c={name:"SlimerJS"},l=s.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(a){var c={name:"BlackBerry"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/(web|hpw)[o0]s/i],describe:function(a){var c={name:"WebOS Browser"},l=s.default.getFirstMatch(o,a)||s.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/bada/i],describe:function(a){var c={name:"Bada"},l=s.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/tizen/i],describe:function(a){var c={name:"Tizen"},l=s.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/qupzilla/i],describe:function(a){var c={name:"QupZilla"},l=s.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/firefox|iceweasel|fxios/i],describe:function(a){var c={name:"Firefox"},l=s.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/electron/i],describe:function(a){var c={name:"Electron"},l=s.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/MiuiBrowser/i],describe:function(a){var c={name:"Miui"},l=s.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/chromium/i],describe:function(a){var c={name:"Chromium"},l=s.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,a)||s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/chrome|crios|crmo/i],describe:function(a){var c={name:"Chrome"},l=s.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/GSA/i],describe:function(a){var c={name:"Google Search"},l=s.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:function(a){var c=!a.test(/like android/i),l=a.test(/android/i);return c&&l},describe:function(a){var c={name:"Android Browser"},l=s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/playstation 4/i],describe:function(a){var c={name:"PlayStation 4"},l=s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/safari|applewebkit/i],describe:function(a){var c={name:"Safari"},l=s.default.getFirstMatch(o,a);return l&&(c.version=l),c}},{test:[/.*/i],describe:function(a){var c=a.search("\\(")!==-1?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:s.default.getFirstMatch(c,a),version:s.default.getSecondMatch(c,a)}}}];e.default=i,t.exports=e.default},93:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),i=[{test:[/Roku\/DVP/],describe:function(a){var c=s.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,a);return{name:o.OS_MAP.Roku,version:c}}},{test:[/windows phone/i],describe:function(a){var c=s.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.WindowsPhone,version:c}}},{test:[/windows /i],describe:function(a){var c=s.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,a),l=s.default.getWindowsVersionName(c);return{name:o.OS_MAP.Windows,version:c,versionName:l}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(a){var c={name:o.OS_MAP.iOS},l=s.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,a);return l&&(c.version=l),c}},{test:[/macintosh/i],describe:function(a){var c=s.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,a).replace(/[_\s]/g,"."),l=s.default.getMacOSVersionName(c),u={name:o.OS_MAP.MacOS,version:c};return l&&(u.versionName=l),u}},{test:[/(ipod|iphone|ipad)/i],describe:function(a){var c=s.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,a).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:c}}},{test:function(a){var c=!a.test(/like android/i),l=a.test(/android/i);return c&&l},describe:function(a){var c=s.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,a),l=s.default.getAndroidVersionName(c),u={name:o.OS_MAP.Android,version:c};return l&&(u.versionName=l),u}},{test:[/(web|hpw)[o0]s/i],describe:function(a){var c=s.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,a),l={name:o.OS_MAP.WebOS};return c&&c.length&&(l.version=c),l}},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:function(a){var c=s.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,a)||s.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,a)||s.default.getFirstMatch(/\bbb(\d+)/i,a);return{name:o.OS_MAP.BlackBerry,version:c}}},{test:[/bada/i],describe:function(a){var c=s.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.Bada,version:c}}},{test:[/tizen/i],describe:function(a){var c=s.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.Tizen,version:c}}},{test:[/linux/i],describe:function(){return{name:o.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:o.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(a){var c=s.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,a);return{name:o.OS_MAP.PlayStation4,version:c}}}];e.default=i,t.exports=e.default},94:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),i=[{test:[/googlebot/i],describe:function(){return{type:"bot",vendor:"Google"}}},{test:[/huawei/i],describe:function(a){var c=s.default.getFirstMatch(/(can-l01)/i,a)&&"Nova",l={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return c&&(l.model=c),l}},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}}},{test:[/ipad/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}}},{test:[/kftt build/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}}},{test:[/silk/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(a){var c=a.test(/ipod|iphone/i),l=a.test(/like (ipod|iphone)/i);return c&&!l},describe:function(a){var c=s.default.getFirstMatch(/(ipod|iphone)/i,a);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:c}}},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}}},{test:[/[^-]mobi/i],describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getBrowserName(!0)==="blackberry"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}}},{test:function(a){return a.getBrowserName(!0)==="bada"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getBrowserName()==="windows phone"},describe:function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}}},{test:function(a){var c=Number(String(a.getOSVersion()).split(".")[0]);return a.getOSName(!0)==="android"&&c>=3},describe:function(){return{type:o.PLATFORMS_MAP.tablet}}},{test:function(a){return a.getOSName(!0)==="android"},describe:function(){return{type:o.PLATFORMS_MAP.mobile}}},{test:function(a){return a.getOSName(!0)==="macos"},describe:function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}}},{test:function(a){return a.getOSName(!0)==="windows"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(a){return a.getOSName(!0)==="linux"},describe:function(){return{type:o.PLATFORMS_MAP.desktop}}},{test:function(a){return a.getOSName(!0)==="playstation 4"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}},{test:function(a){return a.getOSName(!0)==="roku"},describe:function(){return{type:o.PLATFORMS_MAP.tv}}}];e.default=i,t.exports=e.default},95:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),i=[{test:function(a){return a.getBrowserName(!0)==="microsoft edge"},describe:function(a){if(/\sedg\//i.test(a))return{name:o.ENGINE_MAP.Blink};var c=s.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,a);return{name:o.ENGINE_MAP.EdgeHTML,version:c}}},{test:[/trident/i],describe:function(a){var c={name:o.ENGINE_MAP.Trident},l=s.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:function(a){return a.test(/presto/i)},describe:function(a){var c={name:o.ENGINE_MAP.Presto},l=s.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:function(a){var c=a.test(/gecko/i),l=a.test(/like gecko/i);return c&&!l},describe:function(a){var c={name:o.ENGINE_MAP.Gecko},l=s.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}},{test:[/(apple)?webkit\/537\.36/i],describe:function(){return{name:o.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(a){var c={name:o.ENGINE_MAP.WebKit},l=s.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,a);return l&&(c.version=l),c}}];e.default=i,t.exports=e.default}})}))});var wTe,bTe=C(()=>{wTe=({serviceId:t,clientVersion:e})=>async r=>{let n=await Promise.resolve().then(()=>Q(xTe())),s=n.parse??n.default.parse??(()=>""),o=typeof window<"u"&&window?.navigator?.userAgent?s(window.navigator.userAgent):void 0,i=[["aws-sdk-js",e],["ua","2.1"],[`os/${o?.os?.name||"other"}`,o?.os?.version],["lang/js"],["md/browser",`${o?.browser?.name??"unknown"}_${o?.browser?.version??"unknown"}`]];t&&i.push([`api/${t}`,e]);let a=await r?.userAgentAppId?.();return a&&i.push([`app/${a}`]),i}});var STe,BTe=C(()=>{STe={os(t){if(/iPhone|iPad|iPod/.test(t))return"iOS";if(/Macintosh|Mac OS X/.test(t))return"macOS";if(/Windows NT/.test(t))return"Windows";if(/Android/.test(t))return"Android";if(/Linux/.test(t))return"Linux"},browser(t){if(/EdgiOS|EdgA|Edg\//.test(t))return"Microsoft Edge";if(/Firefox\//.test(t))return"Firefox";if(/Chrome\//.test(t))return"Chrome";if(/Safari\//.test(t))return"Safari"}}});var Y8=C(()=>{It()});var ew,W8=C(()=>{It();Y8();ew=(t,e=!1)=>{if(e){for(let r of t.split("."))if(!ew(r))return!1;return!0}return!(!gu(t)||t.length<3||t.length>63||t!==t.toLowerCase()||Eu(t))}});var gQ,j8=C(()=>{gQ=t=>{let e=t.split(":");if(e.length<6)return null;let[r,n,s,o,i,...a]=e;if(r!=="arn"||n===""||s===""||a.join(":")==="")return null;let c=a.map(l=>l.split("/")).flat();return{partition:n,service:s,region:o,accountId:i,resourceId:c}}});var va,RTe=C(()=>{It();W8();j8();uQ();va={isVirtualHostableS3Bucket:ew,parseArn:gQ,partition:cQ};io.aws=va});var NTe=C(()=>{It()});var TTe,J8,PTe=C(()=>{_e();TTe=t=>{if(typeof t.endpointProvider!="function")throw new Error("@aws-sdk/util-endpoint - endpointProvider and endpoint missing in config for this client.");let{endpoint:e}=t;return e===void 0&&(t.endpoint=async()=>J8(t.endpointProvider({Region:typeof t.region=="function"?await t.region():t.region,UseDualStack:typeof t.useDualstackEndpoint=="function"?await t.useDualstackEndpoint():t.useDualstackEndpoint,UseFIPS:typeof t.useFipsEndpoint=="function"?await t.useFipsEndpoint():t.useFipsEndpoint,Endpoint:void 0},{logger:t.logger}))),t},J8=t=>ts(t.url)});var vTe=C(()=>{It()});var _Te=C(()=>{Nt();Nt()});function yQ(t={}){return rt({...Qn,async default(){return K8.silence||console.warn("@aws-sdk - WARN - default STS region of us-east-1 used. See @aws-sdk/credential-providers README and set a region explicitly."),"us-east-1"}},{...Ts,...t})}var K8,QTe=C(()=>{Nt();K8={silence:!1}});var yl,El,DTe=C(()=>{yl=t=>({setRegion(e){t.region=e},region(){return t.region}}),El=t=>({region:t.region()})});var Qs={};Zr(Qs,{DEFAULT_UA_APP_ID:()=>Jx,EndpointError:()=>bt,NODE_APP_ID_CONFIG_OPTIONS:()=>gl,NODE_REGION_CONFIG_FILE_OPTIONS:()=>Ts,NODE_REGION_CONFIG_OPTIONS:()=>Qn,REGION_ENV_NAME:()=>zg,REGION_INI_NAME:()=>Vg,UA_APP_ID_ENV_NAME:()=>H8,UA_APP_ID_INI_NAME:()=>z8,awsEndpointFunctions:()=>va,createDefaultUserAgentProvider:()=>Pa,createUserAgentStringParsingProvider:()=>wTe,crtAvailability:()=>Xx,defaultUserAgent:()=>ETe,emitWarningIfUnsupportedVersion:()=>Uc,fallback:()=>STe,getAwsRegionExtensionConfiguration:()=>yl,getHostHeaderPlugin:()=>ul,getLoggerPlugin:()=>dl,getLongPollPlugin:()=>pxe,getRecursionDetectionPlugin:()=>pl,getUserAgentMiddlewareOptions:()=>F8,getUserAgentPlugin:()=>Al,getUserAgentPrefix:()=>lQ,hostHeaderMiddleware:()=>f8,hostHeaderMiddlewareOptions:()=>A8,isIpAddress:()=>Eu,isVirtualHostableS3Bucket:()=>ew,loggerMiddleware:()=>h8,loggerMiddlewareOptions:()=>g8,parseArn:()=>gQ,partition:()=>cQ,recursionDetectionMiddleware:()=>oQ,recursionDetectionMiddlewareOptions:()=>rQ,resolveAwsRegionExtensionConfiguration:()=>El,resolveDefaultAwsRegionalEndpointsConfig:()=>TTe,resolveEndpoint:()=>_x,resolveHostHeaderConfig:()=>fy,resolveRegionConfig:()=>Vo,resolveUserAgentConfig:()=>fl,setCredentialFeature:()=>Hd,setFeature:()=>qi,setPartitionInfo:()=>k8,setTokenFeature:()=>ENe,state:()=>Ex,stsRegionDefaultResolver:()=>yQ,stsRegionWarning:()=>K8,toEndpointV1:()=>J8,useDefaultPartitionInfo:()=>XNe,userAgentMiddleware:()=>M8});var xt=C(()=>{dxe();mxe();fxe();m8();CNe();INe();xNe();y8();bNe();w8();Q8();cTe();CTe();ITe();BTe();bTe();RTe();NTe();PTe();Y8();W8();j8();uQ();vTe();_Te();QTe();DTe()});var X8,kTe=C(()=>{_e();X8=t=>Zn.isInstance(t)?t.headers?.date??t.headers?.Date:void 0});var Ay,Z8=C(()=>{Ay=t=>new Date(Date.now()+t)});var LTe,OTe=C(()=>{Z8();LTe=(t,e)=>Math.abs(Ay(e).getTime()-t)>=3e5});var ej,MTe=C(()=>{OTe();ej=(t,e)=>{let r=Date.parse(t);return LTe(r,e)?r-Date.now():e}});var tj=C(()=>{kTe();Z8();MTe()});var tw,rw,Ln,FTe,rj=C(()=>{_e();tj();tw=(t,e)=>{if(!e)throw new Error(`Property \`${t}\` is not resolved for AWS SDK SigV4Auth`);return e},rw=async t=>{let e=tw("context",t.context),r=tw("config",t.config),n=e.endpointV2?.properties?.authSchemes?.[0],o=await tw("signer",r.signer)(n),i=t?.signingRegion,a=t?.signingRegionSet,c=t?.signingName;return{config:r,signer:o,signingRegion:i,signingRegionSet:a,signingName:c}},Ln=class{async sign(e,r,n){if(!pt.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");let s=await rw(n),{config:o,signer:i}=s,{signingRegion:a,signingName:c}=s,l=n.context;if(l?.authSchemes?.length??!1){let[d,p]=l.authSchemes;d?.name==="sigv4a"&&p?.name==="sigv4"&&(a=p?.signingRegion??a,c=p?.signingName??c)}return await i.sign(e,{signingDate:Ay(o.systemClockOffset),signingRegion:a,signingService:c})}errorHandler(e){return r=>{let n=r.ServerTime??X8(r.$response);if(n){let s=tw("config",e.config),o=s.systemClockOffset;s.systemClockOffset=ej(n,s.systemClockOffset),s.systemClockOffset!==o&&r.$metadata&&(r.$metadata.clockSkewCorrected=!0)}throw r}}successHandler(e,r){let n=X8(e);if(n){let s=tw("config",r.config);s.systemClockOffset=ej(n,s.systemClockOffset)}}},FTe=Ln});var cp,UTe=C(()=>{_e();tj();rj();cp=class extends Ln{async sign(e,r,n){if(!pt.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");let{config:s,signer:o,signingRegion:i,signingRegionSet:a,signingName:c}=await rw(n),u=(await s.sigv4aSigningRegionSet?.()??a??[i]).join(",");return await o.sign(e,{signingDate:Ay(s.systemClockOffset),signingRegion:u,signingService:c})}}});var nj,qTe=C(()=>{nj=t=>typeof t=="string"&&t.length>0?t.split(",").map(e=>e.trim()):[]});var sj,oj=C(()=>{sj=t=>`AWS_BEARER_TOKEN_${t.replace(/[\s-]/g,"_").toUpperCase()}`});var $Te,GTe,Tu,HTe=C(()=>{qTe();oj();$Te="AWS_AUTH_SCHEME_PREFERENCE",GTe="auth_scheme_preference",Tu={environmentVariableSelector:(t,e)=>{if(e?.signingName&&sj(e.signingName)in t)return["httpBearerAuth"];if($Te in t)return nj(t[$Te])},configFileSelector:t=>{if(GTe in t)return nj(t[GTe])},default:[]}});var ij,aj,zTe=C(()=>{_s();Nt();ij=t=>(t.sigv4aSigningRegionSet=ml(t.sigv4aSigningRegionSet),t),aj={environmentVariableSelector(t){if(t.AWS_SIGV4A_SIGNING_REGION_SET)return t.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map(e=>e.trim());throw new zo("AWS_SIGV4A_SIGNING_REGION_SET not set in env.",{tryNextLink:!0})},configFileSelector(t){if(t.sigv4a_signing_region_set)return(t.sigv4a_signing_region_set??"").split(",").map(e=>e.trim());throw new zo("sigv4a_signing_region_set not set in profile.",{tryNextLink:!0})},default:void 0}});var Ej=w(at=>{"use strict";var rs=(nt(),Y(Xd)),VTe=(Ee(),Y(Fi)),gy=(_e(),Y(tl)),cj=class{format(e){let r=[];for(let o of Object.keys(e)){let i=rs.fromUtf8(o);r.push(Uint8Array.from([i.byteLength]),i,this.formatHeaderValue(e[o]))}let n=new Uint8Array(r.reduce((o,i)=>o+i.byteLength,0)),s=0;for(let o of r)n.set(o,s),s+=o.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let r=new DataView(new ArrayBuffer(3));return r.setUint8(0,3),r.setInt16(1,e.value,!1),new Uint8Array(r.buffer);case"integer":let n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":let s=new Uint8Array(9);return s[0]=5,s.set(e.value.bytes,1),s;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let i=new Uint8Array(o.buffer);return i.set(e.value,3),i;case"string":let a=rs.fromUtf8(e.value),c=new DataView(new ArrayBuffer(3+a.byteLength));c.setUint8(0,7),c.setUint16(1,a.byteLength,!1);let l=new Uint8Array(c.buffer);return l.set(a,3),l;case"timestamp":let u=new Uint8Array(9);return u[0]=8,u.set(lj.fromNumber(e.value.valueOf()).bytes,1),u;case"uuid":if(!NCt.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);let d=new Uint8Array(17);return d[0]=9,d.set(rs.fromHex(e.value.replace(/\-/g,"")),1),d}}},YTe;(function(t){t[t.boolTrue=0]="boolTrue",t[t.boolFalse=1]="boolFalse",t[t.byte=2]="byte",t[t.short=3]="short",t[t.integer=4]="integer",t[t.long=5]="long",t[t.byteArray=6]="byteArray",t[t.string=7]="string",t[t.timestamp=8]="timestamp",t[t.uuid=9]="uuid"})(YTe||(YTe={}));var NCt=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/,lj=class t{bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let r=new Uint8Array(8);for(let n=7,s=Math.abs(Math.round(e));n>-1&&s>0;n--,s/=256)r[n]=s;return e<0&&WTe(r),new t(r)}valueOf(){let e=this.bytes.slice(0),r=e[0]&128;return r&&WTe(e),parseInt(rs.toHex(e),16)*(r?-1:1)}toString(){return String(this.valueOf())}};function WTe(t){for(let e=0;e<8;e++)t[e]^=255;for(let e=7;e>-1&&(t[e]++,t[e]===0);e--);}var JTe="X-Amz-Algorithm",KTe="X-Amz-Credential",mj="X-Amz-Date",XTe="X-Amz-SignedHeaders",ZTe="X-Amz-Expires",fj="X-Amz-Signature",Aj="X-Amz-Security-Token",TCt="X-Amz-Region-Set",hj="authorization",gj=mj.toLowerCase(),ePe="date",tPe=[hj,gj,ePe],rPe=fj.toLowerCase(),wQ="x-amz-content-sha256",nPe=Aj.toLowerCase(),PCt="host",sPe={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},oPe=/^proxy-/,iPe=/^sec-/,vCt=[/^proxy-/i,/^sec-/i],EQ="AWS4-HMAC-SHA256",_Ct="AWS4-ECDSA-P256-SHA256",aPe="AWS4-HMAC-SHA256-PAYLOAD",cPe="UNSIGNED-PAYLOAD",lPe=50,yj="aws4_request",uPe=3600*24*7,dPe=({query:t={}})=>{let e=[],r={};for(let n of Object.keys(t)){if(n.toLowerCase()===rPe)continue;let s=gy.escapeUri(n);e.push(s);let o=t[n];typeof o=="string"?r[s]=`${s}=${gy.escapeUri(o)}`:Array.isArray(o)&&(r[s]=o.slice(0).reduce((i,a)=>i.concat([`${s}=${gy.escapeUri(a)}`]),[]).sort().join("&"))}return e.sort().map(n=>r[n]).filter(n=>n).join("&")},QCt=t=>DCt(t).toISOString().replace(/\.\d{3}Z$/,"Z"),DCt=t=>typeof t=="number"?new Date(t*1e3):typeof t=="string"?Number(t)?new Date(Number(t)*1e3):new Date(t):t,bQ=class{service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:i=!0}){this.service=s,this.sha256=o,this.uriEscapePath=i,this.applyChecksum=typeof e=="boolean"?e:!0,this.regionProvider=VTe.normalizeProvider(n),this.credentialProvider=VTe.normalizeProvider(r)}createCanonicalRequest(e,r,n){let s=Object.keys(r).sort();return`${e.method} +`),"stackTraceWarning"),Og={warn:console.warn}});function wa(t){let e=t.getUTCFullYear(),r=t.getUTCMonth(),n=t.getUTCDay(),s=t.getUTCDate(),o=t.getUTCHours(),a=t.getUTCMinutes(),c=t.getUTCSeconds(),l=s<10?`0${s}`:`${s}`,u=o<10?`0${o}`:`${o}`,d=a<10?`0${a}`:`${a}`,p=c<10?`0${c}`:`${c}`;return`${Hgt[n]}, ${l} ${cY[r]} ${e} ${u}:${d}:${p} GMT`}var Hgt,cY,zgt,nwe,Vgt,pv,Ygt,Wgt,jgt,Ug,mv,bx,Jgt,Kgt,Xgt,aY,Zgt,eyt,tyt,$c,ryt,nyt,Fg,swe=I(()=>{iY();Hgt=["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],cY=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];i(wa,"dateToUtcString");zgt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?[zZ]$/),nwe=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=zgt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,a,c,l,u]=e,d=Jd(Fg(n)),p=$c(s,"month",1,12),m=$c(o,"day",1,31);return bx(d,p,m,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})},"parseRfc3339DateTime"),Vgt=new RegExp(/^(\d{4})-(\d{2})-(\d{2})[tT](\d{2}):(\d{2}):(\d{2})(?:\.(\d+))?(([-+]\d{2}\:\d{2})|[zZ])$/),pv=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-3339 date-times must be expressed as strings");let e=Vgt.exec(t);if(!e)throw new TypeError("Invalid RFC-3339 date-time value");let[r,n,s,o,a,c,l,u,d]=e,p=Jd(Fg(n)),m=$c(s,"month",1,12),f=$c(o,"day",1,31),g=bx(p,m,f,{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u});return d.toUpperCase()!="Z"&&g.setTime(g.getTime()-nyt(d)),g},"parseRfc3339DateTimeWithOffset"),Ygt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),Wgt=new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? GMT$/),jgt=new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\d{2}) (\d{1,2}):(\d{2}):(\d{2})(?:\.(\d+))? (\d{4})$/),Ug=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC-7231 date-times must be expressed as strings");let e=Ygt.exec(t);if(e){let[r,n,s,o,a,c,l,u]=e;return bx(Jd(Fg(o)),aY(s),$c(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u})}if(e=Wgt.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return Xgt(bx(Jgt(o),aY(s),$c(n,"day",1,31),{hours:a,minutes:c,seconds:l,fractionalMilliseconds:u}))}if(e=jgt.exec(t),e){let[r,n,s,o,a,c,l,u]=e;return bx(Jd(Fg(u)),aY(n),$c(s.trimLeft(),"day",1,31),{hours:o,minutes:a,seconds:c,fractionalMilliseconds:l})}throw new TypeError("Invalid RFC-7231 date-time value")},"parseRfc7231DateTime"),mv=i(t=>{if(t==null)return;let e;if(typeof t=="number")e=t;else if(typeof t=="string")e=wx(t);else if(typeof t=="object"&&t.tag===1)e=t.value;else throw new TypeError("Epoch timestamps must be expressed as floating point numbers or their string representation");if(Number.isNaN(e)||e===1/0||e===-1/0)throw new TypeError("Epoch timestamps must be valid, non-Infinite, non-NaN numerics");return new Date(Math.round(e*1e3))},"parseEpochTimestamp"),bx=i((t,e,r,n)=>{let s=e-1;return eyt(t,s,r),new Date(Date.UTC(t,s,r,$c(n.hours,"hour",0,23),$c(n.minutes,"minute",0,59),$c(n.seconds,"seconds",0,60),ryt(n.fractionalMilliseconds)))},"buildDate"),Jgt=i(t=>{let e=new Date().getUTCFullYear(),r=Math.floor(e/100)*100+Jd(Fg(t));return rt.getTime()-new Date().getTime()>Kgt?new Date(Date.UTC(t.getUTCFullYear()-100,t.getUTCMonth(),t.getUTCDate(),t.getUTCHours(),t.getUTCMinutes(),t.getUTCSeconds(),t.getUTCMilliseconds())):t,"adjustRfc850Year"),aY=i(t=>{let e=cY.indexOf(t);if(e<0)throw new TypeError(`Invalid month: ${t}`);return e+1},"parseMonthByShortName"),Zgt=[31,28,31,30,31,30,31,31,30,31,30,31],eyt=i((t,e,r)=>{let n=Zgt[e];if(e===1&&tyt(t)&&(n=29),r>n)throw new TypeError(`Invalid day for ${cY[e]} in ${t}: ${r}`)},"validateDayOfMonth"),tyt=i(t=>t%4===0&&(t%100!==0||t%400===0),"isLeapYear"),$c=i((t,e,r,n)=>{let s=dv(Fg(t));if(sn)throw new TypeError(`${e} must be between ${r} and ${n}, inclusive`);return s},"parseDateValue"),ryt=i(t=>t==null?0:lv("0."+t)*1e3,"parseMilliseconds"),nyt=i(t=>{let e=t[0],r=1;if(e=="+")r=1;else if(e=="-")r=-1;else throw new TypeError(`Offset direction, ${e}, must be "+" or "-"`);let n=Number(t.substring(1,3)),s=Number(t.substring(4,6));return r*(n*60+s)*60*1e3},"parseOffsetToMilliseconds"),Fg=i(t=>{let e=0;for(;e{Zn=i(function(e){return Object.assign(new String(e),{deserializeJSON(){return JSON.parse(String(e))},toString(){return String(e)},toJSON(){return String(e)}})},"LazyJsonString");Zn.from=t=>t&&typeof t=="object"&&(t instanceof Zn||"deserializeJSON"in t)?t:typeof t=="string"||Object.getPrototypeOf(t)===String.prototype?Zn(String(t)):Zn(JSON.stringify(t));Zn.fromObject=Zn.from});function fv(t){return(t.includes(",")||t.includes('"'))&&(t=`"${t.replace(/"/g,'\\"')}"`),t}var iwe=I(()=>{i(fv,"quoteHeader")});function gu(t,e,r){let n=Number(t);if(nr)throw new Error(`Value ${n} out of range [${e}, ${r}]`)}var lY,uY,dY,awe,cwe,syt,oyt,iyt,ayt,cyt,lf,Av,hv,lwe=I(()=>{lY="(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?",uY="(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)",dY="(\\d?\\d):(\\d{2}):(\\d{2})(?:\\.(\\d+))?",awe="(\\d?\\d)",cwe="(\\d{4})",syt=new RegExp(/^(\d{4})-(\d\d)-(\d\d)[tT](\d\d):(\d\d):(\d\d)(\.(\d+))?(([-+]\d\d:\d\d)|[zZ])$/),oyt=new RegExp(`^${lY}, ${awe} ${uY} ${cwe} ${dY} GMT$`),iyt=new RegExp(`^${lY}, ${awe}-${uY}-(\\d\\d) ${dY} GMT$`),ayt=new RegExp(`^${lY} ${uY} ( [1-9]|\\d\\d) ${dY} ${cwe}$`),cyt=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],lf=i(t=>{if(t==null)return;let e=NaN;if(typeof t=="number")e=t;else if(typeof t=="string"){if(!/^-?\d*\.?\d+$/.test(t))throw new TypeError("parseEpochTimestamp - numeric string invalid.");e=Number.parseFloat(t)}else typeof t=="object"&&t.tag===1&&(e=t.value);if(isNaN(e)||Math.abs(e)===1/0)throw new TypeError("Epoch timestamps must be valid finite numbers.");return new Date(Math.round(e*1e3))},"_parseEpochTimestamp"),Av=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC3339 timestamps must be strings");let e=syt.exec(t);if(!e)throw new TypeError(`Invalid RFC3339 timestamp format ${t}`);let[,r,n,s,o,a,c,,l,u]=e;gu(n,1,12),gu(s,1,31),gu(o,0,23),gu(a,0,59),gu(c,0,60);let d=new Date(Date.UTC(Number(r),Number(n)-1,Number(s),Number(o),Number(a),Number(c),Number(l)?Math.round(parseFloat(`0.${l}`)*1e3):0));if(d.setUTCFullYear(Number(r)),u.toUpperCase()!="Z"){let[,p,m,f]=/([+-])(\d\d):(\d\d)/.exec(u)||[void 0,"+",0,0],g=p==="-"?1:-1;d.setTime(d.getTime()+g*(Number(m)*60*60*1e3+Number(f)*60*1e3))}return d},"_parseRfc3339DateTimeWithOffset"),hv=i(t=>{if(t==null)return;if(typeof t!="string")throw new TypeError("RFC7231 timestamps must be strings.");let e,r,n,s,o,a,c,l;if((l=oyt.exec(t))?[,e,r,n,s,o,a,c]=l:(l=iyt.exec(t))?([,e,r,n,s,o,a,c]=l,n=(Number(n)+1900).toString()):(l=ayt.exec(t))&&([,r,e,s,o,a,c,n]=l),n&&a){let u=Date.UTC(Number(n),cyt.indexOf(r),Number(e),Number(s),Number(o),Number(a),c?Math.round(parseFloat(`0.${c}`)*1e3):0);gu(e,1,31),gu(s,0,23),gu(o,0,59),gu(a,0,60);let d=new Date(u);return d.setUTCFullYear(Number(n)),d}throw new TypeError(`Invalid RFC7231 date-time value ${t}.`)},"_parseRfc7231DateTime");i(gu,"range")});function gv(t,e,r){if(r<=0||!Number.isInteger(r))throw new Error("Invalid number of delimiters ("+r+") for splitEvery.");let n=t.split(e);if(r===1)return n;let s=[],o="";for(let a=0;a{i(gv,"splitEvery")});var qg,dwe=I(()=>{qg=i(t=>{let e=t.length,r=[],n=!1,s,o=0;for(let a=0;a{a=a.trim();let c=a.length;return c<2?a:(a[0]==='"'&&a[c-1]==='"'&&(a=a.slice(1,c-1)),a.replace(/\\"/g,'"'))})},"splitHeader")});function yv(t){return new qt(String(t),"bigDecimal")}var pwe,qt,mwe=I(()=>{pwe=/^-?\d*(\.\d+)?$/,qt=class t{static{i(this,"NumericValue")}string;type;constructor(e,r){if(this.string=e,this.type=r,!pwe.test(e))throw new Error('@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point ".", and an optional negation prefix "-".')}toString(){return this.string}static[Symbol.hasInstance](e){if(!e||typeof e!="object")return!1;let r=e;return t.prototype.isPrototypeOf(e)||r.type==="bigDecimal"&&pwe.test(r.string)}};i(yv,"nv")});function Ev(t){if(t.length%2!==0)throw new Error("Hex encoded strings must have an even number length");let e=new Uint8Array(t.length/2);for(let r=0;r{fwe={},pY={};for(let t=0;t<256;t++){let e=t.toString(16).toLowerCase();e.length===1&&(e=`0${e}`),fwe[t]=e,pY[e]=t}i(Ev,"fromHex");i(Di,"toHex")});var $g,Gc,Awe=I(()=>{$g=require("node:fs"),Gc=i(t=>{if(!t)return 0;if(typeof t=="string")return Buffer.byteLength(t);if(typeof t.byteLength=="number")return t.byteLength;if(typeof t.size=="number")return t.size;if(typeof t.start=="number"&&typeof t.end=="number")return t.end+1-t.start;if(t instanceof $g.ReadStream){if(t.path!=null)return(0,$g.lstatSync)(t.path).size;if(typeof t.fd=="number")return(0,$g.fstatSync)(t.fd).size}throw new Error(`Body Length computation failed for ${t}`)},"calculateBodyLength")});var Cv,fY=I(()=>{rv();Cv=i(t=>typeof t=="string"?Gr(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t),"toUint8Array")});var Iv,AY,hY=I(()=>{Qe();Iv=i((t,e)=>(r,n)=>async s=>{let{response:o}=await r(s);try{let a=await e(o,t);return{response:o,output:a}}catch(a){if(Object.defineProperty(a,"$response",{value:o,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in a)){let c="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";try{a.message+=` + `+c}catch{!n.logger||n.logger?.constructor?.name==="NoOpLogger"?console.warn(c):n.logger?.warn?.(c)}typeof a.$responseBodyText<"u"&&a.$response&&(a.$response.body=a.$responseBodyText);try{if(es.isInstance(o)){let{headers:l={}}=o,u=Object.entries(l);a.$metadata={httpStatusCode:o.statusCode,requestId:AY(/^x-[\w-]+-request-?id$/,u),extendedRequestId:AY(/^x-[\w-]+-id-2$/,u),cfId:AY(/^x-[\w-]+-cf-id$/,u)}}}catch{}}throw a}},"deserializerMiddleware"),AY=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var Vo,Sx=I(()=>{Vo=class t extends Error{static{i(this,"ProviderError")}name="ProviderError";tryNextLink;constructor(e,r=!0){let n,s=!0;typeof r=="boolean"?(n=void 0,s=r):r!=null&&typeof r=="object"&&(n=r.logger,s=r.tryNextLink??!0),super(e),this.tryNextLink=s,Object.setPrototypeOf(this,t.prototype),n?.debug?.(`@smithy/property-provider ${s?"->":"(!)"} ${e}`)}static from(e,r=!0){return Object.assign(new this(e.message,r),e)}}});var Kd,xv=I(()=>{Sx();Kd=class t extends Vo{static{i(this,"CredentialsProviderError")}name="CredentialsProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var wv,hwe=I(()=>{Sx();wv=class t extends Vo{static{i(this,"TokenProviderError")}name="TokenProviderError";constructor(e,r=!0){super(e,r),Object.setPrototypeOf(this,t.prototype)}}});var bv,gY=I(()=>{Sx();bv=i((...t)=>async()=>{if(t.length===0)throw new Vo("No providers in chain");let e;for(let r of t)try{return await r()}catch(n){if(e=n,n?.tryNextLink)continue;throw n}throw e},"chain")});var Sv,yY=I(()=>{Sv=i(t=>()=>Promise.resolve(t),"fromValue")});var Gg,Bv=I(()=>{Gg=i((t,e,r)=>{let n,s,o,a=!1,c=i(async()=>{s||(s=t());try{n=await s,o=!0,a=!1}finally{s=void 0}return n},"coalesceProvider");return e===void 0?async l=>((!o||l?.forceRefresh)&&(n=await c()),n):async l=>((!o||l?.forceRefresh)&&(n=await c()),a?n:r&&!r(n)?(a=!0,n):(e(n)&&await c(),n))},"memoize")});var io,Rv=I(()=>{io=i((t,e,r)=>{if(e in t){if(t[e]==="true")return!0;if(t[e]==="false")return!1;throw new Error(`Cannot load ${r} "${e}". Expected "true" or "false", got ${t[e]}.`)}},"booleanSelector")});var gwe,ywe=I(()=>{gwe=i((t,e,r)=>{if(!(e in t))return;let n=parseInt(t[e],10);if(Number.isNaN(n))throw new TypeError(`Cannot load ${r} '${e}'. Expected number, got '${t[e]}'.`);return n},"numberSelector")});var ts,Nv=I(()=>{(function(t){t.ENV="env",t.CONFIG="shared config entry"})(ts||(ts={}))});var Ewe,Cwe,EY,lyt,Hc,Hg=I(()=>{Ewe=require("node:os"),Cwe=require("node:path"),EY={},lyt=i(()=>process&&process.geteuid?`${process.geteuid()}`:"DEFAULT","getHomeDirCacheKey"),Hc=i(()=>{let{HOME:t,USERPROFILE:e,HOMEPATH:r,HOMEDRIVE:n=`C:${Cwe.sep}`}=process.env;if(t)return t;if(e)return e;if(r)return`${n}${r}`;let s=lyt();return EY[s]||(EY[s]=(0,Ewe.homedir)()),EY[s]},"getHomeDir")});var CY,IY,Tv,xY=I(()=>{CY="AWS_PROFILE",IY="default",Tv=i(t=>t.profile||process.env[CY]||IY,"getProfileName")});var Iwe,xwe,Pv,wY=I(()=>{Iwe=require("node:crypto"),xwe=require("node:path");Hg();Pv=i(t=>{let r=(0,Iwe.createHash)("sha1").update(t).digest("hex");return(0,xwe.join)(Hc(),".aws","sso","cache",`${r}.json`)},"getSSOTokenFilepath")});var wwe,Bx,bwe,bY=I(()=>{wwe=require("node:fs/promises");wY();Bx={},bwe=i(async t=>{if(Bx[t])return Bx[t];let e=Pv(t),r=await(0,wwe.readFile)(e,"utf8");return JSON.parse(r)},"getSSOTokenFromFile")});var zc,Swe=I(()=>{zc="."});var SY,Bwe,Rwe=I(()=>{SY=D(Ca()),Bwe=i(t=>Object.entries(t).filter(([e])=>{let r=e.indexOf(".");return r===-1?!1:Object.values(SY.IniSectionType).includes(e.substring(0,r))}).reduce((e,[r,n])=>{let s=r.indexOf("."),o=r.substring(0,s)===SY.IniSectionType.PROFILE?r.substring(s+1):r;return e[o]=n,e},{...t.default&&{default:t.default}}),"getConfigData")});var Nwe,uyt,vv,BY=I(()=>{Nwe=require("node:path");Hg();uyt="AWS_CONFIG_FILE",vv=i(()=>process.env[uyt]||(0,Nwe.join)(Hc(),".aws","config"),"getConfigFilepath")});var Twe,dyt,Pwe,vwe=I(()=>{Twe=require("node:path");Hg();dyt="AWS_SHARED_CREDENTIALS_FILE",Pwe=i(()=>process.env[dyt]||(0,Twe.join)(Hc(),".aws","credentials"),"getCredentialsFilepath")});var _we,pyt,myt,Rx,RY=I(()=>{_we=D(Ca()),pyt=/^([\w-]+)\s(["'])?([\w-@\+\.%:/]+)\2$/,myt=["__proto__","profile __proto__"],Rx=i(t=>{let e={},r,n;for(let s of t.split(/\r?\n/)){let o=s.split(/(^|\s)[;#]/)[0].trim();if(o[0]==="["&&o[o.length-1]==="]"){r=void 0,n=void 0;let c=o.substring(1,o.length-1),l=pyt.exec(c);if(l){let[,u,,d]=l;Object.values(_we.IniSectionType).includes(u)&&(r=[u,d].join("."))}else r=c;if(myt.includes(c))throw new Error(`Found invalid profile name "${c}"`)}else if(r){let c=o.indexOf("=");if(![0,-1].includes(c)){let[l,u]=[o.substring(0,c).trim(),o.substring(c+1).trim()];if(u==="")n=l;else{n&&s.trimStart()===s&&(n=void 0),e[r]=e[r]||{};let d=n?[n,l].join("."):l;e[r][d]=u}}}}return e},"parseIni")});var Qwe,NY,Nx,uf,Tx=I(()=>{Qwe=require("node:fs/promises"),NY={},Nx={},uf=i((t,e)=>Nx[t]!==void 0?Nx[t]:((!NY[t]||e?.ignoreCache)&&(NY[t]=(0,Qwe.readFile)(t,"utf8")),NY[t]),"readFile")});var TY,Dwe,zg,_v=I(()=>{TY=require("node:path");Rwe();BY();vwe();Hg();RY();Tx();Dwe=i(()=>({}),"swallowError"),zg=i(async(t={})=>{let{filepath:e=Pwe(),configFilepath:r=vv()}=t,n=Hc(),s="~/",o=e;e.startsWith(s)&&(o=(0,TY.join)(n,e.slice(2)));let a=r;r.startsWith(s)&&(a=(0,TY.join)(n,r.slice(2)));let c=await Promise.all([uf(a,{ignoreCache:t.ignoreCache}).then(Rx).then(Bwe).catch(Dwe),uf(o,{ignoreCache:t.ignoreCache}).then(Rx).catch(Dwe)]);return{configFile:c[0],credentialsFile:c[1]}},"loadSharedConfigFiles")});var kwe,Lwe,Owe=I(()=>{kwe=D(Ca()),Lwe=i(t=>Object.entries(t).filter(([e])=>e.startsWith(kwe.IniSectionType.SSO_SESSION+".")).reduce((e,[r,n])=>({...e,[r.substring(r.indexOf(".")+1)]:n}),{}),"getSsoSessionData")});var fyt,Mwe,Fwe=I(()=>{BY();Owe();RY();Tx();fyt=i(()=>({}),"swallowError"),Mwe=i(async(t={})=>uf(t.configFilepath??vv()).then(Rx).then(Lwe).catch(fyt),"loadSsoSessionData")});var Uwe,qwe=I(()=>{Uwe=i((...t)=>{let e={};for(let r of t)for(let[n,s]of Object.entries(r))e[n]!==void 0?Object.assign(e[n],s):e[n]=s;return e},"mergeConfigFiles")});var $we,Gwe=I(()=>{_v();qwe();$we=i(async t=>{let e=await zg(t);return Uwe(e.configFile,e.credentialsFile)},"parseKnownFiles")});var Hwe,zwe=I(()=>{bY();Tx();Hwe={getFileRecord(){return Nx},interceptFile(t,e){Nx[t]=Promise.resolve(e)},getTokenRecord(){return Bx},interceptToken(t,e){Bx[t]=e}}});function Qv(t){try{let e=new Set(Array.from(t.match(/([A-Z_]){3,}/g)??[]));return e.delete("CONFIG"),e.delete("CONFIG_PREFIX_SEPARATOR"),e.delete("ENV"),[...e].join(", ")}catch{return t}}var PY=I(()=>{i(Qv,"getSelectorName")});var Vwe,Ywe=I(()=>{xv();PY();Vwe=i((t,e)=>async()=>{try{let r=t(process.env,e);if(r===void 0)throw new Error;return r}catch(r){throw new Kd(r.message||`Not found in ENV: ${Qv(t.toString())}`,{logger:e?.logger})}},"fromEnv")});var Wwe,jwe=I(()=>{xv();xY();_v();PY();Wwe=i((t,{preferredFile:e="config",...r}={})=>async()=>{let n=Tv(r),{configFile:s,credentialsFile:o}=await zg(r),a=o[n]||{},c=s[n]||{},l=e==="config"?{...a,...c}:{...c,...a};try{let d=t(l,e==="config"?s:o);if(d===void 0)throw new Error;return d}catch(u){throw new Kd(u.message||`Not found in config files w/ profile [${n}]: ${Qv(t.toString())}`,{logger:r.logger})}},"fromSharedConfigFiles")});var Ayt,Dv,vY=I(()=>{yY();Ayt=i(t=>typeof t=="function","isFunction"),Dv=i(t=>Ayt(t)?async()=>await t():Sv(t),"fromStatic")});var nt,_Y=I(()=>{gY();Bv();Ywe();jwe();vY();nt=i(({environmentVariableSelector:t,configFileSelector:e,default:r},n={})=>{let{signingName:s,logger:o}=n;return Gg(bv(Vwe(t,{signingName:s,logger:o}),Wwe(e,n),Dv(r)))},"loadConfig")});var kv,Lv,Jwe,Vc,Kwe,Xwe=I(()=>{Rv();Nv();kv="AWS_USE_DUALSTACK_ENDPOINT",Lv="use_dualstack_endpoint",Jwe=!1,Vc={environmentVariableSelector:i(t=>io(t,kv,ts.ENV),"environmentVariableSelector"),configFileSelector:i(t=>io(t,Lv,ts.CONFIG),"configFileSelector"),default:!1},Kwe={environmentVariableSelector:i(t=>io(t,kv,ts.ENV),"environmentVariableSelector"),configFileSelector:i(t=>io(t,Lv,ts.CONFIG),"configFileSelector"),default:void 0}});var Ov,Mv,Zwe,Yc,e0e,t0e=I(()=>{Rv();Nv();Ov="AWS_USE_FIPS_ENDPOINT",Mv="use_fips_endpoint",Zwe=!1,Yc={environmentVariableSelector:i(t=>io(t,Ov,ts.ENV),"environmentVariableSelector"),configFileSelector:i(t=>io(t,Mv,ts.CONFIG),"configFileSelector"),default:!1},e0e={environmentVariableSelector:i(t=>io(t,Ov,ts.ENV),"environmentVariableSelector"),configFileSelector:i(t=>io(t,Mv,ts.CONFIG),"configFileSelector"),default:void 0}});var r0e,n0e=I(()=>{Ce();r0e=i(t=>{let{tls:e,endpoint:r,urlParser:n,useDualstackEndpoint:s}=t;return Object.assign(t,{tls:e??!0,endpoint:Ut(typeof r=="string"?n(r):r),isCustomEndpoint:!0,useDualstackEndpoint:Ut(s??!1)})},"resolveCustomEndpointsConfig")});var s0e,o0e=I(()=>{s0e=i(async t=>{let{tls:e=!0}=t,r=await t.region();if(!new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/).test(r))throw new Error("Invalid region in client config");let s=await t.useDualstackEndpoint(),o=await t.useFipsEndpoint(),{hostname:a}=await t.regionInfoProvider(r,{useDualstackEndpoint:s,useFipsEndpoint:o})??{};if(!a)throw new Error("Cannot resolve hostname from client config");return t.urlParser(`${e?"https:":"http:"}//${a}`)},"getEndpointFromRegion")});var i0e,a0e=I(()=>{Ce();o0e();i0e=i(t=>{let e=Ut(t.useDualstackEndpoint??!1),{endpoint:r,useFipsEndpoint:n,urlParser:s,tls:o}=t;return Object.assign(t,{tls:o??!0,endpoint:r?Ut(typeof r=="string"?s(r):r):()=>s0e({...t,useDualstackEndpoint:e,useFipsEndpoint:n}),isCustomEndpoint:!!r,useDualstackEndpoint:e})},"resolveEndpointsConfig")});var Vg,Yg,Dn,Ps,QY=I(()=>{Vg="AWS_REGION",Yg="region",Dn={environmentVariableSelector:i(t=>t[Vg],"environmentVariableSelector"),configFileSelector:i(t=>t[Yg],"configFileSelector"),default:i(()=>{throw new Error("Region is missing")},"default")},Ps={preferredFile:"credentials"}});var c0e,l0e,u0e=I(()=>{xt();c0e=new Set,l0e=i((t,e=yu)=>{if(!c0e.has(t)&&!e(t))if(t==="*")console.warn('@smithy/config-resolver WARN - Please use the caller region instead of "*". See "sigv4a" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.');else throw new Error(`Region not accepted: region="${t}" is not a valid hostname component.`);else c0e.add(t)},"checkRegion")});var Fv,DY=I(()=>{Fv=i(t=>typeof t=="string"&&(t.startsWith("fips-")||t.endsWith("-fips")),"isFipsRegion")});var d0e,p0e=I(()=>{DY();d0e=i(t=>Fv(t)?["fips-aws-global","aws-fips"].includes(t)?"us-east-1":t.replace(/fips-(dkr-|prod-)?|-fips/,""):t,"getRealRegion")});var Yo,m0e=I(()=>{u0e();p0e();DY();Yo=i(t=>{let{region:e,useFipsEndpoint:r}=t;if(!e)throw new Error("Region is missing");return Object.assign(t,{region:i(async()=>{let n=typeof e=="function"?await e():e,s=d0e(n);return l0e(s),s},"region"),useFipsEndpoint:i(async()=>{let n=typeof e=="string"?e:await e();return Fv(n)?!0:typeof r!="function"?Promise.resolve(!!r):r()},"useFipsEndpoint")})},"resolveRegionConfig")});var kY,f0e=I(()=>{kY=i((t=[],{useFipsEndpoint:e,useDualstackEndpoint:r})=>t.find(({tags:n})=>e===n.includes("fips")&&r===n.includes("dualstack"))?.hostname,"getHostnameFromVariants")});var A0e,h0e=I(()=>{A0e=i((t,{regionHostname:e,partitionHostname:r})=>e||(r?r.replace("{region}",t):void 0),"getResolvedHostname")});var g0e,y0e=I(()=>{g0e=i((t,{partitionHash:e})=>Object.keys(e||{}).find(r=>e[r].regions.includes(t))??"aws","getResolvedPartition")});var E0e,C0e=I(()=>{E0e=i((t,{signingRegion:e,regionRegex:r,useFipsEndpoint:n})=>{if(e)return e;if(n){let s=r.replace("\\\\","\\").replace(/^\^/g,"\\.").replace(/\$$/g,"\\."),o=t.match(s);if(o)return o[0].slice(1,-1)}},"getResolvedSigningRegion")});var I0e,x0e=I(()=>{f0e();h0e();y0e();C0e();I0e=i((t,{useFipsEndpoint:e=!1,useDualstackEndpoint:r=!1,signingService:n,regionHash:s,partitionHash:o})=>{let a=g0e(t,{partitionHash:o}),c=t in s?t:o[a]?.endpoint??t,l={useFipsEndpoint:e,useDualstackEndpoint:r},u=kY(s[c]?.variants,l),d=kY(o[a]?.variants,l),p=A0e(c,{regionHostname:u,partitionHostname:d});if(p===void 0)throw new Error(`Endpoint resolution failed for: ${{resolvedRegion:c,useFipsEndpoint:e,useDualstackEndpoint:r}}`);let m=E0e(p,{signingRegion:s[c]?.signingRegion,regionRegex:o[a].regionRegex,useFipsEndpoint:e});return{partition:a,signingService:n,hostname:p,...m&&{signingRegion:m},...s[c]?.signingService&&{signingService:s[c].signingService}}},"getRegionInfo")});var w0e,LY,OY,b0e,S0e,B0e,R0e=I(()=>{w0e="AWS_EXECUTION_ENV",LY="AWS_REGION",OY="AWS_DEFAULT_REGION",b0e="AWS_EC2_METADATA_DISABLED",S0e=["in-region","cross-region","mobile","standard","legacy"],B0e="/latest/meta-data/placement/region"});var hyt,gyt,N0e,T0e=I(()=>{hyt="AWS_DEFAULTS_MODE",gyt="defaults_mode",N0e={environmentVariableSelector:i(t=>t[hyt],"environmentVariableSelector"),configFileSelector:i(t=>t[gyt],"configFileSelector"),default:"legacy"}});var Wc,yyt,Eyt,Cyt,Iyt,P0e=I(()=>{QY();_Y();Bv();R0e();T0e();Wc=i(({region:t=nt(Dn),defaultsMode:e=nt(N0e)}={})=>Gg(async()=>{let r=typeof e=="function"?await e():e;switch(r?.toLowerCase()){case"auto":return yyt(t);case"in-region":case"cross-region":case"mobile":case"standard":case"legacy":return Promise.resolve(r?.toLocaleLowerCase());case void 0:return Promise.resolve("legacy");default:throw new Error(`Invalid parameter for "defaultsMode", expect ${S0e.join(", ")}, got ${r}`)}}),"resolveDefaultsModeConfig"),yyt=i(async t=>{if(t){let e=typeof t=="function"?await t():t,r=await Eyt();return r?e===r?"in-region":"cross-region":"standard"}return"standard"},"resolveNodeDefaultsModeAuto"),Eyt=i(async()=>{if(process.env[w0e]&&(process.env[LY]||process.env[OY]))return process.env[LY]??process.env[OY];if(!process.env[b0e])try{let t=await Cyt();return(await Iyt({hostname:t.hostname,path:B0e})).toString()}catch{}},"inferPhysicalRegion"),Cyt=i(async()=>{let t=process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT;if(t){let r=new URL(t);return{hostname:r.hostname,path:r.pathname}}return process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE==="IPv6"?{hostname:"fd00:ec2::254",path:"/"}:{hostname:"169.254.169.254",path:"/"}},"getImdsEndpoint"),Iyt=i(async({hostname:t,path:e})=>{let{request:r}=await import("node:http");return new Promise((n,s)=>{let o=r({method:"GET",hostname:t.replace(/^\[(.+)]$/,"$1"),path:e,timeout:1e3,signal:AbortSignal.timeout(1e3)});o.on("error",a=>{s(a),o.destroy()}),o.on("timeout",()=>{s(new Error("TimeoutError from instance metadata service")),o.destroy()}),o.on("response",a=>{let{statusCode:c=400}=a;if(c<200||300<=c){s(Object.assign(new Error("Error response received from instance metadata service"),{statusCode:c})),o.destroy();return}let l=[];a.on("data",u=>l.push(u)),a.on("end",()=>{n(Buffer.concat(l)),o.destroy()})}),o.end()})},"imdsHttpGet")});var kn={};en(kn,{CONFIG_PREFIX_SEPARATOR:()=>zc,CONFIG_USE_DUALSTACK_ENDPOINT:()=>Lv,CONFIG_USE_FIPS_ENDPOINT:()=>Mv,CredentialsProviderError:()=>Kd,DEFAULT_PROFILE:()=>IY,DEFAULT_USE_DUALSTACK_ENDPOINT:()=>Jwe,DEFAULT_USE_FIPS_ENDPOINT:()=>Zwe,ENV_PROFILE:()=>CY,ENV_USE_DUALSTACK_ENDPOINT:()=>kv,ENV_USE_FIPS_ENDPOINT:()=>Ov,NODE_REGION_CONFIG_FILE_OPTIONS:()=>Ps,NODE_REGION_CONFIG_OPTIONS:()=>Dn,NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS:()=>Vc,NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS:()=>Yc,ProviderError:()=>Vo,REGION_ENV_NAME:()=>Vg,REGION_INI_NAME:()=>Yg,SelectorType:()=>ts,TokenProviderError:()=>wv,booleanSelector:()=>io,chain:()=>bv,externalDataInterceptor:()=>Hwe,fromStatic:()=>Dv,fromValue:()=>Sv,getHomeDir:()=>Hc,getProfileName:()=>Tv,getRegionInfo:()=>I0e,getSSOTokenFilepath:()=>Pv,getSSOTokenFromFile:()=>bwe,loadConfig:()=>nt,loadSharedConfigFiles:()=>zg,loadSsoSessionData:()=>Mwe,memoize:()=>Gg,nodeDualstackConfigSelectors:()=>Kwe,nodeFipsConfigSelectors:()=>e0e,numberSelector:()=>gwe,parseKnownFiles:()=>$we,readFile:()=>uf,resolveCustomEndpointsConfig:()=>r0e,resolveDefaultsModeConfig:()=>Wc,resolveEndpointsConfig:()=>i0e,resolveRegionConfig:()=>Yo});var Tt=I(()=>{Sx();xv();hwe();gY();yY();Bv();Rv();ywe();Nv();Hg();xY();wY();bY();Swe();_v();Fwe();Gwe();zwe();Tx();_Y();vY();Xwe();t0e();n0e();a0e();QY();m0e();x0e();P0e()});var v0e,_0e,Q0e,D0e=I(()=>{v0e="AWS_ENDPOINT_URL",_0e="endpoint_url",Q0e=i(t=>({environmentVariableSelector:i(e=>{let r=t.split(" ").map(o=>o.toUpperCase()),n=e[[v0e,...r].join("_")];if(n)return n;let s=e[v0e];if(s)return s},"environmentVariableSelector"),configFileSelector:i((e,r)=>{if(r&&e.services){let s=r[["services",e.services].join(".")];if(s){let o=t.split(" ").map(c=>c.toLowerCase()),a=s[[o.join("_"),_0e].join(".")];if(a)return a}}let n=e[_0e];if(n)return n},"configFileSelector"),default:void 0}),"getEndpointUrlConfig")});var Px,k0e=I(()=>{Tt();D0e();Px=i(async t=>nt(Q0e(t??""))(),"getEndpointFromConfig")});var L0e,xyt,wyt,byt,Syt,Byt,O0e=I(()=>{L0e=i(async t=>{let e=t?.Bucket||"";if(typeof t.Bucket=="string"&&(t.Bucket=e.replace(/#/g,encodeURIComponent("#")).replace(/\?/g,encodeURIComponent("?"))),Byt(e)){if(t.ForcePathStyle===!0)throw new Error("Path-style addressing cannot be used with ARN buckets")}else(!Syt(e)||e.indexOf(".")!==-1&&!String(t.Endpoint).startsWith("http:")||e.toLowerCase()!==e||e.length<3)&&(t.ForcePathStyle=!0);return t.DisableMultiRegionAccessPoints&&(t.disableMultiRegionAccessPoints=!0,t.DisableMRAP=!0),t},"resolveParamsForS3"),xyt=/^[a-z0-9][a-z0-9\.\-]{1,61}[a-z0-9]$/,wyt=/(\d+\.){3}\d+/,byt=/\.\./,Syt=i(t=>xyt.test(t)&&!wyt.test(t)&&!byt.test(t),"isDnsCompatibleBucketName"),Byt=i(t=>{let[e,r,n,,,s]=t.split(":"),o=e==="arn"&&t.split(":").length>=6,a=!!(o&&r&&n&&s);if(o&&!a)throw new Error(`Invalid ARN: ${t} was an invalid ARN.`);return a},"isArnBucketName")});var M0e=I(()=>{O0e()});var F0e,U0e=I(()=>{F0e=i((t,e,r,n=!1)=>{let s=i(async()=>{let o;return n?o=r.clientContextParams?.[t]??r[t]??r[e]:o=r[t]??r[e],typeof o=="function"?o():o},"configProvider");return t==="credentialScope"||e==="CredentialScope"?async()=>{let o=typeof r.credentials=="function"?await r.credentials():r.credentials;return o?.credentialScope??o?.CredentialScope}:t==="accountId"||e==="AccountId"?async()=>{let o=typeof r.credentials=="function"?await r.credentials():r.credentials;return o?.accountId??o?.AccountId}:t==="endpoint"||e==="endpoint"?async()=>{if(r.isCustomEndpoint===!1)return;let o=await s();if(o&&typeof o=="object"){if("url"in o)return o.url.href;if("hostname"in o){let{protocol:a,hostname:c,port:l,path:u}=o;return`${a}//${c}${l?":"+l:""}${u}`}}return o}:s},"createConfigValueProvider")});var ba,MY=I(()=>{Qe();ba=i(t=>{if(typeof t=="object"){if("url"in t){let e=rs(t.url);if(t.headers){e.headers={};for(let r in t.headers)e.headers[r.toLowerCase()]=t.headers[r].join(", ")}return e}return t}return rs(t)},"toEndpointV1")});var Uv=I(()=>{MY()});function qv(t){return async(e,r,n,s)=>{if(!n.isCustomEndpoint){let c;n.serviceConfiguredEndpoint?c=await n.serviceConfiguredEndpoint():c=await t(n.serviceId),c&&(n.endpoint=()=>Promise.resolve(ba(c)),n.isCustomEndpoint=!0)}let o=await vx(e,r,n);if(typeof n.endpointProvider!="function")throw new Error("config.endpointProvider is not set.");let a=n.endpointProvider(o,s);if(n.isCustomEndpoint&&n.endpoint){let c=await n.endpoint();if(c?.headers){a.headers??={};for(let[l,u]of Object.entries(c.headers))a.headers[l]=Array.isArray(u)?u:[u]}}return a}}var vx,$v=I(()=>{M0e();U0e();Uv();i(qv,"bindGetEndpointFromInstructions");vx=i(async(t,e,r)=>{let n={},s=e?.getEndpointParameterInstructions?.()||{};for(let[o,a]of Object.entries(s))switch(a.type){case"staticContextParams":n[o]=a.value;break;case"contextParams":n[o]=t[a.name];break;case"clientContextParams":case"builtInParams":n[o]=await F0e(a.name,o,r,a.type!=="builtInParams")();break;case"operationContextParams":n[o]=a.get(t);break;default:throw new Error("Unrecognized endpoint parameter instruction: "+JSON.stringify(a))}return Object.keys(s).length===0&&Object.assign(n,r),String(r.serviceId).toLowerCase()==="s3"&&await L0e(n),n},"resolveParams")});function Ryt(t,e,r){t.__smithy_context?t.__smithy_context.features||(t.__smithy_context.features={}):t.__smithy_context={features:{}},t.__smithy_context.features[e]=r}function Gv(t){let e=qv(t);return({config:r,instructions:n})=>(s,o)=>async a=>{r.isCustomEndpoint&&Ryt(o,"ENDPOINT_OVERRIDE","N");let c=await e(a.input,{getEndpointParameterInstructions(){return n}},{...r},o);o.endpointV2=c,o.authSchemes=c.properties?.authSchemes;let l=o.authSchemes?.[0];if(l){o.signing_region=l.signingRegion,o.signing_service=l.signingName;let d=fr(o)?.selectedHttpAuthScheme?.httpAuthOption;d&&(d.signingProperties=Object.assign(d.signingProperties||{},{signing_region:l.signingRegion,signingRegion:l.signingRegion,signing_service:l.signingName,signingName:l.signingName,signingRegionSet:l.signingRegionSet},l.properties))}return s({...a})}}var FY=I(()=>{Ce();$v();i(Ryt,"setFeature");i(Gv,"bindEndpointMiddleware")});function q0e(t){let e=Gv(t);return(r,n)=>({applyToStack:i(s=>{s.addRelativeTo(e({config:r,instructions:n}),UY)},"applyToStack")})}var Nyt,UY,qY=I(()=>{FY();Nyt={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0},UY={step:"serialize",tags:["ENDPOINT_PARAMETERS","ENDPOINT_V2","ENDPOINT"],name:"endpointV2Middleware",override:!0,relation:"before",toMiddleware:Nyt.name};i(q0e,"bindGetEndpointPlugin")});function $0e(t){return e=>{let r=e.tls??!0,{endpoint:n,useDualstackEndpoint:s,useFipsEndpoint:o}=e,a=n!=null?async()=>ba(await Ut(n)()):void 0,l=Object.assign(e,{endpoint:a,tls:r,isCustomEndpoint:!!n,useDualstackEndpoint:Ut(s??!1),useFipsEndpoint:Ut(o??!1)}),u;return l.serviceConfiguredEndpoint=async()=>(e.serviceId&&!u&&(u=t(e.serviceId)),u),l}}var G0e=I(()=>{Ce();Uv();i($0e,"bindResolveEndpointConfig")});var ki,H0e=I(()=>{ki=class t{static{i(this,"BinaryDecisionDiagram")}nodes;root;conditions;results;constructor(e,r,n,s){this.nodes=e,this.root=r,this.conditions=n,this.results=s}static from(e,r,n,s){return new t(e,r,n,s)}}});var Li,z0e=I(()=>{Li=class{static{i(this,"EndpointCache")}capacity;data=new Map;parameters=[];constructor({size:e,params:r}){this.capacity=e??50,r&&(this.parameters=r)}get(e,r){let n=this.hash(e);if(n===!1)return r();if(!this.data.has(n)){if(this.data.size>this.capacity+10){let s=this.data.keys(),o=0;for(;;){let{value:a,done:c}=s.next();if(this.data.delete(a),c||++o>10)break}}this.data.set(n,r())}return this.data.get(n)}size(){return this.data.size}hash(e){let r="",{parameters:n}=this;if(n.length===0)return!1;for(let s of n){let o=String(e[s]??"");if(o.includes("|;"))return!1;r+=o+"|;"}return r}}});var St,V0e=I(()=>{St=class extends Error{static{i(this,"EndpointError")}constructor(e){super(e),this.name="EndpointError"}}});var Y0e=I(()=>{});var W0e=I(()=>{});var j0e=I(()=>{});var J0e=I(()=>{});var K0e=I(()=>{});var X0e=I(()=>{});var Wo=I(()=>{V0e();Y0e();W0e();j0e();J0e();K0e();X0e()});var Eu,Z0e=I(()=>{Eu="endpoints"});function Oi(t){return typeof t!="object"||t==null?t:"ref"in t?`$${Oi(t.ref)}`:"fn"in t?`${t.fn}(${(t.argv||[]).map(Oi).join(", ")})`:JSON.stringify(t,null,2)}var ebe=I(()=>{i(Oi,"toDebugString")});var _x=I(()=>{Z0e();ebe()});var ao,Hv=I(()=>{ao={}});var tbe,rbe=I(()=>{tbe=i((t,e)=>t===e,"booleanEquals")});function nbe(...t){for(let e of t)if(e!=null)return e}var sbe=I(()=>{i(nbe,"coalesce")});var obe,ibe=I(()=>{Wo();obe=i(t=>{let e=t.split("."),r=[];for(let n of e){let s=n.indexOf("[");if(s!==-1){if(n.indexOf("]")!==n.length-1)throw new St(`Path: '${t}' does not end with ']'`);let o=n.slice(s+1,-1);if(Number.isNaN(parseInt(o)))throw new St(`Invalid array index: '${o}' in path: '${t}'`);s!==0&&r.push(n.slice(0,s)),r.push(o)}else r.push(n)}return r},"getAttrPathList")});var zv,abe=I(()=>{Wo();ibe();zv=i((t,e)=>obe(e).reduce((r,n)=>{if(typeof r!="object")throw new St(`Index '${n}' in '${e}' not found in '${JSON.stringify(t)}'`);if(Array.isArray(r)){let s=parseInt(n);return r[s<0?r.length+s:s]}return r[n]},t),"getAttr")});var cbe,lbe=I(()=>{cbe=i(t=>t!=null,"isSet")});var Tyt,yu,$Y=I(()=>{Tyt=new RegExp("^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$"),yu=i((t,e=!1)=>{if(!e)return Tyt.test(t);let r=t.split(".");for(let n of r)if(!yu(n))return!1;return!0},"isValidHostLabel")});function ube(t,e,r){return t?e:r}var dbe=I(()=>{i(ube,"ite")});var pbe,mbe=I(()=>{pbe=i(t=>!t,"not")});var Pyt,Cu,GY=I(()=>{Pyt=new RegExp("^(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)(?:\\.(?:25[0-5]|2[0-4]\\d|1\\d\\d|[1-9]\\d|\\d)){3}$"),Cu=i(t=>Pyt.test(t)||t.startsWith("[")&&t.endsWith("]"),"isIpAddress")});var Vv,HY,fbe,Abe=I(()=>{Vv=D(Ca());GY();HY={[Vv.EndpointURLScheme.HTTP]:80,[Vv.EndpointURLScheme.HTTPS]:443},fbe=i(t=>{let e=(()=>{try{if(t instanceof URL)return t;if(typeof t=="object"&&"hostname"in t){let{hostname:m,port:f,protocol:g="",path:E="",query:x={}}=t,w=new URL(`${g}//${m}${f?`:${f}`:""}${E}`);return w.search=Object.entries(x).map(([S,P])=>`${S}=${P}`).join("&"),w}return new URL(t)}catch{return null}})();if(!e)return console.error(`Unable to parse ${JSON.stringify(t)} as a whatwg URL.`),null;let r=e.href,{host:n,hostname:s,pathname:o,protocol:a,search:c}=e;if(c)return null;let l=a.slice(0,-1);if(!Object.values(Vv.EndpointURLScheme).includes(l))return null;let u=Cu(s),d=r.includes(`${n}:${HY[l]}`)||typeof t=="string"&&t.includes(`${n}:${HY[l]}`),p=`${n}${d?`:${HY[l]}`:""}`;return{scheme:l,authority:p,path:o,normalizedPath:o.endsWith("/")?o:`${o}/`,isIp:u}},"parseURL")});function hbe(t,e,r){if(r===1)return[t];if(t==="")return[""];let n=t.split(e);return r===0?n:n.slice(0,r-1).concat(n.slice(1).join(e))}var gbe=I(()=>{i(hbe,"split")});var ybe,Ebe=I(()=>{ybe=i((t,e)=>t===e,"stringEquals")});var Cbe,Ibe=I(()=>{Cbe=i((t,e,r,n)=>t==null||e>=r||t.length{xbe=i(t=>encodeURIComponent(t).replace(/[!*'()]/g,e=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`),"uriEncode")});var zY=I(()=>{rbe();sbe();abe();lbe();$Y();dbe();mbe();Abe();gbe();Ebe();Ibe();wbe()});var bbe,Sbe=I(()=>{zY();bbe={booleanEquals:tbe,coalesce:nbe,getAttr:zv,isSet:cbe,isValidHostLabel:yu,ite:ube,not:pbe,parseURL:fbe,split:hbe,stringEquals:ybe,substring:Cbe,uriEncode:xbe}});var Yv,VY=I(()=>{zY();Yv=i((t,e)=>{let r=[],{referenceRecord:n,endpointParams:s}=e,o=0;for(;o{Bbe=i(({ref:t},e)=>e.referenceRecord[t]??e.endpointParams[t],"getReferenceValue")});var Iu,Wv,Nbe,Wg=I(()=>{Wo();Hv();Sbe();VY();Rbe();Iu=i((t,e,r)=>{if(typeof t=="string")return Yv(t,r);if(t.fn)return Nbe.callFunction(t,r);if(t.ref)return Bbe(t,r);throw new St(`'${e}': ${String(t)} is not a string, function or reference.`)},"evaluateExpression"),Wv=i(({fn:t,argv:e},r)=>{let n=Array(e.length);for(let a=0;a{Wg()});var jv,YY=I(()=>{_x();Wo();Tbe();jv=i((t,e)=>{let{assign:r}=t;if(r&&r in e.referenceRecord)throw new St(`'${r}' is already defined in Reference Record.`);let n=Wv(t,e);e.logger?.debug?.(`${Eu} evaluateCondition: ${Oi(t)} = ${Oi(n)}`);let s=n===""?!0:!!n;return r!=null?{result:s,toAssign:{name:r,value:n}}:{result:s}},"evaluateCondition")});var Jv,WY=I(()=>{Wo();Wg();Jv=i((t,e)=>Object.entries(t??{}).reduce((r,[n,s])=>(r[n]=s.map(o=>{let a=Iu(o,"Header value entry",e);if(typeof a!="string")throw new St(`Header '${n}' value '${a}' is not a string`);return a}),r),{}),"getEndpointHeaders")});var Qx,Pbe,vbe,jY=I(()=>{Wo();VY();Qx=i((t,e)=>Object.entries(t).reduce((r,[n,s])=>(r[n]=vbe.getEndpointProperty(s,e),r),{}),"getEndpointProperties"),Pbe=i((t,e)=>{if(Array.isArray(t))return t.map(r=>Pbe(r,e));switch(typeof t){case"string":return Yv(t,e);case"object":if(t===null)throw new St(`Unexpected endpoint property: ${t}`);return vbe.getEndpointProperties(t,e);case"boolean":return t;default:throw new St(`Unexpected endpoint property type: ${typeof t}`)}},"getEndpointProperty"),vbe={getEndpointProperty:Pbe,getEndpointProperties:Qx}});var Kv,JY=I(()=>{Wo();Wg();Kv=i((t,e)=>{let r=Iu(t,"Endpoint URL",e);if(typeof r=="string")try{return new URL(r)}catch(n){throw console.error(`Failed to construct URL with ${r}`,n),n}throw new St(`Endpoint URL must be a string, got ${typeof r}`)},"getEndpointUrl")});var KY,jc,_be=I(()=>{Wo();YY();Wg();WY();jY();JY();KY=1e8,jc=i((t,e)=>{let{nodes:r,root:n,results:s,conditions:o}=t,a=n,c={},l={referenceRecord:c,endpointParams:e.endpointParams,logger:e.logger};for(;a!==1&&a!==-1&&a=0===x.result?p:m}if(a>=KY){let u=s[a-KY];if(u[0]===-1){let[,f]=u;throw new St(Iu(f,"Error",l))}let[d,p,m]=u;return{url:Kv(d,l),properties:Qx(p,l),headers:Jv(m??{},l)}}throw new St("No matching endpoint.")},"decideEndpoint")});var jg,Xv=I(()=>{_x();YY();jg=i((t=[],e)=>{let r={},n={...e,referenceRecord:{...e.referenceRecord}},s=!1;for(let o of t){let{result:a,toAssign:c}=jv(o,n);if(!a)return{result:a};c&&(s=!0,r[c.name]=c.value,n.referenceRecord[c.name]=c.value,e.logger?.debug?.(`${Eu} assign: ${c.name} := ${Oi(c.value)}`))}return s?{result:!0,referenceRecord:r}:{result:!0}},"evaluateConditions")});var Qbe,Dbe=I(()=>{_x();Xv();WY();jY();JY();Qbe=i((t,e)=>{let{conditions:r,endpoint:n}=t,{result:s,referenceRecord:o}=jg(r,e);if(!s)return;let a=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e,{url:c,properties:l,headers:u}=n;e.logger?.debug?.(`${Eu} Resolving endpoint from template: ${Oi(n)}`);let d={url:Kv(c,a)};return u!=null&&(d.headers=Jv(u,a)),l!=null&&(d.properties=Qx(l,a)),d},"evaluateEndpointRule")});var kbe,Lbe=I(()=>{Wo();Xv();Wg();kbe=i((t,e)=>{let{conditions:r,error:n}=t,{result:s,referenceRecord:o}=jg(r,e);if(!s)return;let a=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e;throw new St(Iu(n,"Error",a))},"evaluateErrorRule")});var XY,vyt,Obe,Mbe=I(()=>{Wo();Xv();Dbe();Lbe();XY=i((t,e)=>{for(let r of t)if(r.type==="endpoint"){let n=Qbe(r,e);if(n)return n}else if(r.type==="error")kbe(r,e);else if(r.type==="tree"){let n=Obe.evaluateTreeRule(r,e);if(n)return n}else throw new St(`Unknown endpoint rule: ${r}`);throw new St("Rules evaluation failed")},"evaluateRules"),vyt=i((t,e)=>{let{conditions:r,rules:n}=t,{result:s,referenceRecord:o}=jg(r,e);if(!s)return;let a=o?{...e,referenceRecord:{...e.referenceRecord,...o}}:e;return Obe.evaluateRules(n,a)},"evaluateTreeRule"),Obe={evaluateRules:XY,evaluateTreeRule:vyt}});var Fbe=I(()=>{Hv();Mbe()});var Dx,Ube=I(()=>{_x();Wo();Fbe();Dx=i((t,e)=>{let{endpointParams:r,logger:n}=e,{parameters:s,rules:o}=t;e.logger?.debug?.(`${Eu} Initial EndpointParams: ${Oi(r)}`);for(let c in s){let l=s[c],u=r[c];if(u==null&&l.default!=null){r[c]=l.default;continue}if(l.required&&u==null)throw new St(`Missing required parameter: '${c}'`)}let a=XY(o,{endpointParams:r,logger:n,referenceRecord:{}});return e.logger?.debug?.(`${Eu} Resolved endpoint: ${Oi(a)}`),a},"resolveEndpoint")});var qbe,$be=I(()=>{qbe=i(t=>{let{endpoint:e}=t;return e===void 0&&(t.endpoint=async()=>{throw new Error("@smithy/middleware-endpoint: (default endpointRuleSet) endpoint is not set - you must configure an endpoint.")}),t},"resolveEndpointRequiredConfig")});var df={};en(df,{BinaryDecisionDiagram:()=>ki,EndpointCache:()=>Li,EndpointError:()=>St,customEndpointFunctions:()=>ao,decideEndpoint:()=>jc,endpointMiddleware:()=>Qyt,endpointMiddlewareOptions:()=>UY,getEndpointFromInstructions:()=>_yt,getEndpointPlugin:()=>Sa,isIpAddress:()=>Cu,isValidHostLabel:()=>yu,middlewareEndpointToEndpointV1:()=>ba,resolveEndpoint:()=>Dx,resolveEndpointConfig:()=>xu,resolveEndpointRequiredConfig:()=>qbe,resolveParams:()=>vx,toEndpointV1:()=>ba});var _yt,xu,Qyt,Sa,xt=I(()=>{k0e();$v();FY();qY();G0e();MY();H0e();z0e();_be();GY();$Y();Hv();Ube();Wo();$v();Uv();qY();$be();_yt=qv(Px),xu=$0e(Px),Qyt=Gv(Px),Sa=q0e(Px)});var Zv,ZY=I(()=>{xt();Zv=i((t,e)=>(r,n)=>async s=>{let o=t,a=n.endpointV2?async()=>ba(n.endpointV2):o.endpoint;if(!a)throw new Error("No valid endpoint provider available.");let c=await e(s.input,{...t,endpoint:a});return r({...s,request:c})},"serializerMiddleware")});function Gbe(t,e,r){return{applyToStack:i(n=>{n.add(Iv(t,r),eW),n.add(Zv(t,e),tW)},"applyToStack")}}var eW,tW,Hbe=I(()=>{hY();ZY();eW={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},tW={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};i(Gbe,"getSerdePlugin")});function zbe(t,e){return Buffer.isBuffer(t)?t:typeof t=="string"?Wd(t,e):ArrayBuffer.isView(t)?xa(t.buffer,t.byteOffset,t.byteLength):xa(t)}var e_,Mi,Vbe=I(()=>{e_=require("node:crypto");jd();fY();Mi=class{static{i(this,"Hash")}algorithmIdentifier;secret;hash;constructor(e,r){this.algorithmIdentifier=e,this.secret=r,this.reset()}update(e,r){this.hash.update(Cv(zbe(e,r)))}digest(){return Promise.resolve(this.hash.digest())}reset(){this.hash=this.secret?(0,e_.createHmac)(this.algorithmIdentifier,zbe(this.secret)):(0,e_.createHash)(this.algorithmIdentifier)}};i(zbe,"castSourceData")});var Ybe,Jg,rW=I(()=>{Ybe=require("node:stream");rY();Jg=class extends Ybe.Duplex{static{i(this,"ChecksumStream")}expectedChecksum;checksumSourceLocation;checksum;source;base64Encoder;pendingCallback=null;constructor({expectedChecksum:e,checksum:r,source:n,checksumSourceLocation:s,base64Encoder:o}){if(super(),typeof n.pipe=="function")this.source=n;else throw new Error(`@smithy/util-stream: unsupported source type ${n?.constructor?.name??n} in ChecksumStream.`);this.base64Encoder=o??Ar,this.expectedChecksum=e,this.checksum=r,this.checksumSourceLocation=s,this.source.pipe(this)}_read(e){if(this.pendingCallback){let r=this.pendingCallback;this.pendingCallback=null,r()}}_write(e,r,n){try{if(this.checksum.update(e),!this.push(e)){this.pendingCallback=n;return}}catch(s){return n(s)}return n()}async _final(e){try{let r=await this.checksum.digest(),n=this.base64Encoder(r);if(this.expectedChecksum!==n)return e(new Error(`Checksum mismatch: expected "${this.expectedChecksum}" but received "${n}" in response header "${this.checksumSourceLocation}".`))}catch(r){return e(r)}return this.push(null),e()}}});var Ln,t_,wu=I(()=>{Ln=i(t=>typeof ReadableStream=="function"&&(t?.constructor?.name===ReadableStream.name||t instanceof ReadableStream),"isReadableStream"),t_=i(t=>typeof Blob=="function"&&(t?.constructor?.name===Blob.name||t instanceof Blob),"isBlob")});var Wbe,jbe=I(()=>{Wbe=i(t=>new TextEncoder().encode(t),"fromUtf8")});var Jbe,nW,Kbe,Xd,pf,Xbe,sW=I(()=>{Jbe="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",nW=Object.entries(Jbe).reduce((t,[e,r])=>(t[r]=Number(e),t),{}),Kbe=Jbe.split(""),Xd=6,pf=8,Xbe=63});function r_(t){let e;typeof t=="string"?e=Wbe(t):e=t;let r=typeof e=="object"&&typeof e.length=="number",n=typeof e=="object"&&typeof e.byteOffset=="number"&&typeof e.byteLength=="number";if(!r&&!n)throw new Error("@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.");let s="";for(let o=0;o>d]}s+="==".slice(0,4-l)}return s}var oW=I(()=>{jbe();sW();i(r_,"toBase64")});var Dyt,n_,Zbe=I(()=>{Dyt=typeof ReadableStream=="function"?ReadableStream:function(){},n_=class extends Dyt{static{i(this,"ChecksumStream")}}});var eSe,tSe=I(()=>{oW();wu();Zbe();eSe=i(({expectedChecksum:t,checksum:e,source:r,checksumSourceLocation:n,base64Encoder:s})=>{if(!Ln(r))throw new Error(`@smithy/util-stream: unsupported source type ${r?.constructor?.name??r} in ChecksumStream.`);let o=s??r_;if(typeof TransformStream!="function")throw new Error("@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.");let a=new TransformStream({start(){},async transform(l,u){e.update(l),u.enqueue(l)},async flush(l){let u=await e.digest(),d=o(u);if(t!==d){let p=new Error(`Checksum mismatch: expected "${t}" but received "${d}" in response header "${n}".`);l.error(p)}else l.terminate()}});r.pipeThrough(a);let c=a.readable;return Object.setPrototypeOf(c,n_.prototype),c},"createChecksumStream")});function rSe(t){return typeof ReadableStream=="function"&&Ln(t.source)?eSe(t):new Jg(t)}var nSe=I(()=>{wu();rW();tSe();i(rSe,"createChecksumStream")});var mf,iW=I(()=>{mf=class{static{i(this,"ByteArrayCollector")}allocByteArray;byteLength=0;byteArrays=[];constructor(e){this.allocByteArray=e}push(e){this.byteArrays.push(e),this.byteLength+=e.byteLength}flush(){if(this.byteArrays.length===1){let n=this.byteArrays[0];return this.reset(),n}let e=this.allocByteArray(this.byteLength),r=0;for(let n=0;nnew Uint8Array(u))],c=-1,l=i(async u=>{let{value:d,done:p}=await n.read(),m=d;if(p){if(c!==-1){let f=ff(a,c);bu(f)>0&&u.enqueue(f)}u.close()}else{let f=cW(m,!1);if(c!==f&&(c>=0&&u.enqueue(ff(a,c)),c=f),c===-1){u.enqueue(m);return}let g=bu(m);o+=g;let E=bu(a[c]);if(g>=e&&E===0)u.enqueue(m);else{let x=aW(a,c,m);!s&&o>e*2&&(s=!0,r?.warn(`@smithy/util-stream - stream chunk size ${g} is below threshold of ${e}, automatically buffering.`)),x>=e?u.enqueue(ff(a,c)):await l(u)}}},"pull");return new ReadableStream({pull:l})}function aW(t,e,r){switch(e){case 0:return t[0]+=r,bu(t[0]);case 1:case 2:return t[e].push(r),bu(t[e])}}function ff(t,e){switch(e){case 0:let r=t[0];return t[0]="",r;case 1:case 2:return t[e].flush()}throw new Error(`@smithy/util-stream - invalid index ${e} given to flush()`)}function bu(t){return t?.byteLength??t?.length??0}function cW(t,e=!0){return e&&typeof Buffer<"u"&&t instanceof Buffer?2:t instanceof Uint8Array?1:typeof t=="string"?0:-1}var oSe=I(()=>{iW();i(sSe,"createBufferedReadableStream");i(aW,"merge");i(ff,"flush");i(bu,"sizeOf");i(cW,"modeOf")});function aSe(t,e,r){if(Ln(t))return sSe(t,e,r);let n=new iSe.Readable({read(){}}),s=!1,o=0,a=["",new mf(l=>new Uint8Array(l)),new mf(l=>Buffer.from(new Uint8Array(l)))],c=-1;return t.on("data",l=>{let u=cW(l,!0);if(c!==u&&(c>=0&&n.push(ff(a,c)),c=u),c===-1){n.push(l);return}let d=bu(l);o+=d;let p=bu(a[c]);if(d>=e&&p===0)n.push(l);else{let m=aW(a,c,l);!s&&o>e*2&&(s=!0,r?.warn(`@smithy/util-stream - stream chunk size ${d} is below threshold of ${e}, automatically buffering.`)),m>=e&&n.push(ff(a,c))}}),t.on("end",()=>{if(c!==-1){let l=ff(a,c);bu(l)>0&&n.push(l)}n.push(null)}),n}var iSe,cSe=I(()=>{iSe=require("node:stream");iW();oSe();wu();i(aSe,"createBufferedReadable")});var lSe,uSe=I(()=>{lSe=i((t,e)=>{let{base64Encoder:r,bodyLengthChecker:n,checksumAlgorithmFn:s,checksumLocationName:o,streamHasher:a}=e,c=r!==void 0&&n!==void 0&&s!==void 0&&o!==void 0&&a!==void 0,l=c?a(s,t):void 0,u=t.getReader();return new ReadableStream({async pull(d){let{value:p,done:m}=await u.read();if(m){if(d.enqueue(`0\r +`),c){let f=r(await l);d.enqueue(`${o}:${f}\r +`),d.enqueue(`\r +`)}d.close()}else d.enqueue(`${(n(p)||0).toString(16)}\r +${p}\r +`)}})},"getAwsChunkedEncodingStream")});function pSe(t,e){let r=t,n=t;if(Ln(n))return lSe(n,e);let{base64Encoder:s,bodyLengthChecker:o,checksumAlgorithmFn:a,checksumLocationName:c,streamHasher:l}=e,u=s!==void 0&&a!==void 0&&c!==void 0&&l!==void 0,d=u?l(a,r):void 0,p=new dSe.Readable({read:i(()=>{},"read")});return r.on("data",m=>{let f=o(m)||0;f!==0&&(p.push(`${f.toString(16)}\r +`),p.push(m),p.push(`\r +`))}),r.on("end",async()=>{if(p.push(`0\r +`),u){let m=s(await d);p.push(`${c}:${m}\r +`),p.push(`\r +`)}p.push(null)}),p}var dSe,mSe=I(()=>{dSe=require("node:stream");uSe();wu();i(pSe,"getAwsChunkedEncodingStream")});async function fSe(t,e){let r=0,n=[],s=t.getReader(),o=!1;for(;!o;){let{done:l,value:u}=await s.read();if(u&&(n.push(u),r+=u?.byteLength??0),r>=e)break;o=l}s.releaseLock();let a=new Uint8Array(Math.min(e,r)),c=0;for(let l of n){if(l.byteLength>a.byteLength-c){a.set(l.subarray(0,a.byteLength-c),c);break}else a.set(l,c);c+=l.length}return a}var ASe=I(()=>{i(fSe,"headStream")});var hSe,gSe,lW,ySe=I(()=>{hSe=require("node:stream");ASe();wu();gSe=i((t,e)=>Ln(t)?fSe(t,e):new Promise((r,n)=>{let s=new lW;s.limit=e,t.pipe(s),t.on("error",o=>{s.end(),n(o)}),s.on("error",n),s.on("finish",function(){let o=new Uint8Array(Buffer.concat(this.buffers));r(o)})}),"headStream"),lW=class extends hSe.Writable{static{i(this,"Collector")}buffers=[];limit=1/0;bytesBuffered=0;_write(e,r,n){if(this.buffers.push(e),this.bytesBuffered+=e.byteLength??0,this.bytesBuffered>=this.limit){let s=this.bytesBuffered-this.limit,o=this.buffers[this.buffers.length-1];this.buffers[this.buffers.length-1]=o.subarray(0,o.byteLength-s),this.emit("finish")}n()}}});var ESe,CSe=I(()=>{ESe=i(t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return new TextDecoder("utf-8").decode(t)},"toUtf8")});var ISe,xSe=I(()=>{sW();ISe=i(t=>{let e=t.length/4*3;t.slice(-2)==="=="?e-=2:t.slice(-1)==="="&&e--;let r=new ArrayBuffer(e),n=new DataView(r);for(let s=0;s>=Xd;let c=s/4*3;o>>=a%pf;let l=Math.floor(a/pf);for(let u=0;u>d)}}return new Uint8Array(r)},"fromBase64")});async function kyt(t){let e=await Oyt(t),r=ISe(e);return new Uint8Array(r)}async function Lyt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:c,value:l}=await r.read();l&&(e.push(l),s+=l.length),n=c}let o=new Uint8Array(s),a=0;for(let c of e)o.set(c,a),a+=c.length;return o}function Oyt(t){return new Promise((e,r)=>{let n=new FileReader;n.onloadend=()=>{if(n.readyState!==2)return r(new Error("Reader aborted too early"));let s=n.result??"",o=s.indexOf(","),a=o>-1?o+1:s.length;e(s.substring(a))},n.onabort=()=>r(new Error("Read aborted")),n.onerror=()=>r(n.error),n.readAsDataURL(t)})}var wSe,bSe=I(()=>{xSe();wSe=i(async t=>typeof Blob=="function"&&t instanceof Blob||t.constructor?.name==="Blob"?Blob.prototype.arrayBuffer!==void 0?new Uint8Array(await t.arrayBuffer()):kyt(t):Lyt(t),"streamCollector");i(kyt,"collectBlob");i(Lyt,"collectStream");i(Oyt,"readToBase64")});var SSe,RSe,BSe,NSe=I(()=>{oW();mY();CSe();bSe();wu();SSe="The stream has already been transformed.",RSe=i(t=>{if(!BSe(t)&&!Ln(t)){let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${s}`)}let e=!1,r=i(async()=>{if(e)throw new Error(SSe);return e=!0,await wSe(t)},"transformToByteArray"),n=i(s=>{if(typeof s.stream!="function")throw new Error(`Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled. +If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body`);return s.stream()},"blobToWebStream");return Object.assign(t,{transformToByteArray:r,transformToString:i(async s=>{let o=await r();if(s==="base64")return r_(o);if(s==="hex")return Di(o);if(s===void 0||s==="utf8"||s==="utf-8")return ESe(o);if(typeof TextDecoder=="function")return new TextDecoder(s).decode(o);throw new Error("TextDecoder is not available, please make sure polyfill is provided.")},"transformToString"),transformToWebStream:i(()=>{if(e)throw new Error(SSe);if(e=!0,BSe(t))return n(t);if(Ln(t))return t;throw new Error(`Cannot transform payload to web stream, got ${t}`)},"transformToWebStream")})},"sdkStreamMixin"),BSe=i(t=>typeof Blob=="function"&&t instanceof Blob,"isBlobInstance")});async function Fyt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:c,value:l}=await r.read();l&&(e.push(l),s+=l.length),n=c}let o=new Uint8Array(s),a=0;for(let c of e)o.set(c,a),a+=c.length;return o}var TSe,uW,Myt,PSe,vSe=I(()=>{TSe=require("node:stream"),uW=class extends TSe.Writable{static{i(this,"Collector")}bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}},Myt=i(t=>typeof ReadableStream=="function"&&t instanceof ReadableStream,"isReadableStreamInstance");i(Fyt,"collectReadableStream");PSe=i(t=>Myt(t)?Fyt(t):new Promise((e,r)=>{let n=new uW;t.pipe(n),t.on("error",s=>{n.end(),r(s)}),n.on("error",r),n.on("finish",function(){let s=new Uint8Array(Buffer.concat(this.bufferedBytes));e(s)})}),"streamCollector")});var s_,_Se,o_,QSe=I(()=>{s_=require("node:stream");jd();NSe();vSe();_Se="The stream has already been transformed.",o_=i(t=>{if(!(t instanceof s_.Readable))try{return RSe(t)}catch{let s=t?.__proto__?.constructor?.name||t;throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${s}`)}let e=!1,r=i(async()=>{if(e)throw new Error(_Se);return e=!0,await PSe(t)},"transformToByteArray");return Object.assign(t,{transformToByteArray:r,transformToString:i(async n=>{let s=await r();return n===void 0||Buffer.isEncoding(n)?xa(s.buffer,s.byteOffset,s.byteLength).toString(n):new TextDecoder(n).decode(s)},"transformToString"),transformToWebStream:i(()=>{if(e)throw new Error(_Se);if(t.readableFlowing!==null)throw new Error("The stream has been consumed by other callbacks.");if(typeof s_.Readable.toWeb!="function")throw new Error("Readable.toWeb() is not supported. Please ensure a polyfill is available.");return e=!0,s_.Readable.toWeb(t)},"transformToWebStream")})},"sdkStreamMixin")});async function DSe(t){return typeof t.stream=="function"&&(t=t.stream()),t.tee()}var kSe=I(()=>{i(DSe,"splitStream")});async function LSe(t){if(Ln(t)||t_(t))return DSe(t);let e=new dW.PassThrough,r=new dW.PassThrough;return t.pipe(e),t.pipe(r),[e,r]}var dW,OSe=I(()=>{dW=require("node:stream");kSe();wu();i(LSe,"splitStream")});var Zd={};en(Zd,{ChecksumStream:()=>Jg,Hash:()=>Mi,LazyJsonString:()=>Zn,NumericValue:()=>qt,Uint8ArrayBlobAdapter:()=>Af,_parseEpochTimestamp:()=>lf,_parseRfc3339DateTimeWithOffset:()=>Av,_parseRfc7231DateTime:()=>hv,calculateBodyLength:()=>Gc,copyDocumentWithTransform:()=>Gxe,createBufferedReadable:()=>aSe,createChecksumStream:()=>rSe,dateToUtcString:()=>wa,deserializerMiddleware:()=>Iv,deserializerMiddlewareOption:()=>eW,expectBoolean:()=>Vxe,expectByte:()=>iv,expectFloat32:()=>xx,expectInt:()=>Yxe,expectInt32:()=>sv,expectLong:()=>Lg,expectNonNull:()=>Wxe,expectNumber:()=>kg,expectObject:()=>sY,expectShort:()=>ov,expectString:()=>jxe,expectUnion:()=>cv,fromArrayBuffer:()=>xa,fromBase64:()=>$r,fromHex:()=>Ev,fromString:()=>Wd,fromUtf8:()=>Gr,generateIdempotencyToken:()=>Ba,getAwsChunkedEncodingStream:()=>pSe,getSerdePlugin:()=>Gbe,handleFloat:()=>Kxe,headStream:()=>gSe,isArrayBuffer:()=>tv,isBlob:()=>t_,isReadableStream:()=>Ln,limitedParseDouble:()=>uv,limitedParseFloat:()=>Xxe,limitedParseFloat32:()=>Zxe,logger:()=>Og,nv:()=>yv,parseBoolean:()=>zxe,parseEpochTimestamp:()=>mv,parseRfc3339DateTime:()=>nwe,parseRfc3339DateTimeWithOffset:()=>pv,parseRfc7231DateTime:()=>Ug,quoteHeader:()=>fv,sdkStreamMixin:()=>o_,serializerMiddleware:()=>Zv,serializerMiddlewareOption:()=>tW,splitEvery:()=>gv,splitHeader:()=>qg,splitStream:()=>LSe,strictParseByte:()=>dv,strictParseDouble:()=>wx,strictParseFloat:()=>Jxe,strictParseFloat32:()=>lv,strictParseInt:()=>twe,strictParseInt32:()=>rwe,strictParseLong:()=>oY,strictParseShort:()=>Jd,toBase64:()=>Ar,toHex:()=>Di,toUint8Array:()=>Cv,toUtf8:()=>hr,v4:()=>Kg});var MSe,Af,Uyt,Kg,Ba,st=I(()=>{MSe=require("node:crypto");Oxe();rY();Fxe();rv();Uxe();$xe();Hxe();swe();owe();iY();iwe();lwe();uwe();dwe();mwe();mY();Awe();fY();jd();tY();hY();Hbe();ZY();Vbe();rW();nSe();cSe();mSe();ySe();QSe();OSe();wu();Af=class extends Mxe(hr,Gr,Ar,$r){static{i(this,"Uint8ArrayBlobAdapter")}},Uyt=MSe.getRandomValues,Kg=qxe(Uyt),Ba=Kg});var co,i_=I(()=>{st();co=i(async(t=new Uint8Array,e)=>{if(t instanceof Uint8Array)return Af.mutate(t);if(!t)return Af.mutate(new Uint8Array);let r=e.streamCollector(t);return Af.mutate(await r)},"collectBody")});function Jc(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}var a_=I(()=>{i(Jc,"extendedEncodeURIComponent")});var vs,Xg=I(()=>{vs=class{static{i(this,"SerdeContext")}serdeContext;setSerdeContext(e){this.serdeContext=e}}});function qyt(t){return Object.keys(t).reduce((e,r)=>{let n=t[r];return{...e,[r]:Array.isArray(n)?[...n]:n}},{})}var mt,hf=I(()=>{mt=class t{static{i(this,"HttpRequest")}method;protocol;hostname;port;path;query;headers;username;password;fragment;body;constructor(e){this.method=e.method||"GET",this.hostname=e.hostname||"localhost",this.port=e.port,this.query=e.query||{},this.headers=e.headers||{},this.body=e.body,this.protocol=e.protocol?e.protocol.slice(-1)!==":"?`${e.protocol}:`:e.protocol:"https:",this.path=e.path?e.path.charAt(0)!=="/"?`/${e.path}`:e.path:"/",this.username=e.username,this.password=e.password,this.fragment=e.fragment}static clone(e){let r=new t({...e,headers:{...e.headers}});return r.query&&(r.query=qyt(r.query)),r}static isInstance(e){if(!e)return!1;let r=e;return"method"in r&&"protocol"in r&&"hostname"in r&&"path"in r&&typeof r.query=="object"&&typeof r.headers=="object"}clone(){return t.clone(this)}};i(qyt,"cloneQuery")});var es,pW=I(()=>{es=class{static{i(this,"HttpResponse")}statusCode;reason;headers;body;constructor(e){this.statusCode=e.statusCode,this.reason=e.reason,this.headers=e.headers||{},this.body=e.body}static isInstance(e){if(!e)return!1;let r=e;return typeof r.statusCode=="number"&&typeof r.headers=="object"}}});var ey={};en(ey,{__addDisposableResource:()=>oBe,__assign:()=>c_,__asyncDelegator:()=>KSe,__asyncGenerator:()=>JSe,__asyncValues:()=>XSe,__await:()=>Zg,__awaiter:()=>HSe,__classPrivateFieldGet:()=>rBe,__classPrivateFieldIn:()=>sBe,__classPrivateFieldSet:()=>nBe,__createBinding:()=>u_,__decorate:()=>qSe,__disposeResources:()=>iBe,__esDecorate:()=>$yt,__exportStar:()=>VSe,__extends:()=>FSe,__generator:()=>zSe,__importDefault:()=>tBe,__importStar:()=>eBe,__makeTemplateObject:()=>ZSe,__metadata:()=>GSe,__param:()=>$Se,__propKey:()=>Hyt,__read:()=>fW,__rest:()=>USe,__runInitializers:()=>Gyt,__setFunctionName:()=>zyt,__spread:()=>YSe,__spreadArray:()=>jSe,__spreadArrays:()=>WSe,__values:()=>l_,default:()=>Wyt});function FSe(t,e){if(typeof e!="function"&&e!==null)throw new TypeError("Class extends value "+String(e)+" is not a constructor or null");mW(t,e);function r(){this.constructor=t}i(r,"__"),t.prototype=e===null?Object.create(e):(r.prototype=e.prototype,new r)}function USe(t,e){var r={};for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&e.indexOf(n)<0&&(r[n]=t[n]);if(t!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(t);s=0;c--)(a=t[c])&&(o=(s<3?a(o):s>3?a(e,r,o):a(e,r))||o);return s>3&&o&&Object.defineProperty(e,r,o),o}function $Se(t,e){return function(r,n){e(r,n,t)}}function $yt(t,e,r,n,s,o){function a(w){if(w!==void 0&&typeof w!="function")throw new TypeError("Function expected");return w}i(a,"accept");for(var c=n.kind,l=c==="getter"?"get":c==="setter"?"set":"value",u=!e&&t?n.static?t:t.prototype:null,d=e||(u?Object.getOwnPropertyDescriptor(u,n.name):{}),p,m=!1,f=r.length-1;f>=0;f--){var g={};for(var E in n)g[E]=E==="access"?{}:n[E];for(var E in n.access)g.access[E]=n.access[E];g.addInitializer=function(w){if(m)throw new TypeError("Cannot add initializers after decoration has completed");o.push(a(w||null))};var x=(0,r[f])(c==="accessor"?{get:d.get,set:d.set}:d[l],g);if(c==="accessor"){if(x===void 0)continue;if(x===null||typeof x!="object")throw new TypeError("Object expected");(p=a(x.get))&&(d.get=p),(p=a(x.set))&&(d.set=p),(p=a(x.init))&&s.unshift(p)}else(p=a(x))&&(c==="field"?s.unshift(p):d[l]=p)}u&&Object.defineProperty(u,n.name,d),m=!0}function Gyt(t,e,r){for(var n=arguments.length>2,s=0;s0&&o[o.length-1])&&(u[0]===6||u[0]===2)){r=0;continue}if(u[0]===3&&(!o||u[1]>o[0]&&u[1]=t.length&&(t=void 0),{value:t&&t[n++],done:!t}},"next")};throw new TypeError(e?"Object is not iterable.":"Symbol.iterator is not defined.")}function fW(t,e){var r=typeof Symbol=="function"&&t[Symbol.iterator];if(!r)return t;var n=r.call(t),s,o=[],a;try{for(;(e===void 0||e-- >0)&&!(s=n.next()).done;)o.push(s.value)}catch(c){a={error:c}}finally{try{s&&!s.done&&(r=n.return)&&r.call(n)}finally{if(a)throw a.error}}return o}function YSe(){for(var t=[],e=0;e1||c(m,f)})})}function c(m,f){try{l(n[m](f))}catch(g){p(o[0][3],g)}}function l(m){m.value instanceof Zg?Promise.resolve(m.value.v).then(u,d):p(o[0][2],m)}function u(m){c("next",m)}function d(m){c("throw",m)}function p(m,f){m(f),o.shift(),o.length&&c(o[0][0],o[0][1])}}function KSe(t){var e,r;return e={},n("next"),n("throw",function(s){throw s}),n("return"),e[Symbol.iterator]=function(){return this},e;function n(s,o){e[s]=t[s]?function(a){return(r=!r)?{value:Zg(t[s](a)),done:!1}:o?o(a):a}:o}}function XSe(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof l_=="function"?l_(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(a){return new Promise(function(c,l){a=t[o](a),s(c,l,a.done,a.value)})}}function s(o,a,c,l){Promise.resolve(l).then(function(u){o({value:u,done:c})},a)}}function ZSe(t,e){return Object.defineProperty?Object.defineProperty(t,"raw",{value:e}):t.raw=e,t}function eBe(t){if(t&&t.__esModule)return t;var e={};if(t!=null)for(var r in t)r!=="default"&&Object.prototype.hasOwnProperty.call(t,r)&&u_(e,t,r);return Vyt(e,t),e}function tBe(t){return t&&t.__esModule?t:{default:t}}function rBe(t,e,r,n){if(r==="a"&&!n)throw new TypeError("Private accessor was defined without a getter");if(typeof e=="function"?t!==e||!n:!e.has(t))throw new TypeError("Cannot read private member from an object whose class did not declare it");return r==="m"?n:r==="a"?n.call(t):n?n.value:e.get(t)}function nBe(t,e,r,n,s){if(n==="m")throw new TypeError("Private method is not writable");if(n==="a"&&!s)throw new TypeError("Private accessor was defined without a setter");if(typeof e=="function"?t!==e||!s:!e.has(t))throw new TypeError("Cannot write private member to an object whose class did not declare it");return n==="a"?s.call(t,r):s?s.value=r:e.set(t,r),r}function sBe(t,e){if(e===null||typeof e!="object"&&typeof e!="function")throw new TypeError("Cannot use 'in' operator on non-object");return typeof t=="function"?e===t:t.has(e)}function oBe(t,e,r){if(e!=null){if(typeof e!="object"&&typeof e!="function")throw new TypeError("Object expected.");var n;if(r){if(!Symbol.asyncDispose)throw new TypeError("Symbol.asyncDispose is not defined.");n=e[Symbol.asyncDispose]}if(n===void 0){if(!Symbol.dispose)throw new TypeError("Symbol.dispose is not defined.");n=e[Symbol.dispose]}if(typeof n!="function")throw new TypeError("Object not disposable.");t.stack.push({value:e,dispose:n,async:r})}else r&&t.stack.push({async:!0});return e}function iBe(t){function e(n){t.error=t.hasError?new Yyt(n,t.error,"An error was suppressed during disposal."):n,t.hasError=!0}i(e,"fail");function r(){for(;t.stack.length;){var n=t.stack.pop();try{var s=n.dispose&&n.dispose.call(n.value);if(n.async)return Promise.resolve(s).then(r,function(o){return e(o),r()})}catch(o){e(o)}}if(t.hasError)throw t.error}return i(r,"next"),r()}var mW,c_,u_,Vyt,Yyt,Wyt,ty=I(()=>{mW=i(function(t,e){return mW=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,n){r.__proto__=n}||function(r,n){for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(r[s]=n[s])},mW(t,e)},"extendStatics");i(FSe,"__extends");c_=i(function(){return c_=Object.assign||i(function(e){for(var r,n=1,s=arguments.length;n{var d_=Object.defineProperty,jyt=Object.getOwnPropertyDescriptor,Jyt=Object.getOwnPropertyNames,Kyt=Object.prototype.hasOwnProperty,Xyt=i((t,e)=>d_(t,"name",{value:e,configurable:!0}),"__name"),Zyt=i((t,e)=>{for(var r in e)d_(t,r,{get:e[r],enumerable:!0})},"__export"),eEt=i((t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Jyt(e))!Kyt.call(t,s)&&s!==r&&d_(t,s,{get:i(()=>e[s],"get"),enumerable:!(n=jyt(e,s))||n.enumerable});return t},"__copyProps"),tEt=i(t=>eEt(d_({},"__esModule",{value:!0}),t),"__toCommonJS"),aBe={};Zyt(aBe,{isArrayBuffer:i(()=>rEt,"isArrayBuffer")});cBe.exports=tEt(aBe);var rEt=Xyt(t=>typeof ArrayBuffer=="function"&&t instanceof ArrayBuffer||Object.prototype.toString.call(t)==="[object ArrayBuffer]","isArrayBuffer")});var mBe=b((ySr,pBe)=>{var p_=Object.defineProperty,nEt=Object.getOwnPropertyDescriptor,sEt=Object.getOwnPropertyNames,oEt=Object.prototype.hasOwnProperty,uBe=i((t,e)=>p_(t,"name",{value:e,configurable:!0}),"__name"),iEt=i((t,e)=>{for(var r in e)p_(t,r,{get:e[r],enumerable:!0})},"__export"),aEt=i((t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of sEt(e))!oEt.call(t,s)&&s!==r&&p_(t,s,{get:i(()=>e[s],"get"),enumerable:!(n=nEt(e,s))||n.enumerable});return t},"__copyProps"),cEt=i(t=>aEt(p_({},"__esModule",{value:!0}),t),"__toCommonJS"),dBe={};iEt(dBe,{fromArrayBuffer:i(()=>uEt,"fromArrayBuffer"),fromString:i(()=>dEt,"fromString")});pBe.exports=cEt(dBe);var lEt=lBe(),AW=require("buffer"),uEt=uBe((t,e=0,r=t.byteLength-e)=>{if(!(0,lEt.isArrayBuffer)(t))throw new TypeError(`The "input" argument must be ArrayBuffer. Received type ${typeof t} (${t})`);return AW.Buffer.from(t,e,r)},"fromArrayBuffer"),dEt=uBe((t,e)=>{if(typeof t!="string")throw new TypeError(`The "input" argument must be of type string. Received type ${typeof t} (${t})`);return e?AW.Buffer.from(t,e):AW.Buffer.from(t)},"fromString")});var yBe=b((CSr,gBe)=>{var m_=Object.defineProperty,pEt=Object.getOwnPropertyDescriptor,mEt=Object.getOwnPropertyNames,fEt=Object.prototype.hasOwnProperty,hW=i((t,e)=>m_(t,"name",{value:e,configurable:!0}),"__name"),AEt=i((t,e)=>{for(var r in e)m_(t,r,{get:e[r],enumerable:!0})},"__export"),hEt=i((t,e,r,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of mEt(e))!fEt.call(t,s)&&s!==r&&m_(t,s,{get:i(()=>e[s],"get"),enumerable:!(n=pEt(e,s))||n.enumerable});return t},"__copyProps"),gEt=i(t=>hEt(m_({},"__esModule",{value:!0}),t),"__toCommonJS"),fBe={};AEt(fBe,{fromUtf8:i(()=>hBe,"fromUtf8"),toUint8Array:i(()=>yEt,"toUint8Array"),toUtf8:i(()=>EEt,"toUtf8")});gBe.exports=gEt(fBe);var ABe=mBe(),hBe=hW(t=>{let e=(0,ABe.fromString)(t,"utf8");return new Uint8Array(e.buffer,e.byteOffset,e.byteLength/Uint8Array.BYTES_PER_ELEMENT)},"fromUtf8"),yEt=hW(t=>typeof t=="string"?hBe(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t),"toUint8Array"),EEt=hW(t=>{if(typeof t=="string")return t;if(typeof t!="object"||typeof t.byteOffset!="number"||typeof t.byteLength!="number")throw new Error("@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.");return(0,ABe.fromArrayBuffer)(t.buffer,t.byteOffset,t.byteLength).toString("utf8")},"toUtf8")});var EBe=b(f_=>{"use strict";Object.defineProperty(f_,"__esModule",{value:!0});f_.convertToBuffer=void 0;var CEt=yBe(),IEt=typeof Buffer<"u"&&Buffer.from?function(t){return Buffer.from(t,"utf8")}:CEt.fromUtf8;function xEt(t){return t instanceof Uint8Array?t:typeof t=="string"?IEt(t):ArrayBuffer.isView(t)?new Uint8Array(t.buffer,t.byteOffset,t.byteLength/Uint8Array.BYTES_PER_ELEMENT):new Uint8Array(t)}i(xEt,"convertToBuffer");f_.convertToBuffer=xEt});var CBe=b(A_=>{"use strict";Object.defineProperty(A_,"__esModule",{value:!0});A_.isEmptyData=void 0;function wEt(t){return typeof t=="string"?t.length===0:t.byteLength===0}i(wEt,"isEmptyData");A_.isEmptyData=wEt});var IBe=b(h_=>{"use strict";Object.defineProperty(h_,"__esModule",{value:!0});h_.numToUint8=void 0;function bEt(t){return new Uint8Array([(t&4278190080)>>24,(t&16711680)>>16,(t&65280)>>8,t&255])}i(bEt,"numToUint8");h_.numToUint8=bEt});var xBe=b(g_=>{"use strict";Object.defineProperty(g_,"__esModule",{value:!0});g_.uint32ArrayFrom=void 0;function SEt(t){if(!Uint32Array.from){for(var e=new Uint32Array(t.length),r=0;r{"use strict";Object.defineProperty(Kc,"__esModule",{value:!0});Kc.uint32ArrayFrom=Kc.numToUint8=Kc.isEmptyData=Kc.convertToBuffer=void 0;var BEt=EBe();Object.defineProperty(Kc,"convertToBuffer",{enumerable:!0,get:i(function(){return BEt.convertToBuffer},"get")});var REt=CBe();Object.defineProperty(Kc,"isEmptyData",{enumerable:!0,get:i(function(){return REt.isEmptyData},"get")});var NEt=IBe();Object.defineProperty(Kc,"numToUint8",{enumerable:!0,get:i(function(){return NEt.numToUint8},"get")});var TEt=xBe();Object.defineProperty(Kc,"uint32ArrayFrom",{enumerable:!0,get:i(function(){return TEt.uint32ArrayFrom},"get")})});var SBe=b(y_=>{"use strict";Object.defineProperty(y_,"__esModule",{value:!0});y_.AwsCrc32=void 0;var wBe=(ty(),W(ey)),yW=gW(),bBe=E_(),PEt=(function(){function t(){this.crc32=new bBe.Crc32}return i(t,"AwsCrc32"),t.prototype.update=function(e){(0,yW.isEmptyData)(e)||this.crc32.update((0,yW.convertToBuffer)(e))},t.prototype.digest=function(){return wBe.__awaiter(this,void 0,void 0,function(){return wBe.__generator(this,function(e){return[2,(0,yW.numToUint8)(this.crc32.digest())]})})},t.prototype.reset=function(){this.crc32=new bBe.Crc32},t})();y_.AwsCrc32=PEt});var E_=b(ep=>{"use strict";Object.defineProperty(ep,"__esModule",{value:!0});ep.AwsCrc32=ep.Crc32=ep.crc32=void 0;var vEt=(ty(),W(ey)),_Et=gW();function QEt(t){return new BBe().update(t).digest()}i(QEt,"crc32");ep.crc32=QEt;var BBe=(function(){function t(){this.checksum=4294967295}return i(t,"Crc32"),t.prototype.update=function(e){var r,n;try{for(var s=vEt.__values(e),o=s.next();!o.done;o=s.next()){var a=o.value;this.checksum=this.checksum>>>8^kEt[(this.checksum^a)&255]}}catch(c){r={error:c}}finally{try{o&&!o.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return this},t.prototype.digest=function(){return(this.checksum^4294967295)>>>0},t})();ep.Crc32=BBe;var DEt=[0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117],kEt=(0,_Et.uint32ArrayFrom)(DEt),LEt=SBe();Object.defineProperty(ep,"AwsCrc32",{enumerable:!0,get:i(function(){return LEt.AwsCrc32},"get")})});function RBe(t){for(let e=0;e<8;e++)t[e]^=255;for(let e=7;e>-1&&(t[e]++,t[e]===0);e--);}var tp,EW=I(()=>{st();tp=class t{static{i(this,"Int64")}bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let r=new Uint8Array(8);for(let n=7,s=Math.abs(Math.round(e));n>-1&&s>0;n--,s/=256)r[n]=s;return e<0&&RBe(r),new t(r)}valueOf(){let e=this.bytes.slice(0),r=e[0]&128;return r&&RBe(e),parseInt(Di(e),16)*(r?-1:1)}toString(){return String(this.valueOf())}};i(RBe,"negate")});var ry,NBe,TBe,OEt,MEt,FEt,UEt,qEt,$Et,GEt,HEt,zEt,CW=I(()=>{st();EW();ry=class{static{i(this,"HeaderMarshaller")}toUtf8;fromUtf8;constructor(e,r){this.toUtf8=e,this.fromUtf8=r}format(e){let r=[];for(let o of Object.keys(e)){let a=this.fromUtf8(o);r.push(Uint8Array.from([a.byteLength]),a,this.formatHeaderValue(e[o]))}let n=new Uint8Array(r.reduce((o,a)=>o+a.byteLength,0)),s=0;for(let o of r)n.set(o,s),s+=o.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let r=new DataView(new ArrayBuffer(3));return r.setUint8(0,3),r.setInt16(1,e.value,!1),new Uint8Array(r.buffer);case"integer":let n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":let s=new Uint8Array(9);return s[0]=5,s.set(e.value.bytes,1),s;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let a=new Uint8Array(o.buffer);return a.set(e.value,3),a;case"string":let c=this.fromUtf8(e.value),l=new DataView(new ArrayBuffer(3+c.byteLength));l.setUint8(0,7),l.setUint16(1,c.byteLength,!1);let u=new Uint8Array(l.buffer);return u.set(c,3),u;case"timestamp":let d=new Uint8Array(9);return d[0]=8,d.set(tp.fromNumber(e.value.valueOf()).bytes,1),d;case"uuid":if(!zEt.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);let p=new Uint8Array(17);return p[0]=9,p.set(Ev(e.value.replace(/\-/g,"")),1),p}}parse(e){let r={},n=0;for(;n{PBe=D(E_()),vBe=4,rp=vBe*2,gf=4,VEt=rp+gf*2;i(_Be,"splitMessage")});var DBe,ny,IW=I(()=>{DBe=D(E_());CW();QBe();ny=class{static{i(this,"EventStreamCodec")}headerMarshaller;messageBuffer;isEndOfStream;constructor(e,r){this.headerMarshaller=new ry(e,r),this.messageBuffer=[],this.isEndOfStream=!1}feed(e){this.messageBuffer.push(this.decode(e))}endOfStream(){this.isEndOfStream=!0}getMessage(){let e=this.messageBuffer.pop(),r=this.isEndOfStream;return{getMessage(){return e},isEndOfStream(){return r}}}getAvailableMessages(){let e=this.messageBuffer;this.messageBuffer=[];let r=this.isEndOfStream;return{getMessages(){return e},isEndOfStream(){return r}}}encode({headers:e,body:r}){let n=this.headerMarshaller.format(e),s=n.byteLength+r.byteLength+16,o=new Uint8Array(s),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new DBe.Crc32;return a.setUint32(0,s,!1),a.setUint32(4,n.byteLength,!1),a.setUint32(8,c.update(o.subarray(0,8)).digest(),!1),o.set(n,12),o.set(r,n.byteLength+12),a.setUint32(s-4,c.update(o.subarray(8,s-4)).digest(),!1),o}decode(e){let{headers:r,body:n}=_Be(e);return{headers:this.headerMarshaller.parse(r),body:n}}formatHeaders(e){return this.headerMarshaller.format(e)}}});var sy,xW=I(()=>{sy=class{static{i(this,"MessageDecoderStream")}options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.inputStream)yield this.options.decoder.decode(e)}}});var oy,wW=I(()=>{oy=class{static{i(this,"MessageEncoderStream")}options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.messageStream)yield this.options.encoder.encode(e);this.options.includeEndFrame&&(yield new Uint8Array(0))}}});var iy,bW=I(()=>{iy=class{static{i(this,"SmithyMessageDecoderStream")}options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.messageStream){let r=await this.options.deserializer(e);r!==void 0&&(yield r)}}}});var ay,SW=I(()=>{ay=class{static{i(this,"SmithyMessageEncoderStream")}options;constructor(e){this.options=e}[Symbol.asyncIterator](){return this.asyncIterator()}async*asyncIterator(){for await(let e of this.options.inputStream)yield this.options.serializer(e)}}});function C_(t){let e=0,r=0,n=null,s=null,o=i(c=>{if(typeof c!="number")throw new Error("Attempted to allocate an event message where size was not a number: "+c);e=c,r=4,n=new Uint8Array(c),new DataView(n.buffer).setUint32(0,c,!1)},"allocateMessage"),a=i(async function*(){let c=t[Symbol.asyncIterator]();for(;;){let{value:l,done:u}=await c.next();if(u){if(e)if(e===r)yield n;else throw new Error("Truncated event message received.");else return;return}let d=l.length,p=0;for(;p{i(C_,"getChunkedStream")});function kBe(t,e){let r=kx(e.deserializer,e.toUtf8);return{[Symbol.asyncIterator]:async function*(){for await(let n of t){let s=e.eventStreamCodec.decode(n),o=await r(s);o!==void 0&&(yield o)}}}}function kx(t,e){return async function(r){let{value:n}=r.headers[":message-type"];if(n==="error"){let s=new Error(r.headers[":error-message"].value||"UnknownError");throw s.name=r.headers[":error-code"].value,s}else if(n==="exception"){let s=r.headers[":exception-type"].value,o={[s]:r},a=await t(o);if(a.$unknown){let c=new Error(e(r.body));throw c.name=s,c}throw a[s]}else if(n==="event"){let s={[r.headers[":event-type"].value]:r},o=await t(s);return o.$unknown?void 0:o}else throw Error(`Unrecognizable event type: ${r.headers[":event-type"].value}`)}}var RW=I(()=>{i(kBe,"getUnmarshalledStream");i(kx,"getMessageUnmarshaller")});var yf,LBe,NW=I(()=>{IW();xW();wW();bW();SW();BW();RW();yf=class{static{i(this,"EventStreamMarshaller")}eventStreamCodec;utfEncoder;constructor({utf8Encoder:e,utf8Decoder:r}){this.eventStreamCodec=new ny(e,r),this.utfEncoder=e}deserialize(e,r){let n=C_(e);return new iy({messageStream:new sy({inputStream:n,decoder:this.eventStreamCodec}),deserializer:kx(r,this.utfEncoder)})}serialize(e,r){return new oy({messageStream:new ay({inputStream:e,serializer:r}),encoder:this.eventStreamCodec,includeEndFrame:!0})}},LBe=i(t=>new yf(t),"eventStreamSerdeProvider")});async function*YEt(t){let e=!1,r=!1,n=new Array;for(t.on("error",s=>{if(e||(e=!0),s)throw s}),t.on("data",s=>{n.push(s)}),t.on("end",()=>{e=!0});!r;){let s=await new Promise(o=>setTimeout(()=>o(n.shift()),0));s&&(yield s),r=e&&n.length===0}}var OBe,Lx,MBe,FBe=I(()=>{OBe=require("node:stream");NW();Lx=class{static{i(this,"EventStreamMarshaller")}universalMarshaller;constructor({utf8Encoder:e,utf8Decoder:r}){this.universalMarshaller=new yf({utf8Decoder:r,utf8Encoder:e})}deserialize(e,r){let n=typeof e[Symbol.asyncIterator]=="function"?e:YEt(e);return this.universalMarshaller.deserialize(n,r)}serialize(e,r){return OBe.Readable.from(this.universalMarshaller.serialize(e,r))}},MBe=i(t=>new Lx(t),"eventStreamSerdeProvider");i(YEt,"readableToIterable")});var UBe,qBe,$Be=I(()=>{UBe=i(t=>({[Symbol.asyncIterator]:async function*(){let e=t.getReader();try{for(;;){let{done:r,value:n}=await e.read();if(r)return;yield n}}finally{e.releaseLock()}}}),"readableStreamToIterable"),qBe=i(t=>{let e=t[Symbol.asyncIterator]();return new ReadableStream({async pull(r){let{done:n,value:s}=await e.next();if(n)return r.close();r.enqueue(s)}})},"iterableToReadableStream")});var GBe,HBe=I(()=>{GBe=i(t=>Object.assign(t,{eventStreamMarshaller:t.eventStreamSerdeProvider(t)}),"resolveEventStreamSerdeConfig")});var I_,zBe=I(()=>{st();I_=class{static{i(this,"EventStreamSerde")}marshaller;serializer;deserializer;serdeContext;defaultContentType;constructor({marshaller:e,serializer:r,deserializer:n,serdeContext:s,defaultContentType:o}){this.marshaller=e,this.serializer=r,this.deserializer=n,this.serdeContext=s,this.defaultContentType=o}async serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n}){let s=this.marshaller,o=r.getEventStreamMember(),a=r.getMemberSchema(o),c=this.serializer,l=this.defaultContentType,u=Symbol("initialRequestMarker"),d={async*[Symbol.asyncIterator](){if(n){let p={":event-type":{type:"string",value:"initial-request"},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:l}};c.write(r,n);let m=c.flush();yield{[u]:!0,headers:p,body:m}}for await(let p of e)yield p}};return s.serialize(d,p=>{if(p[u])return{headers:p.headers,body:p.body};let m="";for(let S in p)if(S!=="__type"){m=S;break}let{additionalHeaders:f,body:g,eventType:E,explicitPayloadContentType:x}=this.writeEventBody(m,a,p);return{headers:{":event-type":{type:"string",value:E},":message-type":{type:"string",value:"event"},":content-type":{type:"string",value:x??l},...f},body:g}})}async deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n}){let s=this.marshaller,o=r.getEventStreamMember(),c=r.getMemberSchema(o).getMemberSchemas(),l=Symbol("initialResponseMarker"),u=s.deserialize(e.body,async m=>{let f="";for(let E in m)if(E!=="__type"){f=E;break}let g=m[f].body;if(f==="initial-response"){let E=await this.deserializer.read(r,g);return delete E[o],{[l]:!0,...E}}else if(f in c){let E=c[f];if(E.isStructSchema()){let x={},w=!1;for(let[S,P]of E.structIterator()){let{eventHeader:Q,eventPayload:q}=P.getMergedTraits();if(w=w||!!(Q||q),q)P.isBlobSchema()?x[S]=g:P.isStringSchema()?x[S]=(this.serdeContext?.utf8Encoder??hr)(g):P.isStructSchema()&&(x[S]=await this.deserializer.read(P,g));else if(Q){let M=m[f].headers[S]?.value;M!=null&&(P.isNumericSchema()?M&&typeof M=="object"&&"bytes"in M?x[S]=BigInt(M.toString()):x[S]=Number(M):x[S]=M)}}if(w)return{[f]:x};if(g.byteLength===0)return{[f]:{}}}return{[f]:await this.deserializer.read(E,g)}}else return{$unknown:m}}),d=u[Symbol.asyncIterator](),p=await d.next();if(p.done)return u;if(p.value?.[l]){if(!r)throw new Error("@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.");for(let m in p.value)n[m]=p.value[m]}return{async*[Symbol.asyncIterator](){for(p?.value?.[l]||(yield p.value);;){let{done:m,value:f}=await d.next();if(m)break;yield f}}}}writeEventBody(e,r,n){let s=this.serializer,o=e,a=null,c,l=r.getSchema()[4].includes(e),u={};if(l){let m=r.getMemberSchema(e);if(m.isStructSchema()){for(let[f,g]of m.structIterator()){let{eventHeader:E,eventPayload:x}=g.getMergedTraits();if(x)a=f;else if(E){let w=n[e][f],S="binary";g.isNumericSchema()?(-2)**31<=w&&w<=2**31-1?S="integer":S="long":g.isTimestampSchema()?S="timestamp":g.isStringSchema()?S="string":g.isBooleanSchema()&&(S="boolean"),w!=null&&(u[f]={type:S,value:w},delete n[e][f])}}if(a!==null){let f=m.getMemberSchema(a);f.isBlobSchema()?c="application/octet-stream":f.isStringSchema()&&(c="text/plain"),s.write(f,n[e][a])}else s.write(m,n[e])}else if(m.isUnitSchema())s.write(m,{});else throw new Error("@smithy/core/event-streams - non-struct member not supported in event stream union.")}else{let[m,f]=n[e];o=m,s.write(15,f)}let d=s.flush()??new Uint8Array;return{body:typeof d=="string"?(this.serdeContext?.utf8Decoder??Gr)(d):d,eventType:o,explicitPayloadContentType:c,additionalHeaders:u}}}});var VBe={};en(VBe,{EventStreamCodec:()=>ny,EventStreamMarshaller:()=>Lx,EventStreamSerde:()=>I_,HeaderMarshaller:()=>ry,Int64:()=>tp,MessageDecoderStream:()=>sy,MessageEncoderStream:()=>oy,SmithyMessageDecoderStream:()=>iy,SmithyMessageEncoderStream:()=>ay,UniversalEventStreamMarshaller:()=>yf,eventStreamSerdeProvider:()=>MBe,getChunkedStream:()=>C_,getMessageUnmarshaller:()=>kx,getUnmarshalledStream:()=>kBe,iterableToReadableStream:()=>qBe,readableStreamToIterable:()=>UBe,resolveEventStreamSerdeConfig:()=>GBe,universalEventStreamSerdeProvider:()=>LBe});var YBe=I(()=>{IW();CW();EW();xW();wW();bW();SW();FBe();$Be();NW();BW();RW();HBe();zBe()});var Ef,x_=I(()=>{Ct();Xg();hf();pW();Ef=class extends vs{static{i(this,"HttpProtocol")}options;compositeErrorRegistry;constructor(e){super(),this.options=e,this.compositeErrorRegistry=gr.for(e.defaultNamespace);for(let r of e.errorTypeRegistries??[])this.compositeErrorRegistry.copyFrom(r)}getRequestType(){return mt}getResponseType(){return es}setSerdeContext(e){this.serdeContext=e,this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e),this.getPayloadCodec()&&this.getPayloadCodec().setSerdeContext(e)}updateServiceEndpoint(e,r){if("url"in r){e.protocol=r.url.protocol,e.hostname=r.url.hostname,e.port=r.url.port?Number(r.url.port):void 0,e.path=r.url.pathname,e.fragment=r.url.hash||void 0,e.username=r.url.username||void 0,e.password=r.url.password||void 0,e.query||(e.query={});for(let[n,s]of r.url.searchParams.entries())e.query[n]=s;if(r.headers)for(let n in r.headers)e.headers[n]=r.headers[n].join(", ");return e}else{if(e.protocol=r.protocol,e.hostname=r.hostname,e.port=r.port?Number(r.port):void 0,e.path=r.path,e.query={...r.query},r.headers)for(let n in r.headers)e.headers[n]=r.headers[n];return e}}setHostPrefix(e,r,n){if(this.serdeContext?.disableHostPrefix)return;let s=Ee.of(r.input),o=Xc(r.traits??{});if(o.endpoint){let a=o.endpoint?.[0];if(typeof a=="string"){for(let[c,l]of s.structIterator()){if(!l.getMergedTraits().hostLabel)continue;let u=n[c];if(typeof u!="string")throw new Error(`@smithy/core/schema - ${c} in input must be a string as hostLabel.`);a=a.replace(`{${c}}`,u)}e.hostname=a+e.hostname}}}deserializeMetadata(e){return{httpStatusCode:e.statusCode,requestId:e.headers["x-amzn-requestid"]??e.headers["x-amzn-request-id"]??e.headers["x-amz-request-id"],extendedRequestId:e.headers["x-amz-id-2"],cfId:e.headers["x-amz-cf-id"]}}async serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n}){return(await this.loadEventStreamCapability()).serializeEventStream({eventStream:e,requestSchema:r,initialRequest:n})}async deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n}){return(await this.loadEventStreamCapability()).deserializeEventStream({response:e,responseSchema:r,initialResponseContainer:n})}async loadEventStreamCapability(){let{EventStreamSerde:e}=await Promise.resolve().then(()=>(YBe(),VBe));return new e({marshaller:this.getEventStreamMarshaller(),serializer:this.serializer,deserializer:this.deserializer,serdeContext:this.serdeContext,defaultContentType:this.getDefaultContentType()})}getDefaultContentType(){throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`)}async deserializeHttpMessage(e,r,n,s,o){return[]}getEventStreamMarshaller(){let e=this.serdeContext;if(!e.eventStreamMarshaller)throw new Error("@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.");return e.eventStreamMarshaller}}});var Cf,WBe=I(()=>{Ct();st();x_();i_();a_();hf();Cf=class extends Ef{static{i(this,"HttpBindingProtocol")}async serializeRequest(e,r,n){let s=r&&typeof r=="object"?r:{},o=this.serializer,a={},c={},l=await n.endpoint(),u=Ee.of(e?.input),d=[],p=[],m=!1,f,g=new mt({protocol:"",hostname:"",port:void 0,path:"",fragment:void 0,query:a,headers:c,body:void 0});if(l){this.updateServiceEndpoint(g,l),this.setHostPrefix(g,e,s);let E=Xc(e.traits);if(E.http){g.method=E.http[0];let[x,w]=E.http[1].split("?");g.path=="/"?g.path=x:g.path+=x;let S=new URLSearchParams(w??"");for(let[P,Q]of S)a[P]=Q}}for(let[E,x]of u.structIterator()){let w=x.getMergedTraits()??{},S=s[E];if(S==null&&!x.isIdempotencyToken()){if(w.httpLabel&&(g.path.includes(`{${E}+}`)||g.path.includes(`{${E}}`)))throw new Error(`No value provided for input HTTP label: ${E}.`);continue}if(w.httpPayload)x.isStreaming()?x.isStructSchema()?s[E]&&(f=await this.serializeEventStream({eventStream:s[E],requestSchema:u})):f=S:(o.write(x,S),f=o.flush());else if(w.httpLabel){o.write(x,S);let P=o.flush();g.path.includes(`{${E}+}`)?g.path=g.path.replace(`{${E}+}`,P.split("/").map(Jc).join("/")):g.path.includes(`{${E}}`)&&(g.path=g.path.replace(`{${E}}`,Jc(P)))}else if(w.httpHeader)o.write(x,S),c[w.httpHeader.toLowerCase()]=String(o.flush());else if(typeof w.httpPrefixHeaders=="string")for(let P in S){let Q=S[P],q=w.httpPrefixHeaders+P;o.write([x.getValueSchema(),{httpHeader:q}],Q),c[q.toLowerCase()]=o.flush()}else w.httpQuery||w.httpQueryParams?this.serializeQuery(x,S,a):(m=!0,d.push(E),p.push(x))}if(m&&s){let[E,x]=(u.getName(!0)??"#Unknown").split("#"),w=u.getSchema()[6],S=[3,E,x,u.getMergedTraits(),d,p,void 0];w?S[6]=w:S.pop(),o.write(S,s),f=o.flush()}return g.headers=c,g.query=a,g.body=f,g}serializeQuery(e,r,n){let s=this.serializer,o=e.getMergedTraits();if(o.httpQueryParams){for(let a in r)if(!(a in n)){let c=r[a],l=e.getValueSchema();Object.assign(l.getMergedTraits(),{...o,httpQuery:a,httpQueryParams:void 0}),this.serializeQuery(l,c,n)}return}if(e.isListSchema()){let a=!!e.getMergedTraits().sparse,c=[];for(let l of r){s.write([e.getValueSchema(),o],l);let u=s.flush();(a||u!==void 0)&&c.push(u)}n[o.httpQuery]=c}else s.write([e,o],r),n[o.httpQuery]=s.flush()}async deserializeResponse(e,r,n){let s=this.deserializer,o=Ee.of(e.output),a={};if(n.statusCode>=300){let l=await co(n.body,r);throw l.byteLength>0&&Object.assign(a,await s.read(15,l)),await this.handleError(e,r,n,a,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - HTTP Protocol error handler failed to throw.")}for(let l in n.headers){let u=n.headers[l];delete n.headers[l],n.headers[l.toLowerCase()]=u}let c=await this.deserializeHttpMessage(o,r,n,a);if(c.length){let l=await co(n.body,r);if(l.byteLength>0){let u=await s.read(o,l);for(let d of c)u[d]!=null&&(a[d]=u[d])}}else c.discardResponseBody&&await co(n.body,r);return a.$metadata=this.deserializeMetadata(n),a}async deserializeHttpMessage(e,r,n,s,o){let a;s instanceof Set?a=o:a=s;let c=!0,l=this.deserializer,u=Ee.of(e),d=[];for(let[p,m]of u.structIterator()){let f=m.getMemberTraits();if(f.httpPayload){if(c=!1,m.isStreaming())m.isStructSchema()?a[p]=await this.deserializeEventStream({response:n,responseSchema:u}):a[p]=o_(n.body);else if(n.body){let E=await co(n.body,r);E.byteLength>0&&(a[p]=await l.read(m,E))}}else if(f.httpHeader){let g=String(f.httpHeader).toLowerCase(),E=n.headers[g];if(E!=null)if(m.isListSchema()){let x=m.getValueSchema();x.getMergedTraits().httpHeader=g;let w;x.isTimestampSchema()&&x.getSchema()===4?w=gv(E,",",2):w=qg(E);let S=[];for(let P of w)S.push(await l.read(x,P.trim()));a[p]=S}else a[p]=await l.read(m,E)}else if(f.httpPrefixHeaders!==void 0){a[p]={};for(let g in n.headers)if(g.startsWith(f.httpPrefixHeaders)){let E=n.headers[g],x=m.getValueSchema();x.getMergedTraits().httpHeader=g,a[p][g.slice(f.httpPrefixHeaders.length)]=await l.read(x,E)}}else f.httpResponseCode?a[p]=n.statusCode:d.push(p)}return d.discardResponseBody=c,d}}});var Su,jBe=I(()=>{Ct();x_();i_();hf();Su=class extends Ef{static{i(this,"RpcProtocol")}async serializeRequest(e,r,n){let s=this.serializer,o={},a={},c=await n.endpoint(),l=Ee.of(e?.input),u=l.getSchema(),d,p=r&&typeof r=="object"?r:{},m=new mt({protocol:"",hostname:"",port:void 0,path:"/",fragment:void 0,query:o,headers:a,body:void 0});if(c&&(this.updateServiceEndpoint(m,c),this.setHostPrefix(m,e,p)),p){let f=l.getEventStreamMember();if(f){if(p[f]){let g={};for(let[E,x]of l.structIterator())E!==f&&p[E]&&(s.write(x,p[E]),g[E]=s.flush());d=await this.serializeEventStream({eventStream:p[f],requestSchema:l,initialRequest:g})}}else s.write(u,p),d=s.flush()}return m.headers=Object.assign(m.headers,a),m.query=o,m.body=d,m.method="POST",m}async deserializeResponse(e,r,n){let s=this.deserializer,o=Ee.of(e.output),a={};if(n.statusCode>=300){let l=await co(n.body,r);throw l.byteLength>0&&Object.assign(a,await s.read(15,l)),await this.handleError(e,r,n,a,this.deserializeMetadata(n)),new Error("@smithy/core/protocols - RPC Protocol error handler failed to throw.")}for(let l in n.headers){let u=n.headers[l];delete n.headers[l],n.headers[l.toLowerCase()]=u}let c=o.getEventStreamMember();if(c)a[c]=await this.deserializeEventStream({response:n,responseSchema:o,initialResponseContainer:a});else{let l=await co(n.body,r);l.byteLength>0&&Object.assign(a,await s.read(o,l))}return a.$metadata=this.deserializeMetadata(n),a}}});var TW,PW=I(()=>{a_();TW=i((t,e,r,n,s,o)=>{if(e!=null&&e[r]!==void 0){let a=n();if(a==null||a.length<=0)throw new Error("Empty value provided for input HTTP label: "+r+".");t=t.replace(s,o?a.split("/").map(c=>Jc(c)).join("/"):Jc(a))}else throw new Error("No value provided for input HTTP label: "+r+".");return t},"resolvedPath")});function vW(t,e){return new w_(t,e)}var w_,JBe=I(()=>{hf();PW();i(vW,"requestBuilder");w_=class{static{i(this,"RequestBuilder")}input;context;query={};method="";headers={};path="";body=null;hostname="";resolvePathStack=[];constructor(e,r){this.input=e,this.context=r}async build(){let{hostname:e,protocol:r="https",port:n,path:s}=await this.context.endpoint();this.path=s;for(let o of this.resolvePathStack)o(this.path);return new mt({protocol:r,hostname:this.hostname||e,port:n,method:this.method,path:this.path,query:this.query,body:this.body,headers:this.headers})}hn(e){return this.hostname=e,this}bp(e){return this.resolvePathStack.push(r=>{this.path=`${r?.endsWith("/")?r.slice(0,-1):r||""}`+e}),this}p(e,r,n,s){return this.resolvePathStack.push(o=>{this.path=TW(o,this.input,e,r,n,s)}),this}h(e){return this.headers=e,this}q(e){return this.query=e,this}b(e){return this.body=e,this}m(e){return this.method=e,this}}});function jo(t,e){if(e.timestampFormat.useTrait&&t.isTimestampSchema()&&(t.getSchema()===5||t.getSchema()===6||t.getSchema()===7))return t.getSchema();let{httpLabel:r,httpPrefixHeaders:n,httpHeader:s,httpQuery:o}=t.getMergedTraits();return(e.httpBindings?typeof n=="string"||s?6:o||r?5:void 0:void 0)??e.timestampFormat.default}var b_=I(()=>{i(jo,"determineTimestampFormat")});var If,_W=I(()=>{Ct();st();Xg();b_();If=class extends vs{static{i(this,"FromStringShapeDeserializer")}settings;constructor(e){super(),this.settings=e}read(e,r){let n=Ee.of(e);if(n.isListSchema())return qg(r).map(s=>this.read(n.getValueSchema(),s));if(n.isBlobSchema())return(this.serdeContext?.base64Decoder??$r)(r);if(n.isTimestampSchema())switch(jo(n,this.settings)){case 5:return Av(r);case 6:return hv(r);case 7:return lf(r);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",r),new Date(r)}if(n.isStringSchema()){let s=n.getMergedTraits().mediaType,o=r;if(s)return n.getMergedTraits().httpHeader&&(o=this.base64ToUtf8(o)),(s==="application/json"||s.endsWith("+json"))&&(o=Zn.from(o)),o}return n.isNumericSchema()?Number(r):n.isBigIntegerSchema()?BigInt(r):n.isBigDecimalSchema()?new qt(r,"bigDecimal"):n.isBooleanSchema()?String(r).toLowerCase()==="true":r}base64ToUtf8(e){return(this.serdeContext?.utf8Encoder??hr)((this.serdeContext?.base64Decoder??$r)(e))}}});var xf,KBe=I(()=>{Ct();st();Xg();_W();xf=class extends vs{static{i(this,"HttpInterceptingShapeDeserializer")}codecDeserializer;stringDeserializer;constructor(e,r){super(),this.codecDeserializer=e,this.stringDeserializer=new If(r)}setSerdeContext(e){this.stringDeserializer.setSerdeContext(e),this.codecDeserializer.setSerdeContext(e),this.serdeContext=e}read(e,r){let n=Ee.of(e),s=n.getMergedTraits(),o=this.serdeContext?.utf8Encoder??hr;if(s.httpHeader||s.httpResponseCode)return this.stringDeserializer.read(n,o(r));if(s.httpPayload){if(n.isBlobSchema()){let a=this.serdeContext?.utf8Decoder??Gr;return typeof r=="string"?a(r):r}else if(n.isStringSchema())return"byteLength"in r?o(r):r}return this.codecDeserializer.read(n,r)}}});var Ox,QW=I(()=>{Ct();st();Xg();b_();Ox=class extends vs{static{i(this,"ToStringShapeSerializer")}settings;stringBuffer="";constructor(e){super(),this.settings=e}write(e,r){let n=Ee.of(e);switch(typeof r){case"object":if(r===null){this.stringBuffer="null";return}if(n.isTimestampSchema()){if(!(r instanceof Date))throw new Error(`@smithy/core/protocols - received non-Date value ${r} when schema expected Date in ${n.getName(!0)}`);switch(jo(n,this.settings)){case 5:this.stringBuffer=r.toISOString().replace(".000Z","Z");break;case 6:this.stringBuffer=wa(r);break;case 7:this.stringBuffer=String(r.getTime()/1e3);break;default:console.warn("Missing timestamp format, using epoch seconds",r),this.stringBuffer=String(r.getTime()/1e3)}return}if(n.isBlobSchema()&&"byteLength"in r){this.stringBuffer=(this.serdeContext?.base64Encoder??Ar)(r);return}if(n.isListSchema()&&Array.isArray(r)){let a="";for(let c of r){this.write([n.getValueSchema(),n.getMergedTraits()],c);let l=this.flush(),u=n.getValueSchema().isTimestampSchema()?l:fv(l);a!==""&&(a+=", "),a+=u}this.stringBuffer=a;return}this.stringBuffer=JSON.stringify(r,null,2);break;case"string":let s=n.getMergedTraits().mediaType,o=r;if(s&&((s==="application/json"||s.endsWith("+json"))&&(o=Zn.from(o)),n.getMergedTraits().httpHeader)){this.stringBuffer=(this.serdeContext?.base64Encoder??Ar)(o.toString());return}this.stringBuffer=r;break;default:n.isIdempotencyToken()?this.stringBuffer=Ba():this.stringBuffer=String(r)}}flush(){let e=this.stringBuffer;return this.stringBuffer="",e}}});var wf,XBe=I(()=>{Ct();QW();wf=class{static{i(this,"HttpInterceptingShapeSerializer")}codecSerializer;stringSerializer;buffer;constructor(e,r,n=new Ox(r)){this.codecSerializer=e,this.stringSerializer=n}setSerdeContext(e){this.codecSerializer.setSerdeContext(e),this.stringSerializer.setSerdeContext(e)}write(e,r){let n=Ee.of(e),s=n.getMergedTraits();if(s.httpHeader||s.httpLabel||s.httpQuery){this.stringSerializer.write(n,r),this.buffer=this.stringSerializer.flush();return}return this.codecSerializer.write(n,r)}flush(){if(this.buffer!==void 0){let e=this.buffer;return this.buffer=void 0,e}return this.codecSerializer.flush()}}});var ZBe,S_,eRe=I(()=>{ZBe=D(Ca()),S_=class{static{i(this,"Field")}name;kind;values;constructor({name:e,kind:r=ZBe.FieldPosition.HEADER,values:n=[]}){this.name=e,this.kind=r,this.values=n}add(e){this.values.push(e)}set(e){this.values=e}remove(e){this.values=this.values.filter(r=>r!==e)}toString(){return this.values.map(e=>e.includes(",")||e.includes(" ")?`"${e}"`:e).join(", ")}get(){return this.values}}});var B_,tRe=I(()=>{B_=class{static{i(this,"Fields")}entries={};encoding;constructor({fields:e=[],encoding:r="utf-8"}){e.forEach(this.setField.bind(this)),this.encoding=r}setField(e){this.entries[e.name.toLowerCase()]=e}getField(e){return this.entries[e.toLowerCase()]}removeField(e){delete this.entries[e.toLowerCase()]}getByType(e){return Object.values(this.entries).filter(r=>r.kind===e)}}});function rRe(t){return/^[a-z0-9][a-z0-9\.\-]*[a-z0-9]$/.test(t)}var nRe=I(()=>{i(rRe,"isValidHostname")});var Zc,el,sRe=I(()=>{Zc=i(t=>({setHttpHandler(e){t.httpHandler=e},httpHandler(){return t.httpHandler},updateHttpClientConfig(e,r){t.httpHandler?.updateHttpClientConfig(e,r)},httpHandlerConfigs(){return t.httpHandler.httpHandlerConfigs()}}),"getHttpHandlerExtensionConfiguration"),el=i(t=>({httpHandler:t.httpHandler()}),"resolveHttpHandlerRuntimeConfig")});function DW(t){return e=>async r=>{let n=r.request;if(mt.isInstance(n)){let{body:s,headers:o}=n;if(s&&Object.keys(o).map(a=>a.toLowerCase()).indexOf(oRe)===-1)try{let a=t(s);n.headers={...n.headers,[oRe]:String(a)}}catch{}}return e({...r,request:n})}}var oRe,kW,tl,iRe=I(()=>{hf();oRe="content-length";i(DW,"contentLengthMiddleware");kW={step:"build",tags:["SET_CONTENT_LENGTH","CONTENT_LENGTH"],name:"contentLengthMiddleware",override:!0},tl=i(t=>({applyToStack:i(e=>{e.add(DW(t.bodyLengthChecker),kW)},"applyToStack")}),"getContentLengthPlugin")});var np,WEt,R_=I(()=>{np=i(t=>encodeURIComponent(t).replace(/[!'()*]/g,WEt),"escapeUri"),WEt=i(t=>`%${t.charCodeAt(0).toString(16).toUpperCase()}`,"hexEncode")});var aRe,cRe=I(()=>{R_();aRe=i(t=>t.split("/").map(np).join("/"),"escapeUriPath")});function lRe(t){let e=[];for(let r of Object.keys(t).sort()){let n=t[r];if(r=np(r),Array.isArray(n))for(let s=0,o=n.length;s{R_();i(lRe,"buildQueryString")});function N_(t){let e={};if(t=t.replace(/^\?/,""),t)for(let r of t.split("&")){let[n,s=null]=r.split("=");n=decodeURIComponent(n),s&&(s=decodeURIComponent(s)),n in e?Array.isArray(e[n])?e[n].push(s):e[n]=[e[n],s]:e[n]=s}return e}var LW=I(()=>{i(N_,"parseQueryString")});var rs,dRe=I(()=>{LW();rs=i(t=>{if(typeof t=="string")return rs(new URL(t));let{hostname:e,pathname:r,port:n,protocol:s,search:o}=t,a;return o&&(a=N_(o)),{hostname:e,port:n?parseInt(n):void 0,protocol:s,path:r,query:a}},"parseUrl")});var rl={};en(rl,{Field:()=>S_,Fields:()=>B_,FromStringShapeDeserializer:()=>If,HttpBindingProtocol:()=>Cf,HttpInterceptingShapeDeserializer:()=>xf,HttpInterceptingShapeSerializer:()=>wf,HttpProtocol:()=>Ef,HttpRequest:()=>mt,HttpResponse:()=>es,RequestBuilder:()=>w_,RpcProtocol:()=>Su,SerdeContext:()=>vs,ToStringShapeSerializer:()=>Ox,buildQueryString:()=>lRe,collectBody:()=>co,contentLengthMiddleware:()=>DW,contentLengthMiddlewareOptions:()=>kW,determineTimestampFormat:()=>jo,escapeUri:()=>np,escapeUriPath:()=>aRe,extendedEncodeURIComponent:()=>Jc,getContentLengthPlugin:()=>tl,getHttpHandlerExtensionConfiguration:()=>Zc,isValidHostname:()=>rRe,parseQueryString:()=>N_,parseUrl:()=>rs,requestBuilder:()=>vW,resolveHttpHandlerRuntimeConfig:()=>el,resolvedPath:()=>TW});var Qe=I(()=>{i_();a_();WBe();x_();jBe();JBe();PW();_W();KBe();XBe();QW();b_();Xg();eRe();tRe();hf();pW();nRe();sRe();iRe();R_();cRe();uRe();LW();dRe()});var Mx,T_=I(()=>{Mx=i((t,e,r,n,s)=>({name:e,namespace:t,traits:r,input:n,output:s}),"operation")});var pRe,OW,mRe=I(()=>{Ce();Qe();T_();pRe=i(t=>(e,r)=>async n=>{let{response:s}=await e(n),{operationSchema:o}=fr(r),[,a,c,l,u,d]=o??[];try{let p=await t.protocol.deserializeResponse(Mx(a,c,l,u,d),{...t,...r},s);return{response:s,output:p}}catch(p){if(Object.defineProperty(p,"$response",{value:s,enumerable:!1,writable:!1,configurable:!1}),!("$metadata"in p)){let m="Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.";try{p.message+=` + `+m}catch{!r.logger||r.logger?.constructor?.name==="NoOpLogger"?console.warn(m):r.logger?.warn?.(m)}typeof p.$responseBodyText<"u"&&p.$response&&(p.$response.body=p.$responseBodyText);try{if(es.isInstance(s)){let{headers:f={}}=s,g=Object.entries(f);p.$metadata={httpStatusCode:s.statusCode,requestId:OW(/^x-[\w-]+-request-?id$/,g),extendedRequestId:OW(/^x-[\w-]+-id-2$/,g),cfId:OW(/^x-[\w-]+-cf-id$/,g)}}}catch{}}throw p}},"schemaDeserializationMiddleware"),OW=i((t,e)=>(e.find(([r])=>r.match(t))||[void 0,void 0])[1],"findHeader")});var fRe,ARe=I(()=>{Ce();xt();T_();fRe=i(t=>(e,r)=>async n=>{let{operationSchema:s}=fr(r),[,o,a,c,l,u]=s??[],d=r.endpointV2?async()=>ba(r.endpointV2):t.endpoint,p=await t.protocol.serializeRequest(Mx(o,a,c,l,u),n.input,{...t,...r,endpoint:d});return e({...n,request:p})},"schemaSerializationMiddleware")});function Bu(t){return{applyToStack:i(e=>{e.add(fRe(t),gRe),e.add(pRe(t),hRe),t.protocol.setSerdeContext(t)},"applyToStack")}}var hRe,gRe,yRe=I(()=>{mRe();ARe();hRe={name:"deserializerMiddleware",step:"deserialize",tags:["DESERIALIZER"],override:!0},gRe={name:"serializerMiddleware",step:"serialize",tags:["SERIALIZER"],override:!0};i(Bu,"getSchemaSerdePlugin")});var Hr,sp=I(()=>{Hr=class{static{i(this,"Schema")}name;namespace;traits;static assign(e,r){return Object.assign(e,r)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}getName(){return this.namespace+"#"+this.name}}});var P_,jEt,ERe=I(()=>{sp();P_=class t extends Hr{static{i(this,"ListSchema")}static symbol=Symbol.for("@smithy/lis");name;traits;valueSchema;symbol=t.symbol},jEt=i((t,e,r,n)=>Hr.assign(new P_,{name:e,namespace:t,traits:r,valueSchema:n}),"list")});var v_,JEt,CRe=I(()=>{sp();v_=class t extends Hr{static{i(this,"MapSchema")}static symbol=Symbol.for("@smithy/map");name;traits;keySchema;valueSchema;symbol=t.symbol},JEt=i((t,e,r,n,s)=>Hr.assign(new v_,{name:e,namespace:t,traits:r,keySchema:n,valueSchema:s}),"map")});var __,KEt,IRe=I(()=>{sp();__=class t extends Hr{static{i(this,"OperationSchema")}static symbol=Symbol.for("@smithy/ope");name;traits;input;output;symbol=t.symbol},KEt=i((t,e,r,n,s)=>Hr.assign(new __,{name:e,namespace:t,traits:r,input:n,output:s}),"op")});var cy,XEt,MW=I(()=>{sp();cy=class t extends Hr{static{i(this,"StructureSchema")}static symbol=Symbol.for("@smithy/str");name;traits;memberNames;memberList;symbol=t.symbol},XEt=i((t,e,r,n,s)=>Hr.assign(new cy,{name:e,namespace:t,traits:r,memberNames:n,memberList:s}),"struct")});var Q_,ZEt,xRe=I(()=>{sp();MW();Q_=class t extends cy{static{i(this,"ErrorSchema")}static symbol=Symbol.for("@smithy/err");ctor;symbol=t.symbol},ZEt=i((t,e,r,n,s,o)=>Hr.assign(new Q_,{name:e,namespace:t,traits:r,memberNames:n,memberList:s,ctor:null}),"error")});function Xc(t){if(typeof t=="object")return t;if(t=t|0,D_[t])return D_[t];let e={},r=0;for(let n of["httpLabel","idempotent","idempotencyToken","sensitive","httpPayload","httpResponseCode","httpQueryParams"])(t>>r++&1)===1&&(e[n]=1);return D_[t]=e}var D_,FW=I(()=>{D_=[];i(Xc,"translateTraits")});function Ux(t,e){if(t instanceof Ee)return Object.assign(t,{memberName:e,_isMemberSchema:!0});let r=Ee;return new r(t,e)}var Fx,k_,L_,Ee,UW,wRe,bRe=I(()=>{eY();FW();Fx={it:Symbol.for("@smithy/nor-struct-it"),ns:Symbol.for("@smithy/ns")},k_=[],L_={},Ee=class t{static{i(this,"NormalizedSchema")}ref;memberName;static symbol=Symbol.for("@smithy/nor");symbol=t.symbol;name;schema;_isMemberSchema;traits;memberTraits;normalizedTraits;constructor(e,r){this.ref=e,this.memberName=r;let n=[],s=e,o=e;for(this._isMemberSchema=!1;UW(s);)n.push(s[1]),s=s[0],o=Ia(s),this._isMemberSchema=!0;if(n.length>0){this.memberTraits={};for(let a=n.length-1;a>=0;--a){let c=n[a];Object.assign(this.memberTraits,Xc(c))}}else this.memberTraits=0;if(o instanceof t){let a=this.memberTraits;Object.assign(this,o),this.memberTraits=Object.assign({},a,o.getMemberTraits(),this.getMemberTraits()),this.normalizedTraits=void 0,this.memberName=r??o.memberName;return}if(this.schema=Ia(o),wRe(this.schema)?(this.name=`${this.schema[1]}#${this.schema[2]}`,this.traits=this.schema[3]):(this.name=this.memberName??String(o),this.traits=0),this._isMemberSchema&&!r)throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(!0)} missing member name.`)}static[Symbol.hasInstance](e){let r=this.prototype.isPrototypeOf(e);return!r&&typeof e=="object"&&e!==null?e.symbol===this.symbol:r}static of(e){let r=typeof e=="function"||typeof e=="object"&&e!==null;if(typeof e=="number"){if(k_[e])return k_[e]}else if(typeof e=="string"){if(L_[e])return L_[e]}else if(r&&e[Fx.ns])return e[Fx.ns];let n=Ia(e);if(n instanceof t)return n;if(UW(n)){let[o,a]=n;if(o instanceof t)return Object.assign(o.getMergedTraits(),Xc(a)),o;throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(e,null,2)}.`)}let s=new t(n);return r?e[Fx.ns]=s:typeof n=="string"?L_[n]=s:typeof n=="number"?k_[n]=s:s}getSchema(){let e=this.schema;return Array.isArray(e)&&e[0]===0?e[4]:e}getName(e=!1){let{name:r}=this;return!e&&r&&r.includes("#")?r.split("#")[1]:r||void 0}getMemberName(){return this.memberName}isMemberSchema(){return this._isMemberSchema}isListSchema(){let e=this.getSchema();return typeof e=="number"?e>=64&&e<128:e[0]===1}isMapSchema(){let e=this.getSchema();return typeof e=="number"?e>=128&&e<=255:e[0]===2}isStructSchema(){let e=this.getSchema();if(typeof e!="object")return!1;let r=e[0];return r===3||r===-3||r===4}isUnionSchema(){let e=this.getSchema();return typeof e!="object"?!1:e[0]===4}isBlobSchema(){let e=this.getSchema();return e===21||e===42}isTimestampSchema(){let e=this.getSchema();return typeof e=="number"&&e>=4&&e<=7}isUnitSchema(){return this.getSchema()==="unit"}isDocumentSchema(){return this.getSchema()===15}isStringSchema(){return this.getSchema()===0}isBooleanSchema(){return this.getSchema()===2}isNumericSchema(){return this.getSchema()===1}isBigIntegerSchema(){return this.getSchema()===17}isBigDecimalSchema(){return this.getSchema()===19}isStreaming(){let{streaming:e}=this.getMergedTraits();return!!e||this.getSchema()===42}isIdempotencyToken(){return!!this.getMergedTraits().idempotencyToken}getMergedTraits(){return this.normalizedTraits??(this.normalizedTraits={...this.getOwnTraits(),...this.getMemberTraits()})}getMemberTraits(){return Xc(this.memberTraits)}getOwnTraits(){return Xc(this.traits)}getKeySchema(){let[e,r]=[this.isDocumentSchema(),this.isMapSchema()];if(!e&&!r)throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(!0)}`);let n=this.getSchema(),s=e?15:n[4]??0;return Ux([s,0],"key")}getValueSchema(){let e=this.getSchema(),[r,n,s]=[this.isDocumentSchema(),this.isMapSchema(),this.isListSchema()],o=typeof e=="number"?63&e:e&&typeof e=="object"&&(n||s)?e[3+e[0]]:r?15:void 0;if(o!=null)return Ux([o,0],n?"value":"member");throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no value member.`)}getMemberSchema(e){let r=this.getSchema();if(this.isStructSchema()&&r[4].includes(e)){let n=r[4].indexOf(e),s=r[5][n];return Ux(UW(s)?s:[s,0],e)}if(this.isDocumentSchema())return Ux([15,0],e);throw new Error(`@smithy/core/schema - ${this.getName(!0)} has no member=${e}.`)}getMemberSchemas(){let e={};try{for(let[r,n]of this.structIterator())e[r]=n}catch{}return e}getEventStreamMember(){if(this.isStructSchema()){for(let[e,r]of this.structIterator())if(r.isStreaming()&&r.isStructSchema())return e}return""}*structIterator(){if(this.isUnitSchema())return;if(!this.isStructSchema())throw new Error("@smithy/core/schema - cannot iterate non-struct schema.");let e=this.getSchema(),r=e[4].length,n=e[Fx.it];if(n&&r===n.length){yield*n;return}n=Array(r);for(let s=0;sArray.isArray(t)&&t.length===2,"isMemberSchema"),wRe=i(t=>Array.isArray(t)&&t.length>=5,"isStaticSchema")});var qx,eCt,tCt,SRe=I(()=>{sp();qx=class t extends Hr{static{i(this,"SimpleSchema")}static symbol=Symbol.for("@smithy/sim");name;schemaRef;traits;symbol=t.symbol},eCt=i((t,e,r,n)=>Hr.assign(new qx,{name:e,namespace:t,traits:n,schemaRef:r}),"sim"),tCt=i((t,e,r,n)=>Hr.assign(new qx,{name:e,namespace:t,traits:r,schemaRef:n}),"simAdapter")});var rCt,BRe=I(()=>{rCt={BLOB:21,STREAMING_BLOB:42,BOOLEAN:2,STRING:0,NUMERIC:1,BIG_INTEGER:17,BIG_DECIMAL:19,DOCUMENT:15,TIMESTAMP_DEFAULT:4,TIMESTAMP_DATE_TIME:5,TIMESTAMP_HTTP_DATE:6,TIMESTAMP_EPOCH_SECONDS:7,LIST_MODIFIER:64,MAP_MODIFIER:128}});var gr,RRe=I(()=>{gr=class t{static{i(this,"TypeRegistry")}namespace;schemas;exceptions;static registries=new Map;constructor(e,r=new Map,n=new Map){this.namespace=e,this.schemas=r,this.exceptions=n}static for(e){return t.registries.has(e)||t.registries.set(e,new t(e)),t.registries.get(e)}copyFrom(e){let{schemas:r,exceptions:n}=this;for(let[s,o]of e.schemas)r.has(s)||r.set(s,o);for(let[s,o]of e.exceptions)n.has(s)||n.set(s,o)}register(e,r){let n=this.normalizeShapeId(e);for(let s of[this,t.for(n.split("#")[0])])s.schemas.set(n,r)}getSchema(e){let r=this.normalizeShapeId(e);if(!this.schemas.has(r)){if(!e.includes("#")){let n="#"+e,s=[];for(let[o,a]of this.schemas.entries())o.endsWith(n)&&s.push(a);if(s.length===1)return s[0]}throw new Error(`@smithy/core/schema - schema not found for ${r}`)}return this.schemas.get(r)}registerError(e,r){let n=e,s=n[1];for(let o of[this,t.for(s)])o.schemas.set(s+"#"+n[2],n),o.exceptions.set(n,r)}getErrorCtor(e){let r=e;return this.exceptions.has(r)?this.exceptions.get(r):t.for(r[1]).exceptions.get(r)}getBaseException(){for(let e of this.exceptions.keys())if(Array.isArray(e)){let[,r,n]=e,s=r+"#"+n;if(s.startsWith("smithy.ts.sdk.synthetic.")&&s.endsWith("ServiceException"))return e}}find(e){for(let r of this.schemas.values())if(e(r))return r}clear(){this.schemas.clear(),this.exceptions.clear()}normalizeShapeId(e){return e.includes("#")?e:this.namespace+"#"+e}}});var $x={};en($x,{ErrorSchema:()=>Q_,ListSchema:()=>P_,MapSchema:()=>v_,NormalizedSchema:()=>Ee,OperationSchema:()=>__,SCHEMA:()=>rCt,Schema:()=>Hr,SimpleSchema:()=>qx,StructureSchema:()=>cy,TypeRegistry:()=>gr,deref:()=>Ia,deserializerMiddlewareOption:()=>hRe,error:()=>ZEt,getSchemaSerdePlugin:()=>Bu,isStaticSchema:()=>wRe,list:()=>jEt,map:()=>JEt,op:()=>KEt,operation:()=>Mx,serializerMiddlewareOption:()=>gRe,sim:()=>eCt,simAdapter:()=>tCt,simpleSchemaCacheN:()=>k_,simpleSchemaCacheS:()=>L_,struct:()=>XEt,traitsCache:()=>D_,translateTraits:()=>Xc});var Ct=I(()=>{eY();yRe();ERe();CRe();IRe();T_();xRe();bRe();sp();SRe();MW();BRe();FW();RRe()});function ly(t,e){if(e==null)return e;let r=Ee.of(t);if(r.getMergedTraits().sensitive)return qW;if(r.isListSchema()){if(!!r.getValueSchema().getMergedTraits().sensitive)return qW}else if(r.isMapSchema()){if(!!r.getKeySchema().getMergedTraits().sensitive||!!r.getValueSchema().getMergedTraits().sensitive)return qW}else if(r.isStructSchema()&&typeof e=="object"){let n=e,s={};for(let[o,a]of r.structIterator())n[o]!=null&&(s[o]=ly(a,n[o]));return s}return e}var qW,$W=I(()=>{Ct();qW="***SensitiveInformation***";i(ly,"schemaLogFilter")});var NRe,pn,GW,TRe=I(()=>{NRe=D(Ca());XP();$W();pn=class{static{i(this,"Command")}middlewareStack=Yd();schema;static classBuilder(){return new GW}resolveMiddlewareWithContext(e,r,n,{middlewareFn:s,clientName:o,commandName:a,inputFilterSensitiveLog:c,outputFilterSensitiveLog:l,smithyContext:u,additionalContext:d,CommandCtor:p}){for(let w of s.bind(this)(p,e,r,n))this.middlewareStack.use(w);let m=e.concat(this.middlewareStack),{logger:f}=r,g={logger:f,clientName:o,commandName:a,inputFilterSensitiveLog:c,outputFilterSensitiveLog:l,[NRe.SMITHY_CONTEXT_KEY]:{commandInstance:this,...u},...d},{requestHandler:E}=r,x=n??{};return u.eventStream&&(x={isEventStream:!0,...x}),m.resolve(w=>E.handle(w.request,x),g)}},GW=class{static{i(this,"ClassBuilder")}_init=i(()=>{},"_init");_ep={};_middlewareFn=i(()=>[],"_middlewareFn");_commandName="";_clientName="";_additionalContext={};_smithyContext={};_inputFilterSensitiveLog=void 0;_outputFilterSensitiveLog=void 0;_serializer=null;_deserializer=null;_operationSchema;init(e){this._init=e}ep(e){return this._ep=e,this}m(e){return this._middlewareFn=e,this}s(e,r,n={}){return this._smithyContext={service:e,operation:r,...n},this}c(e={}){return this._additionalContext=e,this}n(e,r){return this._clientName=e,this._commandName=r,this}f(e=n=>n,r=n=>n){return this._inputFilterSensitiveLog=e,this._outputFilterSensitiveLog=r,this}ser(e){return this._serializer=e,this}de(e){return this._deserializer=e,this}sc(e){return this._operationSchema=e,this._smithyContext.operationSchema=e,this}build(){let e=this,r;return r=class extends pn{static{i(this,"CommandRef")}input;static getEndpointParameterInstructions(){return e._ep}constructor(...[n]){super(),this.input=n??{},e._init(this),this.schema=e._operationSchema}resolveMiddleware(n,s,o){let a=e._operationSchema,c=a?.[4]??a?.input,l=a?.[5]??a?.output;return this.resolveMiddlewareWithContext(n,s,o,{CommandCtor:r,middlewareFn:e._middlewareFn,clientName:e._clientName,commandName:e._commandName,inputFilterSensitiveLog:e._inputFilterSensitiveLog??(a?ly.bind(null,c):u=>u),outputFilterSensitiveLog:e._outputFilterSensitiveLog??(a?ly.bind(null,l):u=>u),smithyContext:e._smithyContext,additionalContext:e._additionalContext})}serialize=e._serializer;deserialize=e._deserializer}}}});var PRe,vRe=I(()=>{PRe="***SensitiveInformation***"});var nl,_Re=I(()=>{nl=i((t,e,r)=>{for(let[o,a]of Object.entries(t)){let c=i(async function(u,d,p){let m=new a(u);if(typeof d=="function")this.send(m,d);else if(typeof p=="function"){if(typeof d!="object")throw new Error(`Expected http options but got ${typeof d}`);this.send(m,d||{},p)}else return this.send(m,d)},"methodImpl"),l=(o[0].toLowerCase()+o.slice(1)).replace(/Command$/,"");e.prototype[l]=c}let{paginators:n={},waiters:s={}}=r??{};for(let[o,a]of Object.entries(n))e.prototype[o]===void 0&&(e.prototype[o]=function(c={},l,...u){return a({...l,client:this},c,...u)});for(let[o,a]of Object.entries(s))e.prototype[o]===void 0&&(e.prototype[o]=async function(c={},l,...u){let d=l;return typeof l=="number"&&(d={maxWaitTime:l}),a({...d,client:this},c,...u)})},"createAggregatedClient")});var Fi,bf,HW=I(()=>{Fi=class t extends Error{static{i(this,"ServiceException")}$fault;$response;$retryable;$metadata;constructor(e){super(e.message),Object.setPrototypeOf(this,Object.getPrototypeOf(this).constructor.prototype),this.name=e.name,this.$fault=e.$fault,this.$metadata=e.$metadata}static isInstance(e){if(!e)return!1;let r=e;return t.prototype.isPrototypeOf(r)||!!r.$fault&&!!r.$metadata&&(r.$fault==="client"||r.$fault==="server")}static[Symbol.hasInstance](e){if(!e)return!1;let r=e;return this===t?t.isInstance(e):t.isInstance(e)?r.name&&this.name?this.prototype.isPrototypeOf(e)||r.name===this.name:this.prototype.isPrototypeOf(e):!1}},bf=i((t,e={})=>{Object.entries(e).filter(([,n])=>n!==void 0).forEach(([n,s])=>{(t[n]==null||t[n]==="")&&(t[n]=s)});let r=t.message||t.Message||"UnknownError";return t.message=r,delete t.Message,t},"decorateServiceException")});var zW,QRe,nCt,DRe=I(()=>{HW();zW=i(({output:t,parsedBody:e,exceptionCtor:r,errorCode:n})=>{let s=nCt(t),o=s.httpStatusCode?s.httpStatusCode+"":void 0,a=new r({name:e?.code||e?.Code||n||o||"UnknownError",$fault:"client",$metadata:s});throw bf(a,e)},"throwDefaultError"),QRe=i(t=>({output:e,parsedBody:r,errorCode:n})=>{zW({output:e,parsedBody:r,exceptionCtor:t,errorCode:n})},"withBaseException"),nCt=i(t=>({httpStatusCode:t.statusCode,requestId:t.headers["x-amzn-requestid"]??t.headers["x-amzn-request-id"]??t.headers["x-amz-request-id"],extendedRequestId:t.headers["x-amz-id-2"],cfId:t.headers["x-amz-cf-id"]}),"deserializeMetadata")});var sl,kRe=I(()=>{sl=i(t=>{switch(t){case"standard":return{retryMode:"standard",connectionTimeout:3100};case"in-region":return{retryMode:"standard",connectionTimeout:1100};case"cross-region":return{retryMode:"standard",connectionTimeout:3100};case"mobile":return{retryMode:"standard",connectionTimeout:3e4};default:return{}}},"loadConfigsForDefaultMode")});var LRe,ol,ORe=I(()=>{LRe=!1,ol=i(t=>{t&&!LRe&&parseInt(t.substring(1,t.indexOf(".")))<16&&(LRe=!0)},"emitWarningIfUnsupportedVersion")});var uy,MRe,O_,M_,VW=I(()=>{uy=D(Ca()),MRe=Object.values(uy.AlgorithmId),O_=i(t=>{let e=[];for(let r in uy.AlgorithmId){let n=uy.AlgorithmId[r];t[n]!==void 0&&e.push({algorithmId:i(()=>n,"algorithmId"),checksumConstructor:i(()=>t[n],"checksumConstructor")})}for(let[r,n]of Object.entries(t.checksumAlgorithms??{}))e.push({algorithmId:i(()=>r,"algorithmId"),checksumConstructor:i(()=>n,"checksumConstructor")});return{addChecksumAlgorithm(r){t.checksumAlgorithms=t.checksumAlgorithms??{};let n=r.algorithmId(),s=r.checksumConstructor();MRe.includes(n)?t.checksumAlgorithms[n.toUpperCase()]=s:t.checksumAlgorithms[n]=s,e.push(r)},checksumAlgorithms(){return e}}},"getChecksumConfiguration"),M_=i(t=>{let e={};return t.checksumAlgorithms().forEach(r=>{let n=r.algorithmId();MRe.includes(n)&&(e[n]=r.checksumConstructor())}),e},"resolveChecksumRuntimeConfig")});var F_,U_,YW=I(()=>{F_=i(t=>({setRetryStrategy(e){t.retryStrategy=e},retryStrategy(){return t.retryStrategy}}),"getRetryConfiguration"),U_=i(t=>{let e={};return e.retryStrategy=t.retryStrategy(),e},"resolveRetryRuntimeConfig")});var Ra,FRe,il,URe=I(()=>{VW();YW();Ra=i(t=>Object.assign(O_(t),F_(t)),"getDefaultExtensionConfiguration"),FRe=Ra,il=i(t=>Object.assign(M_(t),U_(t)),"resolveDefaultRuntimeConfig")});var qRe,$Re=I(()=>{qRe=i(t=>Array.isArray(t)?t:[t],"getArrayIfSingleItem")});var Sf,GRe=I(()=>{Sf=i(t=>{let e="#text";for(let r in t)t.hasOwnProperty(r)&&t[r][e]!==void 0?t[r]=t[r][e]:typeof t[r]=="object"&&t[r]!==null&&(t[r]=Sf(t[r]));return t},"getValueFromTextNode")});var HRe,zRe=I(()=>{HRe=i(t=>t!=null,"isSerializableHeaderValue")});var lo,VRe=I(()=>{lo=class{static{i(this,"NoOpLogger")}trace(){}debug(){}info(){}warn(){}error(){}}});function WW(t,e,r){let n,s,o;if(typeof e>"u"&&typeof r>"u")n={},o=t;else{if(n=t,typeof e=="function")return s=e,o=r,sCt(n,s,o);o=e}for(let a of Object.keys(o)){if(!Array.isArray(o[a])){n[a]=o[a];continue}jRe(n,null,o,a)}return n}var YRe,WRe,sCt,jRe,oCt,iCt,JRe=I(()=>{i(WW,"map");YRe=i(t=>{let e={};for(let[r,n]of Object.entries(t||{}))e[r]=[,n];return e},"convertMap"),WRe=i((t,e)=>{let r={};for(let n in e)jRe(r,t,e,n);return r},"take"),sCt=i((t,e,r)=>WW(t,Object.entries(r).reduce((n,[s,o])=>(Array.isArray(o)?n[s]=o:typeof o=="function"?n[s]=[e,o()]:n[s]=[e,o],n),{})),"mapWithFilter"),jRe=i((t,e,r,n)=>{if(e!==null){let a=r[n];typeof a=="function"&&(a=[,a]);let[c=oCt,l=iCt,u=n]=a;(typeof c=="function"&&c(e[u])||typeof c!="function"&&c)&&(t[n]=l(e[u]));return}let[s,o]=r[n];if(typeof o=="function"){let a,c=s===void 0&&(a=o())!=null,l=typeof s=="function"&&!!s(void 0)||typeof s!="function"&&!!s;c?t[n]=a:l&&(t[n]=o())}else{let a=s===void 0&&o!=null,c=typeof s=="function"&&!!s(o)||typeof s!="function"&&!!s;(a||c)&&(t[n]=o)}},"applyInstruction"),oCt=i(t=>t!=null,"nonNullish"),iCt=i(t=>t,"pass")});var KRe,XRe,ZRe=I(()=>{KRe=i(t=>{if(t!==t)return"NaN";switch(t){case 1/0:return"Infinity";case-1/0:return"-Infinity";default:return t}},"serializeFloat"),XRe=i(t=>t.toISOString().replace(".000Z","Z"),"serializeDateTime")});var q_,eNe=I(()=>{q_=i(t=>{if(t==null)return{};if(Array.isArray(t))return t.filter(e=>e!=null).map(q_);if(typeof t=="object"){let e={};for(let r of Object.keys(t))t[r]!=null&&(e[r]=q_(t[r]));return e}return t},"_json")});var Ui={};en(Ui,{AlgorithmId:()=>uy.AlgorithmId,Client:()=>Kn,Command:()=>pn,NoOpLogger:()=>lo,SENSITIVE_STRING:()=>PRe,ServiceException:()=>Fi,WaiterState:()=>zo,_json:()=>q_,checkExceptions:()=>Nxe,constructStack:()=>Yd,convertMap:()=>YRe,createAggregatedClient:()=>nl,createWaiter:()=>Dxe,decorateServiceException:()=>bf,emitWarningIfUnsupportedVersion:()=>ol,getArrayIfSingleItem:()=>qRe,getChecksumConfiguration:()=>O_,getDefaultClientConfiguration:()=>FRe,getDefaultExtensionConfiguration:()=>Ra,getRetryConfiguration:()=>F_,getSmithyContext:()=>fr,getValueFromTextNode:()=>Sf,invalidFunction:()=>xxe,invalidProvider:()=>bxe,isSerializableHeaderValue:()=>HRe,loadConfigsForDefaultMode:()=>sl,map:()=>WW,normalizeProvider:()=>Ut,resolveChecksumRuntimeConfig:()=>M_,resolveDefaultRuntimeConfig:()=>il,resolveRetryRuntimeConfig:()=>U_,schemaLogFilter:()=>ly,serializeDateTime:()=>XRe,serializeFloat:()=>KRe,take:()=>WRe,throwDefaultError:()=>zW,waiterServiceDefaults:()=>ZP,withBaseException:()=>QRe});var Ce=I(()=>{XP();Cxe();Ixe();wxe();Sxe();kxe();ev();Lxe();TRe();vRe();_Re();DRe();kRe();ORe();HW();URe();VW();YW();$Re();GRe();zRe();VRe();JRe();$W();ZRe();eNe()});var tNe,rNe,nNe,sNe,oNe,iNe,aNe=I(()=>{tNe=["AuthFailure","InvalidSignatureException","RequestExpired","RequestInTheFuture","RequestTimeTooSkewed","SignatureDoesNotMatch"],rNe=["BandwidthLimitExceeded","EC2ThrottledException","LimitExceededException","PriorRequestNotComplete","ProvisionedThroughputExceededException","RequestLimitExceeded","RequestThrottled","RequestThrottledException","SlowDown","ThrottledException","Throttling","ThrottlingException","TooManyRequestsException","TransactionInProgressException"],nNe=["TimeoutError","RequestTimeout","RequestTimeoutException"],sNe=[500,502,503,504],oNe=["ECONNRESET","ECONNREFUSED","EPIPE","ETIMEDOUT"],iNe=["EHOSTUNREACH","ENETUNREACH","ENOTFOUND"]});function KW(t){return t.code==="ERR_HTTP2_STREAM_ERROR"&&t.message.includes("NGHTTP2_REFUSED_STREAM")}var Gx,$_,jW,JW,al,op,G_,dy=I(()=>{aNe();Gx=i(t=>t?.$retryable!==void 0,"isRetryableByTrait"),$_=i(t=>tNe.includes(t.name),"isClockSkewError"),jW=i(t=>t.$metadata?.clockSkewCorrected,"isClockSkewCorrectedError"),JW=i(t=>{let e=new Set(["Failed to fetch","NetworkError when attempting to fetch resource","The Internet connection appears to be offline","Load failed","Network request failed"]);return t&&t instanceof TypeError?e.has(t.message):!1},"isBrowserNetworkError"),al=i(t=>t.$metadata?.httpStatusCode===429||rNe.includes(t.name)||t.$retryable?.throttling==!0,"isThrottlingError"),op=i((t,e=0)=>Gx(t)||jW(t)||t.name==="InvalidSignatureException"&&t.message?.includes("Signature expired")||nNe.includes(t.name)||oNe.includes(t?.code||"")||iNe.includes(t?.code||"")||sNe.includes(t.$metadata?.httpStatusCode||0)||JW(t)||KW(t)||t.cause!==void 0&&e<=10&&op(t.cause,e+1),"isTransientError"),G_=i(t=>{if(t.$metadata?.httpStatusCode!==void 0){let e=t.$metadata.httpStatusCode;return 500<=e&&e<=599&&!op(t)}return!1},"isServerError");i(KW,"isNodeJsHttp2TransientError")});var H_,Hx,z_,py,XW,ZW,V_,ip,ap,zx=I(()=>{H_=100,Hx=2e4,z_=500,py=500,XW=5,ZW=10,V_=1,ip="amz-sdk-invocation-id",ap="amz-sdk-request"});function e8(t,e){if(es.isInstance(t))for(let r of Object.keys(t.headers)){let n=r.toLowerCase();if(n==="retry-after"){let s=t.headers[r],o=NaN;if(s.endsWith("GMT"))try{o=(Ug(s).getTime()-Date.now())/1e3}catch(a){e?.trace?.("Failed to parse retry-after header"),e?.trace?.(a)}else s.match(/ GMT, ((\d+)|(\d+\.\d+))$/)?o=Number(s.match(/ GMT, ([\d.]+)$/)?.[1]):s.match(/^((\d+)|(\d+\.\d+))$/)?o=Number(s):Date.parse(s)>=Date.now()&&(o=(Date.parse(s)-Date.now())/1e3);return isNaN(o)?void 0:new Date(Date.now()+o*1e3)}else if(n==="x-amz-retry-after"){let s=t.headers[r],o=Number(s);if(isNaN(o)){e?.trace?.(`Failed to parse x-amz-retry-after=${s}`);return}return new Date(Date.now()+o)}}}function cNe(t,e){return e8(t,e)}var t8=I(()=>{Qe();st();i(e8,"parseRetryAfterHeader");i(cNe,"getRetryAfterHint")});var Y_,r8=I(()=>{Y_=i(t=>t instanceof Error?t:t instanceof Object?Object.assign(new Error,t):typeof t=="string"?new Error(t):new Error(`AWS SDK error wrapper for ${t}`),"asSdkError")});function n8(t){return e=>(r,n)=>async s=>{let o=await e.retryStrategy(),a=await e.maxAttempts();if(aCt(o)){o=o;let c=await o.acquireInitialRetryToken((n.partition_id??"")+(n.__retryLongPoll?":longpoll":"")),l=new Error,u=0,d=0,{request:p}=s,m=mt.isInstance(p);for(m&&(p.headers[ip]=Kg());;)try{m&&(p.headers[ap]=`attempt=${u+1}; max=${a}`);let{response:f,output:g}=await r(s);return o.recordSuccess(c),g.$metadata.attempts=u+1,g.$metadata.totalRetryDelay=d,{response:f,output:g}}catch(f){let g=cCt(f,e.logger);if(l=Y_(f),m&&t(p))throw(n.logger instanceof lo?console:n.logger)?.warn("An error was encountered in a non-retryable streaming request."),l;try{c=await o.refreshRetryTokenForRetry(c,g)}catch(x){throw typeof x.$backoff=="number"&&await lNe(x.$backoff),l.$metadata||(l.$metadata={}),l.$metadata.attempts=u+1,l.$metadata.totalRetryDelay=d,l}u=c.getRetryCount();let E=c.getRetryDelay();d+=E,await lNe(E)}}else return o=o,o?.mode&&(n.userAgent=[...n.userAgent||[],["cfg/retry-mode",o.mode]]),o.retry(r,s)}}function uNe(t){let e=n8(t);return r=>({applyToStack:i(n=>{n.add(e(r),s8)},"applyToStack")})}var lNe,aCt,cCt,lCt,s8,o8=I(()=>{Ce();Qe();st();dy();zx();t8();r8();i(n8,"bindRetryMiddleware");lNe=i(t=>new Promise(e=>setTimeout(e,t)),"cooldown"),aCt=i(t=>typeof t.acquireInitialRetryToken<"u"&&typeof t.refreshRetryTokenForRetry<"u"&&typeof t.recordSuccess<"u","isRetryStrategyV2"),cCt=i((t,e)=>{let r={error:t,errorType:lCt(t)},n=e8(t.$response,e);return n&&(r.retryAfterHint=n),r},"getRetryErrorInfo"),lCt=i(t=>al(t)?"THROTTLING":op(t)?"TRANSIENT":G_(t)?"SERVER_ERROR":"CLIENT_ERROR","getRetryErrorType"),s8={name:"retryMiddleware",tags:["RETRY"],step:"finalizeRequest",priority:"high",override:!0};i(uNe,"bindGetRetryPlugin")});var cp,W_=I(()=>{dy();cp=class t{static{i(this,"DefaultRateLimiter")}static setTimeoutFn=setTimeout;beta;minCapacity;minFillRate;scaleConstant;smooth;enabled=!1;availableTokens=0;lastMaxRate=0;measuredTxRate=0;requestCount=0;fillRate;lastThrottleTime;lastTimestamp=0;lastTxRateBucket;maxCapacity;timeWindow=0;constructor(e){this.beta=e?.beta??.7,this.minCapacity=e?.minCapacity??1,this.minFillRate=e?.minFillRate??.5,this.scaleConstant=e?.scaleConstant??.4,this.smooth=e?.smooth??.8,this.lastThrottleTime=this.getCurrentTimeInSeconds(),this.lastTxRateBucket=Math.floor(this.getCurrentTimeInSeconds()),this.fillRate=this.minFillRate,this.maxCapacity=this.minCapacity}async getSendToken(){return this.acquireTokenBucket(1)}updateClientSendingRate(e){let r;this.updateMeasuredRate();let n=e;if(n?.errorType==="THROTTLING"||al(n?.error??e)){let a=this.enabled?Math.min(this.measuredTxRate,this.fillRate):this.measuredTxRate;this.lastMaxRate=a,this.calculateTimeWindow(),this.lastThrottleTime=this.getCurrentTimeInSeconds(),r=this.cubicThrottle(a),this.enableTokenBucket()}else this.calculateTimeWindow(),r=this.cubicSuccess(this.getCurrentTimeInSeconds());let o=Math.min(r,2*this.measuredTxRate);this.updateTokenBucketRate(o)}getCurrentTimeInSeconds(){return Date.now()/1e3}async acquireTokenBucket(e){if(this.enabled){for(this.refillTokenBucket();e>this.availableTokens;){let r=(e-this.availableTokens)/this.fillRate*1e3;await new Promise(n=>t.setTimeoutFn(n,r)),this.refillTokenBucket()}this.availableTokens=this.availableTokens-e}}refillTokenBucket(){let e=this.getCurrentTimeInSeconds();if(!this.lastTimestamp){this.lastTimestamp=e;return}let r=(e-this.lastTimestamp)*this.fillRate;this.availableTokens=Math.min(this.maxCapacity,this.availableTokens+r),this.lastTimestamp=e}calculateTimeWindow(){this.timeWindow=this.getPrecise(Math.pow(this.lastMaxRate*(1-this.beta)/this.scaleConstant,1/3))}cubicThrottle(e){return this.getPrecise(e*this.beta)}cubicSuccess(e){return this.getPrecise(this.scaleConstant*Math.pow(e-this.lastThrottleTime-this.timeWindow,3)+this.lastMaxRate)}enableTokenBucket(){this.enabled=!0}updateTokenBucketRate(e){this.refillTokenBucket(),this.fillRate=Math.max(e,this.minFillRate),this.maxCapacity=Math.max(e,this.minCapacity),this.availableTokens=Math.min(this.availableTokens,this.maxCapacity)}updateMeasuredRate(){let e=this.getCurrentTimeInSeconds(),r=Math.floor(e*2)/2;if(this.requestCount++,r>this.lastTxRateBucket){let n=this.requestCount/(r-this.lastTxRateBucket);this.measuredTxRate=this.getPrecise(n*this.smooth+this.measuredTxRate*(1-this.smooth)),this.requestCount=0,this.lastTxRateBucket=r}}getPrecise(e){return parseFloat(e.toFixed(8))}}});var mn,Vx=I(()=>{mn=class t{static{i(this,"Retry")}static v2026=typeof process<"u"&&process.env?.SMITHY_NEW_RETRIES_2026==="true";static delay(){return t.v2026?50:100}static throttlingDelay(){return t.v2026?1e3:500}static cost(){return t.v2026?14:5}static throttlingCost(){return t.v2026?5:10}static modifiedCostType(){return t.v2026?"THROTTLING":"TRANSIENT"}}});var j_,dNe=I(()=>{Vx();j_=class{static{i(this,"DefaultRetryBackoffStrategy")}x=mn.delay();computeNextBackoffDelay(e){let s=Math.random()*Math.min(this.x*2**e,2e4);return Math.floor(s)}setDelayBase(e){this.x=e}}});var Yx,pNe=I(()=>{Yx=class{static{i(this,"DefaultRetryToken")}delay;count;cost;longPoll;constructor(e,r,n,s){this.delay=e,this.count=r,this.cost=n,this.longPoll=s}getRetryCount(){return this.count}getRetryDelay(){return Math.min(2e4,this.delay)}getRetryCost(){return this.cost}isLongPoll(){return this.longPoll}}});var xn,Na,qi,Bf=I(()=>{(function(t){t.STANDARD="standard",t.ADAPTIVE="adaptive"})(xn||(xn={}));Na=3,qi=xn.STANDARD});var J_,Ta,Wx=I(()=>{dNe();pNe();Bf();Vx();J_={incompatible:1,attempts:2,capacity:3},Ta=class{static{i(this,"StandardRetryStrategy")}mode=xn.STANDARD;capacity=500;retryBackoffStrategy;maxAttemptsProvider;baseDelay;constructor(e){typeof e=="number"?this.maxAttemptsProvider=async()=>e:typeof e=="function"?this.maxAttemptsProvider=e:e&&typeof e=="object"&&(this.maxAttemptsProvider=async()=>e.maxAttempts,this.baseDelay=e.baseDelay,this.retryBackoffStrategy=e.backoff),this.maxAttemptsProvider??=async()=>Na,this.baseDelay??=mn.delay(),this.retryBackoffStrategy??=new j_}async acquireInitialRetryToken(e){return new Yx(mn.delay(),0,void 0,mn.v2026&&e.includes(":longpoll"))}async refreshRetryTokenForRetry(e,r){let n=await this.getMaxAttempts(),s=this.retryCode(e,r,n),o=s===0,a=e.isLongPoll?.();if(o||a){let c=r.errorType;this.retryBackoffStrategy.setDelayBase(c==="THROTTLING"?mn.throttlingDelay():this.baseDelay);let l=this.retryBackoffStrategy.computeNextBackoffDelay(e.getRetryCount()),u=l;if(r.retryAfterHint instanceof Date&&(u=Math.max(l,Math.min(r.retryAfterHint.getTime()-Date.now(),l+5e3))),o){let d=this.getCapacityCost(c);return this.capacity-=d,new Yx(u,e.getRetryCount()+1,d,e.isLongPoll?.()??!1)}else throw Object.assign(new Error("No retry token available"),{$backoff:mn.v2026&&s===J_.capacity&&a?u:0})}throw new Error("No retry token available")}recordSuccess(e){this.capacity=Math.min(500,this.capacity+(e.getRetryCost()??1))}getCapacity(){return this.capacity}async maxAttempts(){return this.maxAttemptsProvider()}async getMaxAttempts(){try{return await this.maxAttemptsProvider()}catch{return console.warn(`Max attempts provider could not resolve. Using default of ${Na}`),Na}}retryCode(e,r,n){let s=e.getRetryCount()+1,o=this.isRetryableError(r.errorType)?0:J_.incompatible,a=s=this.getCapacityCost(r.errorType)?0:J_.capacity;return o||a||c}getCapacityCost(e){return e===mn.modifiedCostType()?mn.throttlingCost():mn.cost()}isRetryableError(e){return e==="THROTTLING"||e==="TRANSIENT"}}});var my,i8=I(()=>{W_();Wx();Bf();my=class{static{i(this,"AdaptiveRetryStrategy")}mode=xn.ADAPTIVE;rateLimiter;standardRetryStrategy;constructor(e,r){let{rateLimiter:n}=r??{};this.rateLimiter=n??new cp,this.standardRetryStrategy=r?new Ta({maxAttempts:typeof e=="number"?e:3,...r}):new Ta(e)}async acquireInitialRetryToken(e){let r=await this.standardRetryStrategy.acquireInitialRetryToken(e);return await this.rateLimiter.getSendToken(),r}async refreshRetryTokenForRetry(e,r){this.rateLimiter.updateClientSendingRate(r);let n=await this.standardRetryStrategy.refreshRetryTokenForRetry(e,r);return await this.rateLimiter.getSendToken(),n}recordSuccess(e){this.rateLimiter.updateClientSendingRate({}),this.standardRetryStrategy.recordSuccess(e)}async maxAttemptsProvider(){return this.standardRetryStrategy.maxAttempts()}}});var K_,mNe=I(()=>{Wx();Vx();K_=class extends Ta{static{i(this,"ConfiguredRetryStrategy")}computeNextBackoffDelay;constructor(e,r=mn.delay()){super(typeof e=="function"?e:async()=>e),typeof r=="number"?this.computeNextBackoffDelay=()=>r:this.computeNextBackoffDelay=r}async refreshRetryTokenForRetry(e,r){let n=await super.refreshRetryTokenForRetry(e,r);return n.getRetryDelay=()=>this.computeNextBackoffDelay(n.getRetryCount()),n}}});var fNe,ANe=I(()=>{fNe=i((t,e)=>{let r=t,n=e?.noRetryIncrement??1,s=e?.retryCost??5,o=e?.timeoutRetryCost??10,a=t,c=i(p=>p.name==="TimeoutError"?o:s,"getCapacityAmount"),l=i(p=>c(p)<=a,"hasRetryTokens");return Object.freeze({hasRetryTokens:l,retrieveRetryTokens:i(p=>{if(!l(p))throw new Error("No retry token available");let m=c(p);return a-=m,m},"retrieveRetryTokens"),releaseRetryTokens:i(p=>{a+=p??n,a=Math.min(a,r)},"releaseRetryTokens")})},"getDefaultRetryQuota")});var X_,a8=I(()=>{X_=i((t,e)=>Math.floor(Math.min(2e4,Math.random()*2**e*t)),"defaultDelayDecider")});var Z_,c8=I(()=>{dy();Z_=i(t=>t?Gx(t)||$_(t)||al(t)||op(t):!1,"defaultRetryDecider")});var fy,uCt,l8=I(()=>{Qe();st();dy();Bf();zx();r8();ANe();a8();c8();fy=class{static{i(this,"StandardRetryStrategy")}maxAttemptsProvider;retryDecider;delayDecider;retryQuota;mode=xn.STANDARD;constructor(e,r){this.maxAttemptsProvider=e,this.retryDecider=r?.retryDecider??Z_,this.delayDecider=r?.delayDecider??X_,this.retryQuota=r?.retryQuota??fNe(500)}shouldRetry(e,r,n){return rsetTimeout(g,f));continue}throw d.$metadata||(d.$metadata={}),d.$metadata.attempts=o,d.$metadata.totalRetryDelay=a,d}}},uCt=i(t=>{if(!es.isInstance(t))return;let e=Object.keys(t.headers).find(o=>o.toLowerCase()==="retry-after");if(!e)return;let r=t.headers[e],n=Number(r);return Number.isNaN(n)?new Date(r).getTime()-Date.now():n*1e3},"getDelayFromRetryAfterHeader")});var eQ,hNe=I(()=>{W_();Bf();l8();eQ=class extends fy{static{i(this,"AdaptiveRetryStrategy")}rateLimiter;constructor(e,r){let{rateLimiter:n,...s}=r??{};super(e,s),this.rateLimiter=n??new cp,this.mode=xn.ADAPTIVE}async retry(e,r){return super.retry(e,r,{beforeRequest:i(async()=>this.rateLimiter.getSendToken(),"beforeRequest"),afterRequest:i(n=>{this.rateLimiter.updateClientSendingRate(n)},"afterRequest")})}}});var tQ,rQ,cl,ll,u8,d8,ul,gNe=I(()=>{Ce();i8();Wx();Bf();tQ="AWS_MAX_ATTEMPTS",rQ="max_attempts",cl={environmentVariableSelector:i(t=>{let e=t[tQ];if(!e)return;let r=parseInt(e);if(Number.isNaN(r))throw new Error(`Environment variable ${tQ} mast be a number, got "${e}"`);return r},"environmentVariableSelector"),configFileSelector:i(t=>{let e=t[rQ];if(!e)return;let r=parseInt(e);if(Number.isNaN(r))throw new Error(`Shared config file entry ${rQ} mast be a number, got "${e}"`);return r},"configFileSelector"),default:Na},ll=i(t=>{let{retryStrategy:e,retryMode:r}=t,n=Ut(t.maxAttempts??Na),s=e?Promise.resolve(e):void 0,o=i(async()=>await Ut(r)()===xn.ADAPTIVE?new my(n):new Ta(n),"getDefault");return Object.assign(t,{maxAttempts:n,retryStrategy:i(()=>s??=o(),"retryStrategy")})},"resolveRetryConfig"),u8="AWS_RETRY_MODE",d8="retry_mode",ul={environmentVariableSelector:i(t=>t[u8],"environmentVariableSelector"),configFileSelector:i(t=>t[d8],"configFileSelector"),default:qi}});var p8,m8,yNe,ENe=I(()=>{Qe();zx();p8=i(()=>t=>async e=>{let{request:r}=e;return mt.isInstance(r)&&(delete r.headers[ip],delete r.headers[ap]),t(e)},"omitRetryHeadersMiddleware"),m8={name:"omitRetryHeadersMiddleware",tags:["RETRY","HEADERS","OMIT_RETRY_HEADERS"],relation:"before",toMiddleware:"awsAuthMiddleware",override:!0},yNe=i(t=>({applyToStack:i(e=>{e.addRelativeTo(p8(),m8)},"applyToStack")}),"getOmitRetryHeadersPlugin")});var jx={};en(jx,{AdaptiveRetryStrategy:()=>my,CONFIG_MAX_ATTEMPTS:()=>rQ,CONFIG_RETRY_MODE:()=>d8,ConfiguredRetryStrategy:()=>K_,DEFAULT_MAX_ATTEMPTS:()=>Na,DEFAULT_RETRY_DELAY_BASE:()=>H_,DEFAULT_RETRY_MODE:()=>qi,DefaultRateLimiter:()=>cp,DeprecatedAdaptiveRetryStrategy:()=>eQ,DeprecatedStandardRetryStrategy:()=>fy,ENV_MAX_ATTEMPTS:()=>tQ,ENV_RETRY_MODE:()=>u8,INITIAL_RETRY_TOKENS:()=>py,INVOCATION_ID_HEADER:()=>ip,MAXIMUM_RETRY_DELAY:()=>Hx,NODE_MAX_ATTEMPT_CONFIG_OPTIONS:()=>cl,NODE_RETRY_MODE_CONFIG_OPTIONS:()=>ul,NO_RETRY_INCREMENT:()=>V_,REQUEST_HEADER:()=>ap,RETRY_COST:()=>XW,RETRY_MODES:()=>xn,Retry:()=>mn,StandardRetryStrategy:()=>Ta,THROTTLING_RETRY_DELAY_BASE:()=>z_,TIMEOUT_RETRY_COST:()=>ZW,defaultDelayDecider:()=>X_,defaultRetryDecider:()=>Z_,getOmitRetryHeadersPlugin:()=>yNe,getRetryAfterHint:()=>cNe,getRetryPlugin:()=>Ru,isBrowserNetworkError:()=>JW,isClockSkewCorrectedError:()=>jW,isClockSkewError:()=>$_,isNodeJsHttp2TransientError:()=>KW,isRetryableByTrait:()=>Gx,isServerError:()=>G_,isThrottlingError:()=>al,isTransientError:()=>op,omitRetryHeadersMiddleware:()=>p8,omitRetryHeadersMiddlewareOptions:()=>m8,resolveRetryConfig:()=>ll,retryMiddleware:()=>dCt,retryMiddlewareOptions:()=>s8});var dCt,Ru,_s=I(()=>{gxe();o8();dy();i8();mNe();W_();Wx();Bf();zx();Vx();hNe();l8();a8();c8();gNe();ENe();o8();t8();dCt=n8(K4),Ru=uNe(K4)});function $i(t,e,r){t.__aws_sdk_context?t.__aws_sdk_context.features||(t.__aws_sdk_context.features={}):t.__aws_sdk_context={features:{}},t.__aws_sdk_context.features[e]=r}var f8=I(()=>{_s();mn.v2026||=typeof process=="object"&&process.env?.AWS_NEW_RETRIES_2026==="true";i($i,"setFeature")});function CNe(t,e,r){return t.$source||(t.$source={}),t.$source[e]=r,t}var INe=I(()=>{i(CNe,"setTokenFeature")});function Ay(t){return t}var A8,h8,dl,xNe=I(()=>{Qe();i(Ay,"resolveHostHeaderConfig");A8=i(t=>e=>async r=>{if(!mt.isInstance(r.request))return e(r);let{request:n}=r,{handlerProtocol:s=""}=t.requestHandler.metadata||{};if(s.indexOf("h2")>=0&&!n.headers[":authority"])delete n.headers.host,n.headers[":authority"]=n.hostname+(n.port?":"+n.port:"");else if(!n.headers.host){let o=n.hostname;n.port!=null&&(o+=`:${n.port}`),n.headers.host=o}return e(r)},"hostHeaderMiddleware"),h8={name:"hostHeaderMiddleware",step:"build",priority:"low",tags:["HOST"],override:!0},dl=i(t=>({applyToStack:i(e=>{e.add(A8(t),h8)},"applyToStack")}),"getHostHeaderPlugin")});var g8,y8,pl,wNe=I(()=>{g8=i(()=>(t,e)=>async r=>{try{let n=await t(r),{clientName:s,commandName:o,logger:a,dynamoDbDocumentClientOptions:c={}}=e,{overrideInputFilterSensitiveLog:l,overrideOutputFilterSensitiveLog:u}=c,d=l??e.inputFilterSensitiveLog,p=u??e.outputFilterSensitiveLog,{$metadata:m,...f}=n.output;return a?.info?.({clientName:s,commandName:o,input:d(r.input),output:p(f),metadata:m}),n}catch(n){let{clientName:s,commandName:o,logger:a,dynamoDbDocumentClientOptions:c={}}=e,{overrideInputFilterSensitiveLog:l}=c,u=l??e.inputFilterSensitiveLog;throw a?.error?.({clientName:s,commandName:o,input:u(r.input),error:n,metadata:n.$metadata}),n}},"loggerMiddleware"),y8={name:"loggerMiddleware",tags:["LOGGER"],step:"initialize",override:!0},pl=i(t=>({applyToStack:i(e=>{e.add(g8(),y8)},"applyToStack")}),"getLoggerPlugin")});var nQ,E8=I(()=>{nQ={step:"build",tags:["RECURSION_DETECTION"],name:"recursionDetectionMiddleware",override:!0,priority:"low"}});var Jx,C8,sQ,I8,x8,oQ,bNe=I(()=>{Jx={REQUEST_ID:Symbol.for("_AWS_LAMBDA_REQUEST_ID"),X_RAY_TRACE_ID:Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"),TENANT_ID:Symbol.for("_AWS_LAMBDA_TENANT_ID")},C8=["true","1"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA??"");C8||(globalThis.awslambda=globalThis.awslambda||{});sQ=class{static{i(this,"InvokeStoreBase")}static PROTECTED_KEYS=Jx;isProtectedKey(e){return Object.values(Jx).includes(e)}getRequestId(){return this.get(Jx.REQUEST_ID)??"-"}getXRayTraceId(){return this.get(Jx.X_RAY_TRACE_ID)}getTenantId(){return this.get(Jx.TENANT_ID)}},I8=class extends sQ{static{i(this,"InvokeStoreSingle")}currentContext;getContext(){return this.currentContext}hasContext(){return this.currentContext!==void 0}get(e){return this.currentContext?.[e]}set(e,r){if(this.isProtectedKey(e))throw new Error(`Cannot modify protected Lambda context field: ${String(e)}`);this.currentContext=this.currentContext||{},this.currentContext[e]=r}run(e,r){return this.currentContext=e,r()}},x8=class t extends sQ{static{i(this,"InvokeStoreMulti")}als;static async create(){let e=new t,r=await import("node:async_hooks");return e.als=new r.AsyncLocalStorage,e}getContext(){return this.als.getStore()}hasContext(){return this.als.getStore()!==void 0}get(e){return this.als.getStore()?.[e]}set(e,r){if(this.isProtectedKey(e))throw new Error(`Cannot modify protected Lambda context field: ${String(e)}`);let n=this.als.getStore();if(!n)throw new Error("No context available");n[e]=r}run(e,r){return this.als.run(e,r)}};(function(t){let e=null;async function r(){return e||(e=(async()=>{let s="AWS_LAMBDA_MAX_CONCURRENCY"in process.env?await x8.create():new I8;return!C8&&globalThis.awslambda?.InvokeStore?globalThis.awslambda.InvokeStore:(!C8&&globalThis.awslambda&&(globalThis.awslambda.InvokeStore=s),s)})()),e}i(r,"getInstanceAsync"),t.getInstanceAsync=r,t._testing=process.env.AWS_LAMBDA_BENCHMARK_MODE==="1"?{reset:i(()=>{e=null,globalThis.awslambda?.InvokeStore&&delete globalThis.awslambda.InvokeStore,globalThis.awslambda={InvokeStore:void 0}},"reset")}:void 0})(oQ||(oQ={}))});var w8,pCt,mCt,iQ,b8=I(()=>{bNe();Qe();w8="X-Amzn-Trace-Id",pCt="AWS_LAMBDA_FUNCTION_NAME",mCt="_X_AMZN_TRACE_ID",iQ=i(()=>t=>async e=>{let{request:r}=e;if(!mt.isInstance(r))return t(e);let n=Object.keys(r.headers??{}).find(d=>d.toLowerCase()===w8.toLowerCase())??w8;if(r.headers.hasOwnProperty(n))return t(e);let s=process.env[pCt],o=process.env[mCt],l=(await oQ.getInstanceAsync())?.getXRayTraceId()??o,u=i(d=>typeof d=="string"&&d.length>0,"nonEmptyString");return u(s)&&u(l)&&(r.headers[w8]=l),t({...e,request:r})},"recursionDetectionMiddleware")});var ml,SNe=I(()=>{E8();b8();ml=i(t=>({applyToStack:i(e=>{e.add(iQ(),nQ)},"applyToStack")}),"getRecursionDetectionPlugin")});var S8,fCt,BNe=I(()=>{S8=D(Ca()),fCt=i(t=>t[S8.SMITHY_CONTEXT_KEY]||(t[S8.SMITHY_CONTEXT_KEY]={}),"getSmithyContext")});var RNe,NNe=I(()=>{RNe=i((t,e)=>{if(!e||e.length===0)return t;let r=[];for(let n of e)for(let s of t)s.schemeId.split("#")[1]===n&&r.push(s);for(let n of t)r.find(({schemeId:s})=>s===n.schemeId)||r.push(n);return r},"resolveAuthOptions")});function ACt(t){let e=new Map;for(let r of t)e.set(r.schemeId,r);return e}var Kx,aQ=I(()=>{Ce();NNe();i(ACt,"convertHttpAuthSchemesToMap");Kx=i((t,e)=>(r,n)=>async s=>{let o=t.httpAuthSchemeProvider(await e.httpAuthSchemeParametersProvider(t,n,s.input)),a=t.authSchemePreference?await t.authSchemePreference():[],c=RNe(o,a),l=ACt(t.httpAuthSchemes),u=fr(n),d=[];for(let p of c){let m=l.get(p.schemeId);if(!m){d.push(`HttpAuthScheme \`${p.schemeId}\` was not enabled for this service.`);continue}let f=m.identityProvider(await e.identityProviderConfigProvider(t));if(!f){d.push(`HttpAuthScheme \`${p.schemeId}\` did not have an IdentityProvider configured.`);continue}let{identityProperties:g={},signingProperties:E={}}=p.propertiesExtractor?.(t,n)||{};p.identityProperties=Object.assign(p.identityProperties||{},g),p.signingProperties=Object.assign(p.signingProperties||{},E),u.selectedHttpAuthScheme={httpAuthOption:p,identity:await f(p.identityProperties),signer:m.signer};break}if(!u.selectedHttpAuthScheme)throw new Error(d.join(` +`));return r(s)},"httpAuthSchemeMiddleware")});var TNe,Nu,PNe=I(()=>{aQ();TNe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"endpointV2Middleware"},Nu=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(Kx(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),TNe)},"applyToStack")}),"getHttpAuthSchemeEndpointRuleSetPlugin")});var vNe,hCt,_Ne=I(()=>{aQ();vNe={step:"serialize",tags:["HTTP_AUTH_SCHEME"],name:"httpAuthSchemeMiddleware",override:!0,relation:"before",toMiddleware:"serializerMiddleware"},hCt=i((t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r})=>({applyToStack:i(n=>{n.addRelativeTo(Kx(t,{httpAuthSchemeParametersProvider:e,identityProviderConfigProvider:r}),vNe)},"applyToStack")}),"getHttpAuthSchemePlugin")});var QNe=I(()=>{aQ();PNe();_Ne()});var gCt,yCt,B8,R8=I(()=>{Ce();Qe();gCt=i(t=>e=>{throw e},"defaultErrorHandler"),yCt=i((t,e)=>{},"defaultSuccessHandler"),B8=i(t=>(e,r)=>async n=>{if(!mt.isInstance(n.request))return e(n);let o=fr(r).selectedHttpAuthScheme;if(!o)throw new Error("No HttpAuthScheme was selected: unable to sign request");let{httpAuthOption:{signingProperties:a={}},identity:c,signer:l}=o,u=await e({...n,request:await l.sign(n.request,c,a)}).catch((l.errorHandler||gCt)(a));return(l.successHandler||yCt)(u.response,a),u},"httpSigningMiddleware")});var DNe,Tu,kNe=I(()=>{R8();DNe={step:"finalizeRequest",tags:["HTTP_SIGNING"],name:"httpSigningMiddleware",aliases:["apiKeyMiddleware","tokenMiddleware","awsAuthMiddleware"],override:!0,relation:"after",toMiddleware:"retryMiddleware"},Tu=i(t=>({applyToStack:i(e=>{e.addRelativeTo(B8(t),DNe)},"applyToStack")}),"getHttpSigningPlugin")});var LNe=I(()=>{R8();kNe()});var fl,ONe=I(()=>{fl=i(t=>{if(typeof t=="function")return t;let e=Promise.resolve(t);return()=>e},"normalizeProvider")});function MNe(t,e,r,n,s){return i(async function*(a,c,...l){let u=c,d=a.startingToken??u[r],p=!0,m;for(;p;){if(u[r]=d,s&&(u[s]=u[s]??a.pageSize),a.client instanceof t)m=await ECt(e,a.client,c,a.withCommand,...l);else throw new Error(`Invalid client, expected instance of ${t.name}`);yield m;let f=d;d=CCt(m,n),p=!!(d&&(!a.stopOnSameToken||d!==f))}return void 0},"paginateOperation")}var ECt,CCt,FNe=I(()=>{ECt=i(async(t,e,r,n=o=>o,...s)=>{let o=new t(r);return o=n(o)??o,await e.send(o,...s)},"makePagedClientRequest");i(MNe,"createPaginator");CCt=i((t,e)=>{let r=t,n=e.split(".");for(let s of n){if(!r||typeof r!="object")return;r=r[s]}return r},"get")});var UNe=I(()=>{Qe()});function ICt(t,e,r){t.__smithy_context?t.__smithy_context.features||(t.__smithy_context.features={}):t.__smithy_context={features:{}},t.__smithy_context.features[e]=r}var qNe=I(()=>{i(ICt,"setFeature")});var Pa,$Ne=I(()=>{Pa=class{static{i(this,"DefaultIdentityProviderConfig")}authSchemes=new Map;constructor(e){for(let r in e){let n=e[r];n!==void 0&&this.authSchemes.set(r,n)}}getIdentityProvider(e){return this.authSchemes.get(e)}}});var N8,T8,GNe=I(()=>{Qe();N8=D(Ca()),T8=class{static{i(this,"HttpApiKeyAuthSigner")}async sign(e,r,n){if(!n)throw new Error("request could not be signed with `apiKey` since the `name` and `in` signer properties are missing");if(!n.name)throw new Error("request could not be signed with `apiKey` since the `name` signer property is missing");if(!n.in)throw new Error("request could not be signed with `apiKey` since the `in` signer property is missing");if(!r.apiKey)throw new Error("request could not be signed with `apiKey` since the `apiKey` is not defined");let s=mt.clone(e);if(n.in===N8.HttpApiKeyAuthLocation.QUERY)s.query[n.name]=r.apiKey;else if(n.in===N8.HttpApiKeyAuthLocation.HEADER)s.headers[n.name]=n.scheme?`${n.scheme} ${r.apiKey}`:r.apiKey;else throw new Error("request can only be signed with `apiKey` locations `query` or `header`, but found: `"+n.in+"`");return s}}});var P8,HNe=I(()=>{Qe();P8=class{static{i(this,"HttpBearerAuthSigner")}async sign(e,r,n){let s=mt.clone(e);if(!r.token)throw new Error("request could not be signed with `token` since the `token` is not defined");return s.headers.Authorization=`Bearer ${r.token}`,s}}});var Jo,zNe=I(()=>{Jo=class{static{i(this,"NoAuthSigner")}async sign(e,r,n){return e}}});var VNe=I(()=>{GNe();HNe();zNe()});var YNe,WNe,v8,cQ,_8,jNe=I(()=>{YNe=i(t=>i(function(r){return cQ(r)&&r.expiration.getTime()-Date.now()t.expiration!==void 0,"doesIdentityRequireRefresh"),_8=i((t,e,r)=>{if(t===void 0)return;let n=typeof t!="function"?async()=>Promise.resolve(t):t,s,o,a,c=!1,l=i(async u=>{o||(o=n(u));try{s=await o,a=!0,c=!1}finally{o=void 0}return s},"coalesceProvider");return e===void 0?async u=>((!a||u?.forceRefresh)&&(s=await l(u)),s):async u=>((!a||u?.forceRefresh)&&(s=await l(u)),c?s:r(s)?(e(s)&&await l(u),s):(c=!0,s))},"memoizeIdentityProvider")});var JNe=I(()=>{$Ne();VNe();jNe()});var Q8={};en(Q8,{DefaultIdentityProviderConfig:()=>Pa,EXPIRATION_MS:()=>WNe,HttpApiKeyAuthSigner:()=>T8,HttpBearerAuthSigner:()=>P8,NoAuthSigner:()=>Jo,createIsIdentityExpiredFunction:()=>YNe,createPaginator:()=>MNe,doesIdentityRequireRefresh:()=>cQ,getHttpAuthSchemeEndpointRuleSetPlugin:()=>Nu,getHttpAuthSchemePlugin:()=>hCt,getHttpSigningPlugin:()=>Tu,getSmithyContext:()=>fCt,httpAuthSchemeEndpointRuleSetMiddlewareOptions:()=>TNe,httpAuthSchemeMiddleware:()=>Kx,httpAuthSchemeMiddlewareOptions:()=>vNe,httpSigningMiddleware:()=>B8,httpSigningMiddlewareOptions:()=>DNe,isIdentityExpired:()=>v8,memoizeIdentityProvider:()=>_8,normalizeProvider:()=>fl,requestBuilder:()=>vW,setFeature:()=>ICt});var Qs=I(()=>{BNe();QNe();LNe();ONe();FNe();UNe();qNe();JNe()});function xCt(t){return t===void 0?!0:typeof t=="string"&&t.length<=50}function Al(t){let e=fl(t.userAgentAppId??Xx),{customUserAgent:r}=t;return Object.assign(t,{customUserAgent:typeof r=="string"?[[r]]:r,userAgentAppId:i(async()=>{let n=await e();if(!xCt(n)){let s=t.logger?.constructor?.name==="NoOpLogger"||!t.logger?console:t.logger;typeof n!="string"?s?.warn("userAgentAppId must be a string or undefined."):n.length>50&&s?.warn("The provided userAgentAppId exceeds the maximum length of 50 characters.")}return n},"userAgentAppId")})}var Xx,D8=I(()=>{Qs();Xx=void 0;i(xCt,"isValidUserAgentAppId");i(Al,"resolveUserAgentConfig")});var k8,KNe=I(()=>{k8={partitions:[{id:"aws",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-east-1",name:"aws",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^(us|eu|ap|sa|ca|me|af|il|mx)\\-\\w+\\-\\d+$",regions:{"af-south-1":{description:"Africa (Cape Town)"},"ap-east-1":{description:"Asia Pacific (Hong Kong)"},"ap-east-2":{description:"Asia Pacific (Taipei)"},"ap-northeast-1":{description:"Asia Pacific (Tokyo)"},"ap-northeast-2":{description:"Asia Pacific (Seoul)"},"ap-northeast-3":{description:"Asia Pacific (Osaka)"},"ap-south-1":{description:"Asia Pacific (Mumbai)"},"ap-south-2":{description:"Asia Pacific (Hyderabad)"},"ap-southeast-1":{description:"Asia Pacific (Singapore)"},"ap-southeast-2":{description:"Asia Pacific (Sydney)"},"ap-southeast-3":{description:"Asia Pacific (Jakarta)"},"ap-southeast-4":{description:"Asia Pacific (Melbourne)"},"ap-southeast-5":{description:"Asia Pacific (Malaysia)"},"ap-southeast-6":{description:"Asia Pacific (New Zealand)"},"ap-southeast-7":{description:"Asia Pacific (Thailand)"},"aws-global":{description:"aws global region"},"ca-central-1":{description:"Canada (Central)"},"ca-west-1":{description:"Canada West (Calgary)"},"eu-central-1":{description:"Europe (Frankfurt)"},"eu-central-2":{description:"Europe (Zurich)"},"eu-north-1":{description:"Europe (Stockholm)"},"eu-south-1":{description:"Europe (Milan)"},"eu-south-2":{description:"Europe (Spain)"},"eu-west-1":{description:"Europe (Ireland)"},"eu-west-2":{description:"Europe (London)"},"eu-west-3":{description:"Europe (Paris)"},"il-central-1":{description:"Israel (Tel Aviv)"},"me-central-1":{description:"Middle East (UAE)"},"me-south-1":{description:"Middle East (Bahrain)"},"mx-central-1":{description:"Mexico (Central)"},"sa-east-1":{description:"South America (Sao Paulo)"},"us-east-1":{description:"US East (N. Virginia)"},"us-east-2":{description:"US East (Ohio)"},"us-west-1":{description:"US West (N. California)"},"us-west-2":{description:"US West (Oregon)"}}},{id:"aws-cn",outputs:{dnsSuffix:"amazonaws.com.cn",dualStackDnsSuffix:"api.amazonwebservices.com.cn",implicitGlobalRegion:"cn-northwest-1",name:"aws-cn",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^cn\\-\\w+\\-\\d+$",regions:{"aws-cn-global":{description:"aws-cn global region"},"cn-north-1":{description:"China (Beijing)"},"cn-northwest-1":{description:"China (Ningxia)"}}},{id:"aws-eusc",outputs:{dnsSuffix:"amazonaws.eu",dualStackDnsSuffix:"api.amazonwebservices.eu",implicitGlobalRegion:"eusc-de-east-1",name:"aws-eusc",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eusc\\-(de)\\-\\w+\\-\\d+$",regions:{"eusc-de-east-1":{description:"AWS European Sovereign Cloud (Germany)"}}},{id:"aws-iso",outputs:{dnsSuffix:"c2s.ic.gov",dualStackDnsSuffix:"api.aws.ic.gov",implicitGlobalRegion:"us-iso-east-1",name:"aws-iso",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-iso\\-\\w+\\-\\d+$",regions:{"aws-iso-global":{description:"aws-iso global region"},"us-iso-east-1":{description:"US ISO East"},"us-iso-west-1":{description:"US ISO WEST"}}},{id:"aws-iso-b",outputs:{dnsSuffix:"sc2s.sgov.gov",dualStackDnsSuffix:"api.aws.scloud",implicitGlobalRegion:"us-isob-east-1",name:"aws-iso-b",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isob\\-\\w+\\-\\d+$",regions:{"aws-iso-b-global":{description:"aws-iso-b global region"},"us-isob-east-1":{description:"US ISOB East (Ohio)"},"us-isob-west-1":{description:"US ISOB West"}}},{id:"aws-iso-e",outputs:{dnsSuffix:"cloud.adc-e.uk",dualStackDnsSuffix:"api.cloud-aws.adc-e.uk",implicitGlobalRegion:"eu-isoe-west-1",name:"aws-iso-e",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^eu\\-isoe\\-\\w+\\-\\d+$",regions:{"aws-iso-e-global":{description:"aws-iso-e global region"},"eu-isoe-west-1":{description:"EU ISOE West"}}},{id:"aws-iso-f",outputs:{dnsSuffix:"csp.hci.ic.gov",dualStackDnsSuffix:"api.aws.hci.ic.gov",implicitGlobalRegion:"us-isof-south-1",name:"aws-iso-f",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-isof\\-\\w+\\-\\d+$",regions:{"aws-iso-f-global":{description:"aws-iso-f global region"},"us-isof-east-1":{description:"US ISOF EAST"},"us-isof-south-1":{description:"US ISOF SOUTH"}}},{id:"aws-us-gov",outputs:{dnsSuffix:"amazonaws.com",dualStackDnsSuffix:"api.aws",implicitGlobalRegion:"us-gov-west-1",name:"aws-us-gov",supportsDualStack:!0,supportsFIPS:!0},regionRegex:"^us\\-gov\\-\\w+\\-\\d+$",regions:{"aws-us-gov-global":{description:"aws-us-gov global region"},"us-gov-east-1":{description:"AWS GovCloud (US-East)"},"us-gov-west-1":{description:"AWS GovCloud (US-West)"}}}],version:"1.1"}});var XNe,ZNe,lQ,L8,eTe,uQ,dQ=I(()=>{KNe();XNe=k8,ZNe="",lQ=i(t=>{let{partitions:e}=XNe;for(let n of e){let{regions:s,outputs:o}=n;for(let[a,c]of Object.entries(s))if(a===t)return{...o,...c}}for(let n of e){let{regionRegex:s,outputs:o}=n;if(new RegExp(s).test(t))return{...o}}let r=e.find(n=>n.id==="aws");if(!r)throw new Error("Provided region was not found in the partition array or regex, and default partition with id 'aws' doesn't exist.");return{...r.outputs}},"partition"),L8=i((t,e="")=>{XNe=t,ZNe=e},"setPartitionInfo"),eTe=i(()=>{L8(k8,"")},"useDefaultPartitionInfo"),uQ=i(()=>ZNe,"getUserAgentPrefix")});async function tTe(t,e,r){if(r.request?.headers?.["smithy-protocol"]==="rpc-v2-cbor"&&$i(t,"PROTOCOL_RPC_V2_CBOR","M"),typeof e.retryStrategy=="function"){let o=await e.retryStrategy();if(typeof o.mode=="string")switch(o.mode){case xn.ADAPTIVE:$i(t,"RETRY_MODE_ADAPTIVE","F");break;case xn.STANDARD:$i(t,"RETRY_MODE_STANDARD","E");break}}if(typeof e.accountIdEndpointMode=="function"){let o=t.endpointV2;switch(String(o?.url?.hostname).match(wCt)&&$i(t,"ACCOUNT_ID_ENDPOINT","O"),await e.accountIdEndpointMode?.()){case"disabled":$i(t,"ACCOUNT_ID_MODE_DISABLED","Q");break;case"preferred":$i(t,"ACCOUNT_ID_MODE_PREFERRED","P");break;case"required":$i(t,"ACCOUNT_ID_MODE_REQUIRED","R");break}}let s=t.__smithy_context?.selectedHttpAuthScheme?.identity;if(s?.$source){let o=s;o.accountId&&$i(t,"RESOLVED_ACCOUNT_ID","T");for(let[a,c]of Object.entries(o.$source??{}))$i(t,a,c)}}var wCt,rTe=I(()=>{_s();f8();wCt=/\d{12}\.ddb/;i(tTe,"checkFeatures")});var O8,pQ,nTe,sTe,oTe=I(()=>{O8="user-agent",pQ="x-amz-user-agent",nTe=/[^!$%&'*+\-.^_`|~\w]/g,sTe=/[^!$%&'*+\-.^_`|~\w#]/g});function iTe(t){let e="";for(let r in t){let n=t[r];if(e.length+n.length+1<=1024){e.length?e+=","+n:e+=n;continue}break}return e}var aTe=I(()=>{i(iTe,"encodeFeatures")});var F8,mQ,U8,hl,uTe=I(()=>{Qe();dQ();rTe();oTe();aTe();F8=i(t=>(e,r)=>async n=>{let{request:s}=n;if(!mt.isInstance(s))return e(n);let{headers:o}=s,a=r?.userAgent?.map(mQ)||[],c=(await t.defaultUserAgentProvider()).map(mQ);await tTe(r,t,n);let l=r;c.push(`m/${iTe(Object.assign({},r.__smithy_context?.features,l.__aws_sdk_context?.features))}`);let u=t?.customUserAgent?.map(mQ)||[],d=await t.userAgentAppId();d&&c.push(mQ(["app",`${d}`]));let p=uQ(),m=(p?[p]:[]).concat([...c,...a,...u]).join(" "),f=[...c.filter(g=>g.startsWith("aws-sdk-")),...u].join(" ");return t.runtime!=="browser"?(f&&(o[pQ]=o[pQ]?`${o[O8]} ${f}`:f),o[O8]=m):o[pQ]=m,e({...n,request:s})},"userAgentMiddleware"),mQ=i(t=>{let e=t[0].split("/").map(a=>a.replace(nTe,"-")).join("/"),r=t[1]?.replace(sTe,"-"),n=e.indexOf("/"),s=e.substring(0,n),o=e.substring(n+1);return s==="api"&&(o=o.toLowerCase()),[s,o,r].filter(a=>a&&a.length>0).reduce((a,c,l)=>{switch(l){case 0:return c;case 1:return`${a}/${c}`;default:return`${a}#${c}`}},"")},"escapeUserAgent"),U8={name:"getUserAgentMiddleware",step:"build",priority:"low",tags:["SET_USER_AGENT","USER_AGENT"],override:!0},hl=i(t=>({applyToStack:i(e=>{e.add(F8(t),U8)},"applyToStack")}),"getUserAgentPlugin")});var fQ,dTe,pTe=I(()=>{fQ=require("node:process"),dTe=i(()=>{let t=["deno","bun","llrt"];for(let e of t)if(fQ.versions[e])return[`md/${e}`,fQ.versions[e]];return["md/nodejs",fQ.versions.node]},"getRuntimeUserAgentPair")});var Zx,mTe,fTe=I(()=>{Zx=require("node:path"),mTe=i(t=>{let e=process.cwd();if(!t)return[e];let r=(0,Zx.normalize)(t),n=r.split(Zx.sep),s=n.indexOf("node_modules"),o=s!==-1?n.slice(0,s).join(Zx.sep):r;return e===o?[e]:[o,e]},"getNodeModulesParentDirs")});var bCt,AQ,q8=I(()=>{bCt=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+[0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*)?$/,AQ=i((t="")=>{let e=t.match(bCt);if(!e)return;let[r,n,s,o]=[e[1],e[2],e[3],e[4]];return o?`${r}.${n}.${s}-${o}`:`${r}.${n}.${s}`},"getSanitizedTypeScriptVersion")});var SCt,BCt,ATe,hTe=I(()=>{q8();SCt=["^","~",">=","<=",">","<"],BCt=["latest","beta","dev","rc","insiders","next"],ATe=i((t="")=>{if(BCt.includes(t))return t;let e=SCt.find(n=>t.startsWith(n))??"",r=AQ(t.slice(e.length));if(r)return`${e}${r}`},"getSanitizedDevTypeScriptVersion")});var $8,hQ,gl,RCt,gTe,yTe=I(()=>{Tt();$8=require("node:fs/promises"),hQ=require("node:path");fTe();hTe();q8();RCt=(0,hQ.join)("node_modules","typescript","package.json"),gTe=i(async()=>{if(gl===null)return;if(typeof gl=="string")return["md/tsc",gl];let t=!1;try{t=io(process.env,"AWS_SDK_JS_TYPESCRIPT_DETECTION_DISABLED",ts.ENV)||!1}catch{}if(t){gl=null;return}let r=mTe(typeof __dirname<"u"?__dirname:void 0),n;for(let a of r)try{let c=(0,hQ.join)(a,"package.json"),l=await(0,$8.readFile)(c,"utf-8"),{dependencies:u,devDependencies:d}=JSON.parse(l),p=d?.typescript??u?.typescript;if(typeof p!="string")continue;n=p;break}catch{}if(!n){gl=null;return}let s;for(let a of r)try{let c=(0,hQ.join)(a,RCt),l=await(0,$8.readFile)(c,"utf-8"),{version:u}=JSON.parse(l),d=AQ(u);if(typeof d!="string")continue;s=d;break}catch{}if(s)return gl=s,["md/tsc",gl];let o=ATe(n);if(typeof o!="string"){gl=null;return}return gl=`dev_${o}`,["md/tsc",gl]},"getTypeScriptUserAgentPair")});var ew,G8=I(()=>{ew={isCrtAvailable:!1}});var ETe,CTe=I(()=>{G8();ETe=i(()=>ew.isCrtAvailable?["md/crt-avail"]:null,"isCrtAvailable")});var gQ,H8,va,ITe,xTe=I(()=>{gQ=require("node:os"),H8=require("node:process");pTe();yTe();CTe();G8();va=i(({serviceId:t,clientVersion:e})=>{let r=dTe();return async n=>{let s=[["aws-sdk-js",e],["ua","2.1"],[`os/${(0,gQ.platform)()}`,(0,gQ.release)()],["lang/js"],r],o=await gTe();o&&s.push(o);let a=ETe();a&&s.push(a),t&&s.push([`api/${t}`,e]),H8.env.AWS_EXECUTION_ENV&&s.push([`exec-env/${H8.env.AWS_EXECUTION_ENV}`]);let c=await n?.userAgentAppId?.();return c?[...s,[`app/${c}`]]:[...s]}},"createDefaultUserAgentProvider"),ITe=va});var z8,V8,NCt,yl,wTe=I(()=>{D8();z8="AWS_SDK_UA_APP_ID",V8="sdk_ua_app_id",NCt="sdk-ua-app-id",yl={environmentVariableSelector:i(t=>t[z8],"environmentVariableSelector"),configFileSelector:i(t=>t[V8]??t[NCt],"configFileSelector"),default:Xx}});var bTe=b((tw,Y8)=>{(function(t,e){typeof tw=="object"&&typeof Y8=="object"?Y8.exports=e():typeof define=="function"&&define.amd?define([],e):typeof tw=="object"?tw.bowser=e():t.bowser=e()})(tw,(function(){return(function(t){var e={};function r(n){if(e[n])return e[n].exports;var s=e[n]={i:n,l:!1,exports:{}};return t[n].call(s.exports,s,s.exports,r),s.l=!0,s.exports}return i(r,"r"),r.m=t,r.c=e,r.d=function(n,s,o){r.o(n,s)||Object.defineProperty(n,s,{enumerable:!0,get:o})},r.r=function(n){typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(n,"__esModule",{value:!0})},r.t=function(n,s){if(1&s&&(n=r(n)),8&s||4&s&&typeof n=="object"&&n&&n.__esModule)return n;var o=Object.create(null);if(r.r(o),Object.defineProperty(o,"default",{enumerable:!0,value:n}),2&s&&typeof n!="string")for(var a in n)r.d(o,a,function(c){return n[c]}.bind(null,a));return o},r.n=function(n){var s=n&&n.__esModule?function(){return n.default}:function(){return n};return r.d(s,"a",s),s},r.o=function(n,s){return Object.prototype.hasOwnProperty.call(n,s)},r.p="",r(r.s=90)})({17:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n=r(18),s=(function(){function o(){}return i(o,"e"),o.getFirstMatch=function(a,c){var l=c.match(a);return l&&l.length>0&&l[1]||""},o.getSecondMatch=function(a,c){var l=c.match(a);return l&&l.length>1&&l[2]||""},o.matchAndReturnConst=function(a,c,l){if(a.test(c))return l},o.getWindowsVersionName=function(a){switch(a){case"NT":return"NT";case"XP":return"XP";case"NT 5.0":return"2000";case"NT 5.1":return"XP";case"NT 5.2":return"2003";case"NT 6.0":return"Vista";case"NT 6.1":return"7";case"NT 6.2":return"8";case"NT 6.3":return"8.1";case"NT 10.0":return"10";default:return}},o.getMacOSVersionName=function(a){var c=a.split(".").splice(0,2).map((function(l){return parseInt(l,10)||0}));if(c.push(0),c[0]===10)switch(c[1]){case 5:return"Leopard";case 6:return"Snow Leopard";case 7:return"Lion";case 8:return"Mountain Lion";case 9:return"Mavericks";case 10:return"Yosemite";case 11:return"El Capitan";case 12:return"Sierra";case 13:return"High Sierra";case 14:return"Mojave";case 15:return"Catalina";default:return}},o.getAndroidVersionName=function(a){var c=a.split(".").splice(0,2).map((function(l){return parseInt(l,10)||0}));if(c.push(0),!(c[0]===1&&c[1]<5))return c[0]===1&&c[1]<6?"Cupcake":c[0]===1&&c[1]>=6?"Donut":c[0]===2&&c[1]<2?"Eclair":c[0]===2&&c[1]===2?"Froyo":c[0]===2&&c[1]>2?"Gingerbread":c[0]===3?"Honeycomb":c[0]===4&&c[1]<1?"Ice Cream Sandwich":c[0]===4&&c[1]<4?"Jelly Bean":c[0]===4&&c[1]>=4?"KitKat":c[0]===5?"Lollipop":c[0]===6?"Marshmallow":c[0]===7?"Nougat":c[0]===8?"Oreo":c[0]===9?"Pie":void 0},o.getVersionPrecision=function(a){return a.split(".").length},o.compareVersions=function(a,c,l){l===void 0&&(l=!1);var u=o.getVersionPrecision(a),d=o.getVersionPrecision(c),p=Math.max(u,d),m=0,f=o.map([a,c],(function(g){var E=p-o.getVersionPrecision(g),x=g+new Array(E+1).join(".0");return o.map(x.split("."),(function(w){return new Array(20-w.length).join("0")+w})).reverse()}));for(l&&(m=p-Math.min(u,d)),p-=1;p>=m;){if(f[0][p]>f[1][p])return 1;if(f[0][p]===f[1][p]){if(p===m)return 0;p-=1}else if(f[0][p]1?d-1:0),m=1;m0){var S=Object.keys(g),P=c.default.find(S,(function(ke){return f.isOS(ke)}));if(P){var Q=this.satisfies(g[P]);if(Q!==void 0)return Q}var q=c.default.find(S,(function(ke){return f.isPlatform(ke)}));if(q){var M=this.satisfies(g[q]);if(M!==void 0)return M}}if(w>0){var V=Object.keys(x),pe=c.default.find(V,(function(ke){return f.isBrowser(ke,!0)}));if(pe!==void 0)return this.compareVersion(x[pe])}},p.isBrowser=function(m,f){f===void 0&&(f=!1);var g=this.getBrowserName().toLowerCase(),E=m.toLowerCase(),x=c.default.getBrowserTypeByAlias(E);return f&&x&&(E=x.toLowerCase()),E===g},p.compareVersion=function(m){var f=[0],g=m,E=!1,x=this.getBrowserVersion();if(typeof x=="string")return m[0]===">"||m[0]==="<"?(g=m.substr(1),m[1]==="="?(E=!0,g=m.substr(2)):f=[],m[0]===">"?f.push(1):f.push(-1)):m[0]==="="?g=m.substr(1):m[0]==="~"&&(E=!0,g=m.substr(1)),f.indexOf(c.default.compareVersions(x,g,E))>-1},p.isOS=function(m){return this.getOSName(!0)===String(m).toLowerCase()},p.isPlatform=function(m){return this.getPlatformType(!0)===String(m).toLowerCase()},p.isEngine=function(m){return this.getEngineName(!0)===String(m).toLowerCase()},p.is=function(m,f){return f===void 0&&(f=!1),this.isBrowser(m,f)||this.isOS(m)||this.isPlatform(m)},p.some=function(m){var f=this;return m===void 0&&(m=[]),m.some((function(g){return f.is(g)}))},d})();e.default=u,t.exports=e.default},92:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=/version\/(\d+(\.?_?\d+)+)/i,a=[{test:[/googlebot/i],describe:i(function(c){var l={name:"Googlebot"},u=s.default.getFirstMatch(/googlebot\/(\d+(\.\d+))/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/opera/i],describe:i(function(c){var l={name:"Opera"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:opera)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/opr\/|opios/i],describe:i(function(c){var l={name:"Opera"},u=s.default.getFirstMatch(/(?:opr|opios)[\s/](\S+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/SamsungBrowser/i],describe:i(function(c){var l={name:"Samsung Internet for Android"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:SamsungBrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/Whale/i],describe:i(function(c){var l={name:"NAVER Whale Browser"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:whale)[\s/](\d+(?:\.\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/MZBrowser/i],describe:i(function(c){var l={name:"MZ Browser"},u=s.default.getFirstMatch(/(?:MZBrowser)[\s/](\d+(?:\.\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/focus/i],describe:i(function(c){var l={name:"Focus"},u=s.default.getFirstMatch(/(?:focus)[\s/](\d+(?:\.\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/swing/i],describe:i(function(c){var l={name:"Swing"},u=s.default.getFirstMatch(/(?:swing)[\s/](\d+(?:\.\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/coast/i],describe:i(function(c){var l={name:"Opera Coast"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:coast)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/opt\/\d+(?:.?_?\d+)+/i],describe:i(function(c){var l={name:"Opera Touch"},u=s.default.getFirstMatch(/(?:opt)[\s/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/yabrowser/i],describe:i(function(c){var l={name:"Yandex Browser"},u=s.default.getFirstMatch(/(?:yabrowser)[\s/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/ucbrowser/i],describe:i(function(c){var l={name:"UC Browser"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:ucbrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/Maxthon|mxios/i],describe:i(function(c){var l={name:"Maxthon"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:Maxthon|mxios)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/epiphany/i],describe:i(function(c){var l={name:"Epiphany"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:epiphany)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/puffin/i],describe:i(function(c){var l={name:"Puffin"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:puffin)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/sleipnir/i],describe:i(function(c){var l={name:"Sleipnir"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:sleipnir)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/k-meleon/i],describe:i(function(c){var l={name:"K-Meleon"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/(?:k-meleon)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/micromessenger/i],describe:i(function(c){var l={name:"WeChat"},u=s.default.getFirstMatch(/(?:micromessenger)[\s/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/qqbrowser/i],describe:i(function(c){var l={name:/qqbrowserlite/i.test(c)?"QQ Browser Lite":"QQ Browser"},u=s.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/msie|trident/i],describe:i(function(c){var l={name:"Internet Explorer"},u=s.default.getFirstMatch(/(?:msie |rv:)(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/\sedg\//i],describe:i(function(c){var l={name:"Microsoft Edge"},u=s.default.getFirstMatch(/\sedg\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/edg([ea]|ios)/i],describe:i(function(c){var l={name:"Microsoft Edge"},u=s.default.getSecondMatch(/edg([ea]|ios)\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/vivaldi/i],describe:i(function(c){var l={name:"Vivaldi"},u=s.default.getFirstMatch(/vivaldi\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/seamonkey/i],describe:i(function(c){var l={name:"SeaMonkey"},u=s.default.getFirstMatch(/seamonkey\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/sailfish/i],describe:i(function(c){var l={name:"Sailfish"},u=s.default.getFirstMatch(/sailfish\s?browser\/(\d+(\.\d+)?)/i,c);return u&&(l.version=u),l},"describe")},{test:[/silk/i],describe:i(function(c){var l={name:"Amazon Silk"},u=s.default.getFirstMatch(/silk\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/phantom/i],describe:i(function(c){var l={name:"PhantomJS"},u=s.default.getFirstMatch(/phantomjs\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/slimerjs/i],describe:i(function(c){var l={name:"SlimerJS"},u=s.default.getFirstMatch(/slimerjs\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:i(function(c){var l={name:"BlackBerry"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/blackberry[\d]+\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/(web|hpw)[o0]s/i],describe:i(function(c){var l={name:"WebOS Browser"},u=s.default.getFirstMatch(o,c)||s.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/bada/i],describe:i(function(c){var l={name:"Bada"},u=s.default.getFirstMatch(/dolfin\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/tizen/i],describe:i(function(c){var l={name:"Tizen"},u=s.default.getFirstMatch(/(?:tizen\s?)?browser\/(\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/qupzilla/i],describe:i(function(c){var l={name:"QupZilla"},u=s.default.getFirstMatch(/(?:qupzilla)[\s/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/firefox|iceweasel|fxios/i],describe:i(function(c){var l={name:"Firefox"},u=s.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/electron/i],describe:i(function(c){var l={name:"Electron"},u=s.default.getFirstMatch(/(?:electron)\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/MiuiBrowser/i],describe:i(function(c){var l={name:"Miui"},u=s.default.getFirstMatch(/(?:MiuiBrowser)[\s/](\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/chromium/i],describe:i(function(c){var l={name:"Chromium"},u=s.default.getFirstMatch(/(?:chromium)[\s/](\d+(\.?_?\d+)+)/i,c)||s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/chrome|crios|crmo/i],describe:i(function(c){var l={name:"Chrome"},u=s.default.getFirstMatch(/(?:chrome|crios|crmo)\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/GSA/i],describe:i(function(c){var l={name:"Google Search"},u=s.default.getFirstMatch(/(?:GSA)\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:i(function(c){var l=!c.test(/like android/i),u=c.test(/android/i);return l&&u},"test"),describe:i(function(c){var l={name:"Android Browser"},u=s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/playstation 4/i],describe:i(function(c){var l={name:"PlayStation 4"},u=s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/safari|applewebkit/i],describe:i(function(c){var l={name:"Safari"},u=s.default.getFirstMatch(o,c);return u&&(l.version=u),l},"describe")},{test:[/.*/i],describe:i(function(c){var l=c.search("\\(")!==-1?/^(.*)\/(.*)[ \t]\((.*)/:/^(.*)\/(.*) /;return{name:s.default.getFirstMatch(l,c),version:s.default.getSecondMatch(l,c)}},"describe")}];e.default=a,t.exports=e.default},93:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/Roku\/DVP/],describe:i(function(c){var l=s.default.getFirstMatch(/Roku\/DVP-(\d+\.\d+)/i,c);return{name:o.OS_MAP.Roku,version:l}},"describe")},{test:[/windows phone/i],describe:i(function(c){var l=s.default.getFirstMatch(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.WindowsPhone,version:l}},"describe")},{test:[/windows /i],describe:i(function(c){var l=s.default.getFirstMatch(/Windows ((NT|XP)( \d\d?.\d)?)/i,c),u=s.default.getWindowsVersionName(l);return{name:o.OS_MAP.Windows,version:l,versionName:u}},"describe")},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:i(function(c){var l={name:o.OS_MAP.iOS},u=s.default.getSecondMatch(/(Version\/)(\d[\d.]+)/,c);return u&&(l.version=u),l},"describe")},{test:[/macintosh/i],describe:i(function(c){var l=s.default.getFirstMatch(/mac os x (\d+(\.?_?\d+)+)/i,c).replace(/[_\s]/g,"."),u=s.default.getMacOSVersionName(l),d={name:o.OS_MAP.MacOS,version:l};return u&&(d.versionName=u),d},"describe")},{test:[/(ipod|iphone|ipad)/i],describe:i(function(c){var l=s.default.getFirstMatch(/os (\d+([_\s]\d+)*) like mac os x/i,c).replace(/[_\s]/g,".");return{name:o.OS_MAP.iOS,version:l}},"describe")},{test:i(function(c){var l=!c.test(/like android/i),u=c.test(/android/i);return l&&u},"test"),describe:i(function(c){var l=s.default.getFirstMatch(/android[\s/-](\d+(\.\d+)*)/i,c),u=s.default.getAndroidVersionName(l),d={name:o.OS_MAP.Android,version:l};return u&&(d.versionName=u),d},"describe")},{test:[/(web|hpw)[o0]s/i],describe:i(function(c){var l=s.default.getFirstMatch(/(?:web|hpw)[o0]s\/(\d+(\.\d+)*)/i,c),u={name:o.OS_MAP.WebOS};return l&&l.length&&(u.version=l),u},"describe")},{test:[/blackberry|\bbb\d+/i,/rim\stablet/i],describe:i(function(c){var l=s.default.getFirstMatch(/rim\stablet\sos\s(\d+(\.\d+)*)/i,c)||s.default.getFirstMatch(/blackberry\d+\/(\d+([_\s]\d+)*)/i,c)||s.default.getFirstMatch(/\bbb(\d+)/i,c);return{name:o.OS_MAP.BlackBerry,version:l}},"describe")},{test:[/bada/i],describe:i(function(c){var l=s.default.getFirstMatch(/bada\/(\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.Bada,version:l}},"describe")},{test:[/tizen/i],describe:i(function(c){var l=s.default.getFirstMatch(/tizen[/\s](\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.Tizen,version:l}},"describe")},{test:[/linux/i],describe:i(function(){return{name:o.OS_MAP.Linux}},"describe")},{test:[/CrOS/],describe:i(function(){return{name:o.OS_MAP.ChromeOS}},"describe")},{test:[/PlayStation 4/],describe:i(function(c){var l=s.default.getFirstMatch(/PlayStation 4[/\s](\d+(\.\d+)*)/i,c);return{name:o.OS_MAP.PlayStation4,version:l}},"describe")}];e.default=a,t.exports=e.default},94:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:[/googlebot/i],describe:i(function(){return{type:"bot",vendor:"Google"}},"describe")},{test:[/huawei/i],describe:i(function(c){var l=s.default.getFirstMatch(/(can-l01)/i,c)&&"Nova",u={type:o.PLATFORMS_MAP.mobile,vendor:"Huawei"};return l&&(u.model=l),u},"describe")},{test:[/nexus\s*(?:7|8|9|10).*/i],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Nexus"}},"describe")},{test:[/ipad/i],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}},"describe")},{test:[/Macintosh(.*?) FxiOS(.*?)\//],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Apple",model:"iPad"}},"describe")},{test:[/kftt build/i],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon",model:"Kindle Fire HD 7"}},"describe")},{test:[/silk/i],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet,vendor:"Amazon"}},"describe")},{test:[/tablet(?! pc)/i],describe:i(function(){return{type:o.PLATFORMS_MAP.tablet}},"describe")},{test:i(function(c){var l=c.test(/ipod|iphone/i),u=c.test(/like (ipod|iphone)/i);return l&&!u},"test"),describe:i(function(c){var l=s.default.getFirstMatch(/(ipod|iphone)/i,c);return{type:o.PLATFORMS_MAP.mobile,vendor:"Apple",model:l}},"describe")},{test:[/nexus\s*[0-6].*/i,/galaxy nexus/i],describe:i(function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Nexus"}},"describe")},{test:[/[^-]mobi/i],describe:i(function(){return{type:o.PLATFORMS_MAP.mobile}},"describe")},{test:i(function(c){return c.getBrowserName(!0)==="blackberry"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"BlackBerry"}},"describe")},{test:i(function(c){return c.getBrowserName(!0)==="bada"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.mobile}},"describe")},{test:i(function(c){return c.getBrowserName()==="windows phone"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.mobile,vendor:"Microsoft"}},"describe")},{test:i(function(c){var l=Number(String(c.getOSVersion()).split(".")[0]);return c.getOSName(!0)==="android"&&l>=3},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.tablet}},"describe")},{test:i(function(c){return c.getOSName(!0)==="android"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.mobile}},"describe")},{test:i(function(c){return c.getOSName(!0)==="macos"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.desktop,vendor:"Apple"}},"describe")},{test:i(function(c){return c.getOSName(!0)==="windows"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.desktop}},"describe")},{test:i(function(c){return c.getOSName(!0)==="linux"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.desktop}},"describe")},{test:i(function(c){return c.getOSName(!0)==="playstation 4"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.tv}},"describe")},{test:i(function(c){return c.getOSName(!0)==="roku"},"test"),describe:i(function(){return{type:o.PLATFORMS_MAP.tv}},"describe")}];e.default=a,t.exports=e.default},95:function(t,e,r){"use strict";e.__esModule=!0,e.default=void 0;var n,s=(n=r(17))&&n.__esModule?n:{default:n},o=r(18),a=[{test:i(function(c){return c.getBrowserName(!0)==="microsoft edge"},"test"),describe:i(function(c){if(/\sedg\//i.test(c))return{name:o.ENGINE_MAP.Blink};var l=s.default.getFirstMatch(/edge\/(\d+(\.?_?\d+)+)/i,c);return{name:o.ENGINE_MAP.EdgeHTML,version:l}},"describe")},{test:[/trident/i],describe:i(function(c){var l={name:o.ENGINE_MAP.Trident},u=s.default.getFirstMatch(/trident\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:i(function(c){return c.test(/presto/i)},"test"),describe:i(function(c){var l={name:o.ENGINE_MAP.Presto},u=s.default.getFirstMatch(/presto\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:i(function(c){var l=c.test(/gecko/i),u=c.test(/like gecko/i);return l&&!u},"test"),describe:i(function(c){var l={name:o.ENGINE_MAP.Gecko},u=s.default.getFirstMatch(/gecko\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")},{test:[/(apple)?webkit\/537\.36/i],describe:i(function(){return{name:o.ENGINE_MAP.Blink}},"describe")},{test:[/(apple)?webkit/i],describe:i(function(c){var l={name:o.ENGINE_MAP.WebKit},u=s.default.getFirstMatch(/webkit\/(\d+(\.?_?\d+)+)/i,c);return u&&(l.version=u),l},"describe")}];e.default=a,t.exports=e.default}})}))});var STe,BTe=I(()=>{STe=i(({serviceId:t,clientVersion:e})=>async r=>{let n=await Promise.resolve().then(()=>D(bTe())),s=n.parse??n.default.parse??(()=>""),o=typeof window<"u"&&window?.navigator?.userAgent?s(window.navigator.userAgent):void 0,a=[["aws-sdk-js",e],["ua","2.1"],[`os/${o?.os?.name||"other"}`,o?.os?.version],["lang/js"],["md/browser",`${o?.browser?.name??"unknown"}_${o?.browser?.version??"unknown"}`]];t&&a.push([`api/${t}`,e]);let c=await r?.userAgentAppId?.();return c&&a.push([`app/${c}`]),a},"createUserAgentStringParsingProvider")});var RTe,NTe=I(()=>{RTe={os(t){if(/iPhone|iPad|iPod/.test(t))return"iOS";if(/Macintosh|Mac OS X/.test(t))return"macOS";if(/Windows NT/.test(t))return"Windows";if(/Android/.test(t))return"Android";if(/Linux/.test(t))return"Linux"},browser(t){if(/EdgiOS|EdgA|Edg\//.test(t))return"Microsoft Edge";if(/Firefox\//.test(t))return"Firefox";if(/Chrome\//.test(t))return"Chrome";if(/Safari\//.test(t))return"Safari"}}});var W8=I(()=>{xt()});var rw,j8=I(()=>{xt();W8();rw=i((t,e=!1)=>{if(e){for(let r of t.split("."))if(!rw(r))return!1;return!0}return!(!yu(t)||t.length<3||t.length>63||t!==t.toLowerCase()||Cu(t))},"isVirtualHostableS3Bucket")});var yQ,J8=I(()=>{yQ=i(t=>{let e=t.split(":");if(e.length<6)return null;let[r,n,s,o,a,...c]=e;if(r!=="arn"||n===""||s===""||c.join(":")==="")return null;let l=c.map(u=>u.split("/")).flat();return{partition:n,service:s,region:o,accountId:a,resourceId:l}},"parseArn")});var _a,TTe=I(()=>{xt();j8();J8();dQ();_a={isVirtualHostableS3Bucket:rw,parseArn:yQ,partition:lQ};ao.aws=_a});var PTe=I(()=>{xt()});var vTe,K8,_Te=I(()=>{Qe();vTe=i(t=>{if(typeof t.endpointProvider!="function")throw new Error("@aws-sdk/util-endpoint - endpointProvider and endpoint missing in config for this client.");let{endpoint:e}=t;return e===void 0&&(t.endpoint=async()=>K8(t.endpointProvider({Region:typeof t.region=="function"?await t.region():t.region,UseDualStack:typeof t.useDualstackEndpoint=="function"?await t.useDualstackEndpoint():t.useDualstackEndpoint,UseFIPS:typeof t.useFipsEndpoint=="function"?await t.useFipsEndpoint():t.useFipsEndpoint,Endpoint:void 0},{logger:t.logger}))),t},"resolveDefaultAwsRegionalEndpointsConfig"),K8=i(t=>rs(t.url),"toEndpointV1")});var QTe=I(()=>{xt()});var DTe=I(()=>{Tt();Tt()});function EQ(t={}){return nt({...Dn,async default(){return X8.silence||console.warn("@aws-sdk - WARN - default STS region of us-east-1 used. See @aws-sdk/credential-providers README and set a region explicitly."),"us-east-1"}},{...Ps,...t})}var X8,kTe=I(()=>{Tt();i(EQ,"stsRegionDefaultResolver");X8={silence:!1}});var El,Cl,LTe=I(()=>{El=i(t=>({setRegion(e){t.region=e},region(){return t.region}}),"getAwsRegionExtensionConfiguration"),Cl=i(t=>({region:t.region()}),"resolveAwsRegionExtensionConfiguration")});var Ds={};en(Ds,{DEFAULT_UA_APP_ID:()=>Xx,EndpointError:()=>St,NODE_APP_ID_CONFIG_OPTIONS:()=>yl,NODE_REGION_CONFIG_FILE_OPTIONS:()=>Ps,NODE_REGION_CONFIG_OPTIONS:()=>Dn,REGION_ENV_NAME:()=>Vg,REGION_INI_NAME:()=>Yg,UA_APP_ID_ENV_NAME:()=>z8,UA_APP_ID_INI_NAME:()=>V8,awsEndpointFunctions:()=>_a,createDefaultUserAgentProvider:()=>va,createUserAgentStringParsingProvider:()=>STe,crtAvailability:()=>ew,defaultUserAgent:()=>ITe,emitWarningIfUnsupportedVersion:()=>qc,fallback:()=>RTe,getAwsRegionExtensionConfiguration:()=>El,getHostHeaderPlugin:()=>dl,getLoggerPlugin:()=>pl,getLongPollPlugin:()=>mxe,getRecursionDetectionPlugin:()=>ml,getUserAgentMiddlewareOptions:()=>U8,getUserAgentPlugin:()=>hl,getUserAgentPrefix:()=>uQ,hostHeaderMiddleware:()=>A8,hostHeaderMiddlewareOptions:()=>h8,isIpAddress:()=>Cu,isVirtualHostableS3Bucket:()=>rw,loggerMiddleware:()=>g8,loggerMiddlewareOptions:()=>y8,parseArn:()=>yQ,partition:()=>lQ,recursionDetectionMiddleware:()=>iQ,recursionDetectionMiddlewareOptions:()=>nQ,resolveAwsRegionExtensionConfiguration:()=>Cl,resolveDefaultAwsRegionalEndpointsConfig:()=>vTe,resolveEndpoint:()=>Dx,resolveHostHeaderConfig:()=>Ay,resolveRegionConfig:()=>Yo,resolveUserAgentConfig:()=>Al,setCredentialFeature:()=>zd,setFeature:()=>$i,setPartitionInfo:()=>L8,setTokenFeature:()=>CNe,state:()=>Ix,stsRegionDefaultResolver:()=>EQ,stsRegionWarning:()=>X8,toEndpointV1:()=>K8,useDefaultPartitionInfo:()=>eTe,userAgentMiddleware:()=>F8});var wt=I(()=>{pxe();fxe();Axe();f8();INe();xNe();wNe();E8();SNe();b8();D8();uTe();xTe();wTe();NTe();BTe();TTe();PTe();_Te();W8();j8();J8();dQ();QTe();DTe();kTe();LTe()});var Z8,OTe=I(()=>{Qe();Z8=i(t=>es.isInstance(t)?t.headers?.date??t.headers?.Date:void 0,"getDateHeader")});var hy,ej=I(()=>{hy=i(t=>new Date(Date.now()+t),"getSkewCorrectedDate")});var MTe,FTe=I(()=>{ej();MTe=i((t,e)=>Math.abs(hy(e).getTime()-t)>=3e5,"isClockSkewed")});var tj,UTe=I(()=>{FTe();tj=i((t,e)=>{let r=Date.parse(t);return MTe(r,e)?r-Date.now():e},"getUpdatedSystemClockOffset")});var rj=I(()=>{OTe();ej();UTe()});var nw,sw,On,qTe,nj=I(()=>{Qe();rj();nw=i((t,e)=>{if(!e)throw new Error(`Property \`${t}\` is not resolved for AWS SDK SigV4Auth`);return e},"throwSigningPropertyError"),sw=i(async t=>{let e=nw("context",t.context),r=nw("config",t.config),n=e.endpointV2?.properties?.authSchemes?.[0],o=await nw("signer",r.signer)(n),a=t?.signingRegion,c=t?.signingRegionSet,l=t?.signingName;return{config:r,signer:o,signingRegion:a,signingRegionSet:c,signingName:l}},"validateSigningProperties"),On=class{static{i(this,"AwsSdkSigV4Signer")}async sign(e,r,n){if(!mt.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");let s=await sw(n),{config:o,signer:a}=s,{signingRegion:c,signingName:l}=s,u=n.context;if(u?.authSchemes?.length??!1){let[p,m]=u.authSchemes;p?.name==="sigv4a"&&m?.name==="sigv4"&&(c=m?.signingRegion??c,l=m?.signingName??l)}return await a.sign(e,{signingDate:hy(o.systemClockOffset),signingRegion:c,signingService:l})}errorHandler(e){return r=>{let n=r.ServerTime??Z8(r.$response);if(n){let s=nw("config",e.config),o=s.systemClockOffset;s.systemClockOffset=tj(n,s.systemClockOffset),s.systemClockOffset!==o&&r.$metadata&&(r.$metadata.clockSkewCorrected=!0)}throw r}}successHandler(e,r){let n=Z8(e);if(n){let s=nw("config",r.config);s.systemClockOffset=tj(n,s.systemClockOffset)}}},qTe=On});var lp,$Te=I(()=>{Qe();rj();nj();lp=class extends On{static{i(this,"AwsSdkSigV4ASigner")}async sign(e,r,n){if(!mt.isInstance(e))throw new Error("The request is not an instance of `HttpRequest` and cannot be signed");let{config:s,signer:o,signingRegion:a,signingRegionSet:c,signingName:l}=await sw(n),d=(await s.sigv4aSigningRegionSet?.()??c??[a]).join(",");return await o.sign(e,{signingDate:hy(s.systemClockOffset),signingRegion:d,signingService:l})}}});var sj,GTe=I(()=>{sj=i(t=>typeof t=="string"&&t.length>0?t.split(",").map(e=>e.trim()):[],"getArrayForCommaSeparatedString")});var oj,ij=I(()=>{oj=i(t=>`AWS_BEARER_TOKEN_${t.replace(/[\s-]/g,"_").toUpperCase()}`,"getBearerTokenEnvKey")});var HTe,zTe,Pu,VTe=I(()=>{GTe();ij();HTe="AWS_AUTH_SCHEME_PREFERENCE",zTe="auth_scheme_preference",Pu={environmentVariableSelector:i((t,e)=>{if(e?.signingName&&oj(e.signingName)in t)return["httpBearerAuth"];if(HTe in t)return sj(t[HTe])},"environmentVariableSelector"),configFileSelector:i(t=>{if(zTe in t)return sj(t[zTe])},"configFileSelector"),default:[]}});var aj,cj,YTe=I(()=>{Qs();Tt();aj=i(t=>(t.sigv4aSigningRegionSet=fl(t.sigv4aSigningRegionSet),t),"resolveAwsSdkSigV4AConfig"),cj={environmentVariableSelector(t){if(t.AWS_SIGV4A_SIGNING_REGION_SET)return t.AWS_SIGV4A_SIGNING_REGION_SET.split(",").map(e=>e.trim());throw new Vo("AWS_SIGV4A_SIGNING_REGION_SET not set in env.",{tryNextLink:!0})},configFileSelector(t){if(t.sigv4a_signing_region_set)return(t.sigv4a_signing_region_set??"").split(",").map(e=>e.trim());throw new Vo("sigv4a_signing_region_set not set in profile.",{tryNextLink:!0})},default:void 0}});var Cj=b(ct=>{"use strict";var ns=(st(),W(Zd)),WTe=(Ce(),W(Ui)),yy=(Qe(),W(rl)),lj=class{static{i(this,"HeaderFormatter")}format(e){let r=[];for(let o of Object.keys(e)){let a=ns.fromUtf8(o);r.push(Uint8Array.from([a.byteLength]),a,this.formatHeaderValue(e[o]))}let n=new Uint8Array(r.reduce((o,a)=>o+a.byteLength,0)),s=0;for(let o of r)n.set(o,s),s+=o.byteLength;return n}formatHeaderValue(e){switch(e.type){case"boolean":return Uint8Array.from([e.value?0:1]);case"byte":return Uint8Array.from([2,e.value]);case"short":let r=new DataView(new ArrayBuffer(3));return r.setUint8(0,3),r.setInt16(1,e.value,!1),new Uint8Array(r.buffer);case"integer":let n=new DataView(new ArrayBuffer(5));return n.setUint8(0,4),n.setInt32(1,e.value,!1),new Uint8Array(n.buffer);case"long":let s=new Uint8Array(9);return s[0]=5,s.set(e.value.bytes,1),s;case"binary":let o=new DataView(new ArrayBuffer(3+e.value.byteLength));o.setUint8(0,6),o.setUint16(1,e.value.byteLength,!1);let a=new Uint8Array(o.buffer);return a.set(e.value,3),a;case"string":let c=ns.fromUtf8(e.value),l=new DataView(new ArrayBuffer(3+c.byteLength));l.setUint8(0,7),l.setUint16(1,c.byteLength,!1);let u=new Uint8Array(l.buffer);return u.set(c,3),u;case"timestamp":let d=new Uint8Array(9);return d[0]=8,d.set(uj.fromNumber(e.value.valueOf()).bytes,1),d;case"uuid":if(!TCt.test(e.value))throw new Error(`Invalid UUID received: ${e.value}`);let p=new Uint8Array(17);return p[0]=9,p.set(ns.fromHex(e.value.replace(/\-/g,"")),1),p}}},jTe;(function(t){t[t.boolTrue=0]="boolTrue",t[t.boolFalse=1]="boolFalse",t[t.byte=2]="byte",t[t.short=3]="short",t[t.integer=4]="integer",t[t.long=5]="long",t[t.byteArray=6]="byteArray",t[t.string=7]="string",t[t.timestamp=8]="timestamp",t[t.uuid=9]="uuid"})(jTe||(jTe={}));var TCt=/^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/,uj=class t{static{i(this,"Int64")}bytes;constructor(e){if(this.bytes=e,e.byteLength!==8)throw new Error("Int64 buffers must be exactly 8 bytes")}static fromNumber(e){if(e>9223372036854776e3||e<-9223372036854776e3)throw new Error(`${e} is too large (or, if negative, too small) to represent as an Int64`);let r=new Uint8Array(8);for(let n=7,s=Math.abs(Math.round(e));n>-1&&s>0;n--,s/=256)r[n]=s;return e<0&&JTe(r),new t(r)}valueOf(){let e=this.bytes.slice(0),r=e[0]&128;return r&&JTe(e),parseInt(ns.toHex(e),16)*(r?-1:1)}toString(){return String(this.valueOf())}};function JTe(t){for(let e=0;e<8;e++)t[e]^=255;for(let e=7;e>-1&&(t[e]++,t[e]===0);e--);}i(JTe,"negate");var XTe="X-Amz-Algorithm",ZTe="X-Amz-Credential",fj="X-Amz-Date",ePe="X-Amz-SignedHeaders",tPe="X-Amz-Expires",Aj="X-Amz-Signature",hj="X-Amz-Security-Token",PCt="X-Amz-Region-Set",gj="authorization",yj=fj.toLowerCase(),rPe="date",nPe=[gj,yj,rPe],sPe=Aj.toLowerCase(),bQ="x-amz-content-sha256",oPe=hj.toLowerCase(),vCt="host",iPe={authorization:!0,"cache-control":!0,connection:!0,expect:!0,from:!0,"keep-alive":!0,"max-forwards":!0,pragma:!0,referer:!0,te:!0,trailer:!0,"transfer-encoding":!0,upgrade:!0,"user-agent":!0,"x-amzn-trace-id":!0},aPe=/^proxy-/,cPe=/^sec-/,_Ct=[/^proxy-/i,/^sec-/i],CQ="AWS4-HMAC-SHA256",QCt="AWS4-ECDSA-P256-SHA256",lPe="AWS4-HMAC-SHA256-PAYLOAD",uPe="UNSIGNED-PAYLOAD",dPe=50,Ej="aws4_request",pPe=3600*24*7,mPe=i(({query:t={}})=>{let e=[],r={};for(let n of Object.keys(t)){if(n.toLowerCase()===sPe)continue;let s=yy.escapeUri(n);e.push(s);let o=t[n];typeof o=="string"?r[s]=`${s}=${yy.escapeUri(o)}`:Array.isArray(o)&&(r[s]=o.slice(0).reduce((a,c)=>a.concat([`${s}=${yy.escapeUri(c)}`]),[]).sort().join("&"))}return e.sort().map(n=>r[n]).filter(n=>n).join("&")},"getCanonicalQuery"),DCt=i(t=>kCt(t).toISOString().replace(/\.\d{3}Z$/,"Z"),"iso8601"),kCt=i(t=>typeof t=="number"?new Date(t*1e3):typeof t=="string"?Number(t)?new Date(Number(t)*1e3):new Date(t):t,"toDate"),SQ=class{static{i(this,"SignatureV4Base")}service;regionProvider;credentialProvider;sha256;uriEscapePath;applyChecksum;constructor({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:a=!0}){this.service=s,this.sha256=o,this.uriEscapePath=a,this.applyChecksum=typeof e=="boolean"?e:!0,this.regionProvider=WTe.normalizeProvider(n),this.credentialProvider=WTe.normalizeProvider(r)}createCanonicalRequest(e,r,n){let s=Object.keys(r).sort();return`${e.method} ${this.getCanonicalPath(e)} -${dPe(e)} +${mPe(e)} ${s.map(o=>`${o}:${r[o]}`).join(` `)} ${s.join(";")} -${n}`}async createStringToSign(e,r,n,s){let o=new this.sha256;o.update(rs.toUint8Array(n));let i=await o.digest();return`${s} +${n}`}async createStringToSign(e,r,n,s){let o=new this.sha256;o.update(ns.toUint8Array(n));let a=await o.digest();return`${s} ${e} ${r} -${rs.toHex(i)}`}getCanonicalPath({path:e}){if(this.uriEscapePath){let r=[];for(let o of e.split("/"))o?.length!==0&&o!=="."&&(o===".."?r.pop():r.push(o));let n=`${e?.startsWith("/")?"/":""}${r.join("/")}${r.length>0&&e?.endsWith("/")?"/":""}`;return gy.escapeUri(n).replace(/%2F/g,"/")}return e}validateResolvedCredentials(e){if(typeof e!="object"||typeof e.accessKeyId!="string"||typeof e.secretAccessKey!="string")throw new Error("Resolved credential object is not valid")}formatDate(e){let r=QCt(e).replace(/[\-:]/g,"");return{longDate:r,shortDate:r.slice(0,8)}}getCanonicalHeaderList(e){return Object.keys(e).sort().join(";")}},hy={},CQ=[],IQ=(t,e,r)=>`${t}/${e}/${r}/${yj}`,pPe=async(t,e,r,n,s)=>{let o=await jTe(t,e.secretAccessKey,e.accessKeyId),i=`${r}:${n}:${s}:${rs.toHex(o)}:${e.sessionToken}`;if(i in hy)return hy[i];for(CQ.push(i);CQ.length>lPe;)delete hy[CQ.shift()];let a=`AWS4${e.secretAccessKey}`;for(let c of[r,n,s,yj])a=await jTe(t,a,c);return hy[i]=a},kCt=()=>{CQ.length=0,Object.keys(hy).forEach(t=>{delete hy[t]})},jTe=(t,e,r)=>{let n=new t(e);return n.update(rs.toUint8Array(r)),n.digest()},uj=({headers:t},e,r)=>{let n={};for(let s of Object.keys(t).sort()){if(t[s]==null)continue;let o=s.toLowerCase();(o in sPe||e?.has(o)||oPe.test(o)||iPe.test(o))&&(!r||r&&!r.has(o))||(n[o]=t[s].trim().replace(/\s+/g," "))}return n},xQ=async({headers:t,body:e},r)=>{for(let n of Object.keys(t))if(n.toLowerCase()===wQ)return t[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||rs.isArrayBuffer(e)){let n=new r;return n.update(rs.toUint8Array(e)),rs.toHex(await n.digest())}return cPe},mPe=(t,e)=>{t=t.toLowerCase();for(let r of Object.keys(e))if(t===r.toLowerCase())return!0;return!1},fPe=(t,e={})=>{let{headers:r,query:n={}}=gy.HttpRequest.clone(t);for(let s of Object.keys(r)){let o=s.toLowerCase();(o.slice(0,6)==="x-amz-"&&!e.unhoistableHeaders?.has(o)||e.hoistableHeaders?.has(o))&&(n[s]=r[s],delete r[s])}return{...t,headers:r,query:n}},dj=t=>{t=gy.HttpRequest.clone(t);for(let e of Object.keys(t.headers))tPe.indexOf(e.toLowerCase())>-1&&delete t.headers[e];return t},pj=class extends bQ{headerFormatter=new cj;constructor({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:i=!0}){super({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:i})}async presign(e,r={}){let{signingDate:n=new Date,expiresIn:s=3600,unsignableHeaders:o,unhoistableHeaders:i,signableHeaders:a,hoistableHeaders:c,signingRegion:l,signingService:u}=r,d=await this.credentialProvider();this.validateResolvedCredentials(d);let p=l??await this.regionProvider(),{longDate:m,shortDate:h}=this.formatDate(n);if(s>uPe)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");let y=IQ(h,p,u??this.service),I=fPe(dj(e),{unhoistableHeaders:i,hoistableHeaders:c});d.sessionToken&&(I.query[Aj]=d.sessionToken),I.query[JTe]=EQ,I.query[KTe]=`${d.accessKeyId}/${y}`,I.query[mj]=m,I.query[ZTe]=s.toString(10);let x=uj(I,o,a);return I.query[XTe]=this.getCanonicalHeaderList(x),I.query[fj]=await this.getSignature(m,y,this.getSigningKey(d,p,h,u),this.createCanonicalRequest(I,x,await xQ(e,this.sha256))),I}async sign(e,r){return typeof e=="string"?this.signString(e,r):e.headers&&e.payload?this.signEvent(e,r):e.message?this.signMessage(e,r):this.signRequest(e,r)}async signEvent({headers:e,payload:r},{signingDate:n=new Date,priorSignature:s,signingRegion:o,signingService:i,eventStreamCredentials:a}){let c=o??await this.regionProvider(),{shortDate:l,longDate:u}=this.formatDate(n),d=IQ(l,c,i??this.service),p=await xQ({headers:{},body:r},this.sha256),m=new this.sha256;m.update(e);let h=rs.toHex(await m.digest()),y=[aPe,u,d,s,h,p].join(` -`);return this.signString(y,{signingDate:n,signingRegion:c,signingService:i,eventStreamCredentials:a})}async signMessage(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}){return this.signEvent({headers:this.headerFormatter.format(e.message.headers),payload:e.message.body},{signingDate:r,signingRegion:n,signingService:s,priorSignature:e.priorSignature,eventStreamCredentials:o}).then(a=>({message:e.message,signature:a}))}async signString(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}={}){let i=o??await this.credentialProvider();this.validateResolvedCredentials(i);let a=n??await this.regionProvider(),{shortDate:c}=this.formatDate(r),l=new this.sha256(await this.getSigningKey(i,a,c,s));return l.update(rs.toUint8Array(e)),rs.toHex(await l.digest())}async signRequest(e,{signingDate:r=new Date,signableHeaders:n,unsignableHeaders:s,signingRegion:o,signingService:i}={}){let a=await this.credentialProvider();this.validateResolvedCredentials(a);let c=o??await this.regionProvider(),l=dj(e),{longDate:u,shortDate:d}=this.formatDate(r),p=IQ(d,c,i??this.service);l.headers[gj]=u,a.sessionToken&&(l.headers[nPe]=a.sessionToken);let m=await xQ(l,this.sha256);!mPe(wQ,l.headers)&&this.applyChecksum&&(l.headers[wQ]=m);let h=uj(l,s,n),y=await this.getSignature(u,p,this.getSigningKey(a,c,d,i),this.createCanonicalRequest(l,h,m));return l.headers[hj]=`${EQ} Credential=${a.accessKeyId}/${p}, SignedHeaders=${this.getCanonicalHeaderList(h)}, Signature=${y}`,l}async getSignature(e,r,n,s){let o=await this.createStringToSign(e,r,s,EQ),i=new this.sha256(await n);return i.update(rs.toUint8Array(o)),rs.toHex(await i.digest())}getSigningKey(e,r,n,s){return pPe(this.sha256,e,n,r,s||this.service)}},LCt={SignatureV4a:null};at.ALGORITHM_IDENTIFIER=EQ;at.ALGORITHM_IDENTIFIER_V4A=_Ct;at.ALGORITHM_QUERY_PARAM=JTe;at.ALWAYS_UNSIGNABLE_HEADERS=sPe;at.AMZ_DATE_HEADER=gj;at.AMZ_DATE_QUERY_PARAM=mj;at.AUTH_HEADER=hj;at.CREDENTIAL_QUERY_PARAM=KTe;at.DATE_HEADER=ePe;at.EVENT_ALGORITHM_IDENTIFIER=aPe;at.EXPIRES_QUERY_PARAM=ZTe;at.GENERATED_HEADERS=tPe;at.HOST_HEADER=PCt;at.KEY_TYPE_IDENTIFIER=yj;at.MAX_CACHE_SIZE=lPe;at.MAX_PRESIGNED_TTL=uPe;at.PROXY_HEADER_PATTERN=oPe;at.REGION_SET_PARAM=TCt;at.SEC_HEADER_PATTERN=iPe;at.SHA256_HEADER=wQ;at.SIGNATURE_HEADER=rPe;at.SIGNATURE_QUERY_PARAM=fj;at.SIGNED_HEADERS_QUERY_PARAM=XTe;at.SignatureV4=pj;at.SignatureV4Base=bQ;at.TOKEN_HEADER=nPe;at.TOKEN_QUERY_PARAM=Aj;at.UNSIGNABLE_PATTERNS=vCt;at.UNSIGNED_PAYLOAD=cPe;at.clearCredentialCache=kCt;at.createScope=IQ;at.getCanonicalHeaders=uj;at.getCanonicalQuery=dPe;at.getPayloadHash=xQ;at.getSigningKey=pPe;at.hasHeader=mPe;at.moveHeadersToQuery=fPe;at.prepareRequest=dj;at.signatureV4aContainer=LCt});function MCt(t,{credentials:e,credentialDefaultProvider:r}){let n;return e?e?.memoized?n=e:n=v8(e,P8,aQ):r?n=ml(r(Object.assign({},t,{parentClientConfig:t}))):n=async()=>{throw new Error("@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.")},n.memoized=!0,n}function FCt(t,e){if(e.configBound)return e;let r=async n=>e({...n,callerClientConfig:t});return r.memoized=e.memoized,r.configBound=!0,r}var Cj,Cl,OCt,APe=C(()=>{xt();_s();Cj=Q(Ej()),Cl=t=>{let e=t.credentials,r=!!t.credentials,n;Object.defineProperty(t,"credentials",{set(l){l&&l!==e&&l!==n&&(r=!0),e=l;let u=MCt(t,{credentials:e,credentialDefaultProvider:t.credentialDefaultProvider}),d=FCt(t,u);if(r&&!d.attributed){let p=typeof e=="object"&&e!==null;n=async m=>{let y=await d(m);return p&&(!y.$source||Object.keys(y.$source).length===0)?Hd(y,"CREDENTIALS_CODE","e"):y},n.memoized=d.memoized,n.configBound=d.configBound,n.attributed=!0}else n=d},get(){return n},enumerable:!0,configurable:!0}),t.credentials=e;let{signingEscapePath:s=!0,systemClockOffset:o=t.systemClockOffset||0,sha256:i}=t,a;return t.signer?a=ml(t.signer):t.regionInfoProvider?a=()=>ml(t.region)().then(async l=>[await t.regionInfoProvider(l,{useFipsEndpoint:await t.useFipsEndpoint(),useDualstackEndpoint:await t.useDualstackEndpoint()})||{},l]).then(([l,u])=>{let{signingRegion:d,signingService:p}=l;t.signingRegion=t.signingRegion||d||u,t.signingName=t.signingName||p||t.serviceId;let m={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:i,uriEscapePath:s},h=t.signerConstructor||Cj.SignatureV4;return new h(m)}):a=async l=>{l=Object.assign({},{name:"sigv4",signingName:t.signingName||t.defaultSigningName,signingRegion:await ml(t.region)(),properties:{}},l);let u=l.signingRegion,d=l.signingName;t.signingRegion=t.signingRegion||u,t.signingName=t.signingName||d||t.serviceId;let p={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:i,uriEscapePath:s},m=t.signerConstructor||Cj.SignatureV4;return new m(p)},Object.assign(t,{systemClockOffset:o,signingEscapePath:s,signer:a})},OCt=Cl});var hPe=C(()=>{rj();UTe();HTe();zTe();APe()});var lp={};Zr(lp,{AWSSDKSigV4Signer:()=>FTe,AwsSdkSigV4ASigner:()=>cp,AwsSdkSigV4Signer:()=>Ln,NODE_AUTH_SCHEME_PREFERENCE_OPTIONS:()=>Tu,NODE_SIGV4A_CONFIG_OPTIONS:()=>aj,getBearerTokenEnvKey:()=>sj,resolveAWSSDKSigV4Config:()=>OCt,resolveAwsSdkSigV4AConfig:()=>ij,resolveAwsSdkSigV4Config:()=>Cl,validateSigningProperties:()=>rw});var Kr=C(()=>{hPe();oj()});var xj=w(up=>{"use strict";Object.defineProperty(up,"__esModule",{value:!0});up.resolveHttpAuthSchemeConfig=up.defaultECRHttpAuthSchemeProvider=up.defaultECRHttpAuthSchemeParametersProvider=void 0;var UCt=(Kr(),Y(lp)),Ij=(Ee(),Y(Fi)),qCt=async(t,e,r)=>({operation:(0,Ij.getSmithyContext)(e).operation,region:await(0,Ij.normalizeProvider)(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});up.defaultECRHttpAuthSchemeParametersProvider=qCt;function $Ct(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}var GCt=t=>{let e=[];switch(t.operation){default:e.push($Ct(t))}return e};up.defaultECRHttpAuthSchemeProvider=GCt;var HCt=t=>{let e=(0,UCt.resolveAwsSdkSigV4Config)(t);return Object.assign(e,{authSchemePreference:(0,Ij.normalizeProvider)(t.authSchemePreference??[])})};up.resolveHttpAuthSchemeConfig=HCt});var gPe=w((lIr,zCt)=>{zCt.exports={name:"@aws-sdk/client-ecr",description:"AWS SDK for JavaScript Ecr Client for Node.js, Browser and React Native",version:"3.1052.0",scripts:{build:"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline client-ecr","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo ecr","test:e2e":"yarn g:vitest run -c vitest.config.e2e.mts --mode development","test:e2e:watch":"yarn g:vitest watch -c vitest.config.e2e.mts","test:index":"tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/credential-provider-node":"^3.972.44","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node20":"20.1.8","@types/node":"^20.14.8",concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},engines:{node:">=20.0.0"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ecr",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-ecr"}}});var wj=w(dp=>{"use strict";var VCt=(xt(),Y(Qs)),YCt=(Nt(),Y(Dn)),yPe="AWS_ACCESS_KEY_ID",EPe="AWS_SECRET_ACCESS_KEY",CPe="AWS_SESSION_TOKEN",IPe="AWS_CREDENTIAL_EXPIRATION",xPe="AWS_CREDENTIAL_SCOPE",wPe="AWS_ACCOUNT_ID",WCt=t=>async()=>{t?.logger?.debug("@aws-sdk/credential-provider-env - fromEnv");let e=process.env[yPe],r=process.env[EPe],n=process.env[CPe],s=process.env[IPe],o=process.env[xPe],i=process.env[wPe];if(e&&r){let a={accessKeyId:e,secretAccessKey:r,...n&&{sessionToken:n},...s&&{expiration:new Date(s)},...o&&{credentialScope:o},...i&&{accountId:i}};return VCt.setCredentialFeature(a,"CREDENTIALS_ENV_VARS","g"),a}throw new YCt.CredentialsProviderError("Unable to find environment variable credentials.",{logger:t?.logger})};dp.ENV_ACCOUNT_ID=wPe;dp.ENV_CREDENTIAL_SCOPE=xPe;dp.ENV_EXPIRATION=IPe;dp.ENV_KEY=yPe;dp.ENV_SECRET=EPe;dp.ENV_SESSION=CPe;dp.fromEnv=WCt});var RQ=w(ns=>{"use strict";var jCt=require("node:url"),Jo=(Nt(),Y(Dn)),JCt=require("node:http"),KCt=(_e(),Y(tl)),RPe=t=>!!t&&typeof t=="object"&&typeof t.AccessKeyId=="string"&&typeof t.SecretAccessKey=="string"&&typeof t.Token=="string"&&typeof t.Expiration=="string",NPe=t=>({accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretAccessKey,sessionToken:t.Token,expiration:new Date(t.Expiration),...t.AccountId&&{accountId:t.AccountId}}),TPe=1e3,PPe=0,Nj=({maxRetries:t=PPe,timeout:e=TPe})=>({maxRetries:t,timeout:e});function nw(t){return new Promise((e,r)=>{let n=JCt.request({method:"GET",...t,hostname:t.hostname?.replace(/^\[(.+)\]$/,"$1")});n.on("error",s=>{r(Object.assign(new Jo.ProviderError("Unable to connect to instance metadata service"),s)),n.destroy()}),n.on("timeout",()=>{r(new Jo.ProviderError("TimeoutError from instance metadata service")),n.destroy()}),n.on("response",s=>{let{statusCode:o=400}=s;(o<200||300<=o)&&(r(Object.assign(new Jo.ProviderError("Error response received from instance metadata service"),{statusCode:o})),n.destroy());let i=[];s.on("data",a=>{i.push(a)}),s.on("end",()=>{e(Buffer.concat(i)),n.destroy()})}),n.end()})}var Sj=(t,e)=>{let r=t();for(let n=0;n{let{timeout:e,maxRetries:r}=Nj(t);return()=>Sj(async()=>{let n=await nIt({logger:t.logger}),s=JSON.parse(await ZCt(e,n));if(!RPe(s))throw new Jo.CredentialsProviderError("Invalid response received from instance metadata service.",{logger:t.logger});return NPe(s)},r)},ZCt=async(t,e)=>(process.env[Bj]&&(e.headers={...e.headers,Authorization:process.env[Bj]}),(await nw({...e,timeout:t})).toString()),eIt="169.254.170.2",tIt={localhost:!0,"127.0.0.1":!0},rIt={"http:":!0,"https:":!0},nIt=async({logger:t})=>{if(process.env[BQ])return{hostname:eIt,path:process.env[BQ]};if(process.env[SQ]){let e=jCt.parse(process.env[SQ]);if(!e.hostname||!(e.hostname in tIt))throw new Jo.CredentialsProviderError(`${e.hostname} is not a valid container metadata service hostname`,{tryNextLink:!1,logger:t});if(!e.protocol||!(e.protocol in rIt))throw new Jo.CredentialsProviderError(`${e.protocol} is not a valid container metadata service protocol`,{tryNextLink:!1,logger:t});return{...e,port:e.port?parseInt(e.port,10):void 0}}throw new Jo.CredentialsProviderError(`The container metadata credential provider cannot be used unless the ${BQ} or ${SQ} environment variable is set`,{tryNextLink:!1,logger:t})},Rj=class t extends Jo.CredentialsProviderError{tryNextLink;name="InstanceMetadataV1FallbackError";constructor(e,r=!0){super(e,r),this.tryNextLink=r,Object.setPrototypeOf(this,t.prototype)}};ns.Endpoint=void 0;(function(t){t.IPv4="http://169.254.169.254",t.IPv6="http://[fd00:ec2::254]"})(ns.Endpoint||(ns.Endpoint={}));var sIt="AWS_EC2_METADATA_SERVICE_ENDPOINT",oIt="ec2_metadata_service_endpoint",iIt={environmentVariableSelector:t=>t[sIt],configFileSelector:t=>t[oIt],default:void 0},yy;(function(t){t.IPv4="IPv4",t.IPv6="IPv6"})(yy||(yy={}));var aIt="AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE",cIt="ec2_metadata_service_endpoint_mode",lIt={environmentVariableSelector:t=>t[aIt],configFileSelector:t=>t[cIt],default:yy.IPv4},vPe=async()=>KCt.parseUrl(await uIt()||await dIt()),uIt=async()=>Jo.loadConfig(iIt)(),dIt=async()=>{let t=await Jo.loadConfig(lIt)();switch(t){case yy.IPv4:return ns.Endpoint.IPv4;case yy.IPv6:return ns.Endpoint.IPv6;default:throw new Error(`Unsupported endpoint mode: ${t}. Select from ${Object.values(yy)}`)}},pIt=300,mIt=300,fIt="https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html",bPe=(t,e)=>{let r=pIt+Math.floor(Math.random()*mIt),n=new Date(Date.now()+r*1e3);e.warn(`Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(n)}. -For more information, please visit: `+fIt);let s=t.originalExpiration??t.expiration;return{...t,...s?{originalExpiration:s}:{},expiration:n}},AIt=(t,e={})=>{let r=e?.logger||console,n;return async()=>{let s;try{s=await t(),s.expiration&&s.expiration.getTime()AIt(yIt(t),{logger:t.logger}),yIt=(t={})=>{let e=!1,{logger:r,profile:n}=t,{timeout:s,maxRetries:o}=Nj(t),i=async(a,c)=>{if(e||c.headers?.[BPe]==null){let d=!1,p=!1,m=await Jo.loadConfig({environmentVariableSelector:h=>{let y=h[bj];if(p=!!y&&y!=="false",y===void 0)throw new Jo.CredentialsProviderError(`${bj} not set in env, checking config file next.`,{logger:t.logger});return p},configFileSelector:h=>{let y=h[SPe];return d=!!y&&y!=="false",d},default:!1},{profile:n})();if(t.ec2MetadataV1Disabled||m){let h=[];throw t.ec2MetadataV1Disabled&&h.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"),d&&h.push(`config file profile (${SPe})`),p&&h.push(`process environment variable (${bj})`),new Rj(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${h.join(", ")}].`)}}let u=(await Sj(async()=>{let d;try{d=await CIt(c)}catch(p){throw p.statusCode===401&&(e=!1),p}return d},a)).trim();return Sj(async()=>{let d;try{d=await IIt(u,c,t)}catch(p){throw p.statusCode===401&&(e=!1),p}return d},a)};return async()=>{let a=await vPe();if(e)return r?.debug("AWS SDK Instance Metadata","using v1 fallback (no token fetch)"),i(o,{...a,timeout:s});{let c;try{c=(await EIt({...a,timeout:s})).toString()}catch(l){if(l?.statusCode===400)throw Object.assign(l,{message:"EC2 Metadata token request returned error"});return(l.message==="TimeoutError"||[403,404,405].includes(l.statusCode))&&(e=!0),r?.debug("AWS SDK Instance Metadata","using v1 fallback (initial)"),i(o,{...a,timeout:s})}return i(o,{...a,headers:{[BPe]:c},timeout:s})}}},EIt=async t=>nw({...t,path:hIt,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),CIt=async t=>(await nw({...t,path:_Pe})).toString(),IIt=async(t,e,r)=>{let n=JSON.parse((await nw({...e,path:_Pe+t})).toString());if(!RPe(n))throw new Jo.CredentialsProviderError("Invalid response received from instance metadata service.",{logger:r.logger});return NPe(n)};ns.DEFAULT_MAX_RETRIES=PPe;ns.DEFAULT_TIMEOUT=TPe;ns.ENV_CMDS_AUTH_TOKEN=Bj;ns.ENV_CMDS_FULL_URI=SQ;ns.ENV_CMDS_RELATIVE_URI=BQ;ns.fromContainerMetadata=XCt;ns.fromInstanceMetadata=gIt;ns.getInstanceMetadataEndpoint=vPe;ns.httpRequest=nw;ns.providerConfigFromInit=Nj});var Pu=w(ow=>{"use strict";var NQ=require("node:https"),PQ=(_e(),Y(tl)),OPe=require("node:stream"),vQ=require("node:http2");function _Q(t){let e=t&&typeof t=="object"&&"reason"in t?t.reason:void 0;if(e){if(e instanceof Error){let s=new Error("Request aborted");return s.name="AbortError",s.cause=e,s}let n=new Error(String(e));return n.name="AbortError",n}let r=new Error("Request aborted");return r.name="AbortError",r}var xIt=["ECONNRESET","EPIPE","ETIMEDOUT"],MPe=t=>{let e={};for(let r in t){let n=t[r];e[r]=Array.isArray(n)?n.join(","):n}return e},On={setTimeout:(t,e)=>setTimeout(t,e),clearTimeout:t=>clearTimeout(t)},QPe=1e3,wIt=(t,e,r=0)=>{if(!r)return-1;let n=s=>{let o=On.setTimeout(()=>{t.destroy(),e(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${r} ms.`),{name:"TimeoutError"}))},r-s),i=a=>{a?.connecting?a.on("connect",()=>{On.clearTimeout(o)}):On.clearTimeout(o)};t.socket?i(t.socket):t.on("socket",i)};return r<2e3?(n(0),0):On.setTimeout(n.bind(null,QPe),QPe)},bIt=(t,e,r=0,n,s)=>r?On.setTimeout(()=>{let o=`@smithy/node-http-handler - [${n?"ERROR":"WARN"}] a request has exceeded the configured ${r} ms requestTimeout.`;if(n){let i=Object.assign(new Error(o),{name:"TimeoutError",code:"ETIMEDOUT"});t.destroy(i),e(i)}else o+=" Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.",s?.warn?.(o)},r):-1,SIt=3e3,BIt=(t,{keepAlive:e,keepAliveMsecs:r},n=SIt)=>{if(e!==!0)return-1;let s=()=>{t.socket?t.socket.setKeepAlive(e,r||0):t.on("socket",o=>{o.setKeepAlive(e,r||0)})};return n===0?(s(),0):On.setTimeout(s,n)},DPe=3e3,RIt=(t,e,r=0)=>{let n=s=>{let o=r-s,i=()=>{t.destroy(),e(Object.assign(new Error(`@smithy/node-http-handler - the request socket timed out after ${r} ms of inactivity (configured by client requestHandler).`),{name:"TimeoutError"}))};t.socket?(t.socket.setTimeout(o,i),t.on("close",()=>t.socket?.removeListener("timeout",i))):t.setTimeout(o,i)};return 0{i=Number(On.setTimeout(()=>c(!0),Math.max(kPe,r)))}),new Promise(c=>{t.on("continue",()=>{On.clearTimeout(i),c(!0)}),t.on("response",()=>{On.clearTimeout(i),c(!1)}),t.on("error",()=>{On.clearTimeout(i),c(!1)})})])),a&&NIt(t,e.body)}function NIt(t,e){if(e instanceof OPe.Readable){e.pipe(t);return}if(e){let r=Buffer.isBuffer(e);if(r||typeof e=="string"){r&&e.byteLength===0?t.end():t.end(e);return}let s=e;if(typeof s=="object"&&s.buffer&&typeof s.byteOffset=="number"&&typeof s.byteLength=="number"){t.end(Buffer.from(s.buffer,s.byteOffset,s.byteLength));return}t.end(Buffer.from(e));return}t.end()}var TIt=0,TQ,LPe,Tj=class t{config;configProvider;socketWarningTimestamp=0;externalAgent=!1;metadata={handlerProtocol:"http/1.1"};static create(e){return typeof e?.handle=="function"?e:new t(e)}static checkSocketUsage(e,r,n=console){let{sockets:s,requests:o,maxSockets:i}=e;if(typeof i!="number"||i===1/0||Date.now()-15e3=i&&u>=2*i)return n?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${l} and ${u} additional requests are enqueued. +${ns.toHex(a)}`}getCanonicalPath({path:e}){if(this.uriEscapePath){let r=[];for(let o of e.split("/"))o?.length!==0&&o!=="."&&(o===".."?r.pop():r.push(o));let n=`${e?.startsWith("/")?"/":""}${r.join("/")}${r.length>0&&e?.endsWith("/")?"/":""}`;return yy.escapeUri(n).replace(/%2F/g,"/")}return e}validateResolvedCredentials(e){if(typeof e!="object"||typeof e.accessKeyId!="string"||typeof e.secretAccessKey!="string")throw new Error("Resolved credential object is not valid")}formatDate(e){let r=DCt(e).replace(/[\-:]/g,"");return{longDate:r,shortDate:r.slice(0,8)}}getCanonicalHeaderList(e){return Object.keys(e).sort().join(";")}},gy={},IQ=[],xQ=i((t,e,r)=>`${t}/${e}/${r}/${Ej}`,"createScope"),fPe=i(async(t,e,r,n,s)=>{let o=await KTe(t,e.secretAccessKey,e.accessKeyId),a=`${r}:${n}:${s}:${ns.toHex(o)}:${e.sessionToken}`;if(a in gy)return gy[a];for(IQ.push(a);IQ.length>dPe;)delete gy[IQ.shift()];let c=`AWS4${e.secretAccessKey}`;for(let l of[r,n,s,Ej])c=await KTe(t,c,l);return gy[a]=c},"getSigningKey"),LCt=i(()=>{IQ.length=0,Object.keys(gy).forEach(t=>{delete gy[t]})},"clearCredentialCache"),KTe=i((t,e,r)=>{let n=new t(e);return n.update(ns.toUint8Array(r)),n.digest()},"hmac"),dj=i(({headers:t},e,r)=>{let n={};for(let s of Object.keys(t).sort()){if(t[s]==null)continue;let o=s.toLowerCase();(o in iPe||e?.has(o)||aPe.test(o)||cPe.test(o))&&(!r||r&&!r.has(o))||(n[o]=t[s].trim().replace(/\s+/g," "))}return n},"getCanonicalHeaders"),wQ=i(async({headers:t,body:e},r)=>{for(let n of Object.keys(t))if(n.toLowerCase()===bQ)return t[n];if(e==null)return"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855";if(typeof e=="string"||ArrayBuffer.isView(e)||ns.isArrayBuffer(e)){let n=new r;return n.update(ns.toUint8Array(e)),ns.toHex(await n.digest())}return uPe},"getPayloadHash"),APe=i((t,e)=>{t=t.toLowerCase();for(let r of Object.keys(e))if(t===r.toLowerCase())return!0;return!1},"hasHeader"),hPe=i((t,e={})=>{let{headers:r,query:n={}}=yy.HttpRequest.clone(t);for(let s of Object.keys(r)){let o=s.toLowerCase();(o.slice(0,6)==="x-amz-"&&!e.unhoistableHeaders?.has(o)||e.hoistableHeaders?.has(o))&&(n[s]=r[s],delete r[s])}return{...t,headers:r,query:n}},"moveHeadersToQuery"),pj=i(t=>{t=yy.HttpRequest.clone(t);for(let e of Object.keys(t.headers))nPe.indexOf(e.toLowerCase())>-1&&delete t.headers[e];return t},"prepareRequest"),mj=class extends SQ{static{i(this,"SignatureV4")}headerFormatter=new lj;constructor({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:a=!0}){super({applyChecksum:e,credentials:r,region:n,service:s,sha256:o,uriEscapePath:a})}async presign(e,r={}){let{signingDate:n=new Date,expiresIn:s=3600,unsignableHeaders:o,unhoistableHeaders:a,signableHeaders:c,hoistableHeaders:l,signingRegion:u,signingService:d}=r,p=await this.credentialProvider();this.validateResolvedCredentials(p);let m=u??await this.regionProvider(),{longDate:f,shortDate:g}=this.formatDate(n);if(s>pPe)return Promise.reject("Signature version 4 presigned URLs must have an expiration date less than one week in the future");let E=xQ(g,m,d??this.service),x=hPe(pj(e),{unhoistableHeaders:a,hoistableHeaders:l});p.sessionToken&&(x.query[hj]=p.sessionToken),x.query[XTe]=CQ,x.query[ZTe]=`${p.accessKeyId}/${E}`,x.query[fj]=f,x.query[tPe]=s.toString(10);let w=dj(x,o,c);return x.query[ePe]=this.getCanonicalHeaderList(w),x.query[Aj]=await this.getSignature(f,E,this.getSigningKey(p,m,g,d),this.createCanonicalRequest(x,w,await wQ(e,this.sha256))),x}async sign(e,r){return typeof e=="string"?this.signString(e,r):e.headers&&e.payload?this.signEvent(e,r):e.message?this.signMessage(e,r):this.signRequest(e,r)}async signEvent({headers:e,payload:r},{signingDate:n=new Date,priorSignature:s,signingRegion:o,signingService:a,eventStreamCredentials:c}){let l=o??await this.regionProvider(),{shortDate:u,longDate:d}=this.formatDate(n),p=xQ(u,l,a??this.service),m=await wQ({headers:{},body:r},this.sha256),f=new this.sha256;f.update(e);let g=ns.toHex(await f.digest()),E=[lPe,d,p,s,g,m].join(` +`);return this.signString(E,{signingDate:n,signingRegion:l,signingService:a,eventStreamCredentials:c})}async signMessage(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}){return this.signEvent({headers:this.headerFormatter.format(e.message.headers),payload:e.message.body},{signingDate:r,signingRegion:n,signingService:s,priorSignature:e.priorSignature,eventStreamCredentials:o}).then(c=>({message:e.message,signature:c}))}async signString(e,{signingDate:r=new Date,signingRegion:n,signingService:s,eventStreamCredentials:o}={}){let a=o??await this.credentialProvider();this.validateResolvedCredentials(a);let c=n??await this.regionProvider(),{shortDate:l}=this.formatDate(r),u=new this.sha256(await this.getSigningKey(a,c,l,s));return u.update(ns.toUint8Array(e)),ns.toHex(await u.digest())}async signRequest(e,{signingDate:r=new Date,signableHeaders:n,unsignableHeaders:s,signingRegion:o,signingService:a}={}){let c=await this.credentialProvider();this.validateResolvedCredentials(c);let l=o??await this.regionProvider(),u=pj(e),{longDate:d,shortDate:p}=this.formatDate(r),m=xQ(p,l,a??this.service);u.headers[yj]=d,c.sessionToken&&(u.headers[oPe]=c.sessionToken);let f=await wQ(u,this.sha256);!APe(bQ,u.headers)&&this.applyChecksum&&(u.headers[bQ]=f);let g=dj(u,s,n),E=await this.getSignature(d,m,this.getSigningKey(c,l,p,a),this.createCanonicalRequest(u,g,f));return u.headers[gj]=`${CQ} Credential=${c.accessKeyId}/${m}, SignedHeaders=${this.getCanonicalHeaderList(g)}, Signature=${E}`,u}async getSignature(e,r,n,s){let o=await this.createStringToSign(e,r,s,CQ),a=new this.sha256(await n);return a.update(ns.toUint8Array(o)),ns.toHex(await a.digest())}getSigningKey(e,r,n,s){return fPe(this.sha256,e,n,r,s||this.service)}},OCt={SignatureV4a:null};ct.ALGORITHM_IDENTIFIER=CQ;ct.ALGORITHM_IDENTIFIER_V4A=QCt;ct.ALGORITHM_QUERY_PARAM=XTe;ct.ALWAYS_UNSIGNABLE_HEADERS=iPe;ct.AMZ_DATE_HEADER=yj;ct.AMZ_DATE_QUERY_PARAM=fj;ct.AUTH_HEADER=gj;ct.CREDENTIAL_QUERY_PARAM=ZTe;ct.DATE_HEADER=rPe;ct.EVENT_ALGORITHM_IDENTIFIER=lPe;ct.EXPIRES_QUERY_PARAM=tPe;ct.GENERATED_HEADERS=nPe;ct.HOST_HEADER=vCt;ct.KEY_TYPE_IDENTIFIER=Ej;ct.MAX_CACHE_SIZE=dPe;ct.MAX_PRESIGNED_TTL=pPe;ct.PROXY_HEADER_PATTERN=aPe;ct.REGION_SET_PARAM=PCt;ct.SEC_HEADER_PATTERN=cPe;ct.SHA256_HEADER=bQ;ct.SIGNATURE_HEADER=sPe;ct.SIGNATURE_QUERY_PARAM=Aj;ct.SIGNED_HEADERS_QUERY_PARAM=ePe;ct.SignatureV4=mj;ct.SignatureV4Base=SQ;ct.TOKEN_HEADER=oPe;ct.TOKEN_QUERY_PARAM=hj;ct.UNSIGNABLE_PATTERNS=_Ct;ct.UNSIGNED_PAYLOAD=uPe;ct.clearCredentialCache=LCt;ct.createScope=xQ;ct.getCanonicalHeaders=dj;ct.getCanonicalQuery=mPe;ct.getPayloadHash=wQ;ct.getSigningKey=fPe;ct.hasHeader=APe;ct.moveHeadersToQuery=hPe;ct.prepareRequest=pj;ct.signatureV4aContainer=OCt});function FCt(t,{credentials:e,credentialDefaultProvider:r}){let n;return e?e?.memoized?n=e:n=_8(e,v8,cQ):r?n=fl(r(Object.assign({},t,{parentClientConfig:t}))):n=i(async()=>{throw new Error("@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.")},"credentialsProvider"),n.memoized=!0,n}function UCt(t,e){if(e.configBound)return e;let r=i(async n=>e({...n,callerClientConfig:t}),"fn");return r.memoized=e.memoized,r.configBound=!0,r}var Ij,Il,MCt,gPe=I(()=>{wt();Qs();Ij=D(Cj()),Il=i(t=>{let e=t.credentials,r=!!t.credentials,n;Object.defineProperty(t,"credentials",{set(u){u&&u!==e&&u!==n&&(r=!0),e=u;let d=FCt(t,{credentials:e,credentialDefaultProvider:t.credentialDefaultProvider}),p=UCt(t,d);if(r&&!p.attributed){let m=typeof e=="object"&&e!==null;n=i(async f=>{let E=await p(f);return m&&(!E.$source||Object.keys(E.$source).length===0)?zd(E,"CREDENTIALS_CODE","e"):E},"resolvedCredentials"),n.memoized=p.memoized,n.configBound=p.configBound,n.attributed=!0}else n=p},get(){return n},enumerable:!0,configurable:!0}),t.credentials=e;let{signingEscapePath:s=!0,systemClockOffset:o=t.systemClockOffset||0,sha256:a}=t,c;return t.signer?c=fl(t.signer):t.regionInfoProvider?c=i(()=>fl(t.region)().then(async u=>[await t.regionInfoProvider(u,{useFipsEndpoint:await t.useFipsEndpoint(),useDualstackEndpoint:await t.useDualstackEndpoint()})||{},u]).then(([u,d])=>{let{signingRegion:p,signingService:m}=u;t.signingRegion=t.signingRegion||p||d,t.signingName=t.signingName||m||t.serviceId;let f={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:a,uriEscapePath:s},g=t.signerConstructor||Ij.SignatureV4;return new g(f)}),"signer"):c=i(async u=>{u=Object.assign({},{name:"sigv4",signingName:t.signingName||t.defaultSigningName,signingRegion:await fl(t.region)(),properties:{}},u);let d=u.signingRegion,p=u.signingName;t.signingRegion=t.signingRegion||d,t.signingName=t.signingName||p||t.serviceId;let m={...t,credentials:t.credentials,region:t.signingRegion,service:t.signingName,sha256:a,uriEscapePath:s},f=t.signerConstructor||Ij.SignatureV4;return new f(m)},"signer"),Object.assign(t,{systemClockOffset:o,signingEscapePath:s,signer:c})},"resolveAwsSdkSigV4Config"),MCt=Il;i(FCt,"normalizeCredentialProvider");i(UCt,"bindCallerConfig")});var yPe=I(()=>{nj();$Te();VTe();YTe();gPe()});var up={};en(up,{AWSSDKSigV4Signer:()=>qTe,AwsSdkSigV4ASigner:()=>lp,AwsSdkSigV4Signer:()=>On,NODE_AUTH_SCHEME_PREFERENCE_OPTIONS:()=>Pu,NODE_SIGV4A_CONFIG_OPTIONS:()=>cj,getBearerTokenEnvKey:()=>oj,resolveAWSSDKSigV4Config:()=>MCt,resolveAwsSdkSigV4AConfig:()=>aj,resolveAwsSdkSigV4Config:()=>Il,validateSigningProperties:()=>sw});var Xr=I(()=>{yPe();ij()});var wj=b(dp=>{"use strict";Object.defineProperty(dp,"__esModule",{value:!0});dp.resolveHttpAuthSchemeConfig=dp.defaultECRHttpAuthSchemeProvider=dp.defaultECRHttpAuthSchemeParametersProvider=void 0;var qCt=(Xr(),W(up)),xj=(Ce(),W(Ui)),$Ct=i(async(t,e,r)=>({operation:(0,xj.getSmithyContext)(e).operation,region:await(0,xj.normalizeProvider)(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultECRHttpAuthSchemeParametersProvider");dp.defaultECRHttpAuthSchemeParametersProvider=$Ct;function GCt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}i(GCt,"createAwsAuthSigv4HttpAuthOption");var HCt=i(t=>{let e=[];switch(t.operation){default:e.push(GCt(t))}return e},"defaultECRHttpAuthSchemeProvider");dp.defaultECRHttpAuthSchemeProvider=HCt;var zCt=i(t=>{let e=(0,qCt.resolveAwsSdkSigV4Config)(t);return Object.assign(e,{authSchemePreference:(0,xj.normalizeProvider)(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig");dp.resolveHttpAuthSchemeConfig=zCt});var EPe=b((gOr,VCt)=>{VCt.exports={name:"@aws-sdk/client-ecr",description:"AWS SDK for JavaScript Ecr Client for Node.js, Browser and React Native",version:"3.1052.0",scripts:{build:"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline client-ecr","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo ecr","test:e2e":"yarn g:vitest run -c vitest.config.e2e.mts --mode development","test:e2e:watch":"yarn g:vitest watch -c vitest.config.e2e.mts","test:index":"tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/credential-provider-node":"^3.972.44","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node20":"20.1.8","@types/node":"^20.14.8",concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},engines:{node:">=20.0.0"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ecr",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-ecr"}}});var bj=b(pp=>{"use strict";var YCt=(wt(),W(Ds)),WCt=(Tt(),W(kn)),CPe="AWS_ACCESS_KEY_ID",IPe="AWS_SECRET_ACCESS_KEY",xPe="AWS_SESSION_TOKEN",wPe="AWS_CREDENTIAL_EXPIRATION",bPe="AWS_CREDENTIAL_SCOPE",SPe="AWS_ACCOUNT_ID",jCt=i(t=>async()=>{t?.logger?.debug("@aws-sdk/credential-provider-env - fromEnv");let e=process.env[CPe],r=process.env[IPe],n=process.env[xPe],s=process.env[wPe],o=process.env[bPe],a=process.env[SPe];if(e&&r){let c={accessKeyId:e,secretAccessKey:r,...n&&{sessionToken:n},...s&&{expiration:new Date(s)},...o&&{credentialScope:o},...a&&{accountId:a}};return YCt.setCredentialFeature(c,"CREDENTIALS_ENV_VARS","g"),c}throw new WCt.CredentialsProviderError("Unable to find environment variable credentials.",{logger:t?.logger})},"fromEnv");pp.ENV_ACCOUNT_ID=SPe;pp.ENV_CREDENTIAL_SCOPE=bPe;pp.ENV_EXPIRATION=wPe;pp.ENV_KEY=CPe;pp.ENV_SECRET=IPe;pp.ENV_SESSION=xPe;pp.fromEnv=jCt});var NQ=b(ss=>{"use strict";var JCt=require("node:url"),Ko=(Tt(),W(kn)),KCt=require("node:http"),XCt=(Qe(),W(rl)),TPe=i(t=>!!t&&typeof t=="object"&&typeof t.AccessKeyId=="string"&&typeof t.SecretAccessKey=="string"&&typeof t.Token=="string"&&typeof t.Expiration=="string","isImdsCredentials"),PPe=i(t=>({accessKeyId:t.AccessKeyId,secretAccessKey:t.SecretAccessKey,sessionToken:t.Token,expiration:new Date(t.Expiration),...t.AccountId&&{accountId:t.AccountId}}),"fromImdsCredentials"),vPe=1e3,_Pe=0,Tj=i(({maxRetries:t=_Pe,timeout:e=vPe})=>({maxRetries:t,timeout:e}),"providerConfigFromInit");function ow(t){return new Promise((e,r)=>{let n=KCt.request({method:"GET",...t,hostname:t.hostname?.replace(/^\[(.+)\]$/,"$1")});n.on("error",s=>{r(Object.assign(new Ko.ProviderError("Unable to connect to instance metadata service"),s)),n.destroy()}),n.on("timeout",()=>{r(new Ko.ProviderError("TimeoutError from instance metadata service")),n.destroy()}),n.on("response",s=>{let{statusCode:o=400}=s;(o<200||300<=o)&&(r(Object.assign(new Ko.ProviderError("Error response received from instance metadata service"),{statusCode:o})),n.destroy());let a=[];s.on("data",c=>{a.push(c)}),s.on("end",()=>{e(Buffer.concat(a)),n.destroy()})}),n.end()})}i(ow,"httpRequest");var Bj=i((t,e)=>{let r=t();for(let n=0;n{let{timeout:e,maxRetries:r}=Tj(t);return()=>Bj(async()=>{let n=await sIt({logger:t.logger}),s=JSON.parse(await eIt(e,n));if(!TPe(s))throw new Ko.CredentialsProviderError("Invalid response received from instance metadata service.",{logger:t.logger});return PPe(s)},r)},"fromContainerMetadata"),eIt=i(async(t,e)=>(process.env[Rj]&&(e.headers={...e.headers,Authorization:process.env[Rj]}),(await ow({...e,timeout:t})).toString()),"requestFromEcsImds"),tIt="169.254.170.2",rIt={localhost:!0,"127.0.0.1":!0},nIt={"http:":!0,"https:":!0},sIt=i(async({logger:t})=>{if(process.env[RQ])return{hostname:tIt,path:process.env[RQ]};if(process.env[BQ]){let e=JCt.parse(process.env[BQ]);if(!e.hostname||!(e.hostname in rIt))throw new Ko.CredentialsProviderError(`${e.hostname} is not a valid container metadata service hostname`,{tryNextLink:!1,logger:t});if(!e.protocol||!(e.protocol in nIt))throw new Ko.CredentialsProviderError(`${e.protocol} is not a valid container metadata service protocol`,{tryNextLink:!1,logger:t});return{...e,port:e.port?parseInt(e.port,10):void 0}}throw new Ko.CredentialsProviderError(`The container metadata credential provider cannot be used unless the ${RQ} or ${BQ} environment variable is set`,{tryNextLink:!1,logger:t})},"getCmdsUri"),Nj=class t extends Ko.CredentialsProviderError{static{i(this,"InstanceMetadataV1FallbackError")}tryNextLink;name="InstanceMetadataV1FallbackError";constructor(e,r=!0){super(e,r),this.tryNextLink=r,Object.setPrototypeOf(this,t.prototype)}};ss.Endpoint=void 0;(function(t){t.IPv4="http://169.254.169.254",t.IPv6="http://[fd00:ec2::254]"})(ss.Endpoint||(ss.Endpoint={}));var oIt="AWS_EC2_METADATA_SERVICE_ENDPOINT",iIt="ec2_metadata_service_endpoint",aIt={environmentVariableSelector:i(t=>t[oIt],"environmentVariableSelector"),configFileSelector:i(t=>t[iIt],"configFileSelector"),default:void 0},Ey;(function(t){t.IPv4="IPv4",t.IPv6="IPv6"})(Ey||(Ey={}));var cIt="AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE",lIt="ec2_metadata_service_endpoint_mode",uIt={environmentVariableSelector:i(t=>t[cIt],"environmentVariableSelector"),configFileSelector:i(t=>t[lIt],"configFileSelector"),default:Ey.IPv4},QPe=i(async()=>XCt.parseUrl(await dIt()||await pIt()),"getInstanceMetadataEndpoint"),dIt=i(async()=>Ko.loadConfig(aIt)(),"getFromEndpointConfig"),pIt=i(async()=>{let t=await Ko.loadConfig(uIt)();switch(t){case Ey.IPv4:return ss.Endpoint.IPv4;case Ey.IPv6:return ss.Endpoint.IPv6;default:throw new Error(`Unsupported endpoint mode: ${t}. Select from ${Object.values(Ey)}`)}},"getFromEndpointModeConfig"),mIt=300,fIt=300,AIt="https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html",BPe=i((t,e)=>{let r=mIt+Math.floor(Math.random()*fIt),n=new Date(Date.now()+r*1e3);e.warn(`Attempting credential expiration extension due to a credential service availability issue. A refresh of these credentials will be attempted after ${new Date(n)}. +For more information, please visit: `+AIt);let s=t.originalExpiration??t.expiration;return{...t,...s?{originalExpiration:s}:{},expiration:n}},"getExtendedInstanceMetadataCredentials"),hIt=i((t,e={})=>{let r=e?.logger||console,n;return async()=>{let s;try{s=await t(),s.expiration&&s.expiration.getTime()hIt(EIt(t),{logger:t.logger}),"fromInstanceMetadata"),EIt=i((t={})=>{let e=!1,{logger:r,profile:n}=t,{timeout:s,maxRetries:o}=Tj(t),a=i(async(c,l)=>{if(e||l.headers?.[NPe]==null){let p=!1,m=!1,f=await Ko.loadConfig({environmentVariableSelector:i(g=>{let E=g[Sj];if(m=!!E&&E!=="false",E===void 0)throw new Ko.CredentialsProviderError(`${Sj} not set in env, checking config file next.`,{logger:t.logger});return m},"environmentVariableSelector"),configFileSelector:i(g=>{let E=g[RPe];return p=!!E&&E!=="false",p},"configFileSelector"),default:!1},{profile:n})();if(t.ec2MetadataV1Disabled||f){let g=[];throw t.ec2MetadataV1Disabled&&g.push("credential provider initialization (runtime option ec2MetadataV1Disabled)"),p&&g.push(`config file profile (${RPe})`),m&&g.push(`process environment variable (${Sj})`),new Nj(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${g.join(", ")}].`)}}let d=(await Bj(async()=>{let p;try{p=await IIt(l)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)).trim();return Bj(async()=>{let p;try{p=await xIt(d,l,t)}catch(m){throw m.statusCode===401&&(e=!1),m}return p},c)},"getCredentials");return async()=>{let c=await QPe();if(e)return r?.debug("AWS SDK Instance Metadata","using v1 fallback (no token fetch)"),a(o,{...c,timeout:s});{let l;try{l=(await CIt({...c,timeout:s})).toString()}catch(u){if(u?.statusCode===400)throw Object.assign(u,{message:"EC2 Metadata token request returned error"});return(u.message==="TimeoutError"||[403,404,405].includes(u.statusCode))&&(e=!0),r?.debug("AWS SDK Instance Metadata","using v1 fallback (initial)"),a(o,{...c,timeout:s})}return a(o,{...c,headers:{[NPe]:l},timeout:s})}}},"getInstanceMetadataProvider"),CIt=i(async t=>ow({...t,path:gIt,method:"PUT",headers:{"x-aws-ec2-metadata-token-ttl-seconds":"21600"}}),"getMetadataToken"),IIt=i(async t=>(await ow({...t,path:DPe})).toString(),"getProfile"),xIt=i(async(t,e,r)=>{let n=JSON.parse((await ow({...e,path:DPe+t})).toString());if(!TPe(n))throw new Ko.CredentialsProviderError("Invalid response received from instance metadata service.",{logger:r.logger});return PPe(n)},"getCredentialsFromProfile");ss.DEFAULT_MAX_RETRIES=_Pe;ss.DEFAULT_TIMEOUT=vPe;ss.ENV_CMDS_AUTH_TOKEN=Rj;ss.ENV_CMDS_FULL_URI=BQ;ss.ENV_CMDS_RELATIVE_URI=RQ;ss.fromContainerMetadata=ZCt;ss.fromInstanceMetadata=yIt;ss.getInstanceMetadataEndpoint=QPe;ss.httpRequest=ow;ss.providerConfigFromInit=Tj});var vu=b(aw=>{"use strict";var TQ=require("node:https"),vQ=(Qe(),W(rl)),FPe=require("node:stream"),_Q=require("node:http2");function QQ(t){let e=t&&typeof t=="object"&&"reason"in t?t.reason:void 0;if(e){if(e instanceof Error){let s=new Error("Request aborted");return s.name="AbortError",s.cause=e,s}let n=new Error(String(e));return n.name="AbortError",n}let r=new Error("Request aborted");return r.name="AbortError",r}i(QQ,"buildAbortError");var wIt=["ECONNRESET","EPIPE","ETIMEDOUT"],UPe=i(t=>{let e={};for(let r in t){let n=t[r];e[r]=Array.isArray(n)?n.join(","):n}return e},"getTransformedHeaders"),Mn={setTimeout:i((t,e)=>setTimeout(t,e),"setTimeout"),clearTimeout:i(t=>clearTimeout(t),"clearTimeout")},kPe=1e3,bIt=i((t,e,r=0)=>{if(!r)return-1;let n=i(s=>{let o=Mn.setTimeout(()=>{t.destroy(),e(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${r} ms.`),{name:"TimeoutError"}))},r-s),a=i(c=>{c?.connecting?c.on("connect",()=>{Mn.clearTimeout(o)}):Mn.clearTimeout(o)},"doWithSocket");t.socket?a(t.socket):t.on("socket",a)},"registerTimeout");return r<2e3?(n(0),0):Mn.setTimeout(n.bind(null,kPe),kPe)},"setConnectionTimeout"),SIt=i((t,e,r=0,n,s)=>r?Mn.setTimeout(()=>{let o=`@smithy/node-http-handler - [${n?"ERROR":"WARN"}] a request has exceeded the configured ${r} ms requestTimeout.`;if(n){let a=Object.assign(new Error(o),{name:"TimeoutError",code:"ETIMEDOUT"});t.destroy(a),e(a)}else o+=" Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.",s?.warn?.(o)},r):-1,"setRequestTimeout"),BIt=3e3,RIt=i((t,{keepAlive:e,keepAliveMsecs:r},n=BIt)=>{if(e!==!0)return-1;let s=i(()=>{t.socket?t.socket.setKeepAlive(e,r||0):t.on("socket",o=>{o.setKeepAlive(e,r||0)})},"registerListener");return n===0?(s(),0):Mn.setTimeout(s,n)},"setSocketKeepAlive"),LPe=3e3,NIt=i((t,e,r=0)=>{let n=i(s=>{let o=r-s,a=i(()=>{t.destroy(),e(Object.assign(new Error(`@smithy/node-http-handler - the request socket timed out after ${r} ms of inactivity (configured by client requestHandler).`),{name:"TimeoutError"}))},"onTimeout");t.socket?(t.socket.setTimeout(o,a),t.on("close",()=>t.socket?.removeListener("timeout",a))):t.setTimeout(o,a)},"registerTimeout");return 0{a=Number(Mn.setTimeout(()=>l(!0),Math.max(OPe,r)))}),new Promise(l=>{t.on("continue",()=>{Mn.clearTimeout(a),l(!0)}),t.on("response",()=>{Mn.clearTimeout(a),l(!1)}),t.on("error",()=>{Mn.clearTimeout(a),l(!1)})})])),c&&TIt(t,e.body)}i(qPe,"writeRequestBody");function TIt(t,e){if(e instanceof FPe.Readable){e.pipe(t);return}if(e){let r=Buffer.isBuffer(e);if(r||typeof e=="string"){r&&e.byteLength===0?t.end():t.end(e);return}let s=e;if(typeof s=="object"&&s.buffer&&typeof s.byteOffset=="number"&&typeof s.byteLength=="number"){t.end(Buffer.from(s.buffer,s.byteOffset,s.byteLength));return}t.end(Buffer.from(e));return}t.end()}i(TIt,"writeBody");var PIt=0,PQ,MPe,Pj=class t{static{i(this,"NodeHttpHandler")}config;configProvider;socketWarningTimestamp=0;externalAgent=!1;metadata={handlerProtocol:"http/1.1"};static create(e){return typeof e?.handle=="function"?e:new t(e)}static checkSocketUsage(e,r,n=console){let{sockets:s,requests:o,maxSockets:a}=e;if(typeof a!="number"||a===1/0||Date.now()-15e3=a&&d>=2*a)return n?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${u} and ${d} additional requests are enqueued. See https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html -or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return r}constructor(e){this.configProvider=new Promise((r,n)=>{typeof e=="function"?e().then(s=>{r(this.resolveDefaultConfig(s))}).catch(n):r(this.resolveDefaultConfig(e))})}destroy(){this.config?.httpAgent?.destroy(),this.config?.httpsAgent?.destroy()}async handle(e,{abortSignal:r,requestTimeout:n}={}){this.config||(this.config=await this.configProvider);let s=this.config,o=e.protocol==="https:";return!o&&!this.config.httpAgent&&(this.config.httpAgent=await this.config.httpAgentProvider()),new Promise((i,a)=>{let c,l=-1,u=-1,d=-1,p=-1,m=-1,h=()=>{On.clearTimeout(l),On.clearTimeout(u),On.clearTimeout(d),On.clearTimeout(p),On.clearTimeout(m)},y=async G=>{await c,h(),i(G)},I=async G=>{await c,h(),a(G)};if(r?.aborted){let G=_Q(r);I(G);return}let x=e.headers,b=x?(x.Expect??x.expect)==="100-continue":!1,T=o?s.httpsAgent:s.httpAgent;b&&!this.externalAgent&&(T=new(o?NQ.Agent:TQ)({keepAlive:!1,maxSockets:1/0})),l=On.setTimeout(()=>{this.socketWarningTimestamp=t.checkSocketUsage(T,this.socketWarningTimestamp,s.logger)},s.socketAcquisitionWarningTimeout??(s.requestTimeout??2e3)+(s.connectionTimeout??1e3));let _=e.query?PQ.buildQueryString(e.query):"",U;if(e.username!=null||e.password!=null){let G=e.username??"",se=e.password??"";U=`${G}:${se}`}let O=e.path;_&&(O+=`?${_}`),e.fragment&&(O+=`#${e.fragment}`);let z=e.hostname??"";z[0]==="["&&z.endsWith("]")?z=e.hostname.slice(1,-1):z=e.hostname;let de={headers:e.headers,host:z,method:e.method,path:O,port:e.port,agent:T,auth:U},Be=(o?NQ.request:LPe)(de,G=>{let se=new PQ.HttpResponse({statusCode:G.statusCode||-1,reason:G.statusMessage,headers:MPe(G.headers),body:G});y({response:se})});if(Be.on("error",G=>{xIt.includes(G.code)?I(Object.assign(G,{name:"TimeoutError"})):I(G)}),r){let G=()=>{Be.destroy();let se=_Q(r);I(se)};if(typeof r.addEventListener=="function"){let se=r;se.addEventListener("abort",G,{once:!0}),Be.once("close",()=>se.removeEventListener("abort",G))}else r.onabort=G}let ne=n??s.requestTimeout;u=wIt(Be,I,s.connectionTimeout),d=bIt(Be,I,ne,s.throwOnRequestTimeout,s.logger??console),p=RIt(Be,I,s.socketTimeout);let ge=de.agent;typeof ge=="object"&&"keepAlive"in ge&&(m=BIt(Be,{keepAlive:ge.keepAlive,keepAliveMsecs:ge.keepAliveMsecs})),c=FPe(Be,e,ne,this.externalAgent).catch(G=>(h(),a(G)))})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(n=>({...n,[e]:r}))}httpHandlerConfigs(){return this.config??{}}resolveDefaultConfig(e){let{requestTimeout:r,connectionTimeout:n,socketTimeout:s,socketAcquisitionWarningTimeout:o,httpAgent:i,httpsAgent:a,throwOnRequestTimeout:c,logger:l}=e||{},u=!0,d=50;return{connectionTimeout:n,requestTimeout:r,socketTimeout:s,socketAcquisitionWarningTimeout:o,throwOnRequestTimeout:c,httpAgentProvider:async()=>{let{Agent:p,request:m}=await import("node:http");return LPe=m,TQ=p,i instanceof TQ||typeof i?.destroy=="function"?(this.externalAgent=!0,i):new TQ({keepAlive:u,maxSockets:d,...i})},httpsAgent:a instanceof NQ.Agent||typeof a?.destroy=="function"?(this.externalAgent=!0,a):new NQ.Agent({keepAlive:u,maxSockets:d,...a}),logger:l}}},PIt=new Uint16Array(1),sw=class{id=PIt[0]++;total=0;max=0;session;refs=0;constructor(e){e.unref(),this.session=e}retain(){if(this.session.destroyed)throw new Error("@smithy/node-http-handler - cannot acquire reference to destroyed session.");this.refs+=1,this.total+=1,this.max=Math.max(this.refs,this.max),this.session.ref()}free(){if(!this.session.destroyed&&(this.refs-=1,this.refs===0&&this.session.unref(),this.refs<0))throw new Error("@smithy/node-http-handler - ClientHttp2Session refcount at zero, cannot decrement.")}deref(){return this.session}close(){this.session.closed||this.session.close()}destroy(){this.refs=0,this.session.destroyed||this.session.destroy()}useCount(){return this.refs}},Pj=class{sessions=[];maxConcurrency=0;constructor(e){this.sessions=(e??[]).map(r=>new sw(r))}poll(){let e=!1;for(let r of this.sessions){if(r.deref().destroyed){e=!0;continue}if(!this.maxConcurrency||r.useCount()-1&&this.sessions.splice(r,1)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}setMaxConcurrency(e){this.maxConcurrency=e}destroy(e){this.remove(e),e.destroy()}},vj=class{config;connectOptions;connectionPools=new Map;constructor(e){if(this.config=e,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrency must be greater than zero.")}lease(e,r){let n=this.getUrlString(e),s=this.getPool(n);if(!this.config.disableConcurrency&&!r.isEventStream){let l=s.poll();if(l)return l.retain(),l}let o=new sw(this.connect(n)),i=o.deref();this.config.maxConcurrency&&i.settings({maxConcurrentStreams:this.config.maxConcurrency},l=>{if(l)throw new Error("Fail to set maxConcurrentStreams to "+this.config.maxConcurrency+"when creating new session for "+e.destination.toString())});let a=()=>{this.removeFromPoolAndClose(n,o)},c=()=>{this.removeFromPoolAndCheckedDestroy(n,o)};return i.on("goaway",a),i.on("error",c),i.on("frameError",c),i.on("close",c),r.requestTimeout&&i.setTimeout(r.requestTimeout,c),s.offerLast(o),o.retain(),o}release(e,r){r.free()}createIsolatedSession(e,r){let n=this.getUrlString(e),s=new sw(this.connect(n)),o=s.deref();o.settings({maxConcurrentStreams:1});let i=()=>{s.destroy()};return o.on("error",i),o.on("frameError",i),o.on("close",i),r.requestTimeout&&o.setTimeout(r.requestTimeout,i),s.retain(),s}destroy(){for(let[e,r]of this.connectionPools){for(let n of[...r])n.destroy();this.connectionPools.delete(e)}}setMaxConcurrentStreams(e){if(e&&e<=0)throw new RangeError("maxConcurrentStreams must be greater than zero.");this.config.maxConcurrency=e;for(let r of this.connectionPools.values())r.setMaxConcurrency(e)}setDisableConcurrentStreams(e){this.config.disableConcurrency=e}setNodeHttp2ConnectOptions(e){this.connectOptions=e}debug(){let e={};for(let[r,n]of this.connectionPools){let s=[];for(let o of n)s.push({id:o.id,active:o.useCount(),maxConcurrent:o.max,totalRequests:o.total});e[r]={sessions:s}}return e}removeFromPoolAndClose(e,r){this.connectionPools.get(e)?.remove(r),r.close()}removeFromPoolAndCheckedDestroy(e,r){this.connectionPools.get(e)?.remove(r),r.destroy()}getPool(e){if(!this.connectionPools.has(e)){let r=new Pj;this.config.maxConcurrency&&r.setMaxConcurrency(this.config.maxConcurrency),this.connectionPools.set(e,r)}return this.connectionPools.get(e)}getUrlString(e){return e.destination.toString()}connect(e){return this.connectOptions===void 0?vQ.connect(e):vQ.connect(e,this.connectOptions)}},_j=class t{config;configProvider;metadata={handlerProtocol:"h2"};connectionManager=new vj({});static create(e){return typeof e?.handle=="function"?e:new t(e)}constructor(e){this.configProvider=new Promise((r,n)=>{typeof e=="function"?e().then(s=>{r(s||{})}).catch(n):r(e||{})})}destroy(){this.connectionManager.destroy()}async handle(e,{abortSignal:r,requestTimeout:n,isEventStream:s}={}){if(!this.config){this.config=await this.configProvider;let{disableConcurrentStreams:l,maxConcurrentStreams:u,nodeHttp2ConnectOptions:d}=this.config;this.connectionManager.setDisableConcurrentStreams(l??!1),u&&this.connectionManager.setMaxConcurrentStreams(u),d&&this.connectionManager.setNodeHttp2ConnectOptions(d)}let{requestTimeout:o,disableConcurrentStreams:i}=this.config,a=i||s,c=n??o;return new Promise((l,u)=>{let d=!1,p,m=async se=>{await p,l(se)},h=async se=>{await p,u(se)};if(r?.aborted){d=!0;let se=_Q(r);h(se);return}let{hostname:y,method:I,port:x,protocol:b,query:T}=e,_="";if(e.username!=null||e.password!=null){let se=e.username??"",Ct=e.password??"";_=`${se}:${Ct}@`}let U=`${b}//${_}${y}${x?`:${x}`:""}`,O={destination:new URL(U)},z={requestTimeout:this.config?.sessionTimeout,isEventStream:s},de=a?this.connectionManager.createIsolatedSession(O,z):this.connectionManager.lease(O,z),De=de.deref(),Be=se=>{a&&de.destroy(),d=!0,h(se)},ne=T?PQ.buildQueryString(T):"",ge=e.path;ne&&(ge+=`?${ne}`),e.fragment&&(ge+=`#${e.fragment}`);let G=De.request({...e.headers,[vQ.constants.HTTP2_HEADER_PATH]:ge,[vQ.constants.HTTP2_HEADER_METHOD]:I});if(c&&G.setTimeout(c,()=>{G.close();let se=new Error(`Stream timed out because of no activity for ${c} ms`);se.name="TimeoutError",Be(se)}),r){let se=()=>{G.close();let Ct=_Q(r);Be(Ct)};if(typeof r.addEventListener=="function"){let Ct=r;Ct.addEventListener("abort",se,{once:!0}),G.once("close",()=>Ct.removeEventListener("abort",se))}else r.onabort=se}G.on("frameError",(se,Ct,it)=>{Be(new Error(`Frame type id ${se} in stream id ${it} has failed with code ${Ct}.`))}),G.on("error",Be),G.on("aborted",()=>{Be(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${G.rstCode}.`))}),G.on("response",se=>{let Ct=new PQ.HttpResponse({statusCode:se[":status"]??-1,headers:MPe(se),body:G});d=!0,m({response:Ct}),a&&De.close()}),G.on("close",()=>{a?de.destroy():this.connectionManager.release(O,de),d||Be(new Error("Unexpected error: http2 request did not get a response"))}),p=FPe(G,e,c)})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(n=>({...n,[e]:r}))}httpHandlerConfigs(){return this.config??{}}},Qj=class extends OPe.Writable{bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}},vIt=t=>_It(t)?QIt(t):new Promise((e,r)=>{let n=new Qj;t.pipe(n),t.on("error",s=>{n.end(),r(s)}),n.on("error",r),n.on("finish",function(){let s=new Uint8Array(Buffer.concat(this.bufferedBytes));e(s)})}),_It=t=>typeof ReadableStream=="function"&&t instanceof ReadableStream;async function QIt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:a,value:c}=await r.read();c&&(e.push(c),s+=c.length),n=a}let o=new Uint8Array(s),i=0;for(let a of e)o.set(a,i),i+=a.length;return o}ow.DEFAULT_REQUEST_TIMEOUT=TIt;ow.NodeHttp2Handler=_j;ow.NodeHttpHandler=Tj;ow.streamCollector=vIt});var UPe=w(QQ=>{"use strict";Object.defineProperty(QQ,"__esModule",{value:!0});QQ.checkUrl=void 0;var DIt=(Nt(),Y(Dn)),kIt="169.254.170.2",LIt="169.254.170.23",OIt="[fd00:ec2::23]",MIt=(t,e)=>{if(t.protocol!=="https:"&&!(t.hostname===kIt||t.hostname===LIt||t.hostname===OIt)){if(t.hostname.includes("[")){if(t.hostname==="[::1]"||t.hostname==="[0000:0000:0000:0000:0000:0000:0000:0001]")return}else{if(t.hostname==="localhost")return;let r=t.hostname.split("."),n=s=>{let o=parseInt(s,10);return 0<=o&&o<=255};if(r[0]==="127"&&n(r[1])&&n(r[2])&&n(r[3])&&r.length===4)return}throw new DIt.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following: +or increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`),Date.now()}return r}constructor(e){this.configProvider=new Promise((r,n)=>{typeof e=="function"?e().then(s=>{r(this.resolveDefaultConfig(s))}).catch(n):r(this.resolveDefaultConfig(e))})}destroy(){this.config?.httpAgent?.destroy(),this.config?.httpsAgent?.destroy()}async handle(e,{abortSignal:r,requestTimeout:n}={}){this.config||(this.config=await this.configProvider);let s=this.config,o=e.protocol==="https:";return!o&&!this.config.httpAgent&&(this.config.httpAgent=await this.config.httpAgentProvider()),new Promise((a,c)=>{let l,u=-1,d=-1,p=-1,m=-1,f=-1,g=i(()=>{Mn.clearTimeout(u),Mn.clearTimeout(d),Mn.clearTimeout(p),Mn.clearTimeout(m),Mn.clearTimeout(f)},"clearTimeouts"),E=i(async H=>{await l,g(),a(H)},"resolve"),x=i(async H=>{await l,g(),c(H)},"reject");if(r?.aborted){let H=QQ(r);x(H);return}let w=e.headers,S=w?(w.Expect??w.expect)==="100-continue":!1,P=o?s.httpsAgent:s.httpAgent;S&&!this.externalAgent&&(P=new(o?TQ.Agent:PQ)({keepAlive:!1,maxSockets:1/0})),u=Mn.setTimeout(()=>{this.socketWarningTimestamp=t.checkSocketUsage(P,this.socketWarningTimestamp,s.logger)},s.socketAcquisitionWarningTimeout??(s.requestTimeout??2e3)+(s.connectionTimeout??1e3));let Q=e.query?vQ.buildQueryString(e.query):"",q;if(e.username!=null||e.password!=null){let H=e.username??"",oe=e.password??"";q=`${H}:${oe}`}let M=e.path;Q&&(M+=`?${Q}`),e.fragment&&(M+=`#${e.fragment}`);let V=e.hostname??"";V[0]==="["&&V.endsWith("]")?V=e.hostname.slice(1,-1):V=e.hostname;let pe={headers:e.headers,host:V,method:e.method,path:M,port:e.port,agent:P,auth:q},Re=(o?TQ.request:MPe)(pe,H=>{let oe=new vQ.HttpResponse({statusCode:H.statusCode||-1,reason:H.statusMessage,headers:UPe(H.headers),body:H});E({response:oe})});if(Re.on("error",H=>{wIt.includes(H.code)?x(Object.assign(H,{name:"TimeoutError"})):x(H)}),r){let H=i(()=>{Re.destroy();let oe=QQ(r);x(oe)},"onAbort");if(typeof r.addEventListener=="function"){let oe=r;oe.addEventListener("abort",H,{once:!0}),Re.once("close",()=>oe.removeEventListener("abort",H))}else r.onabort=H}let se=n??s.requestTimeout;d=bIt(Re,x,s.connectionTimeout),p=SIt(Re,x,se,s.throwOnRequestTimeout,s.logger??console),m=NIt(Re,x,s.socketTimeout);let ye=pe.agent;typeof ye=="object"&&"keepAlive"in ye&&(f=RIt(Re,{keepAlive:ye.keepAlive,keepAliveMsecs:ye.keepAliveMsecs})),l=qPe(Re,e,se,this.externalAgent).catch(H=>(g(),c(H)))})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(n=>({...n,[e]:r}))}httpHandlerConfigs(){return this.config??{}}resolveDefaultConfig(e){let{requestTimeout:r,connectionTimeout:n,socketTimeout:s,socketAcquisitionWarningTimeout:o,httpAgent:a,httpsAgent:c,throwOnRequestTimeout:l,logger:u}=e||{},d=!0,p=50;return{connectionTimeout:n,requestTimeout:r,socketTimeout:s,socketAcquisitionWarningTimeout:o,throwOnRequestTimeout:l,httpAgentProvider:i(async()=>{let{Agent:m,request:f}=await import("node:http");return MPe=f,PQ=m,a instanceof PQ||typeof a?.destroy=="function"?(this.externalAgent=!0,a):new PQ({keepAlive:d,maxSockets:p,...a})},"httpAgentProvider"),httpsAgent:c instanceof TQ.Agent||typeof c?.destroy=="function"?(this.externalAgent=!0,c):new TQ.Agent({keepAlive:d,maxSockets:p,...c}),logger:u}}},vIt=new Uint16Array(1),iw=class{static{i(this,"ClientHttp2SessionRef")}id=vIt[0]++;total=0;max=0;session;refs=0;constructor(e){e.unref(),this.session=e}retain(){if(this.session.destroyed)throw new Error("@smithy/node-http-handler - cannot acquire reference to destroyed session.");this.refs+=1,this.total+=1,this.max=Math.max(this.refs,this.max),this.session.ref()}free(){if(!this.session.destroyed&&(this.refs-=1,this.refs===0&&this.session.unref(),this.refs<0))throw new Error("@smithy/node-http-handler - ClientHttp2Session refcount at zero, cannot decrement.")}deref(){return this.session}close(){this.session.closed||this.session.close()}destroy(){this.refs=0,this.session.destroyed||this.session.destroy()}useCount(){return this.refs}},vj=class{static{i(this,"NodeHttp2ConnectionPool")}sessions=[];maxConcurrency=0;constructor(e){this.sessions=(e??[]).map(r=>new iw(r))}poll(){let e=!1;for(let r of this.sessions){if(r.deref().destroyed){e=!0;continue}if(!this.maxConcurrency||r.useCount()-1&&this.sessions.splice(r,1)}[Symbol.iterator](){return this.sessions[Symbol.iterator]()}setMaxConcurrency(e){this.maxConcurrency=e}destroy(e){this.remove(e),e.destroy()}},_j=class{static{i(this,"NodeHttp2ConnectionManager")}config;connectOptions;connectionPools=new Map;constructor(e){if(this.config=e,this.config.maxConcurrency&&this.config.maxConcurrency<=0)throw new RangeError("maxConcurrency must be greater than zero.")}lease(e,r){let n=this.getUrlString(e),s=this.getPool(n);if(!this.config.disableConcurrency&&!r.isEventStream){let u=s.poll();if(u)return u.retain(),u}let o=new iw(this.connect(n)),a=o.deref();this.config.maxConcurrency&&a.settings({maxConcurrentStreams:this.config.maxConcurrency},u=>{if(u)throw new Error("Fail to set maxConcurrentStreams to "+this.config.maxConcurrency+"when creating new session for "+e.destination.toString())});let c=i(()=>{this.removeFromPoolAndClose(n,o)},"graceful"),l=i(()=>{this.removeFromPoolAndCheckedDestroy(n,o)},"ensureDestroyed");return a.on("goaway",c),a.on("error",l),a.on("frameError",l),a.on("close",l),r.requestTimeout&&a.setTimeout(r.requestTimeout,l),s.offerLast(o),o.retain(),o}release(e,r){r.free()}createIsolatedSession(e,r){let n=this.getUrlString(e),s=new iw(this.connect(n)),o=s.deref();o.settings({maxConcurrentStreams:1});let a=i(()=>{s.destroy()},"ensureDestroyed");return o.on("error",a),o.on("frameError",a),o.on("close",a),r.requestTimeout&&o.setTimeout(r.requestTimeout,a),s.retain(),s}destroy(){for(let[e,r]of this.connectionPools){for(let n of[...r])n.destroy();this.connectionPools.delete(e)}}setMaxConcurrentStreams(e){if(e&&e<=0)throw new RangeError("maxConcurrentStreams must be greater than zero.");this.config.maxConcurrency=e;for(let r of this.connectionPools.values())r.setMaxConcurrency(e)}setDisableConcurrentStreams(e){this.config.disableConcurrency=e}setNodeHttp2ConnectOptions(e){this.connectOptions=e}debug(){let e={};for(let[r,n]of this.connectionPools){let s=[];for(let o of n)s.push({id:o.id,active:o.useCount(),maxConcurrent:o.max,totalRequests:o.total});e[r]={sessions:s}}return e}removeFromPoolAndClose(e,r){this.connectionPools.get(e)?.remove(r),r.close()}removeFromPoolAndCheckedDestroy(e,r){this.connectionPools.get(e)?.remove(r),r.destroy()}getPool(e){if(!this.connectionPools.has(e)){let r=new vj;this.config.maxConcurrency&&r.setMaxConcurrency(this.config.maxConcurrency),this.connectionPools.set(e,r)}return this.connectionPools.get(e)}getUrlString(e){return e.destination.toString()}connect(e){return this.connectOptions===void 0?_Q.connect(e):_Q.connect(e,this.connectOptions)}},Qj=class t{static{i(this,"NodeHttp2Handler")}config;configProvider;metadata={handlerProtocol:"h2"};connectionManager=new _j({});static create(e){return typeof e?.handle=="function"?e:new t(e)}constructor(e){this.configProvider=new Promise((r,n)=>{typeof e=="function"?e().then(s=>{r(s||{})}).catch(n):r(e||{})})}destroy(){this.connectionManager.destroy()}async handle(e,{abortSignal:r,requestTimeout:n,isEventStream:s}={}){if(!this.config){this.config=await this.configProvider;let{disableConcurrentStreams:u,maxConcurrentStreams:d,nodeHttp2ConnectOptions:p}=this.config;this.connectionManager.setDisableConcurrentStreams(u??!1),d&&this.connectionManager.setMaxConcurrentStreams(d),p&&this.connectionManager.setNodeHttp2ConnectOptions(p)}let{requestTimeout:o,disableConcurrentStreams:a}=this.config,c=a||s,l=n??o;return new Promise((u,d)=>{let p=!1,m,f=i(async oe=>{await m,u(oe)},"resolve"),g=i(async oe=>{await m,d(oe)},"reject");if(r?.aborted){p=!0;let oe=QQ(r);g(oe);return}let{hostname:E,method:x,port:w,protocol:S,query:P}=e,Q="";if(e.username!=null||e.password!=null){let oe=e.username??"",It=e.password??"";Q=`${oe}:${It}@`}let q=`${S}//${Q}${E}${w?`:${w}`:""}`,M={destination:new URL(q)},V={requestTimeout:this.config?.sessionTimeout,isEventStream:s},pe=c?this.connectionManager.createIsolatedSession(M,V):this.connectionManager.lease(M,V),ke=pe.deref(),Re=i(oe=>{c&&pe.destroy(),p=!0,g(oe)},"rejectWithDestroy"),se=P?vQ.buildQueryString(P):"",ye=e.path;se&&(ye+=`?${se}`),e.fragment&&(ye+=`#${e.fragment}`);let H=ke.request({...e.headers,[_Q.constants.HTTP2_HEADER_PATH]:ye,[_Q.constants.HTTP2_HEADER_METHOD]:x});if(l&&H.setTimeout(l,()=>{H.close();let oe=new Error(`Stream timed out because of no activity for ${l} ms`);oe.name="TimeoutError",Re(oe)}),r){let oe=i(()=>{H.close();let It=QQ(r);Re(It)},"onAbort");if(typeof r.addEventListener=="function"){let It=r;It.addEventListener("abort",oe,{once:!0}),H.once("close",()=>It.removeEventListener("abort",oe))}else r.onabort=oe}H.on("frameError",(oe,It,at)=>{Re(new Error(`Frame type id ${oe} in stream id ${at} has failed with code ${It}.`))}),H.on("error",Re),H.on("aborted",()=>{Re(new Error(`HTTP/2 stream is abnormally aborted in mid-communication with result code ${H.rstCode}.`))}),H.on("response",oe=>{let It=new vQ.HttpResponse({statusCode:oe[":status"]??-1,headers:UPe(oe),body:H});p=!0,f({response:It}),c&&ke.close()}),H.on("close",()=>{c?pe.destroy():this.connectionManager.release(M,pe),p||Re(new Error("Unexpected error: http2 request did not get a response"))}),m=qPe(H,e,l)})}updateHttpClientConfig(e,r){this.config=void 0,this.configProvider=this.configProvider.then(n=>({...n,[e]:r}))}httpHandlerConfigs(){return this.config??{}}},Dj=class extends FPe.Writable{static{i(this,"Collector")}bufferedBytes=[];_write(e,r,n){this.bufferedBytes.push(e),n()}},_It=i(t=>QIt(t)?DIt(t):new Promise((e,r)=>{let n=new Dj;t.pipe(n),t.on("error",s=>{n.end(),r(s)}),n.on("error",r),n.on("finish",function(){let s=new Uint8Array(Buffer.concat(this.bufferedBytes));e(s)})}),"streamCollector"),QIt=i(t=>typeof ReadableStream=="function"&&t instanceof ReadableStream,"isReadableStreamInstance");async function DIt(t){let e=[],r=t.getReader(),n=!1,s=0;for(;!n;){let{done:c,value:l}=await r.read();l&&(e.push(l),s+=l.length),n=c}let o=new Uint8Array(s),a=0;for(let c of e)o.set(c,a),a+=c.length;return o}i(DIt,"collectReadableStream");aw.DEFAULT_REQUEST_TIMEOUT=PIt;aw.NodeHttp2Handler=Qj;aw.NodeHttpHandler=Pj;aw.streamCollector=_It});var $Pe=b(DQ=>{"use strict";Object.defineProperty(DQ,"__esModule",{value:!0});DQ.checkUrl=void 0;var kIt=(Tt(),W(kn)),LIt="169.254.170.2",OIt="169.254.170.23",MIt="[fd00:ec2::23]",FIt=i((t,e)=>{if(t.protocol!=="https:"&&!(t.hostname===LIt||t.hostname===OIt||t.hostname===MIt)){if(t.hostname.includes("[")){if(t.hostname==="[::1]"||t.hostname==="[0000:0000:0000:0000:0000:0000:0000:0001]")return}else{if(t.hostname==="localhost")return;let r=t.hostname.split("."),n=i(s=>{let o=parseInt(s,10);return 0<=o&&o<=255},"inRange");if(r[0]==="127"&&n(r[1])&&n(r[2])&&n(r[3])&&r.length===4)return}throw new kIt.CredentialsProviderError(`URL not accepted. It must either be HTTPS or match one of the following: - loopback CIDR 127.0.0.0/8 or [::1/128] - ECS container host 169.254.170.2 - - EKS container host 169.254.170.23 or [fd00:ec2::23]`,{logger:e})}};QQ.checkUrl=MIt});var qPe=w(DQ=>{"use strict";Object.defineProperty(DQ,"__esModule",{value:!0});DQ.createGetRequest=$It;DQ.getCredentials=GIt;var Dj=(Nt(),Y(Dn)),FIt=(_e(),Y(tl)),UIt=(nt(),Y(Xd)),qIt=(nt(),Y(Xd));function $It(t){return new FIt.HttpRequest({protocol:t.protocol,hostname:t.hostname,port:Number(t.port),path:t.pathname,query:Array.from(t.searchParams.entries()).reduce((e,[r,n])=>(e[r]=n,e),{}),fragment:t.hash})}async function GIt(t,e){let n=await(0,qIt.sdkStreamMixin)(t.body).transformToString();if(t.statusCode===200){let s=JSON.parse(n);if(typeof s.AccessKeyId!="string"||typeof s.SecretAccessKey!="string"||typeof s.Token!="string"||typeof s.Expiration!="string")throw new Dj.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }",{logger:e});return{accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,sessionToken:s.Token,expiration:(0,UIt.parseRfc3339DateTime)(s.Expiration)}}if(t.statusCode>=400&&t.statusCode<500){let s={};try{s=JSON.parse(n)}catch{}throw Object.assign(new Dj.CredentialsProviderError(`Server responded with status: ${t.statusCode}`,{logger:e}),{Code:s.Code,Message:s.Message})}throw new Dj.CredentialsProviderError(`Server responded with status: ${t.statusCode}`,{logger:e})}});var $Pe=w(kQ=>{"use strict";Object.defineProperty(kQ,"__esModule",{value:!0});kQ.retryWrapper=void 0;var HIt=(t,e,r)=>async()=>{for(let n=0;nsetTimeout(o,r))}return await t()};kQ.retryWrapper=HIt});var zPe=w(LQ=>{"use strict";Object.defineProperty(LQ,"__esModule",{value:!0});LQ.fromHttp=void 0;var zIt=(ey(),Y(Zg)),VIt=(xt(),Y(Qs)),GPe=(Nt(),Y(Dn)),YIt=Pu(),WIt=zIt.__importDefault(require("node:fs/promises")),jIt=UPe(),HPe=qPe(),JIt=$Pe(),KIt="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",XIt="http://169.254.170.2",ZIt="AWS_CONTAINER_CREDENTIALS_FULL_URI",ext="AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE",txt="AWS_CONTAINER_AUTHORIZATION_TOKEN",rxt=(t={})=>{t.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");let e,r=t.awsContainerCredentialsRelativeUri??process.env[KIt],n=t.awsContainerCredentialsFullUri??process.env[ZIt],s=t.awsContainerAuthorizationToken??process.env[txt],o=t.awsContainerAuthorizationTokenFile??process.env[ext],i=t.logger?.constructor?.name==="NoOpLogger"||!t.logger?.warn?console.warn:t.logger.warn.bind(t.logger);if(r&&n&&(i("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri."),i("awsContainerCredentialsFullUri will take precedence.")),s&&o&&(i("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),i("awsContainerAuthorizationToken will take precedence.")),n)e=n;else if(r)e=`${XIt}${r}`;else throw new GPe.CredentialsProviderError(`No HTTP credential provider host provided. -Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`,{logger:t.logger});let a=new URL(e);(0,jIt.checkUrl)(a,t.logger);let c=YIt.NodeHttpHandler.create({requestTimeout:t.timeout??1e3,connectionTimeout:t.timeout??1e3});return(0,JIt.retryWrapper)(async()=>{let l=(0,HPe.createGetRequest)(a);s?l.headers.Authorization=s:o&&(l.headers.Authorization=(await WIt.default.readFile(o)).toString());try{let u=await c.handle(l);return(0,HPe.getCredentials)(u.response).then(d=>(0,VIt.setCredentialFeature)(d,"CREDENTIALS_HTTP","z"))}catch(u){throw new GPe.CredentialsProviderError(String(u),{logger:t.logger})}},t.maxRetries??3,t.timeout??1e3)};LQ.fromHttp=rxt});var kj=w(VPe=>{"use strict";var nxt=zPe();VPe.fromHttp=nxt.fromHttp});function sxt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sso-oauth",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}function oxt(t){return{schemeId:"smithy.api#noAuth"}}var YPe,WPe,jPe,Lj=C(()=>{Kr();Ee();YPe=async(t,e,r)=>({operation:mr(e).operation,region:await Ft(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});WPe=t=>{let e=[];return t.operation==="CreateToken"?e.push(oxt(t)):e.push(sxt(t)),e},jPe=t=>{let e=Cl(t);return Object.assign(e,{authSchemePreference:Ft(t.authSchemePreference??[])})}});var JPe,KPe,Oj=C(()=>{JPe=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"sso-oauth"}),KPe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var pp,iw=C(()=>{pp={name:"@aws-sdk/nested-clients",version:"3.997.11",description:"Nested clients for AWS SDK packages.",main:"./dist-cjs/index.js",module:"./dist-es/index.js",types:"./dist-types/index.d.ts",scripts:{build:"yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",lint:"node ../../scripts/validation/submodules-linter.js --pkg nested-clients",test:"yarn g:vitest run","test:watch":"yarn g:vitest watch"},engines:{node:">=20.0.0"},sideEffects:!1,author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/signature-v4-multi-region":"^3.996.28","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["./cognito-identity.d.ts","./cognito-identity.js","./signin.d.ts","./signin.js","./sso-oidc.d.ts","./sso-oidc.js","./sso.d.ts","./sso.js","./sts.d.ts","./sts.js","dist-*/**"],browser:{"./dist-es/submodules/cognito-identity/runtimeConfig":"./dist-es/submodules/cognito-identity/runtimeConfig.browser","./dist-es/submodules/signin/runtimeConfig":"./dist-es/submodules/signin/runtimeConfig.browser","./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sso/runtimeConfig":"./dist-es/submodules/sso/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},exports:{"./package.json":"./package.json","./sso-oidc":{types:"./dist-types/submodules/sso-oidc/index.d.ts",module:"./dist-es/submodules/sso-oidc/index.js",node:"./dist-cjs/submodules/sso-oidc/index.js",import:"./dist-es/submodules/sso-oidc/index.js",require:"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{types:"./dist-types/submodules/sts/index.d.ts",module:"./dist-es/submodules/sts/index.js",node:"./dist-cjs/submodules/sts/index.js",import:"./dist-es/submodules/sts/index.js",require:"./dist-cjs/submodules/sts/index.js"},"./signin":{types:"./dist-types/submodules/signin/index.d.ts",module:"./dist-es/submodules/signin/index.js",node:"./dist-cjs/submodules/signin/index.js",import:"./dist-es/submodules/signin/index.js",require:"./dist-cjs/submodules/signin/index.js"},"./cognito-identity":{types:"./dist-types/submodules/cognito-identity/index.d.ts",module:"./dist-es/submodules/cognito-identity/index.js",node:"./dist-cjs/submodules/cognito-identity/index.js",import:"./dist-es/submodules/cognito-identity/index.js",require:"./dist-cjs/submodules/cognito-identity/index.js"},"./sso":{types:"./dist-types/submodules/sso/index.d.ts",module:"./dist-es/submodules/sso/index.js",node:"./dist-cjs/submodules/sso/index.js",import:"./dist-es/submodules/sso/index.js",require:"./dist-cjs/submodules/sso/index.js"}}}});function mp(t){return typeof Buffer<"u"?Buffer.alloc(t):new Uint8Array(t)}function OQ(t){return t[Mj]=!0,t}var Mj,MQ=C(()=>{Mj=Symbol("@smithy/core/cbor::tagSymbol")});function ZPe(t){Lt=t,_u=new DataView(Lt.buffer,Lt.byteOffset,Lt.byteLength)}function Il(t,e){if(t>=e)throw new Error("unexpected end of (decode) payload.");let r=(Lt[t]&224)>>5,n=Lt[t]&31;switch(r){case 0:case 1:case 6:let s,o;if(n<24)s=n,o=1;else switch(n){case 24:case 25:case 26:case 27:let i=tve[n],a=i+1;if(o=a,e-t>7,n=(t&124)>>2,s=(t&3)<<8|e,o=r===0?1:-1,i,a;if(n===0){if(s===0)return 0;i=Math.pow(2,-14),a=0}else{if(n===31)return s===0?o*(1/0):NaN;i=Math.pow(2,n-15),a=1}return a+=s/1024,o*(i*a)}function uw(t,e){let r=Lt[t]&31;if(r<24)return ut=1,r;if(r===24||r===25||r===26||r===27){let n=tve[r];if(ut=n+1,e-t>5,o=Lt[t]&31;if(s!==3)throw new Error(`unexpected major type ${s} in indefinite string.`);if(o===31)throw new Error("nested indefinite string.");let i=zj(t,e);t+=ut;for(let c=0;c>5,o=Lt[t]&31;if(s!==2)throw new Error(`unexpected major type ${s} in indefinite string.`);if(o===31)throw new Error("nested indefinite string.");let i=zj(t,e);t+=ut;for(let c=0;c=e)throw new Error("unexpected end of map payload.");let a=(Lt[t]&224)>>5;if(a!==3)throw new Error(`unexpected major type ${a} for map key at index ${t}.`);let c=Il(t,e);t+=ut;let l=Il(t,e);t+=ut,o[c]=l}return ut=n+(t-s),o}function yxt(t,e){t+=1;let r=t,n={};for(;t=e)throw new Error("unexpected end of map payload.");if(Lt[t]===255)return ut=t-r+2,n;let s=(Lt[t]&224)>>5;if(s!==3)throw new Error(`unexpected major type ${s} for map key.`);let o=Il(t,e);t+=ut;let i=Il(t,e);t+=ut,n[o]=i}throw new Error("expected break marker.")}function Ext(t,e){let r=Lt[t]&31;switch(r){case 21:case 20:return ut=1,r===21;case 22:return ut=1,null;case 23:return ut=1,null;case 25:if(e-t<3)throw new Error("incomplete float16 at end of buf.");return ut=3,dxt(Lt[t+1],Lt[t+2]);case 26:if(e-t<5)throw new Error("incomplete float32 at end of buf.");return ut=5,_u.getFloat32(t+1);case 27:if(e-t<9)throw new Error("incomplete float64 at end of buf.");return ut=9,_u.getFloat64(t+1);default:throw new Error(`unexpected minor value ${r}.`)}}function Fj(t){if(typeof t=="number")return t;let e=Number(t);return Number.MIN_SAFE_INTEGER<=e&&e<=Number.MAX_SAFE_INTEGER?e:t}var cxt,lxt,Lt,_u,XPe,ut,tve,rve=C(()=>{nt();MQ();cxt=typeof TextDecoder<"u",lxt=typeof Buffer<"u",Lt=mp(0),_u=new DataView(Lt.buffer,Lt.byteOffset,Lt.byteLength),XPe=cxt?new TextDecoder:null,ut=0;tve={24:1,25:2,26:4,27:8}});function Yj(t){Ve.byteLength-Se=0,s=n?0:1,o=n?r:-r-1;o<24?Ve[Se++]=s<<5|o:o<256?(Ve[Se++]=s<<5|24,Ve[Se++]=o):o<65536?(Ve[Se++]=s<<5|25,Ve[Se++]=o>>8,Ve[Se++]=o):o<4294967296?(Ve[Se++]=s<<5|26,ku.setUint32(Se,o),Se+=4):(Ve[Se++]=s<<5|27,ku.setBigUint64(Se,BigInt(o)),Se+=8);continue}Ve[Se++]=251,ku.setFloat64(Se,r),Se+=8;continue}else if(typeof r=="bigint"){let n=r>=0,s=n?0:1,o=n?r:-r-BigInt(1),i=Number(o);if(i<24)Ve[Se++]=s<<5|i;else if(i<256)Ve[Se++]=s<<5|24,Ve[Se++]=i;else if(i<65536)Ve[Se++]=s<<5|25,Ve[Se++]=i>>8,Ve[Se++]=i&255;else if(i<4294967296)Ve[Se++]=s<<5|26,ku.setUint32(Se,i),Se+=4;else if(o=0;)c[c.byteLength-u]=Number(l&BigInt(255)),l>>=BigInt(8);Yj(c.byteLength*2),Ve[Se++]=n?194:195,nve?Du(2,Buffer.byteLength(c)):Du(2,c.byteLength),Ve.set(c,Se),Se+=c.byteLength}continue}else if(r===null){Ve[Se++]=246;continue}else if(typeof r=="boolean"){Ve[Se++]=224|(r?21:20);continue}else{if(typeof r>"u")throw new Error("@smithy/core/cbor: client may not serialize undefined value.");if(Array.isArray(r)){for(let n=r.length-1;n>=0;--n)e.push(r[n]);Du(4,r.length);continue}else if(typeof r.byteLength=="number"){Yj(r.length*2),Du(2,r.length),Ve.set(r,Se),Se+=r.byteLength;continue}else if(typeof r=="object"){if(r instanceof Ut){let s=r.string.indexOf("."),o=s===-1?0:s-r.string.length+1,i=BigInt(r.string.replace(".",""));Ve[Se++]=196,e.push(i),e.push(o),Du(4,2);continue}if(r[Mj])if("tag"in r&&"value"in r){e.push(r.value),Du(6,r.tag);continue}else throw new Error("tag encountered with missing fields, need 'tag' and 'value', found: "+JSON.stringify(r));let n=Object.keys(r);for(let s=n.length-1;s>=0;--s){let o=n[s];e.push(r[o]),e.push(o)}Du(5,n.length);continue}}throw new Error(`data type ${r?.constructor?.name??typeof r} not compatible for encoding.`)}}var nve,Cxt,Ve,ku,Se,ove=C(()=>{nt();MQ();nve=typeof Buffer<"u",Cxt=2048,Ve=mp(Cxt),ku=new DataView(Ve.buffer,Ve.byteOffset,Ve.byteLength),Se=0});var jj,ive=C(()=>{rve();ove();jj={deserialize(t){return ZPe(t),Il(0,t.length)},serialize(t){try{return sve(t),Wj()}catch(e){throw Wj(),e}},resizeEncodingBuffer(t){UQ(t)}}});var qQ,$Q,GQ=C(()=>{MQ();qQ=t=>OQ({tag:1,value:t.getTime()/1e3}),$Q=(t,e)=>{let r=s=>{let o=s;return typeof o=="number"&&(o=o.toString()),o.indexOf(",")>=0&&(o=o.split(",")[0]),o.indexOf(":")>=0&&(o=o.split(":")[0]),o.indexOf("#")>=0&&(o=o.split("#")[1]),o};if(e.__type!==void 0)return r(e.__type);let n;for(let s in e)if(s.toLowerCase()==="code"){n=s;break}if(n&&e[n]!==void 0)return r(e[n])}});var HQ,Jj,Kj,Xj=C(()=>{_e();Et();nt();ive();GQ();HQ=class extends Ps{createSerializer(){let e=new Jj;return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new Kj;return e.setSerdeContext(this.serdeContext),e}},Jj=class extends Ps{value;write(e,r){this.value=this.serialize(e,r)}serialize(e,r){let n=ye.of(e);if(r==null)return n.isIdempotencyToken()?Sa():r;if(n.isBlobSchema())return typeof r=="string"?(this.serdeContext?.base64Decoder??qr)(r):r;if(n.isTimestampSchema())return typeof r=="number"||typeof r=="bigint"?qQ(new Date(Number(r)/1e3|0)):qQ(r);if(typeof r=="function"||typeof r=="object"){let s=r;if(n.isListSchema()&&Array.isArray(s)){let i=!!n.getMergedTraits().sparse,a=[],c=0;for(let l of s){let u=this.serialize(n.getValueSchema(),l);(u!=null||i)&&(a[c++]=u)}return a}if(s instanceof Date)return qQ(s);let o={};if(n.isMapSchema()){let i=!!n.getMergedTraits().sparse;for(let a in s){let c=this.serialize(n.getValueSchema(),s[a]);(c!=null||i)&&(o[a]=c)}}else if(n.isStructSchema()){for(let[a,c]of n.structIterator()){let l=this.serialize(c,s[a]);l!=null&&(o[a]=l)}if(n.isUnionSchema()&&Array.isArray(s.$unknown)){let[a,c]=s.$unknown;o[a]=c}else if(typeof s.__type=="string")for(let a in s)a in o||(o[a]=this.serialize(15,s[a]))}else if(n.isDocumentSchema())for(let i in s)o[i]=this.serialize(n.getValueSchema(),s[i]);else if(n.isBigDecimalSchema())return s;return o}return r}flush(){let e=jj.serialize(this.value);return this.value=void 0,e}},Kj=class extends Ps{read(e,r){let n=jj.deserialize(r);return this.readValue(e,n)}readValue(e,r){let n=ye.of(e);if(n.isTimestampSchema()){if(typeof r=="number")return cf(r);if(typeof r=="object"&&r.tag===1&&"value"in r)return cf(r.value)}if(n.isBlobSchema())return typeof r=="string"?(this.serdeContext?.base64Decoder??qr)(r):r;if(typeof r>"u"||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||typeof r=="bigint"||typeof r=="symbol")return r;if(typeof r=="object"){if(r===null)return null;if("byteLength"in r||r instanceof Date||n.isDocumentSchema())return r;if(n.isListSchema()){let o=[],i=n.getValueSchema();for(let a of r){let c=this.readValue(i,a);o.push(c)}return o}let s={};if(n.isMapSchema()){let o=n.getValueSchema();for(let i in r){let a=this.readValue(o,r[i]);s[i]=a}}else if(n.isStructSchema()){let o=n.isUnionSchema(),i;if(o){i=new Set;for(let a in r)a!=="__type"&&i.add(a)}for(let[a,c]of n.structIterator())o&&i.delete(a),r[a]!=null&&(s[a]=this.readValue(c,r[a]));if(o&&i?.size===1){let a=!0;for(let c in s){a=!1;break}if(a){let c=i.values().next().value;s.$unknown=[c,r[c]]}}else if(typeof r.__type=="string")for(let a in r)a in s||(s[a]=r[a])}else if(r instanceof Ut)return r;return s}else return r}}});var zQ,ave=C(()=>{Ee();_e();Et();Xj();GQ();zQ=class extends bu{codec=new HQ;serializer=this.codec.createSerializer();deserializer=this.codec.createDeserializer();constructor({defaultNamespace:e,errorTypeRegistries:r}){super({defaultNamespace:e,errorTypeRegistries:r})}getShapeId(){return"smithy.protocols#rpcv2Cbor"}getPayloadCodec(){return this.codec}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);if(Object.assign(s.headers,{"content-type":this.getDefaultContentType(),"smithy-protocol":"rpc-v2-cbor",accept:this.getDefaultContentType()}),Ca(e.input)==="unit")delete s.body,delete s.headers["content-type"];else{s.body||(this.serializer.write(15,{}),s.body=this.serializer.flush());try{s.headers["content-length"]=String(s.body.byteLength)}catch{}}let{service:o,operation:i}=mr(n),a=`/service/${o}/operation/${i}`;return s.path.endsWith("/")?s.path+=a.slice(1):s.path+=a,s}async deserializeResponse(e,r,n){return super.deserializeResponse(e,r,n)}async handleError(e,r,n,s,o){let i=$Q(n,s)??"Unknown",a={$metadata:o,$fault:n.statusCode<=500?"client":"server"},c=this.options.defaultNamespace;i.includes("#")&&([c]=i.split("#"));let l=this.compositeErrorRegistry,u=hr.for(c);l.copyFrom(u);let d;try{d=l.getSchema(i)}catch{s.Message&&(s.message=s.Message);let b=hr.for("smithy.ts.sdk.synthetic."+c);l.copyFrom(b);let T=l.getBaseException();if(T){let _=l.getErrorCtor(T);throw Object.assign(new _({name:i}),a,s)}throw Object.assign(new Error(i),a,s)}let p=ye.of(d),m=l.getErrorCtor(d),h=s.message??s.Message??"Unknown",y=new m({}),I={};for(let[x,b]of p.structIterator())I[x]=this.deserializer.readValue(b,s[x]);throw Object.assign(y,a,{$fault:p.getMergedTraits().error,message:h},I)}getDefaultContentType(){return"application/cbor"}}});var cve=C(()=>{GQ();ave();Xj()});var $i,Cy=C(()=>{Ee();Et();$i=class{queryCompat;errorRegistry;constructor(e=!1){this.queryCompat=e}resolveRestContentType(e,r){let n=r.getMemberSchemas(),s=Object.values(n).find(o=>!!o.getMergedTraits().httpPayload);if(s){let o=s.getMergedTraits().mediaType;return o||(s.isStringSchema()?"text/plain":s.isBlobSchema()?"application/octet-stream":e)}else if(!r.isUnitSchema()&&Object.values(n).find(i=>{let{httpQuery:a,httpQueryParams:c,httpHeader:l,httpLabel:u,httpPrefixHeaders:d}=i.getMergedTraits();return!a&&!c&&!l&&!u&&d===void 0}))return e}async getErrorSchemaOrThrowBaseException(e,r,n,s,o,i){let a=e;e.includes("#")&&([,a]=e.split("#"));let c={$metadata:o,$fault:n.statusCode<500?"client":"server"};if(!this.errorRegistry)throw new Error("@aws-sdk/core/protocols - error handler not initialized.");try{return{errorSchema:i?.(this.errorRegistry,a)??this.errorRegistry.getSchema(e),errorMetadata:c}}catch{s.message=s.message??s.Message??"UnknownError";let u=this.errorRegistry,d=u.getBaseException();if(d){let h=u.getErrorCtor(d)??Error;throw this.decorateServiceException(Object.assign(new h({name:a}),c),s)}let p=s,m=p?.message??p?.Message??p?.Error?.Message??p?.Error?.message;throw this.decorateServiceException(Object.assign(new Error(m),{name:a},c),s)}}compose(e,r,n){let s=n;r.includes("#")&&([s]=r.split("#"));let o=hr.for(s),i=hr.for("smithy.ts.sdk.synthetic."+n);e.copyFrom(o),e.copyFrom(i),this.errorRegistry=e}decorateServiceException(e,r={}){if(this.queryCompat){let n=e.Message??r.Message,s=wf(e,r);n&&(s.message=n);let o=s.Error??{};o.Type=s.Error?.Type,o.Code=s.Error?.Code,o.Message=s.Error?.message??s.Error?.Message??n,s.Error=o;let i=s.$metadata.requestId;return i&&(s.RequestId=i),s}return wf(e,r)}setQueryCompatError(e,r){let n=r.headers?.["x-amzn-query-error"];if(e!==void 0&&n!=null){let[s,o]=n.split(";"),i=Object.keys(e),a={Code:s,Type:o};e.Code=s,e.Type=o;for(let c=0;cye.of(s).getMergedTraits().awsQueryError?.[0]===r)}}}});var Zj,lve=C(()=>{cve();Et();Cy();Zj=class extends zQ{awsQueryCompatible;mixin;constructor({defaultNamespace:e,errorTypeRegistries:r,awsQueryCompatible:n}){super({defaultNamespace:e,errorTypeRegistries:r}),this.awsQueryCompatible=!!n,this.mixin=new $i(this.awsQueryCompatible)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);return this.awsQueryCompatible&&(s.headers["x-amzn-query-mode"]="true"),s}async handleError(e,r,n,s,o){this.awsQueryCompatible&&this.mixin.setQueryCompatError(s,n);let i=(()=>{let h=n.headers["x-amzn-query-error"];return h&&this.awsQueryCompatible?h.split(";")[0]:$Q(n,s)??"Unknown"})();this.mixin.compose(this.compositeErrorRegistry,i,this.options.defaultNamespace);let{errorSchema:a,errorMetadata:c}=await this.mixin.getErrorSchemaOrThrowBaseException(i,this.options.defaultNamespace,n,s,o,this.awsQueryCompatible?this.mixin.findQueryCompatibleError:void 0),l=ye.of(a),u=s.message??s.Message??"UnknownError",d=this.compositeErrorRegistry.getErrorCtor(a)??Error,p=new d({}),m={};for(let[h,y]of l.structIterator())s[h]!=null&&(m[h]=this.deserializer.readValue(y,s[h]));throw this.awsQueryCompatible&&this.mixin.queryCompatOutput(s,m),this.mixin.decorateServiceException(Object.assign(p,c,{$fault:l.getMergedTraits().error,message:u},m),s)}}});var Ixt,xxt,wxt,uve=C(()=>{Ixt=t=>{if(t==null)return t;if(typeof t=="number"||typeof t=="bigint"){let e=new Error(`Received number ${t} where a string was expected.`);return e.name="Warning",console.warn(e),String(t)}if(typeof t=="boolean"){let e=new Error(`Received boolean ${t} where a string was expected.`);return e.name="Warning",console.warn(e),String(t)}return t},xxt=t=>{if(t==null)return t;if(typeof t=="string"){let e=t.toLowerCase();if(t!==""&&e!=="false"&&e!=="true"){let r=new Error(`Received string "${t}" where a boolean was expected.`);r.name="Warning",console.warn(r)}return t!==""&&e!=="false"}return t},wxt=t=>{if(t==null)return t;if(typeof t=="string"){let e=Number(t);if(e.toString()!==t){let r=new Error(`Received string "${t}" where a number was expected.`);return r.name="Warning",console.warn(r),t}return e}return t}});var ss,gp=C(()=>{ss=class{serdeContext;setSerdeContext(e){this.serdeContext=e}}});var Iy,eJ=C(()=>{Iy=class{from;to;keys;constructor(e,r){this.from=e,this.to=r;let n=Object.keys(this.from),s=new Set(n);s.delete("__type"),this.keys=s}mark(e){this.keys.delete(e)}hasUnknown(){return this.keys.size===1&&Object.keys(this.to).length===0}writeUnknown(){if(this.hasUnknown()){let e=this.keys.values().next().value,r=this.from[e];this.to.$unknown=[e,r]}}}});function dve(t,e,r){if(r?.source){let n=r.source;if(typeof e=="number"&&(e>Number.MAX_SAFE_INTEGER||e{nt()});var VQ,tJ=C(()=>{_e();nt();VQ=(t,e)=>ao(t,e).then(r=>(e?.utf8Encoder??Ar)(r))});var YQ,bxt,mve,rJ,nJ,sJ,fve,dw=C(()=>{tJ();YQ=(t,e)=>VQ(t,e).then(r=>{if(r.length)try{return JSON.parse(r)}catch(n){throw n?.name==="SyntaxError"&&Object.defineProperty(n,"$responseBodyText",{value:r}),n}return{}}),bxt=async(t,e)=>{let r=await YQ(t,e);return r.message=r.message??r.Message,r},mve=(t,e)=>Object.keys(t).find(r=>r.toLowerCase()===e.toLowerCase()),rJ=t=>{let e=t;return typeof e=="number"&&(e=e.toString()),e.indexOf(",")>=0&&(e=e.split(",")[0]),e.indexOf(":")>=0&&(e=e.split(":")[0]),e.indexOf("#")>=0&&(e=e.split("#")[1]),e},nJ=(t,e)=>fve(t,e,["header","code","type"]),sJ=(t,e,r=!1)=>fve(t,e,r?["code","header","type"]:["type","code","header"]),fve=({headers:t},e,r)=>{for(;r.length>0;)switch(r.shift()){case"header":let s=mve(t??{},"x-amzn-errortype");if(s!==void 0)return rJ(t[s]);break;case"code":let o=mve(e??{},"code");if(o&&e[o]!==void 0)return rJ(e[o]);break;case"type":if(e?.__type!==void 0)return rJ(e.__type);break}}});var pw,oJ=C(()=>{_e();Et();nt();nt();gp();eJ();pve();dw();pw=class extends ss{settings;constructor(e){super(),this.settings=e}async read(e,r){return this._read(e,typeof r=="string"?JSON.parse(r,dve):await YQ(r,this.serdeContext))}readObject(e,r){return this._read(e,r)}_read(e,r){let n=r!==null&&typeof r=="object",s=ye.of(e);if(n){if(s.isStructSchema()){let i=r,a=s.isUnionSchema(),c={},l,{jsonName:u}=this.settings;u&&(l={});let d;a&&(d=new Iy(i,c));for(let[p,m]of s.structIterator()){let h=p;u&&(h=m.getMergedTraits().jsonName??h,l[h]=p),a&&d.mark(h),i[h]!=null&&(c[p]=this._read(m,i[h]))}if(a)d.writeUnknown();else if(typeof i.__type=="string")for(let p in i){let m=i[p],h=u?l[p]??p:p;h in c||(c[h]=m)}return c}if(Array.isArray(r)&&s.isListSchema()){let i=s.getValueSchema(),a=[];for(let c of r)a.push(this._read(i,c));return a}if(s.isMapSchema()){let i=s.getValueSchema(),a={};for(let c in r)a[c]=this._read(i,r[c]);return a}}if(s.isBlobSchema()&&typeof r=="string")return qr(r);let o=s.getMergedTraits().mediaType;if(s.isStringSchema()&&typeof r=="string"&&o)return o==="application/json"||o.endsWith("+json")?Xn.from(r):r;if(s.isTimestampSchema()&&r!=null)switch(Wo(s,this.settings)){case 5:return dv(r);case 6:return Fg(r);case 7:return pv(r);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",r),new Date(r)}if(s.isBigIntegerSchema()&&(typeof r=="number"||typeof r=="string"))return BigInt(r);if(s.isBigDecimalSchema()&&r!=null){if(r instanceof Ut)return r;let i=r;return i.type==="bigDecimal"&&"string"in i?new Ut(i.string,i.type):new Ut(String(r),"bigDecimal")}if(s.isNumericSchema()&&typeof r=="string"){switch(r){case"Infinity":return 1/0;case"-Infinity":return-1/0;case"NaN":return NaN}return r}if(s.isDocumentSchema())if(n){let i=Array.isArray(r)?[]:{};for(let a in r){let c=r[a];c instanceof Ut?i[a]=c:i[a]=this._read(s,c)}return i}else return structuredClone(r);return r}}});var Ave,WQ,hve=C(()=>{nt();Ave="\u039D",WQ=class{values=new Map;counter=0;stage=0;createReplacer(){if(this.stage===1)throw new Error("@aws-sdk/core/protocols - JsonReplacer already created.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");return this.stage=1,(e,r)=>{if(r instanceof Ut){let n=`${Ave+"nv"+this.counter++}_`+r.string;return this.values.set(`"${n}"`,r.string),n}if(typeof r=="bigint"){let n=r.toString(),s=`${Ave+"b"+this.counter++}_`+n;return this.values.set(`"${s}"`,n),s}return r}}replaceInJson(e){if(this.stage===0)throw new Error("@aws-sdk/core/protocols - JsonReplacer not created yet.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");if(this.stage=2,this.counter===0)return e;for(let[r,n]of this.values)e=e.replace(r,n);return e}}});var mw,iJ=C(()=>{_e();Et();nt();gp();hve();mw=class extends ss{settings;buffer;useReplacer=!1;rootSchema;constructor(e){super(),this.settings=e}write(e,r){this.rootSchema=ye.of(e),this.buffer=this._write(this.rootSchema,r)}flush(){let{rootSchema:e,useReplacer:r}=this;if(this.rootSchema=void 0,this.useReplacer=!1,e?.isStructSchema()||e?.isDocumentSchema()){if(!r)return JSON.stringify(this.buffer);let n=new WQ;return n.replaceInJson(JSON.stringify(this.buffer,n.createReplacer(),0))}return this.buffer}writeDiscriminatedDocument(e,r){this.write(e,r),typeof this.buffer=="object"&&(this.buffer.__type=ye.of(e).getName(!0))}_write(e,r,n){let s=r!==null&&typeof r=="object",o=ye.of(e);if(s){if(o.isStructSchema()){let i=r,a={},{jsonName:c}=this.settings,l;c&&(l={});let u=0;for(let[d,p]of o.structIterator()){let m=this._write(p,i[d],o);if(m!==void 0){let h=d;c&&(h=p.getMergedTraits().jsonName??d,l[d]=h),a[h]=m,u++}}if(o.isUnionSchema()&&u===0){let{$unknown:d}=i;if(Array.isArray(d)){let[p,m]=d;a[p]=this._write(15,m)}}else if(typeof i.__type=="string")for(let d in i){let p=i[d],m=c?l[d]??d:d;m in a||(a[m]=this._write(15,p))}return a}if(Array.isArray(r)&&o.isListSchema()){let i=o.getValueSchema(),a=[],c=!!o.getMergedTraits().sparse;for(let l of r)(c||l!=null)&&a.push(this._write(i,l));return a}if(o.isMapSchema()){let i=o.getValueSchema(),a={},c=!!o.getMergedTraits().sparse;for(let l in r){let u=r[l];(c||u!=null)&&(a[l]=this._write(i,u))}return a}if(r instanceof Uint8Array&&(o.isBlobSchema()||o.isDocumentSchema()))return o===this.rootSchema?r:(this.serdeContext?.base64Encoder??fr)(r);if(r instanceof Date&&(o.isTimestampSchema()||o.isDocumentSchema()))switch(Wo(o,this.settings)){case 5:return r.toISOString().replace(".000Z","Z");case 6:return xa(r);case 7:return r.getTime()/1e3;default:return console.warn("Missing timestamp format, using epoch seconds",r),r.getTime()/1e3}r instanceof Ut&&(this.useReplacer=!0)}if(!(r===null&&n?.isStructSchema())){if(o.isStringSchema()){if(typeof r>"u"&&o.isIdempotencyToken())return Sa();let i=o.getMergedTraits().mediaType;return r!=null&&i&&(i==="application/json"||i.endsWith("+json"))?Xn.from(r):r}if(typeof r=="number"&&o.isNumericSchema())return Math.abs(r)===1/0||isNaN(r)?String(r):r;if(typeof r=="string"&&o.isBlobSchema())return o===this.rootSchema?r:(this.serdeContext?.base64Encoder??fr)(r);if(typeof r=="bigint"&&(this.useReplacer=!0),o.isDocumentSchema())if(s){let i=Array.isArray(r)?[]:{};for(let a in r){let c=r[a];c instanceof Ut?(this.useReplacer=!0,i[a]=c):i[a]=this._write(o,c)}return i}else return structuredClone(r);return r}}}});var Bf,jQ=C(()=>{gp();oJ();iJ();Bf=class extends ss{settings;constructor(e){super(),this.settings=e}createSerializer(){let e=new mw(this.settings);return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new pw(this.settings);return e.setSerdeContext(this.serdeContext),e}}});var Rf,JQ=C(()=>{_e();Et();Cy();jQ();dw();Rf=class extends bu{serializer;deserializer;serviceTarget;codec;mixin;awsQueryCompatible;constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r}),this.serviceTarget=n,this.codec=o??new Bf({timestampFormat:{useTrait:!0,default:7},jsonName:!1}),this.serializer=this.codec.createSerializer(),this.deserializer=this.codec.createDeserializer(),this.awsQueryCompatible=!!s,this.mixin=new $i(this.awsQueryCompatible)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);return s.path.endsWith("/")||(s.path+="/"),s.headers["content-type"]=`application/x-amz-json-${this.getJsonRpcVersion()}`,s.headers["x-amz-target"]=`${this.serviceTarget}.${e.name}`,this.awsQueryCompatible&&(s.headers["x-amzn-query-mode"]="true"),(Ca(e.input)==="unit"||!s.body)&&(s.body="{}"),s}getPayloadCodec(){return this.codec}async handleError(e,r,n,s,o){let{awsQueryCompatible:i}=this;i&&this.mixin.setQueryCompatError(s,n);let a=sJ(n,s,i)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,a,this.options.defaultNamespace);let{errorSchema:c,errorMetadata:l}=await this.mixin.getErrorSchemaOrThrowBaseException(a,this.options.defaultNamespace,n,s,o,i?this.mixin.findQueryCompatibleError:void 0),u=ye.of(c),d=s.message??s.Message??"UnknownError",p=this.compositeErrorRegistry.getErrorCtor(c)??Error,m=new p({}),h={},y=this.codec.createDeserializer();for(let[I,x]of u.structIterator())s[I]!=null&&(h[I]=y.readObject(x,s[I]));throw i&&this.mixin.queryCompatOutput(s,h),this.mixin.decorateServiceException(Object.assign(m,l,{$fault:u.getMergedTraits().error,message:d},h),s)}}});var aJ,gve=C(()=>{JQ();aJ=class extends Rf{constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o})}getShapeId(){return"aws.protocols#awsJson1_0"}getJsonRpcVersion(){return"1.0"}getDefaultContentType(){return"application/x-amz-json-1.0"}}});var cJ,yve=C(()=>{JQ();cJ=class extends Rf{constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o})}getShapeId(){return"aws.protocols#awsJson1_1"}getJsonRpcVersion(){return"1.1"}getDefaultContentType(){return"application/x-amz-json-1.1"}}});var Lu,Eve=C(()=>{_e();Et();Cy();jQ();dw();Lu=class extends Ef{serializer;deserializer;codec;mixin=new $i;constructor({defaultNamespace:e,errorTypeRegistries:r}){super({defaultNamespace:e,errorTypeRegistries:r});let n={timestampFormat:{useTrait:!0,default:7},httpBindings:!0,jsonName:!0};this.codec=new Bf(n),this.serializer=new xf(this.codec.createSerializer(),n),this.deserializer=new If(this.codec.createDeserializer(),n)}getShapeId(){return"aws.protocols#restJson1"}getPayloadCodec(){return this.codec}setSerdeContext(e){this.codec.setSerdeContext(e),super.setSerdeContext(e)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n),o=ye.of(e.input);if(!s.headers["content-type"]){let i=this.mixin.resolveRestContentType(this.getDefaultContentType(),o);i&&(s.headers["content-type"]=i)}return s.body==null&&s.headers["content-type"]===this.getDefaultContentType()&&(s.body="{}"),s}async deserializeResponse(e,r,n){let s=await super.deserializeResponse(e,r,n),o=ye.of(e.output);for(let[i,a]of o.structIterator())a.getMemberTraits().httpPayload&&!(i in s)&&(s[i]=null);return s}async handleError(e,r,n,s,o){let i=nJ(n,s)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,i,this.options.defaultNamespace);let{errorSchema:a,errorMetadata:c}=await this.mixin.getErrorSchemaOrThrowBaseException(i,this.options.defaultNamespace,n,s,o),l=ye.of(a),u=s.message??s.Message??"UnknownError",d=this.compositeErrorRegistry.getErrorCtor(a)??Error,p=new d({});await this.deserializeHttpMessage(a,r,n,s);let m={},h=this.codec.createDeserializer();for(let[y,I]of l.structIterator()){let x=I.getMergedTraits().jsonName??y;m[y]=h.readObject(I,s[x])}throw this.mixin.decorateServiceException(Object.assign(p,c,{$fault:l.getMergedTraits().error,message:u},m),s)}getDefaultContentType(){return"application/json"}}});var Sxt,Cve=C(()=>{nt();Sxt=t=>{if(t!=null)return typeof t=="object"&&"__type"in t&&delete t.__type,av(t)}});var xve=w((Zxr,Ive)=>{(()=>{"use strict";var t={d:(E,A)=>{for(var g in A)t.o(A,g)&&!t.o(E,g)&&Object.defineProperty(E,g,{enumerable:!0,get:A[g]})},o:(E,A)=>Object.prototype.hasOwnProperty.call(E,A),r:E=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(E,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(E,"__esModule",{value:!0})}},e={};t.r(e),t.d(e,{XMLBuilder:()=>zMe,XMLParser:()=>LMe,XMLValidator:()=>VMe});let r=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n=new RegExp("^["+r+"]["+r+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$");function s(E,A){let g=[],R=A.exec(E);for(;R;){let S=[];S.startIndex=A.lastIndex-R[0].length;let P=R.length;for(let k=0;k"&&E[P]!==" "&&E[P]!==" "&&E[P]!==` -`&&E[P]!=="\r";P++)L+=E[P];if(L=L.trim(),L[L.length-1]==="/"&&(L=L.substring(0,L.length-1),P--),!U(L)){let j;return j=L.trim().length===0?"Invalid space after '<'.":"Tag '"+L+"' is an invalid name.",T("InvalidTag",j,O(E,P))}let D=y(E,P);if(D===!1)return T("InvalidAttr","Attributes for '"+L+"' have open quote.",O(E,P));let F=D.value;if(P=D.index,F[F.length-1]==="/"){let j=P-F.length;F=F.substring(0,F.length-1);let fe=x(F,A);if(fe!==!0)return T(fe.err.code,fe.err.msg,O(E,j+fe.err.line));R=!0}else if(v){if(!D.tagClosed)return T("InvalidTag","Closing tag '"+L+"' doesn't have proper closing.",O(E,P));if(F.trim().length>0)return T("InvalidTag","Closing tag '"+L+"' can't have attributes or invalid starting.",O(E,k));if(g.length===0)return T("InvalidTag","Closing tag '"+L+"' has not been opened.",O(E,k));{let j=g.pop();if(L!==j.tagName){let fe=O(E,j.tagStartPos);return T("InvalidTag","Expected closing tag '"+j.tagName+"' (opened in line "+fe.line+", col "+fe.col+") instead of closing tag '"+L+"'.",O(E,k))}g.length==0&&(S=!0)}}else{let j=x(F,A);if(j!==!0)return T(j.err.code,j.err.msg,O(E,P-F.length+j.err.line));if(S===!0)return T("InvalidXml","Multiple possible root nodes found.",O(E,P));A.unpairedTags.indexOf(L)!==-1||g.push({tagName:L,tagStartPos:k}),R=!0}for(P++;P0)||T("InvalidXml","Invalid '"+JSON.stringify(g.map(P=>P.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):T("InvalidXml","Start tag expected.",1)}function u(E){return E===" "||E===" "||E===` -`||E==="\r"}function d(E,A){let g=A;for(;A5&&R==="xml")return T("InvalidXml","XML declaration allowed only at the start of the document.",O(E,A));if(E[A]=="?"&&E[A+1]==">"){A++;break}continue}return A}function p(E,A){if(E.length>A+5&&E[A+1]==="-"&&E[A+2]==="-"){for(A+=3;A"){A+=2;break}}else if(E.length>A+8&&E[A+1]==="D"&&E[A+2]==="O"&&E[A+3]==="C"&&E[A+4]==="T"&&E[A+5]==="Y"&&E[A+6]==="P"&&E[A+7]==="E"){let g=1;for(A+=8;A"&&(g--,g===0))break}else if(E.length>A+9&&E[A+1]==="["&&E[A+2]==="C"&&E[A+3]==="D"&&E[A+4]==="A"&&E[A+5]==="T"&&E[A+6]==="A"&&E[A+7]==="["){for(A+=8;A"){A+=2;break}}return A}let m='"',h="'";function y(E,A){let g="",R="",S=!1;for(;A"&&R===""){S=!0;break}g+=E[A]}return R===""&&{value:g,index:A,tagClosed:S}}let I=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function x(E,A){let g=s(E,I),R={};for(let S=0;Si.includes(E)?"__"+E:E,De={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(E,A){return A},attributeValueProcessor:function(E,A){return A},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(E,A,g){return E},captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:de};function Be(E,A){if(typeof E!="string")return;let g=E.toLowerCase();if(i.some(R=>g===R.toLowerCase()))throw new Error(`[SECURITY] Invalid ${A}: "${E}" is a reserved JavaScript keyword that could cause prototype pollution`);if(a.some(R=>g===R.toLowerCase()))throw new Error(`[SECURITY] Invalid ${A}: "${E}" is a reserved JavaScript keyword that could cause prototype pollution`)}function ne(E,A){return typeof E=="boolean"?{enabled:E,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof E=="object"&&E!==null?{enabled:E.enabled!==!1,maxEntitySize:Math.max(1,E.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,E.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,E.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,E.maxExpandedLength??1e5),maxEntityCount:Math.max(1,E.maxEntityCount??1e3),allowedTags:E.allowedTags??null,tagFilter:E.tagFilter??null,appliesTo:E.appliesTo??"all"}:ne(!0)}let ge=function(E){let A=Object.assign({},De,E),g=[{value:A.attributeNamePrefix,name:"attributeNamePrefix"},{value:A.attributesGroupName,name:"attributesGroupName"},{value:A.textNodeName,name:"textNodeName"},{value:A.cdataPropName,name:"cdataPropName"},{value:A.commentPropName,name:"commentPropName"}];for(let{value:R,name:S}of g)R&&Be(R,S);return A.onDangerousProperty===null&&(A.onDangerousProperty=de),A.processEntities=ne(A.processEntities,A.htmlEntities),A.unpairedTagsSet=new Set(A.unpairedTags),A.stopNodes&&Array.isArray(A.stopNodes)&&(A.stopNodes=A.stopNodes.map(R=>typeof R=="string"&&R.startsWith("*.")?".."+R.substring(2):R)),A},G;G=typeof Symbol!="function"?"@@xmlMetadata":Symbol("XML Node Metadata");class se{constructor(A){this.tagname=A,this.child=[],this[":@"]=Object.create(null)}add(A,g){A==="__proto__"&&(A="#__proto__"),this.child.push({[A]:g})}addChild(A,g){A.tagname==="__proto__"&&(A.tagname="#__proto__"),A[":@"]&&Object.keys(A[":@"]).length>0?this.child.push({[A.tagname]:A.child,":@":A[":@"]}):this.child.push({[A.tagname]:A.child}),g!==void 0&&(this.child[this.child.length-1][G]={startIndex:g})}static getMetaDataSymbol(){return G}}class Ct{constructor(A){this.suppressValidationErr=!A,this.options=A}readDocType(A,g){let R=Object.create(null),S=0;if(A[g+3]!=="O"||A[g+4]!=="C"||A[g+5]!=="T"||A[g+6]!=="Y"||A[g+7]!=="P"||A[g+8]!=="E")throw new Error("Invalid Tag instead of DOCTYPE");{g+=9;let P=1,k=!1,v=!1,L="";for(;g"){if(v?A[g-1]==="-"&&A[g-2]==="-"&&(v=!1,P--):P--,P===0)break}else A[g]==="["?k=!0:L+=A[g];else{if(k&&vt(A,"!ENTITY",g)){let D,F;if(g+=7,[D,F,g]=this.readEntityExp(A,g+1,this.suppressValidationErr),F.indexOf("&")===-1){if(this.options.enabled!==!1&&this.options.maxEntityCount!=null&&S>=this.options.maxEntityCount)throw new Error(`Entity count (${S+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);R[D]=F,S++}}else if(k&&vt(A,"!ELEMENT",g)){g+=8;let{index:D}=this.readElementExp(A,g+1);g=D}else if(k&&vt(A,"!ATTLIST",g))g+=8;else if(k&&vt(A,"!NOTATION",g)){g+=9;let{index:D}=this.readNotationExp(A,g+1,this.suppressValidationErr);g=D}else{if(!vt(A,"!--",g))throw new Error("Invalid DOCTYPE");v=!0}P++,L=""}if(P!==0)throw new Error("Unclosed DOCTYPE")}return{entities:R,i:g}}readEntityExp(A,g){let R=g=it(A,g);for(;gthis.options.maxEntitySize)throw new Error(`Entity "${S}" size (${P.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return[S,P,--g]}readNotationExp(A,g){let R=g=it(A,g);for(;g{for(;A0?A[A.length-1].tag:void 0}getCurrentNamespace(){let A=this._matcher.path;return A.length>0?A[A.length-1].namespace:void 0}getAttrValue(A){let g=this._matcher.path;if(g.length!==0)return g[g.length-1].values?.[A]}hasAttr(A){let g=this._matcher.path;if(g.length===0)return!1;let R=g[g.length-1];return R.values!==void 0&&A in R.values}getPosition(){let A=this._matcher.path;return A.length===0?-1:A[A.length-1].position??0}getCounter(){let A=this._matcher.path;return A.length===0?-1:A[A.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(A,g=!0){return this._matcher.toString(A,g)}toArray(){return this._matcher.path.map(A=>A.tag)}matches(A){return this._matcher.matches(A)}matchesAny(A){return A.matchesAny(this._matcher)}}class WL{constructor(A={}){this.separator=A.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new uMe(this)}push(A,g=null,R=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let S=this.path.length;this.siblingStacks[S]||(this.siblingStacks[S]=new Map);let P=this.siblingStacks[S],k=R?`${R}:${A}`:A,v=P.get(k)||0,L=0;for(let F of P.values())L+=F;P.set(k,v+1);let D={tag:A,position:L,counter:v};R!=null&&(D.namespace=R),g!=null&&(D.values=g),this.path.push(D)}pop(){if(this.path.length===0)return;this._pathStringCache=null;let A=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),A}updateCurrent(A){if(this.path.length>0){let g=this.path[this.path.length-1];A!=null&&(g.values=A)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(A){if(this.path.length!==0)return this.path[this.path.length-1].values?.[A]}hasAttr(A){if(this.path.length===0)return!1;let g=this.path[this.path.length-1];return g.values!==void 0&&A in g.values}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(A,g=!0){let R=A||this.separator;if(R===this.separator&&g===!0){if(this._pathStringCache!==null)return this._pathStringCache;let S=this.path.map(P=>P.namespace?`${P.namespace}:${P.tag}`:P.tag).join(R);return this._pathStringCache=S,S}return this.path.map(S=>g&&S.namespace?`${S.namespace}:${S.tag}`:S.tag).join(R)}toArray(){return this.path.map(A=>A.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(A){let g=A.segments;return g.length!==0&&(A.hasDeepWildcard()?this._matchWithDeepWildcard(g):this._matchSimple(g))}_matchSimple(A){if(this.path.length!==A.length)return!1;for(let g=0;g=0&&g>=0;){let S=A[R];if(S.type==="deep-wildcard"){if(R--,R<0)return!0;let P=A[R],k=!1;for(let v=g;v>=0;v--)if(this._matchSegment(P,this.path[v],v===this.path.length-1)){g=v-1,R--,k=!0;break}if(!k)return!1}else{if(!this._matchSegment(S,this.path[g],g===this.path.length-1))return!1;g--,R--}}return R<0}_matchSegment(A,g,R){if(A.tag!=="*"&&A.tag!==g.tag||A.namespace!==void 0&&A.namespace!=="*"&&A.namespace!==g.namespace||A.attrName!==void 0&&(!R||!g.values||!(A.attrName in g.values)||A.attrValue!==void 0&&String(g.values[A.attrName])!==String(A.attrValue)))return!1;if(A.position!==void 0){if(!R)return!1;let S=g.counter??0;if(A.position==="first"&&S!==0||A.position==="odd"&&S%2!=1||A.position==="even"&&S%2!=0||A.position==="nth"&&S!==A.positionValue)return!1}return!0}matchesAny(A){return A.matchesAny(this)}snapshot(){return{path:this.path.map(A=>({...A})),siblingStacks:this.siblingStacks.map(A=>new Map(A))}}restore(A){this._pathStringCache=null,this.path=A.path.map(g=>({...g})),this.siblingStacks=A.siblingStacks.map(g=>new Map(g))}readOnly(){return this._view}}class Zf{constructor(A,g={},R){this.pattern=A,this.separator=g.separator||".",this.segments=this._parse(A),this.data=R,this._hasDeepWildcard=this.segments.some(S=>S.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(S=>S.attrName!==void 0),this._hasPositionSelector=this.segments.some(S=>S.position!==void 0)}_parse(A){let g=[],R=0,S="";for(;R",lt:"<",quot:'"'},mMe={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"},fMe=new Set("!?\\\\/[]$%{}^&*()<>|+");function G9(E){if(E[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${E}"`);for(let A of E)if(fMe.has(A))throw new Error(`[EntityReplacer] Invalid character '${A}' in entity name: "${E}"`);return E}function jL(...E){let A=Object.create(null);for(let g of E)if(g)for(let R of Object.keys(g)){let S=g[R];if(typeof S=="string")A[R]=S;else if(S&&typeof S=="object"&&S.val!==void 0){let P=S.val;typeof P=="string"&&(A[R]=P)}}return A}let Qp="external",S0="base",JL="all",Ao=Object.freeze({allow:0,leave:1,remove:2,throw:3}),AMe=new Set([9,10,13]);class hMe{constructor(A={}){var g;this._limit=A.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof A.postCheck=="function"?A.postCheck:S=>S,this._limitTiers=(g=this._limit.applyLimitsTo??Qp)&&g!==Qp?g===JL?new Set([JL]):g===S0?new Set([S0]):Array.isArray(g)?new Set(g):new Set([Qp]):new Set([Qp]),this._numericAllowed=A.numericAllowed??!0,this._baseMap=jL($9,A.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(A.remove&&Array.isArray(A.remove)?A.remove:[]),this._leaveSet=new Set(A.leave&&Array.isArray(A.leave)?A.leave:[]);let R=(function(S){if(!S)return{xmlVersion:1,onLevel:Ao.allow,nullLevel:Ao.remove};let P=S.xmlVersion===1.1?1.1:1,k=Ao[S.onNCR]??Ao.allow,v=Ao[S.nullNCR]??Ao.remove;return{xmlVersion:P,onLevel:k,nullLevel:Math.max(v,Ao.remove)}})(A.ncr);this._ncrXmlVersion=R.xmlVersion,this._ncrOnLevel=R.onLevel,this._ncrNullLevel=R.nullLevel}setExternalEntities(A){if(A)for(let g of Object.keys(A))G9(g);this._externalMap=jL(A)}addExternalEntity(A,g){G9(A),typeof g=="string"&&g.indexOf("&")===-1&&(this._externalMap[A]=g)}addInputEntities(A){this._totalExpansions=0,this._expandedLength=0,this._inputMap=jL(A)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(A){this._ncrXmlVersion=A===1.1?1.1:1}decode(A){if(typeof A!="string"||A.length===0)return A;let g=A,R=[],S=A.length,P=0,k=0,v=this._maxTotalExpansions>0,L=this._maxExpandedLength>0,D=v||L;for(;k=S||A.charCodeAt(j)!==59){k++;continue}let fe=A.slice(k+1,j);if(fe.length===0){k++;continue}let xe,Pe;if(this._removeSet.has(fe))xe="",Pe===void 0&&(Pe=Qp);else{if(this._leaveSet.has(fe)){k++;continue}if(fe.charCodeAt(0)===35){let ct=this._resolveNCR(fe);if(ct===void 0){k++;continue}xe=ct,Pe=S0}else{let ct=this._resolveName(fe);xe=ct?.value,Pe=ct?.tier}}if(xe!==void 0){if(k>P&&R.push(A.slice(P,k)),R.push(xe),P=j+1,k=P,D&&this._tierCounts(Pe)){if(v&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(L){let ct=xe.length-(fe.length+2);if(ct>0&&(this._expandedLength+=ct,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}else k++}P=55296&&A<=57343||this._ncrXmlVersion===1&&A>=1&&A<=31&&!AMe.has(A)?Ao.remove:-1}_applyNCRAction(A,g,R){switch(A){case Ao.allow:return String.fromCodePoint(R);case Ao.remove:return"";case Ao.leave:return;case Ao.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${g}; (U+${R.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(R)}}_resolveNCR(A){let g=A.charCodeAt(1),R;if(R=g===120||g===88?parseInt(A.slice(2),16):parseInt(A.slice(1),10),Number.isNaN(R)||R<0||R>1114111)return;let S=this._classifyNCR(R);if(!this._numericAllowed&&S0){let g=E.substring(0,A);if(g!=="xmlns")return g}}class EMe{constructor(A,g){var R;this.options=A,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=bMe,this.parseTextData=CMe,this.resolveNameSpace=IMe,this.buildAttributesMap=wMe,this.isItStopNode=NMe,this.replaceEntitiesValue=BMe,this.readStopNodeData=PMe,this.saveTextToParentTag=RMe,this.addChild=SMe,this.ignoreAttributesFn=typeof(R=this.options.ignoreAttributes)=="function"?R:Array.isArray(R)?k=>{for(let v of R)if(typeof v=="string"&&k===v||v instanceof RegExp&&v.test(k))return!0}:()=>!1,this.entityExpansionCount=0,this.currentExpandedLength=0;let S={...$9};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?S=this.options.htmlEntities:this.options.htmlEntities===!0&&(S={...mMe,...pMe}),this.entityDecoder=new hMe({namedEntities:{...S,...g},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo}})),this.matcher=new WL,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new dMe;let P=this.options.stopNodes;if(P&&P.length>0){for(let k=0;k0)){k||(E=this.replaceEntitiesValue(E,A,g));let L=v.jPath?g.toString():g,D=v.tagValueProcessor(A,E,L,S,P);return D==null?E:typeof D!=typeof E||D!==E?D:v.trimValues||E.trim()===E?H9(E,v.parseTagValue,v.numberParseOptions):E}}function IMe(E){if(this.options.removeNSPrefix){let A=E.split(":"),g=E.charAt(0)==="/"?"/":"";if(A[0]==="xmlns")return"";A.length===2&&(E=g+A[1])}return E}let xMe=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function wMe(E,A,g,R=!1){let S=this.options;if(R===!0||S.ignoreAttributes!==!0&&typeof E=="string"){let P=s(E,xMe),k=P.length,v={},L=new Array(k),D=!1,F={};for(let xe=0;xe",v,"Closing Tag is not closed."),F=E.substring(v+2,D).trim();if(S.removeNSPrefix){let fe=F.indexOf(":");fe!==-1&&(F=F.substr(fe+1))}F=XL(S.transformTagName,F,"",S).tagName,g&&(R=this.saveTextToParentTag(R,g,this.readonlyMatcher));let j=this.matcher.getCurrentTag();if(F&&S.unpairedTagsSet.has(F))throw new Error(`Unpaired tag can not be used as closing tag: `);j&&S.unpairedTagsSet.has(j)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,g=this.tagsNodeStack.pop(),R="",v=D}else if(L===63){let D=KL(E,v,!1,"?>");if(!D)throw new Error("Pi Tag is not closed.");R=this.saveTextToParentTag(R,g,this.readonlyMatcher);let F=this.buildAttributesMap(D.tagExp,this.matcher,D.tagName,!0);if(F){let j=F[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(j)||1)}if(!(S.ignoreDeclaration&&D.tagName==="?xml"||S.ignorePiTags)){let j=new se(D.tagName);j.add(S.textNodeName,""),D.tagName!==D.tagExp&&D.attrExpPresent&&S.ignoreAttributes!==!0&&(j[":@"]=F),this.addChild(g,j,this.readonlyMatcher,v)}v=D.closeIndex+1}else if(L===33&&E.charCodeAt(v+2)===45&&E.charCodeAt(v+3)===45){let D=eA(E,"-->",v+4,"Comment is not closed.");if(S.commentPropName){let F=E.substring(v+4,D-2);R=this.saveTextToParentTag(R,g,this.readonlyMatcher),g.add(S.commentPropName,[{[S.textNodeName]:F}])}v=D}else if(L===33&&E.charCodeAt(v+2)===68){let D=P.readDocType(E,v);this.entityDecoder.addInputEntities(D.entities),v=D.i}else if(L===33&&E.charCodeAt(v+2)===91){let D=eA(E,"]]>",v,"CDATA is not closed.")-2,F=E.substring(v+9,D);R=this.saveTextToParentTag(R,g,this.readonlyMatcher);let j=this.parseTextData(F,g.tagname,this.readonlyMatcher,!0,!1,!0,!0);j==null&&(j=""),S.cdataPropName?g.add(S.cdataPropName,[{[S.textNodeName]:F}]):g.add(S.textNodeName,j),v=D+2}else{let D=KL(E,v,S.removeNSPrefix);if(!D){let Tr=E.substring(Math.max(0,v-50),Math.min(k,v+50));throw new Error(`readTagExp returned undefined at position ${v}. Context: "${Tr}"`)}let F=D.tagName,j=D.rawTagName,fe=D.tagExp,xe=D.attrExpPresent,Pe=D.closeIndex;if({tagName:F,tagExp:fe}=XL(S.transformTagName,F,fe,S),S.strictReservedNames&&(F===S.commentPropName||F===S.cdataPropName||F===S.textNodeName||F===S.attributesGroupName))throw new Error(`Invalid tag name: ${F}`);g&&R&&g.tagname!=="!xml"&&(R=this.saveTextToParentTag(R,g,this.readonlyMatcher,!1));let ct=g;ct&&S.unpairedTagsSet.has(ct.tagname)&&(g=this.tagsNodeStack.pop(),this.matcher.pop());let Hr=!1;fe.length>0&&fe.lastIndexOf("/")===fe.length-1&&(Hr=!0,F[F.length-1]==="/"?(F=F.substr(0,F.length-1),fe=F):fe=fe.substr(0,fe.length-1),xe=F!==fe);let cs,Sn=null,rA={};cs=yMe(j),F!==A.tagname&&this.matcher.push(F,{},cs),F!==fe&&xe&&(Sn=this.buildAttributesMap(fe,this.matcher,F),Sn&&(rA=gMe(Sn,S))),F!==A.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let ls=v;if(this.isCurrentNodeStopNode){let Tr="";if(Hr)v=D.closeIndex;else if(S.unpairedTagsSet.has(F))v=D.closeIndex;else{let rO=this.readStopNodeData(E,j,Pe+1);if(!rO)throw new Error(`Unexpected end of ${j}`);v=rO.i,Tr=rO.tagContent}let tO=new se(F);Sn&&(tO[":@"]=Sn),tO.add(S.textNodeName,Tr),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(g,tO,this.readonlyMatcher,ls)}else{if(Hr){({tagName:F,tagExp:fe}=XL(S.transformTagName,F,fe,S));let Tr=new se(F);Sn&&(Tr[":@"]=Sn),this.addChild(g,Tr,this.readonlyMatcher,ls),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else{if(S.unpairedTagsSet.has(F)){let Tr=new se(F);Sn&&(Tr[":@"]=Sn),this.addChild(g,Tr,this.readonlyMatcher,ls),this.matcher.pop(),this.isCurrentNodeStopNode=!1,v=D.closeIndex;continue}{let Tr=new se(F);if(this.tagsNodeStack.length>S.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(g),Sn&&(Tr[":@"]=Sn),this.addChild(g,Tr,this.readonlyMatcher,ls),g=Tr}}R="",v=Pe}}}else R+=E[v];return A.child};function SMe(E,A,g,R){this.options.captureMetaData||(R=void 0);let S=this.options.jPath?g.toString():g,P=this.options.updateTag(A.tagname,S,A[":@"]);P===!1||(typeof P=="string"&&(A.tagname=P),E.addChild(A,R))}function BMe(E,A,g){let R=this.options.processEntities;if(!R||!R.enabled)return E;if(R.allowedTags){let S=this.options.jPath?g.toString():g;if(!(Array.isArray(R.allowedTags)?R.allowedTags.includes(A):R.allowedTags(A,S)))return E}if(R.tagFilter){let S=this.options.jPath?g.toString():g;if(!R.tagFilter(A,S))return E}return this.entityDecoder.decode(E)}function RMe(E,A,g,R){return E&&(R===void 0&&(R=A.child.length===0),(E=this.parseTextData(E,A.tagname,g,!1,!!A[":@"]&&Object.keys(A[":@"]).length!==0,R))!==void 0&&E!==""&&A.add(this.options.textNodeName,E),E=""),E}function NMe(){return this.stopNodeExpressionsSet.size!==0&&this.matcher.matchesAny(this.stopNodeExpressionsSet)}function eA(E,A,g,R){let S=E.indexOf(A,g);if(S===-1)throw new Error(R);return S+A.length-1}function TMe(E,A,g,R){let S=E.indexOf(A,g);if(S===-1)throw new Error(R);return S}function KL(E,A,g,R=">"){let S=(function(j,fe,xe=">"){let Pe=0,ct=j.length,Hr=xe.charCodeAt(0),cs=xe.length>1?xe.charCodeAt(1):-1,Sn="",rA=fe;for(let ls=fe;ls",g,`${A} is not closed`);if(E.substring(g+2,v).trim()===A&&(S--,S===0))return{tagContent:E.substring(R,g),i:v};g=v}else if(k===63)g=eA(E,"?>",g+1,"StopNode is not closed.");else if(k===33&&E.charCodeAt(g+2)===45&&E.charCodeAt(g+3)===45)g=eA(E,"-->",g+3,"StopNode is not closed.");else if(k===33&&E.charCodeAt(g+2)===91)g=eA(E,"]]>",g,"StopNode is not closed.")-2;else{let v=KL(E,g,!1);v&&((v&&v.tagName)===A&&v.tagExp[v.tagExp.length-1]!=="/"&&S++,g=v.closeIndex)}}}function H9(E,A,g){if(A&&typeof E=="string"){let R=E.trim();return R==="true"||R!=="false"&&(function(S,P={}){if(P=Object.assign({},Rl,P),!S||typeof S!="string")return S;let k=S.trim();if(k.length===0||P.skipLike!==void 0&&P.skipLike.test(k))return S;if(k==="0")return 0;if(P.hex&&as.test(k))return(function(L){if(parseInt)return parseInt(L,16);if(Number.parseInt)return Number.parseInt(L,16);if(window&&window.parseInt)return window.parseInt(L,16);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")})(k);if(isFinite(k)){if(k.includes("e")||k.includes("E"))return(function(L,D,F){if(!F.eNotation)return L;let j=D.match(qu);if(j){let fe=j[1]||"",xe=j[3].indexOf("e")===-1?"E":"e",Pe=j[2],ct=fe?L[Pe.length+1]===xe:L[Pe.length]===xe;return Pe.length>1&&ct?L:(Pe.length!==1||!j[3].startsWith(`.${xe}`)&&j[3][0]!==xe)&&Pe.length>0?F.leadingZeros&&!ct?(D=(j[1]||"")+j[3],Number(D)):L:Number(D)}return L})(S,k,P);{let L=Xo.exec(k);if(L){let D=L[1]||"",F=L[2],j=((v=L[3])&&v.indexOf(".")!==-1&&((v=v.replace(/0+$/,""))==="."?v="0":v[0]==="."?v="0"+v:v[v.length-1]==="."&&(v=v.substring(0,v.length-1))),v),fe=D?S[F.length+1]===".":S[F.length]===".";if(!P.leadingZeros&&(F.length>1||F.length===1&&!fe))return S;{let xe=Number(k),Pe=String(xe);if(xe===0)return xe;if(Pe.search(/[eE]/)!==-1)return P.eNotation?xe:S;if(k.indexOf(".")!==-1)return Pe==="0"||Pe===j||Pe===`${D}${j}`?xe:S;let ct=F?j:k;return F?ct===Pe||D+ct===Pe?xe:S:ct===Pe||ct===D+Pe?xe:S}}return S}}var v;return(function(L,D,F){let j=D===1/0;switch(F.infinity.toLowerCase()){case"null":return null;case"infinity":return D;case"string":return j?"Infinity":"-Infinity";default:return L}})(S,Number(k),P)})(E,g)}return E!==void 0?E:""}function XL(E,A,g,R){if(E){let S=E(A);g===A&&(g=S),A=S}return{tagName:A=z9(A,R),tagExp:g}}function z9(E,A){if(a.includes(E))throw new Error(`[SECURITY] Invalid name: "${E}" is a reserved JavaScript keyword that could cause prototype pollution`);return i.includes(E)?A.onDangerousProperty(E):E}let ZL=se.getMetaDataSymbol();function vMe(E,A){if(!E||typeof E!="object")return{};if(!A)return E;let g={};for(let R in E)R.startsWith(A)?g[R.substring(A.length)]=E[R]:g[R]=E[R];return g}function _Me(E,A,g,R){return V9(E,A,g,R)}function V9(E,A,g,R){let S,P={};for(let k=0;k0&&(P[A.textNodeName]=S):S!==void 0&&(P[A.textNodeName]=S),P}function QMe(E){let A=Object.keys(E);for(let g=0;g/g,"]]]]>")}function tA(E){return String(E).replace(/"/g,""").replace(/'/g,"'")}function OMe(E,A){let g="";A.format&&A.indentBy.length>0&&(g=` -`);let R=[];if(A.stopNodes&&Array.isArray(A.stopNodes))for(let S=0;SA.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(E)){if(E!=null){let v=E.toString();return v=eO(v,A),v}return""}for(let v=0;v`,k=!1,R.pop();continue}if(D===A.commentPropName){P+=g+``,k=!0,R.pop();continue}if(D[0]==="?"){let ct=X9(L[":@"],A,j),Hr=D==="?xml"?"":g,cs=L[D][0][A.textNodeName];cs=cs.length!==0?" "+cs:"",P+=Hr+`<${D}${cs}${ct}?>`,k=!0,R.pop();continue}let fe=g;fe!==""&&(fe+=A.indentBy);let xe=g+`<${D}${X9(L[":@"],A,j)}`,Pe;Pe=j?J9(L[D],A):j9(L[D],A,fe,R,S),A.unpairedTags.indexOf(D)!==-1?A.suppressUnpairedNode?P+=xe+">":P+=xe+"/>":Pe&&Pe.length!==0||!A.suppressEmptyNode?Pe&&Pe.endsWith(">")?P+=xe+`>${Pe}${g}`:(P+=xe+">",Pe&&g!==""&&(Pe.includes("/>")||Pe.includes("`):P+=xe+"/>",k=!0,R.pop()}return P}function MMe(E,A){if(!E||A.ignoreAttributes)return null;let g={},R=!1;for(let S in E)Object.prototype.hasOwnProperty.call(E,S)&&(g[S.startsWith(A.attributeNamePrefix)?S.substr(A.attributeNamePrefix.length):S]=tA(E[S]),R=!0);return R?g:null}function J9(E,A){if(!Array.isArray(E))return E!=null?E.toString():"";let g="";for(let R=0;R${v}`:g+=`<${P}${k}/>`}}}return g}function FMe(E,A){let g="";if(E&&!A.ignoreAttributes)for(let R in E){if(!Object.prototype.hasOwnProperty.call(E,R))continue;let S=E[R];S===!0&&A.suppressBooleanAttributes?g+=` ${R.substr(A.attributeNamePrefix.length)}`:g+=` ${R.substr(A.attributeNamePrefix.length)}="${tA(S)}"`}return g}function K9(E){let A=Object.keys(E);for(let g=0;g0&&A.processEntities)for(let g=0;g","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0};function Zo(E){if(this.options=Object.assign({},qMe,E),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(g=>typeof g=="string"&&g.startsWith("*.")?".."+g.substring(2):g)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let g=0;g{for(let R of A)if(typeof R=="string"&&g===R||R instanceof RegExp&&R.test(g))return!0}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=HMe),this.processTextOrObjNode=$Me,this.options.format?(this.indentate=GMe,this.tagEndChar=`> + - EKS container host 169.254.170.23 or [fd00:ec2::23]`,{logger:e})}},"checkUrl");DQ.checkUrl=FIt});var GPe=b(kQ=>{"use strict";Object.defineProperty(kQ,"__esModule",{value:!0});kQ.createGetRequest=GIt;kQ.getCredentials=HIt;var kj=(Tt(),W(kn)),UIt=(Qe(),W(rl)),qIt=(st(),W(Zd)),$It=(st(),W(Zd));function GIt(t){return new UIt.HttpRequest({protocol:t.protocol,hostname:t.hostname,port:Number(t.port),path:t.pathname,query:Array.from(t.searchParams.entries()).reduce((e,[r,n])=>(e[r]=n,e),{}),fragment:t.hash})}i(GIt,"createGetRequest");async function HIt(t,e){let n=await(0,$It.sdkStreamMixin)(t.body).transformToString();if(t.statusCode===200){let s=JSON.parse(n);if(typeof s.AccessKeyId!="string"||typeof s.SecretAccessKey!="string"||typeof s.Token!="string"||typeof s.Expiration!="string")throw new kj.CredentialsProviderError("HTTP credential provider response not of the required format, an object matching: { AccessKeyId: string, SecretAccessKey: string, Token: string, Expiration: string(rfc3339) }",{logger:e});return{accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,sessionToken:s.Token,expiration:(0,qIt.parseRfc3339DateTime)(s.Expiration)}}if(t.statusCode>=400&&t.statusCode<500){let s={};try{s=JSON.parse(n)}catch{}throw Object.assign(new kj.CredentialsProviderError(`Server responded with status: ${t.statusCode}`,{logger:e}),{Code:s.Code,Message:s.Message})}throw new kj.CredentialsProviderError(`Server responded with status: ${t.statusCode}`,{logger:e})}i(HIt,"getCredentials")});var HPe=b(LQ=>{"use strict";Object.defineProperty(LQ,"__esModule",{value:!0});LQ.retryWrapper=void 0;var zIt=i((t,e,r)=>async()=>{for(let n=0;nsetTimeout(o,r))}return await t()},"retryWrapper");LQ.retryWrapper=zIt});var YPe=b(OQ=>{"use strict";Object.defineProperty(OQ,"__esModule",{value:!0});OQ.fromHttp=void 0;var VIt=(ty(),W(ey)),YIt=(wt(),W(Ds)),zPe=(Tt(),W(kn)),WIt=vu(),jIt=VIt.__importDefault(require("node:fs/promises")),JIt=$Pe(),VPe=GPe(),KIt=HPe(),XIt="AWS_CONTAINER_CREDENTIALS_RELATIVE_URI",ZIt="http://169.254.170.2",ext="AWS_CONTAINER_CREDENTIALS_FULL_URI",txt="AWS_CONTAINER_AUTHORIZATION_TOKEN_FILE",rxt="AWS_CONTAINER_AUTHORIZATION_TOKEN",nxt=i((t={})=>{t.logger?.debug("@aws-sdk/credential-provider-http - fromHttp");let e,r=t.awsContainerCredentialsRelativeUri??process.env[XIt],n=t.awsContainerCredentialsFullUri??process.env[ext],s=t.awsContainerAuthorizationToken??process.env[rxt],o=t.awsContainerAuthorizationTokenFile??process.env[txt],a=t.logger?.constructor?.name==="NoOpLogger"||!t.logger?.warn?console.warn:t.logger.warn.bind(t.logger);if(r&&n&&(a("@aws-sdk/credential-provider-http: you have set both awsContainerCredentialsRelativeUri and awsContainerCredentialsFullUri."),a("awsContainerCredentialsFullUri will take precedence.")),s&&o&&(a("@aws-sdk/credential-provider-http: you have set both awsContainerAuthorizationToken and awsContainerAuthorizationTokenFile."),a("awsContainerAuthorizationToken will take precedence.")),n)e=n;else if(r)e=`${ZIt}${r}`;else throw new zPe.CredentialsProviderError(`No HTTP credential provider host provided. +Set AWS_CONTAINER_CREDENTIALS_FULL_URI or AWS_CONTAINER_CREDENTIALS_RELATIVE_URI.`,{logger:t.logger});let c=new URL(e);(0,JIt.checkUrl)(c,t.logger);let l=WIt.NodeHttpHandler.create({requestTimeout:t.timeout??1e3,connectionTimeout:t.timeout??1e3});return(0,KIt.retryWrapper)(async()=>{let u=(0,VPe.createGetRequest)(c);s?u.headers.Authorization=s:o&&(u.headers.Authorization=(await jIt.default.readFile(o)).toString());try{let d=await l.handle(u);return(0,VPe.getCredentials)(d.response).then(p=>(0,YIt.setCredentialFeature)(p,"CREDENTIALS_HTTP","z"))}catch(d){throw new zPe.CredentialsProviderError(String(d),{logger:t.logger})}},t.maxRetries??3,t.timeout??1e3)},"fromHttp");OQ.fromHttp=nxt});var Lj=b(WPe=>{"use strict";var sxt=YPe();WPe.fromHttp=sxt.fromHttp});function oxt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sso-oauth",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function ixt(t){return{schemeId:"smithy.api#noAuth"}}var jPe,JPe,KPe,Oj=I(()=>{Xr();Ce();jPe=i(async(t,e,r)=>({operation:fr(e).operation,region:await Ut(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSSOOIDCHttpAuthSchemeParametersProvider");i(oxt,"createAwsAuthSigv4HttpAuthOption");i(ixt,"createSmithyApiNoAuthHttpAuthOption");JPe=i(t=>{let e=[];return t.operation==="CreateToken"?e.push(ixt(t)):e.push(oxt(t)),e},"defaultSSOOIDCHttpAuthSchemeProvider"),KPe=i(t=>{let e=Il(t);return Object.assign(e,{authSchemePreference:Ut(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var XPe,ZPe,Mj=I(()=>{XPe=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"sso-oauth"}),"resolveClientEndpointParameters"),ZPe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var mp,cw=I(()=>{mp={name:"@aws-sdk/nested-clients",version:"3.997.11",description:"Nested clients for AWS SDK packages.",main:"./dist-cjs/index.js",module:"./dist-es/index.js",types:"./dist-types/index.d.ts",scripts:{build:"yarn lint && concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline nested-clients","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo",lint:"node ../../scripts/validation/submodules-linter.js --pkg nested-clients",test:"yarn g:vitest run","test:watch":"yarn g:vitest watch"},engines:{node:">=20.0.0"},sideEffects:!1,author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/signature-v4-multi-region":"^3.996.28","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["./cognito-identity.d.ts","./cognito-identity.js","./signin.d.ts","./signin.js","./sso-oidc.d.ts","./sso-oidc.js","./sso.d.ts","./sso.js","./sts.d.ts","./sts.js","dist-*/**"],browser:{"./dist-es/submodules/cognito-identity/runtimeConfig":"./dist-es/submodules/cognito-identity/runtimeConfig.browser","./dist-es/submodules/signin/runtimeConfig":"./dist-es/submodules/signin/runtimeConfig.browser","./dist-es/submodules/sso-oidc/runtimeConfig":"./dist-es/submodules/sso-oidc/runtimeConfig.browser","./dist-es/submodules/sso/runtimeConfig":"./dist-es/submodules/sso/runtimeConfig.browser","./dist-es/submodules/sts/runtimeConfig":"./dist-es/submodules/sts/runtimeConfig.browser"},"react-native":{},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"packages/nested-clients"},exports:{"./package.json":"./package.json","./sso-oidc":{types:"./dist-types/submodules/sso-oidc/index.d.ts",module:"./dist-es/submodules/sso-oidc/index.js",node:"./dist-cjs/submodules/sso-oidc/index.js",import:"./dist-es/submodules/sso-oidc/index.js",require:"./dist-cjs/submodules/sso-oidc/index.js"},"./sts":{types:"./dist-types/submodules/sts/index.d.ts",module:"./dist-es/submodules/sts/index.js",node:"./dist-cjs/submodules/sts/index.js",import:"./dist-es/submodules/sts/index.js",require:"./dist-cjs/submodules/sts/index.js"},"./signin":{types:"./dist-types/submodules/signin/index.d.ts",module:"./dist-es/submodules/signin/index.js",node:"./dist-cjs/submodules/signin/index.js",import:"./dist-es/submodules/signin/index.js",require:"./dist-cjs/submodules/signin/index.js"},"./cognito-identity":{types:"./dist-types/submodules/cognito-identity/index.d.ts",module:"./dist-es/submodules/cognito-identity/index.js",node:"./dist-cjs/submodules/cognito-identity/index.js",import:"./dist-es/submodules/cognito-identity/index.js",require:"./dist-cjs/submodules/cognito-identity/index.js"},"./sso":{types:"./dist-types/submodules/sso/index.d.ts",module:"./dist-es/submodules/sso/index.js",node:"./dist-cjs/submodules/sso/index.js",import:"./dist-es/submodules/sso/index.js",require:"./dist-cjs/submodules/sso/index.js"}}}});function fp(t){return typeof Buffer<"u"?Buffer.alloc(t):new Uint8Array(t)}function MQ(t){return t[Fj]=!0,t}var Fj,FQ=I(()=>{i(fp,"alloc");Fj=Symbol("@smithy/core/cbor::tagSymbol");i(MQ,"tag")});function tve(t){Ot=t,Qu=new DataView(Ot.buffer,Ot.byteOffset,Ot.byteLength)}function xl(t,e){if(t>=e)throw new Error("unexpected end of (decode) payload.");let r=(Ot[t]&224)>>5,n=Ot[t]&31;switch(r){case 0:case 1:case 6:let s,o;if(n<24)s=n,o=1;else switch(n){case 24:case 25:case 26:case 27:let a=nve[n],c=a+1;if(o=c,e-t>7,n=(t&124)>>2,s=(t&3)<<8|e,o=r===0?1:-1,a,c;if(n===0){if(s===0)return 0;a=Math.pow(2,-14),c=0}else{if(n===31)return s===0?o*(1/0):NaN;a=Math.pow(2,n-15),c=1}return c+=s/1024,o*(a*c)}function pw(t,e){let r=Ot[t]&31;if(r<24)return dt=1,r;if(r===24||r===25||r===26||r===27){let n=nve[r];if(dt=n+1,e-t>5,o=Ot[t]&31;if(s!==3)throw new Error(`unexpected major type ${s} in indefinite string.`);if(o===31)throw new Error("nested indefinite string.");let a=Vj(t,e);t+=dt;for(let l=0;l>5,o=Ot[t]&31;if(s!==2)throw new Error(`unexpected major type ${s} in indefinite string.`);if(o===31)throw new Error("nested indefinite string.");let a=Vj(t,e);t+=dt;for(let l=0;l=e)throw new Error("unexpected end of map payload.");let c=(Ot[t]&224)>>5;if(c!==3)throw new Error(`unexpected major type ${c} for map key at index ${t}.`);let l=xl(t,e);t+=dt;let u=xl(t,e);t+=dt,o[l]=u}return dt=n+(t-s),o}function Ext(t,e){t+=1;let r=t,n={};for(;t=e)throw new Error("unexpected end of map payload.");if(Ot[t]===255)return dt=t-r+2,n;let s=(Ot[t]&224)>>5;if(s!==3)throw new Error(`unexpected major type ${s} for map key.`);let o=xl(t,e);t+=dt;let a=xl(t,e);t+=dt,n[o]=a}throw new Error("expected break marker.")}function Cxt(t,e){let r=Ot[t]&31;switch(r){case 21:case 20:return dt=1,r===21;case 22:return dt=1,null;case 23:return dt=1,null;case 25:if(e-t<3)throw new Error("incomplete float16 at end of buf.");return dt=3,pxt(Ot[t+1],Ot[t+2]);case 26:if(e-t<5)throw new Error("incomplete float32 at end of buf.");return dt=5,Qu.getFloat32(t+1);case 27:if(e-t<9)throw new Error("incomplete float64 at end of buf.");return dt=9,Qu.getFloat64(t+1);default:throw new Error(`unexpected minor value ${r}.`)}}function Uj(t){if(typeof t=="number")return t;let e=Number(t);return Number.MIN_SAFE_INTEGER<=e&&e<=Number.MAX_SAFE_INTEGER?e:t}var lxt,uxt,Ot,Qu,eve,dt,nve,sve=I(()=>{st();FQ();lxt=typeof TextDecoder<"u",uxt=typeof Buffer<"u",Ot=fp(0),Qu=new DataView(Ot.buffer,Ot.byteOffset,Ot.byteLength),eve=lxt?new TextDecoder:null,dt=0;i(tve,"setPayload");i(xl,"decode");i(rve,"bytesToUtf8");i(dxt,"demote");nve={24:1,25:2,26:4,27:8};i(pxt,"bytesToFloat16");i(pw,"decodeCount");i(mxt,"decodeUtf8String");i(fxt,"decodeUtf8StringIndefinite");i(Vj,"decodeUnstructuredByteString");i(Axt,"decodeUnstructuredByteStringIndefinite");i(hxt,"decodeList");i(gxt,"decodeListIndefinite");i(yxt,"decodeMap");i(Ext,"decodeMapIndefinite");i(Cxt,"decodeSpecial");i(Uj,"castBigInt")});function Wj(t){Ye.byteLength-Be=0,s=n?0:1,o=n?r:-r-1;o<24?Ye[Be++]=s<<5|o:o<256?(Ye[Be++]=s<<5|24,Ye[Be++]=o):o<65536?(Ye[Be++]=s<<5|25,Ye[Be++]=o>>8,Ye[Be++]=o):o<4294967296?(Ye[Be++]=s<<5|26,Lu.setUint32(Be,o),Be+=4):(Ye[Be++]=s<<5|27,Lu.setBigUint64(Be,BigInt(o)),Be+=8);continue}Ye[Be++]=251,Lu.setFloat64(Be,r),Be+=8;continue}else if(typeof r=="bigint"){let n=r>=0,s=n?0:1,o=n?r:-r-BigInt(1),a=Number(o);if(a<24)Ye[Be++]=s<<5|a;else if(a<256)Ye[Be++]=s<<5|24,Ye[Be++]=a;else if(a<65536)Ye[Be++]=s<<5|25,Ye[Be++]=a>>8,Ye[Be++]=a&255;else if(a<4294967296)Ye[Be++]=s<<5|26,Lu.setUint32(Be,a),Be+=4;else if(o=0;)l[l.byteLength-d]=Number(u&BigInt(255)),u>>=BigInt(8);Wj(l.byteLength*2),Ye[Be++]=n?194:195,ove?ku(2,Buffer.byteLength(l)):ku(2,l.byteLength),Ye.set(l,Be),Be+=l.byteLength}continue}else if(r===null){Ye[Be++]=246;continue}else if(typeof r=="boolean"){Ye[Be++]=224|(r?21:20);continue}else{if(typeof r>"u")throw new Error("@smithy/core/cbor: client may not serialize undefined value.");if(Array.isArray(r)){for(let n=r.length-1;n>=0;--n)e.push(r[n]);ku(4,r.length);continue}else if(typeof r.byteLength=="number"){Wj(r.length*2),ku(2,r.length),Ye.set(r,Be),Be+=r.byteLength;continue}else if(typeof r=="object"){if(r instanceof qt){let s=r.string.indexOf("."),o=s===-1?0:s-r.string.length+1,a=BigInt(r.string.replace(".",""));Ye[Be++]=196,e.push(a),e.push(o),ku(4,2);continue}if(r[Fj])if("tag"in r&&"value"in r){e.push(r.value),ku(6,r.tag);continue}else throw new Error("tag encountered with missing fields, need 'tag' and 'value', found: "+JSON.stringify(r));let n=Object.keys(r);for(let s=n.length-1;s>=0;--s){let o=n[s];e.push(r[o]),e.push(o)}ku(5,n.length);continue}}throw new Error(`data type ${r?.constructor?.name??typeof r} not compatible for encoding.`)}}var ove,Ixt,Ye,Lu,Be,ave=I(()=>{st();FQ();ove=typeof Buffer<"u",Ixt=2048,Ye=fp(Ixt),Lu=new DataView(Ye.buffer,Ye.byteOffset,Ye.byteLength),Be=0;i(Wj,"ensureSpace");i(jj,"toUint8Array");i(qQ,"resize");i(ku,"encodeHeader");i(ive,"encode")});var Jj,cve=I(()=>{sve();ave();Jj={deserialize(t){return tve(t),xl(0,t.length)},serialize(t){try{return ive(t),jj()}catch(e){throw jj(),e}},resizeEncodingBuffer(t){qQ(t)}}});var $Q,GQ,HQ=I(()=>{FQ();$Q=i(t=>MQ({tag:1,value:t.getTime()/1e3}),"dateToTag"),GQ=i((t,e)=>{let r=i(s=>{let o=s;return typeof o=="number"&&(o=o.toString()),o.indexOf(",")>=0&&(o=o.split(",")[0]),o.indexOf(":")>=0&&(o=o.split(":")[0]),o.indexOf("#")>=0&&(o=o.split("#")[1]),o},"sanitizeErrorCode");if(e.__type!==void 0)return r(e.__type);let n;for(let s in e)if(s.toLowerCase()==="code"){n=s;break}if(n&&e[n]!==void 0)return r(e[n])},"loadSmithyRpcV2CborErrorCode")});var zQ,Kj,Xj,Zj=I(()=>{Qe();Ct();st();cve();HQ();zQ=class extends vs{static{i(this,"CborCodec")}createSerializer(){let e=new Kj;return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new Xj;return e.setSerdeContext(this.serdeContext),e}},Kj=class extends vs{static{i(this,"CborShapeSerializer")}value;write(e,r){this.value=this.serialize(e,r)}serialize(e,r){let n=Ee.of(e);if(r==null)return n.isIdempotencyToken()?Ba():r;if(n.isBlobSchema())return typeof r=="string"?(this.serdeContext?.base64Decoder??$r)(r):r;if(n.isTimestampSchema())return typeof r=="number"||typeof r=="bigint"?$Q(new Date(Number(r)/1e3|0)):$Q(r);if(typeof r=="function"||typeof r=="object"){let s=r;if(n.isListSchema()&&Array.isArray(s)){let a=!!n.getMergedTraits().sparse,c=[],l=0;for(let u of s){let d=this.serialize(n.getValueSchema(),u);(d!=null||a)&&(c[l++]=d)}return c}if(s instanceof Date)return $Q(s);let o={};if(n.isMapSchema()){let a=!!n.getMergedTraits().sparse;for(let c in s){let l=this.serialize(n.getValueSchema(),s[c]);(l!=null||a)&&(o[c]=l)}}else if(n.isStructSchema()){for(let[c,l]of n.structIterator()){let u=this.serialize(l,s[c]);u!=null&&(o[c]=u)}if(n.isUnionSchema()&&Array.isArray(s.$unknown)){let[c,l]=s.$unknown;o[c]=l}else if(typeof s.__type=="string")for(let c in s)c in o||(o[c]=this.serialize(15,s[c]))}else if(n.isDocumentSchema())for(let a in s)o[a]=this.serialize(n.getValueSchema(),s[a]);else if(n.isBigDecimalSchema())return s;return o}return r}flush(){let e=Jj.serialize(this.value);return this.value=void 0,e}},Xj=class extends vs{static{i(this,"CborShapeDeserializer")}read(e,r){let n=Jj.deserialize(r);return this.readValue(e,n)}readValue(e,r){let n=Ee.of(e);if(n.isTimestampSchema()){if(typeof r=="number")return lf(r);if(typeof r=="object"&&r.tag===1&&"value"in r)return lf(r.value)}if(n.isBlobSchema())return typeof r=="string"?(this.serdeContext?.base64Decoder??$r)(r):r;if(typeof r>"u"||typeof r=="boolean"||typeof r=="number"||typeof r=="string"||typeof r=="bigint"||typeof r=="symbol")return r;if(typeof r=="object"){if(r===null)return null;if("byteLength"in r||r instanceof Date||n.isDocumentSchema())return r;if(n.isListSchema()){let o=[],a=n.getValueSchema();for(let c of r){let l=this.readValue(a,c);o.push(l)}return o}let s={};if(n.isMapSchema()){let o=n.getValueSchema();for(let a in r){let c=this.readValue(o,r[a]);s[a]=c}}else if(n.isStructSchema()){let o=n.isUnionSchema(),a;if(o){a=new Set;for(let c in r)c!=="__type"&&a.add(c)}for(let[c,l]of n.structIterator())o&&a.delete(c),r[c]!=null&&(s[c]=this.readValue(l,r[c]));if(o&&a?.size===1){let c=!0;for(let l in s){c=!1;break}if(c){let l=a.values().next().value;s.$unknown=[l,r[l]]}}else if(typeof r.__type=="string")for(let c in r)c in s||(s[c]=r[c])}else if(r instanceof qt)return r;return s}else return r}}});var VQ,lve=I(()=>{Ce();Qe();Ct();Zj();HQ();VQ=class extends Su{static{i(this,"SmithyRpcV2CborProtocol")}codec=new zQ;serializer=this.codec.createSerializer();deserializer=this.codec.createDeserializer();constructor({defaultNamespace:e,errorTypeRegistries:r}){super({defaultNamespace:e,errorTypeRegistries:r})}getShapeId(){return"smithy.protocols#rpcv2Cbor"}getPayloadCodec(){return this.codec}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);if(Object.assign(s.headers,{"content-type":this.getDefaultContentType(),"smithy-protocol":"rpc-v2-cbor",accept:this.getDefaultContentType()}),Ia(e.input)==="unit")delete s.body,delete s.headers["content-type"];else{s.body||(this.serializer.write(15,{}),s.body=this.serializer.flush());try{s.headers["content-length"]=String(s.body.byteLength)}catch{}}let{service:o,operation:a}=fr(n),c=`/service/${o}/operation/${a}`;return s.path.endsWith("/")?s.path+=c.slice(1):s.path+=c,s}async deserializeResponse(e,r,n){return super.deserializeResponse(e,r,n)}async handleError(e,r,n,s,o){let a=GQ(n,s)??"Unknown",c={$metadata:o,$fault:n.statusCode<=500?"client":"server"},l=this.options.defaultNamespace;a.includes("#")&&([l]=a.split("#"));let u=this.compositeErrorRegistry,d=gr.for(l);u.copyFrom(d);let p;try{p=u.getSchema(a)}catch{s.Message&&(s.message=s.Message);let S=gr.for("smithy.ts.sdk.synthetic."+l);u.copyFrom(S);let P=u.getBaseException();if(P){let Q=u.getErrorCtor(P);throw Object.assign(new Q({name:a}),c,s)}throw Object.assign(new Error(a),c,s)}let m=Ee.of(p),f=u.getErrorCtor(p),g=s.message??s.Message??"Unknown",E=new f({}),x={};for(let[w,S]of m.structIterator())x[w]=this.deserializer.readValue(S,s[w]);throw Object.assign(E,c,{$fault:m.getMergedTraits().error,message:g},x)}getDefaultContentType(){return"application/cbor"}}});var uve=I(()=>{HQ();lve();Zj()});var Gi,Iy=I(()=>{Ce();Ct();Gi=class{static{i(this,"ProtocolLib")}queryCompat;errorRegistry;constructor(e=!1){this.queryCompat=e}resolveRestContentType(e,r){let n=r.getMemberSchemas(),s=Object.values(n).find(o=>!!o.getMergedTraits().httpPayload);if(s){let o=s.getMergedTraits().mediaType;return o||(s.isStringSchema()?"text/plain":s.isBlobSchema()?"application/octet-stream":e)}else if(!r.isUnitSchema()&&Object.values(n).find(a=>{let{httpQuery:c,httpQueryParams:l,httpHeader:u,httpLabel:d,httpPrefixHeaders:p}=a.getMergedTraits();return!c&&!l&&!u&&!d&&p===void 0}))return e}async getErrorSchemaOrThrowBaseException(e,r,n,s,o,a){let c=e;e.includes("#")&&([,c]=e.split("#"));let l={$metadata:o,$fault:n.statusCode<500?"client":"server"};if(!this.errorRegistry)throw new Error("@aws-sdk/core/protocols - error handler not initialized.");try{return{errorSchema:a?.(this.errorRegistry,c)??this.errorRegistry.getSchema(e),errorMetadata:l}}catch{s.message=s.message??s.Message??"UnknownError";let d=this.errorRegistry,p=d.getBaseException();if(p){let g=d.getErrorCtor(p)??Error;throw this.decorateServiceException(Object.assign(new g({name:c}),l),s)}let m=s,f=m?.message??m?.Message??m?.Error?.Message??m?.Error?.message;throw this.decorateServiceException(Object.assign(new Error(f),{name:c},l),s)}}compose(e,r,n){let s=n;r.includes("#")&&([s]=r.split("#"));let o=gr.for(s),a=gr.for("smithy.ts.sdk.synthetic."+n);e.copyFrom(o),e.copyFrom(a),this.errorRegistry=e}decorateServiceException(e,r={}){if(this.queryCompat){let n=e.Message??r.Message,s=bf(e,r);n&&(s.message=n);let o=s.Error??{};o.Type=s.Error?.Type,o.Code=s.Error?.Code,o.Message=s.Error?.message??s.Error?.Message??n,s.Error=o;let a=s.$metadata.requestId;return a&&(s.RequestId=a),s}return bf(e,r)}setQueryCompatError(e,r){let n=r.headers?.["x-amzn-query-error"];if(e!==void 0&&n!=null){let[s,o]=n.split(";"),a=Object.keys(e),c={Code:s,Type:o};e.Code=s,e.Type=o;for(let l=0;lEe.of(s).getMergedTraits().awsQueryError?.[0]===r)}}}});var eJ,dve=I(()=>{uve();Ct();Iy();eJ=class extends VQ{static{i(this,"AwsSmithyRpcV2CborProtocol")}awsQueryCompatible;mixin;constructor({defaultNamespace:e,errorTypeRegistries:r,awsQueryCompatible:n}){super({defaultNamespace:e,errorTypeRegistries:r}),this.awsQueryCompatible=!!n,this.mixin=new Gi(this.awsQueryCompatible)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);return this.awsQueryCompatible&&(s.headers["x-amzn-query-mode"]="true"),s}async handleError(e,r,n,s,o){this.awsQueryCompatible&&this.mixin.setQueryCompatError(s,n);let a=(()=>{let g=n.headers["x-amzn-query-error"];return g&&this.awsQueryCompatible?g.split(";")[0]:GQ(n,s)??"Unknown"})();this.mixin.compose(this.compositeErrorRegistry,a,this.options.defaultNamespace);let{errorSchema:c,errorMetadata:l}=await this.mixin.getErrorSchemaOrThrowBaseException(a,this.options.defaultNamespace,n,s,o,this.awsQueryCompatible?this.mixin.findQueryCompatibleError:void 0),u=Ee.of(c),d=s.message??s.Message??"UnknownError",p=this.compositeErrorRegistry.getErrorCtor(c)??Error,m=new p({}),f={};for(let[g,E]of u.structIterator())s[g]!=null&&(f[g]=this.deserializer.readValue(E,s[g]));throw this.awsQueryCompatible&&this.mixin.queryCompatOutput(s,f),this.mixin.decorateServiceException(Object.assign(m,l,{$fault:u.getMergedTraits().error,message:d},f),s)}}});var xxt,wxt,bxt,pve=I(()=>{xxt=i(t=>{if(t==null)return t;if(typeof t=="number"||typeof t=="bigint"){let e=new Error(`Received number ${t} where a string was expected.`);return e.name="Warning",console.warn(e),String(t)}if(typeof t=="boolean"){let e=new Error(`Received boolean ${t} where a string was expected.`);return e.name="Warning",console.warn(e),String(t)}return t},"_toStr"),wxt=i(t=>{if(t==null)return t;if(typeof t=="string"){let e=t.toLowerCase();if(t!==""&&e!=="false"&&e!=="true"){let r=new Error(`Received string "${t}" where a boolean was expected.`);r.name="Warning",console.warn(r)}return t!==""&&e!=="false"}return t},"_toBool"),bxt=i(t=>{if(t==null)return t;if(typeof t=="string"){let e=Number(t);if(e.toString()!==t){let r=new Error(`Received string "${t}" where a number was expected.`);return r.name="Warning",console.warn(r),t}return e}return t},"_toNum")});var os,yp=I(()=>{os=class{static{i(this,"SerdeContextConfig")}serdeContext;setSerdeContext(e){this.serdeContext=e}}});var xy,tJ=I(()=>{xy=class{static{i(this,"UnionSerde")}from;to;keys;constructor(e,r){this.from=e,this.to=r;let n=Object.keys(this.from),s=new Set(n);s.delete("__type"),this.keys=s}mark(e){this.keys.delete(e)}hasUnknown(){return this.keys.size===1&&Object.keys(this.to).length===0}writeUnknown(){if(this.hasUnknown()){let e=this.keys.values().next().value,r=this.from[e];this.to.$unknown=[e,r]}}}});function mve(t,e,r){if(r?.source){let n=r.source;if(typeof e=="number"&&(e>Number.MAX_SAFE_INTEGER||e{st();i(mve,"jsonReviver")});var YQ,rJ=I(()=>{Qe();st();YQ=i((t,e)=>co(t,e).then(r=>(e?.utf8Encoder??hr)(r)),"collectBodyString")});var WQ,Sxt,Ave,nJ,sJ,oJ,hve,mw=I(()=>{rJ();WQ=i((t,e)=>YQ(t,e).then(r=>{if(r.length)try{return JSON.parse(r)}catch(n){throw n?.name==="SyntaxError"&&Object.defineProperty(n,"$responseBodyText",{value:r}),n}return{}}),"parseJsonBody"),Sxt=i(async(t,e)=>{let r=await WQ(t,e);return r.message=r.message??r.Message,r},"parseJsonErrorBody"),Ave=i((t,e)=>Object.keys(t).find(r=>r.toLowerCase()===e.toLowerCase()),"findKey"),nJ=i(t=>{let e=t;return typeof e=="number"&&(e=e.toString()),e.indexOf(",")>=0&&(e=e.split(",")[0]),e.indexOf(":")>=0&&(e=e.split(":")[0]),e.indexOf("#")>=0&&(e=e.split("#")[1]),e},"sanitizeErrorCode"),sJ=i((t,e)=>hve(t,e,["header","code","type"]),"loadRestJsonErrorCode"),oJ=i((t,e,r=!1)=>hve(t,e,r?["code","header","type"]:["type","code","header"]),"loadJsonRpcErrorCode"),hve=i(({headers:t},e,r)=>{for(;r.length>0;)switch(r.shift()){case"header":let s=Ave(t??{},"x-amzn-errortype");if(s!==void 0)return nJ(t[s]);break;case"code":let o=Ave(e??{},"code");if(o&&e[o]!==void 0)return nJ(e[o]);break;case"type":if(e?.__type!==void 0)return nJ(e.__type);break}},"loadErrorCode")});var fw,iJ=I(()=>{Qe();Ct();st();st();yp();tJ();fve();mw();fw=class extends os{static{i(this,"JsonShapeDeserializer")}settings;constructor(e){super(),this.settings=e}async read(e,r){return this._read(e,typeof r=="string"?JSON.parse(r,mve):await WQ(r,this.serdeContext))}readObject(e,r){return this._read(e,r)}_read(e,r){let n=r!==null&&typeof r=="object",s=Ee.of(e);if(n){if(s.isStructSchema()){let a=r,c=s.isUnionSchema(),l={},u,{jsonName:d}=this.settings;d&&(u={});let p;c&&(p=new xy(a,l));for(let[m,f]of s.structIterator()){let g=m;d&&(g=f.getMergedTraits().jsonName??g,u[g]=m),c&&p.mark(g),a[g]!=null&&(l[m]=this._read(f,a[g]))}if(c)p.writeUnknown();else if(typeof a.__type=="string")for(let m in a){let f=a[m],g=d?u[m]??m:m;g in l||(l[g]=f)}return l}if(Array.isArray(r)&&s.isListSchema()){let a=s.getValueSchema(),c=[];for(let l of r)c.push(this._read(a,l));return c}if(s.isMapSchema()){let a=s.getValueSchema(),c={};for(let l in r)c[l]=this._read(a,r[l]);return c}}if(s.isBlobSchema()&&typeof r=="string")return $r(r);let o=s.getMergedTraits().mediaType;if(s.isStringSchema()&&typeof r=="string"&&o)return o==="application/json"||o.endsWith("+json")?Zn.from(r):r;if(s.isTimestampSchema()&&r!=null)switch(jo(s,this.settings)){case 5:return pv(r);case 6:return Ug(r);case 7:return mv(r);default:return console.warn("Missing timestamp format, parsing value with Date constructor:",r),new Date(r)}if(s.isBigIntegerSchema()&&(typeof r=="number"||typeof r=="string"))return BigInt(r);if(s.isBigDecimalSchema()&&r!=null){if(r instanceof qt)return r;let a=r;return a.type==="bigDecimal"&&"string"in a?new qt(a.string,a.type):new qt(String(r),"bigDecimal")}if(s.isNumericSchema()&&typeof r=="string"){switch(r){case"Infinity":return 1/0;case"-Infinity":return-1/0;case"NaN":return NaN}return r}if(s.isDocumentSchema())if(n){let a=Array.isArray(r)?[]:{};for(let c in r){let l=r[c];l instanceof qt?a[c]=l:a[c]=this._read(s,l)}return a}else return structuredClone(r);return r}}});var gve,jQ,yve=I(()=>{st();gve="\u039D",jQ=class{static{i(this,"JsonReplacer")}values=new Map;counter=0;stage=0;createReplacer(){if(this.stage===1)throw new Error("@aws-sdk/core/protocols - JsonReplacer already created.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");return this.stage=1,(e,r)=>{if(r instanceof qt){let n=`${gve+"nv"+this.counter++}_`+r.string;return this.values.set(`"${n}"`,r.string),n}if(typeof r=="bigint"){let n=r.toString(),s=`${gve+"b"+this.counter++}_`+n;return this.values.set(`"${s}"`,n),s}return r}}replaceInJson(e){if(this.stage===0)throw new Error("@aws-sdk/core/protocols - JsonReplacer not created yet.");if(this.stage===2)throw new Error("@aws-sdk/core/protocols - JsonReplacer exhausted.");if(this.stage=2,this.counter===0)return e;for(let[r,n]of this.values)e=e.replace(r,n);return e}}});var Aw,aJ=I(()=>{Qe();Ct();st();yp();yve();Aw=class extends os{static{i(this,"JsonShapeSerializer")}settings;buffer;useReplacer=!1;rootSchema;constructor(e){super(),this.settings=e}write(e,r){this.rootSchema=Ee.of(e),this.buffer=this._write(this.rootSchema,r)}flush(){let{rootSchema:e,useReplacer:r}=this;if(this.rootSchema=void 0,this.useReplacer=!1,e?.isStructSchema()||e?.isDocumentSchema()){if(!r)return JSON.stringify(this.buffer);let n=new jQ;return n.replaceInJson(JSON.stringify(this.buffer,n.createReplacer(),0))}return this.buffer}writeDiscriminatedDocument(e,r){this.write(e,r),typeof this.buffer=="object"&&(this.buffer.__type=Ee.of(e).getName(!0))}_write(e,r,n){let s=r!==null&&typeof r=="object",o=Ee.of(e);if(s){if(o.isStructSchema()){let a=r,c={},{jsonName:l}=this.settings,u;l&&(u={});let d=0;for(let[p,m]of o.structIterator()){let f=this._write(m,a[p],o);if(f!==void 0){let g=p;l&&(g=m.getMergedTraits().jsonName??p,u[p]=g),c[g]=f,d++}}if(o.isUnionSchema()&&d===0){let{$unknown:p}=a;if(Array.isArray(p)){let[m,f]=p;c[m]=this._write(15,f)}}else if(typeof a.__type=="string")for(let p in a){let m=a[p],f=l?u[p]??p:p;f in c||(c[f]=this._write(15,m))}return c}if(Array.isArray(r)&&o.isListSchema()){let a=o.getValueSchema(),c=[],l=!!o.getMergedTraits().sparse;for(let u of r)(l||u!=null)&&c.push(this._write(a,u));return c}if(o.isMapSchema()){let a=o.getValueSchema(),c={},l=!!o.getMergedTraits().sparse;for(let u in r){let d=r[u];(l||d!=null)&&(c[u]=this._write(a,d))}return c}if(r instanceof Uint8Array&&(o.isBlobSchema()||o.isDocumentSchema()))return o===this.rootSchema?r:(this.serdeContext?.base64Encoder??Ar)(r);if(r instanceof Date&&(o.isTimestampSchema()||o.isDocumentSchema()))switch(jo(o,this.settings)){case 5:return r.toISOString().replace(".000Z","Z");case 6:return wa(r);case 7:return r.getTime()/1e3;default:return console.warn("Missing timestamp format, using epoch seconds",r),r.getTime()/1e3}r instanceof qt&&(this.useReplacer=!0)}if(!(r===null&&n?.isStructSchema())){if(o.isStringSchema()){if(typeof r>"u"&&o.isIdempotencyToken())return Ba();let a=o.getMergedTraits().mediaType;return r!=null&&a&&(a==="application/json"||a.endsWith("+json"))?Zn.from(r):r}if(typeof r=="number"&&o.isNumericSchema())return Math.abs(r)===1/0||isNaN(r)?String(r):r;if(typeof r=="string"&&o.isBlobSchema())return o===this.rootSchema?r:(this.serdeContext?.base64Encoder??Ar)(r);if(typeof r=="bigint"&&(this.useReplacer=!0),o.isDocumentSchema())if(s){let a=Array.isArray(r)?[]:{};for(let c in r){let l=r[c];l instanceof qt?(this.useReplacer=!0,a[c]=l):a[c]=this._write(o,l)}return a}else return structuredClone(r);return r}}}});var Rf,JQ=I(()=>{yp();iJ();aJ();Rf=class extends os{static{i(this,"JsonCodec")}settings;constructor(e){super(),this.settings=e}createSerializer(){let e=new Aw(this.settings);return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new fw(this.settings);return e.setSerdeContext(this.serdeContext),e}}});var Nf,KQ=I(()=>{Qe();Ct();Iy();JQ();mw();Nf=class extends Su{static{i(this,"AwsJsonRpcProtocol")}serializer;deserializer;serviceTarget;codec;mixin;awsQueryCompatible;constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r}),this.serviceTarget=n,this.codec=o??new Rf({timestampFormat:{useTrait:!0,default:7},jsonName:!1}),this.serializer=this.codec.createSerializer(),this.deserializer=this.codec.createDeserializer(),this.awsQueryCompatible=!!s,this.mixin=new Gi(this.awsQueryCompatible)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);return s.path.endsWith("/")||(s.path+="/"),s.headers["content-type"]=`application/x-amz-json-${this.getJsonRpcVersion()}`,s.headers["x-amz-target"]=`${this.serviceTarget}.${e.name}`,this.awsQueryCompatible&&(s.headers["x-amzn-query-mode"]="true"),(Ia(e.input)==="unit"||!s.body)&&(s.body="{}"),s}getPayloadCodec(){return this.codec}async handleError(e,r,n,s,o){let{awsQueryCompatible:a}=this;a&&this.mixin.setQueryCompatError(s,n);let c=oJ(n,s,a)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,c,this.options.defaultNamespace);let{errorSchema:l,errorMetadata:u}=await this.mixin.getErrorSchemaOrThrowBaseException(c,this.options.defaultNamespace,n,s,o,a?this.mixin.findQueryCompatibleError:void 0),d=Ee.of(l),p=s.message??s.Message??"UnknownError",m=this.compositeErrorRegistry.getErrorCtor(l)??Error,f=new m({}),g={},E=this.codec.createDeserializer();for(let[x,w]of d.structIterator())s[x]!=null&&(g[x]=E.readObject(w,s[x]));throw a&&this.mixin.queryCompatOutput(s,g),this.mixin.decorateServiceException(Object.assign(f,u,{$fault:d.getMergedTraits().error,message:p},g),s)}}});var cJ,Eve=I(()=>{KQ();cJ=class extends Nf{static{i(this,"AwsJson1_0Protocol")}constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o})}getShapeId(){return"aws.protocols#awsJson1_0"}getJsonRpcVersion(){return"1.0"}getDefaultContentType(){return"application/x-amz-json-1.0"}}});var lJ,Cve=I(()=>{KQ();lJ=class extends Nf{static{i(this,"AwsJson1_1Protocol")}constructor({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o}){super({defaultNamespace:e,errorTypeRegistries:r,serviceTarget:n,awsQueryCompatible:s,jsonCodec:o})}getShapeId(){return"aws.protocols#awsJson1_1"}getJsonRpcVersion(){return"1.1"}getDefaultContentType(){return"application/x-amz-json-1.1"}}});var Ou,Ive=I(()=>{Qe();Ct();Iy();JQ();mw();Ou=class extends Cf{static{i(this,"AwsRestJsonProtocol")}serializer;deserializer;codec;mixin=new Gi;constructor({defaultNamespace:e,errorTypeRegistries:r}){super({defaultNamespace:e,errorTypeRegistries:r});let n={timestampFormat:{useTrait:!0,default:7},httpBindings:!0,jsonName:!0};this.codec=new Rf(n),this.serializer=new wf(this.codec.createSerializer(),n),this.deserializer=new xf(this.codec.createDeserializer(),n)}getShapeId(){return"aws.protocols#restJson1"}getPayloadCodec(){return this.codec}setSerdeContext(e){this.codec.setSerdeContext(e),super.setSerdeContext(e)}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n),o=Ee.of(e.input);if(!s.headers["content-type"]){let a=this.mixin.resolveRestContentType(this.getDefaultContentType(),o);a&&(s.headers["content-type"]=a)}return s.body==null&&s.headers["content-type"]===this.getDefaultContentType()&&(s.body="{}"),s}async deserializeResponse(e,r,n){let s=await super.deserializeResponse(e,r,n),o=Ee.of(e.output);for(let[a,c]of o.structIterator())c.getMemberTraits().httpPayload&&!(a in s)&&(s[a]=null);return s}async handleError(e,r,n,s,o){let a=sJ(n,s)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,a,this.options.defaultNamespace);let{errorSchema:c,errorMetadata:l}=await this.mixin.getErrorSchemaOrThrowBaseException(a,this.options.defaultNamespace,n,s,o),u=Ee.of(c),d=s.message??s.Message??"UnknownError",p=this.compositeErrorRegistry.getErrorCtor(c)??Error,m=new p({});await this.deserializeHttpMessage(c,r,n,s);let f={},g=this.codec.createDeserializer();for(let[E,x]of u.structIterator()){let w=x.getMergedTraits().jsonName??E;f[E]=g.readObject(x,s[w])}throw this.mixin.decorateServiceException(Object.assign(m,l,{$fault:u.getMergedTraits().error,message:d},f),s)}getDefaultContentType(){return"application/json"}}});var Bxt,xve=I(()=>{st();Bxt=i(t=>{if(t!=null)return typeof t=="object"&&"__type"in t&&delete t.__type,cv(t)},"awsExpectUnion")});var bve=b((FFr,wve)=>{(()=>{"use strict";var t={d:i((C,h)=>{for(var y in h)t.o(h,y)&&!t.o(C,y)&&Object.defineProperty(C,y,{enumerable:!0,get:h[y]})},"d"),o:i((C,h)=>Object.prototype.hasOwnProperty.call(C,h),"o"),r:i(C=>{typeof Symbol<"u"&&Symbol.toStringTag&&Object.defineProperty(C,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(C,"__esModule",{value:!0})},"r")},e={};t.r(e),t.d(e,{XMLBuilder:i(()=>YMe,"XMLBuilder"),XMLParser:i(()=>MMe,"XMLParser"),XMLValidator:i(()=>WMe,"XMLValidator")});let r=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",n=new RegExp("^["+r+"]["+r+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$");function s(C,h){let y=[],N=h.exec(C);for(;N;){let B=[];B.startIndex=h.lastIndex-N[0].length;let v=N.length;for(let L=0;L"&&C[v]!==" "&&C[v]!==" "&&C[v]!==` +`&&C[v]!=="\r";v++)O+=C[v];if(O=O.trim(),O[O.length-1]==="/"&&(O=O.substring(0,O.length-1),v--),!q(O)){let J;return J=O.trim().length===0?"Invalid space after '<'.":"Tag '"+O+"' is an invalid name.",P("InvalidTag",J,M(C,v))}let k=E(C,v);if(k===!1)return P("InvalidAttr","Attributes for '"+O+"' have open quote.",M(C,v));let U=k.value;if(v=k.index,U[U.length-1]==="/"){let J=v-U.length;U=U.substring(0,U.length-1);let Ae=w(U,h);if(Ae!==!0)return P(Ae.err.code,Ae.err.msg,M(C,J+Ae.err.line));N=!0}else if(_){if(!k.tagClosed)return P("InvalidTag","Closing tag '"+O+"' doesn't have proper closing.",M(C,v));if(U.trim().length>0)return P("InvalidTag","Closing tag '"+O+"' can't have attributes or invalid starting.",M(C,L));if(y.length===0)return P("InvalidTag","Closing tag '"+O+"' has not been opened.",M(C,L));{let J=y.pop();if(O!==J.tagName){let Ae=M(C,J.tagStartPos);return P("InvalidTag","Expected closing tag '"+J.tagName+"' (opened in line "+Ae.line+", col "+Ae.col+") instead of closing tag '"+O+"'.",M(C,L))}y.length==0&&(B=!0)}}else{let J=w(U,h);if(J!==!0)return P(J.err.code,J.err.msg,M(C,v-U.length+J.err.line));if(B===!0)return P("InvalidXml","Multiple possible root nodes found.",M(C,v));h.unpairedTags.indexOf(O)!==-1||y.push({tagName:O,tagStartPos:L}),N=!0}for(v++;v0)||P("InvalidXml","Invalid '"+JSON.stringify(y.map(v=>v.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1}):P("InvalidXml","Start tag expected.",1)}i(u,"l");function d(C){return C===" "||C===" "||C===` +`||C==="\r"}i(d,"u");function p(C,h){let y=h;for(;h5&&N==="xml")return P("InvalidXml","XML declaration allowed only at the start of the document.",M(C,h));if(C[h]=="?"&&C[h+1]==">"){h++;break}continue}return h}i(p,"p");function m(C,h){if(C.length>h+5&&C[h+1]==="-"&&C[h+2]==="-"){for(h+=3;h"){h+=2;break}}else if(C.length>h+8&&C[h+1]==="D"&&C[h+2]==="O"&&C[h+3]==="C"&&C[h+4]==="T"&&C[h+5]==="Y"&&C[h+6]==="P"&&C[h+7]==="E"){let y=1;for(h+=8;h"&&(y--,y===0))break}else if(C.length>h+9&&C[h+1]==="["&&C[h+2]==="C"&&C[h+3]==="D"&&C[h+4]==="A"&&C[h+5]==="T"&&C[h+6]==="A"&&C[h+7]==="["){for(h+=8;h"){h+=2;break}}return h}i(m,"c");let f='"',g="'";function E(C,h){let y="",N="",B=!1;for(;h"&&N===""){B=!0;break}y+=C[h]}return N===""&&{value:y,index:h,tagClosed:B}}i(E,"g");let x=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function w(C,h){let y=s(C,x),N={};for(let B=0;Ba.includes(C)?"__"+C:C,"S"),ke={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:i(function(C,h){return h},"tagValueProcessor"),attributeValueProcessor:i(function(C,h){return h},"attributeValueProcessor"),stopNodes:[],alwaysCreateTextNode:!1,isArray:i(()=>!1,"isArray"),commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:i(function(C,h,y){return C},"updateTag"),captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:pe};function Re(C,h){if(typeof C!="string")return;let y=C.toLowerCase();if(a.some(N=>y===N.toLowerCase()))throw new Error(`[SECURITY] Invalid ${h}: "${C}" is a reserved JavaScript keyword that could cause prototype pollution`);if(c.some(N=>y===N.toLowerCase()))throw new Error(`[SECURITY] Invalid ${h}: "${C}" is a reserved JavaScript keyword that could cause prototype pollution`)}i(Re,"A");function se(C,h){return typeof C=="boolean"?{enabled:C,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof C=="object"&&C!==null?{enabled:C.enabled!==!1,maxEntitySize:Math.max(1,C.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,C.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,C.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,C.maxExpandedLength??1e5),maxEntityCount:Math.max(1,C.maxEntityCount??1e3),allowedTags:C.allowedTags??null,tagFilter:C.tagFilter??null,appliesTo:C.appliesTo??"all"}:se(!0)}i(se,"T");let ye=i(function(C){let h=Object.assign({},ke,C),y=[{value:h.attributeNamePrefix,name:"attributeNamePrefix"},{value:h.attributesGroupName,name:"attributesGroupName"},{value:h.textNodeName,name:"textNodeName"},{value:h.cdataPropName,name:"cdataPropName"},{value:h.commentPropName,name:"commentPropName"}];for(let{value:N,name:B}of y)N&&Re(N,B);return h.onDangerousProperty===null&&(h.onDangerousProperty=pe),h.processEntities=se(h.processEntities,h.htmlEntities),h.unpairedTagsSet=new Set(h.unpairedTags),h.stopNodes&&Array.isArray(h.stopNodes)&&(h.stopNodes=h.stopNodes.map(N=>typeof N=="string"&&N.startsWith("*.")?".."+N.substring(2):N)),h},"C"),H;H=typeof Symbol!="function"?"@@xmlMetadata":Symbol("XML Node Metadata");class oe{static{i(this,"O")}constructor(h){this.tagname=h,this.child=[],this[":@"]=Object.create(null)}add(h,y){h==="__proto__"&&(h="#__proto__"),this.child.push({[h]:y})}addChild(h,y){h.tagname==="__proto__"&&(h.tagname="#__proto__"),h[":@"]&&Object.keys(h[":@"]).length>0?this.child.push({[h.tagname]:h.child,":@":h[":@"]}):this.child.push({[h.tagname]:h.child}),y!==void 0&&(this.child[this.child.length-1][H]={startIndex:y})}static getMetaDataSymbol(){return H}}class It{static{i(this,"$")}constructor(h){this.suppressValidationErr=!h,this.options=h}readDocType(h,y){let N=Object.create(null),B=0;if(h[y+3]!=="O"||h[y+4]!=="C"||h[y+5]!=="T"||h[y+6]!=="Y"||h[y+7]!=="P"||h[y+8]!=="E")throw new Error("Invalid Tag instead of DOCTYPE");{y+=9;let v=1,L=!1,_=!1,O="";for(;y"){if(_?h[y-1]==="-"&&h[y-2]==="-"&&(_=!1,v--):v--,v===0)break}else h[y]==="["?L=!0:O+=h[y];else{if(L&&_t(h,"!ENTITY",y)){let k,U;if(y+=7,[k,U,y]=this.readEntityExp(h,y+1,this.suppressValidationErr),U.indexOf("&")===-1){if(this.options.enabled!==!1&&this.options.maxEntityCount!=null&&B>=this.options.maxEntityCount)throw new Error(`Entity count (${B+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);N[k]=U,B++}}else if(L&&_t(h,"!ELEMENT",y)){y+=8;let{index:k}=this.readElementExp(h,y+1);y=k}else if(L&&_t(h,"!ATTLIST",y))y+=8;else if(L&&_t(h,"!NOTATION",y)){y+=9;let{index:k}=this.readNotationExp(h,y+1,this.suppressValidationErr);y=k}else{if(!_t(h,"!--",y))throw new Error("Invalid DOCTYPE");_=!0}v++,O=""}if(v!==0)throw new Error("Unclosed DOCTYPE")}return{entities:N,i:y}}readEntityExp(h,y){let N=y=at(h,y);for(;ythis.options.maxEntitySize)throw new Error(`Entity "${B}" size (${v.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return[B,v,--y]}readNotationExp(h,y){let N=y=at(h,y);for(;y{for(;h0?h[h.length-1].tag:void 0}getCurrentNamespace(){let h=this._matcher.path;return h.length>0?h[h.length-1].namespace:void 0}getAttrValue(h){let y=this._matcher.path;if(y.length!==0)return y[y.length-1].values?.[h]}hasAttr(h){let y=this._matcher.path;if(y.length===0)return!1;let N=y[y.length-1];return N.values!==void 0&&h in N.values}getPosition(){let h=this._matcher.path;return h.length===0?-1:h[h.length-1].position??0}getCounter(){let h=this._matcher.path;return h.length===0?-1:h[h.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(h,y=!0){return this._matcher.toString(h,y)}toArray(){return this._matcher.path.map(h=>h.tag)}matches(h){return this._matcher.matches(h)}matchesAny(h){return h.matchesAny(this._matcher)}}class jL{static{i(this,"R")}constructor(h={}){this.separator=h.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new pMe(this)}push(h,y=null,N=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let B=this.path.length;this.siblingStacks[B]||(this.siblingStacks[B]=new Map);let v=this.siblingStacks[B],L=N?`${N}:${h}`:h,_=v.get(L)||0,O=0;for(let U of v.values())O+=U;v.set(L,_+1);let k={tag:h,position:O,counter:_};N!=null&&(k.namespace=N),y!=null&&(k.values=y),this.path.push(k)}pop(){if(this.path.length===0)return;this._pathStringCache=null;let h=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),h}updateCurrent(h){if(this.path.length>0){let y=this.path[this.path.length-1];h!=null&&(y.values=h)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(h){if(this.path.length!==0)return this.path[this.path.length-1].values?.[h]}hasAttr(h){if(this.path.length===0)return!1;let y=this.path[this.path.length-1];return y.values!==void 0&&h in y.values}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(h,y=!0){let N=h||this.separator;if(N===this.separator&&y===!0){if(this._pathStringCache!==null)return this._pathStringCache;let B=this.path.map(v=>v.namespace?`${v.namespace}:${v.tag}`:v.tag).join(N);return this._pathStringCache=B,B}return this.path.map(B=>y&&B.namespace?`${B.namespace}:${B.tag}`:B.tag).join(N)}toArray(){return this.path.map(h=>h.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(h){let y=h.segments;return y.length!==0&&(h.hasDeepWildcard()?this._matchWithDeepWildcard(y):this._matchSimple(y))}_matchSimple(h){if(this.path.length!==h.length)return!1;for(let y=0;y=0&&y>=0;){let B=h[N];if(B.type==="deep-wildcard"){if(N--,N<0)return!0;let v=h[N],L=!1;for(let _=y;_>=0;_--)if(this._matchSegment(v,this.path[_],_===this.path.length-1)){y=_-1,N--,L=!0;break}if(!L)return!1}else{if(!this._matchSegment(B,this.path[y],y===this.path.length-1))return!1;y--,N--}}return N<0}_matchSegment(h,y,N){if(h.tag!=="*"&&h.tag!==y.tag||h.namespace!==void 0&&h.namespace!=="*"&&h.namespace!==y.namespace||h.attrName!==void 0&&(!N||!y.values||!(h.attrName in y.values)||h.attrValue!==void 0&&String(y.values[h.attrName])!==String(h.attrValue)))return!1;if(h.position!==void 0){if(!N)return!1;let B=y.counter??0;if(h.position==="first"&&B!==0||h.position==="odd"&&B%2!=1||h.position==="even"&&B%2!=0||h.position==="nth"&&B!==h.positionValue)return!1}return!0}matchesAny(h){return h.matchesAny(this)}snapshot(){return{path:this.path.map(h=>({...h})),siblingStacks:this.siblingStacks.map(h=>new Map(h))}}restore(h){this._pathStringCache=null,this.path=h.path.map(y=>({...y})),this.siblingStacks=h.siblingStacks.map(y=>new Map(y))}readOnly(){return this._view}}class eA{static{i(this,"G")}constructor(h,y={},N){this.pattern=h,this.separator=y.separator||".",this.segments=this._parse(h),this.data=N,this._hasDeepWildcard=this.segments.some(B=>B.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(B=>B.attrName!==void 0),this._hasPositionSelector=this.segments.some(B=>B.position!==void 0)}_parse(h){let y=[],N=0,B="";for(;N",lt:"<",quot:'"'},AMe={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"},hMe=new Set("!?\\\\/[]$%{}^&*()<>|+");function H9(C){if(C[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${C}"`);for(let h of C)if(hMe.has(h))throw new Error(`[EntityReplacer] Invalid character '${h}' in entity name: "${C}"`);return C}i(H9,"z");function JL(...C){let h=Object.create(null);for(let y of C)if(y)for(let N of Object.keys(y)){let B=y[N];if(typeof B=="string")h[N]=B;else if(B&&typeof B=="object"&&B.val!==void 0){let v=B.val;typeof v=="string"&&(h[N]=v)}}return h}i(JL,"q");let Dp="external",R0="base",KL="all",ho=Object.freeze({allow:0,leave:1,remove:2,throw:3}),gMe=new Set([9,10,13]);class yMe{static{i(this,"tt")}constructor(h={}){var y;this._limit=h.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof h.postCheck=="function"?h.postCheck:B=>B,this._limitTiers=(y=this._limit.applyLimitsTo??Dp)&&y!==Dp?y===KL?new Set([KL]):y===R0?new Set([R0]):Array.isArray(y)?new Set(y):new Set([Dp]):new Set([Dp]),this._numericAllowed=h.numericAllowed??!0,this._baseMap=JL(G9,h.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(h.remove&&Array.isArray(h.remove)?h.remove:[]),this._leaveSet=new Set(h.leave&&Array.isArray(h.leave)?h.leave:[]);let N=(function(B){if(!B)return{xmlVersion:1,onLevel:ho.allow,nullLevel:ho.remove};let v=B.xmlVersion===1.1?1.1:1,L=ho[B.onNCR]??ho.allow,_=ho[B.nullNCR]??ho.remove;return{xmlVersion:v,onLevel:L,nullLevel:Math.max(_,ho.remove)}})(h.ncr);this._ncrXmlVersion=N.xmlVersion,this._ncrOnLevel=N.onLevel,this._ncrNullLevel=N.nullLevel}setExternalEntities(h){if(h)for(let y of Object.keys(h))H9(y);this._externalMap=JL(h)}addExternalEntity(h,y){H9(h),typeof y=="string"&&y.indexOf("&")===-1&&(this._externalMap[h]=y)}addInputEntities(h){this._totalExpansions=0,this._expandedLength=0,this._inputMap=JL(h)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(h){this._ncrXmlVersion=h===1.1?1.1:1}decode(h){if(typeof h!="string"||h.length===0)return h;let y=h,N=[],B=h.length,v=0,L=0,_=this._maxTotalExpansions>0,O=this._maxExpandedLength>0,k=_||O;for(;L=B||h.charCodeAt(J)!==59){L++;continue}let Ae=h.slice(L+1,J);if(Ae.length===0){L++;continue}let we,ve;if(this._removeSet.has(Ae))we="",ve===void 0&&(ve=Dp);else{if(this._leaveSet.has(Ae)){L++;continue}if(Ae.charCodeAt(0)===35){let lt=this._resolveNCR(Ae);if(lt===void 0){L++;continue}we=lt,ve=R0}else{let lt=this._resolveName(Ae);we=lt?.value,ve=lt?.tier}}if(we!==void 0){if(L>v&&N.push(h.slice(v,L)),N.push(we),v=J+1,L=v,k&&this._tierCounts(ve)){if(_&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(O){let lt=we.length-(Ae.length+2);if(lt>0&&(this._expandedLength+=lt,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}else L++}v=55296&&h<=57343||this._ncrXmlVersion===1&&h>=1&&h<=31&&!gMe.has(h)?ho.remove:-1}_applyNCRAction(h,y,N){switch(h){case ho.allow:return String.fromCodePoint(N);case ho.remove:return"";case ho.leave:return;case ho.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${y}; (U+${N.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(N)}}_resolveNCR(h){let y=h.charCodeAt(1),N;if(N=y===120||y===88?parseInt(h.slice(2),16):parseInt(h.slice(1),10),Number.isNaN(N)||N<0||N>1114111)return;let B=this._classifyNCR(N);if(!this._numericAllowed&&B0){let y=C.substring(0,h);if(y!=="xmlns")return y}}i(CMe,"nt");class IMe{static{i(this,"it")}constructor(h,y){var N;this.options=h,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=BMe,this.parseTextData=xMe,this.resolveNameSpace=wMe,this.buildAttributesMap=SMe,this.isItStopNode=PMe,this.replaceEntitiesValue=NMe,this.readStopNodeData=_Me,this.saveTextToParentTag=TMe,this.addChild=RMe,this.ignoreAttributesFn=typeof(N=this.options.ignoreAttributes)=="function"?N:Array.isArray(N)?L=>{for(let _ of N)if(typeof _=="string"&&L===_||_ instanceof RegExp&&_.test(L))return!0}:()=>!1,this.entityExpansionCount=0,this.currentExpandedLength=0;let B={...G9};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?B=this.options.htmlEntities:this.options.htmlEntities===!0&&(B={...AMe,...fMe}),this.entityDecoder=new yMe({namedEntities:{...B,...y},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo}})),this.matcher=new jL,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new mMe;let v=this.options.stopNodes;if(v&&v.length>0){for(let L=0;L0)){L||(C=this.replaceEntitiesValue(C,h,y));let O=_.jPath?y.toString():y,k=_.tagValueProcessor(h,C,O,B,v);return k==null?C:typeof k!=typeof C||k!==C?k:_.trimValues||C.trim()===C?z9(C,_.parseTagValue,_.numberParseOptions):C}}i(xMe,"st");function wMe(C){if(this.options.removeNSPrefix){let h=C.split(":"),y=C.charAt(0)==="/"?"/":"";if(h[0]==="xmlns")return"";h.length===2&&(C=y+h[1])}return C}i(wMe,"rt");let bMe=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function SMe(C,h,y,N=!1){let B=this.options;if(N===!0||B.ignoreAttributes!==!0&&typeof C=="string"){let v=s(C,bMe),L=v.length,_={},O=new Array(L),k=!1,U={};for(let we=0;we",_,"Closing Tag is not closed."),U=C.substring(_+2,k).trim();if(B.removeNSPrefix){let Ae=U.indexOf(":");Ae!==-1&&(U=U.substr(Ae+1))}U=ZL(B.transformTagName,U,"",B).tagName,y&&(N=this.saveTextToParentTag(N,y,this.readonlyMatcher));let J=this.matcher.getCurrentTag();if(U&&B.unpairedTagsSet.has(U))throw new Error(`Unpaired tag can not be used as closing tag: `);J&&B.unpairedTagsSet.has(J)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,y=this.tagsNodeStack.pop(),N="",_=k}else if(O===63){let k=XL(C,_,!1,"?>");if(!k)throw new Error("Pi Tag is not closed.");N=this.saveTextToParentTag(N,y,this.readonlyMatcher);let U=this.buildAttributesMap(k.tagExp,this.matcher,k.tagName,!0);if(U){let J=U[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(J)||1)}if(!(B.ignoreDeclaration&&k.tagName==="?xml"||B.ignorePiTags)){let J=new oe(k.tagName);J.add(B.textNodeName,""),k.tagName!==k.tagExp&&k.attrExpPresent&&B.ignoreAttributes!==!0&&(J[":@"]=U),this.addChild(y,J,this.readonlyMatcher,_)}_=k.closeIndex+1}else if(O===33&&C.charCodeAt(_+2)===45&&C.charCodeAt(_+3)===45){let k=tA(C,"-->",_+4,"Comment is not closed.");if(B.commentPropName){let U=C.substring(_+4,k-2);N=this.saveTextToParentTag(N,y,this.readonlyMatcher),y.add(B.commentPropName,[{[B.textNodeName]:U}])}_=k}else if(O===33&&C.charCodeAt(_+2)===68){let k=v.readDocType(C,_);this.entityDecoder.addInputEntities(k.entities),_=k.i}else if(O===33&&C.charCodeAt(_+2)===91){let k=tA(C,"]]>",_,"CDATA is not closed.")-2,U=C.substring(_+9,k);N=this.saveTextToParentTag(N,y,this.readonlyMatcher);let J=this.parseTextData(U,y.tagname,this.readonlyMatcher,!0,!1,!0,!0);J==null&&(J=""),B.cdataPropName?y.add(B.cdataPropName,[{[B.textNodeName]:U}]):y.add(B.textNodeName,J),_=k+2}else{let k=XL(C,_,B.removeNSPrefix);if(!k){let Pr=C.substring(Math.max(0,_-50),Math.min(L,_+50));throw new Error(`readTagExp returned undefined at position ${_}. Context: "${Pr}"`)}let U=k.tagName,J=k.rawTagName,Ae=k.tagExp,we=k.attrExpPresent,ve=k.closeIndex;if({tagName:U,tagExp:Ae}=ZL(B.transformTagName,U,Ae,B),B.strictReservedNames&&(U===B.commentPropName||U===B.cdataPropName||U===B.textNodeName||U===B.attributesGroupName))throw new Error(`Invalid tag name: ${U}`);y&&N&&y.tagname!=="!xml"&&(N=this.saveTextToParentTag(N,y,this.readonlyMatcher,!1));let lt=y;lt&&B.unpairedTagsSet.has(lt.tagname)&&(y=this.tagsNodeStack.pop(),this.matcher.pop());let zr=!1;Ae.length>0&&Ae.lastIndexOf("/")===Ae.length-1&&(zr=!0,U[U.length-1]==="/"?(U=U.substr(0,U.length-1),Ae=U):Ae=Ae.substr(0,Ae.length-1),we=U!==Ae);let ls,Bn=null,nA={};ls=CMe(J),U!==h.tagname&&this.matcher.push(U,{},ls),U!==Ae&&we&&(Bn=this.buildAttributesMap(Ae,this.matcher,U),Bn&&(nA=EMe(Bn,B))),U!==h.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let us=_;if(this.isCurrentNodeStopNode){let Pr="";if(zr)_=k.closeIndex;else if(B.unpairedTagsSet.has(U))_=k.closeIndex;else{let nO=this.readStopNodeData(C,J,ve+1);if(!nO)throw new Error(`Unexpected end of ${J}`);_=nO.i,Pr=nO.tagContent}let rO=new oe(U);Bn&&(rO[":@"]=Bn),rO.add(B.textNodeName,Pr),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(y,rO,this.readonlyMatcher,us)}else{if(zr){({tagName:U,tagExp:Ae}=ZL(B.transformTagName,U,Ae,B));let Pr=new oe(U);Bn&&(Pr[":@"]=Bn),this.addChild(y,Pr,this.readonlyMatcher,us),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else{if(B.unpairedTagsSet.has(U)){let Pr=new oe(U);Bn&&(Pr[":@"]=Bn),this.addChild(y,Pr,this.readonlyMatcher,us),this.matcher.pop(),this.isCurrentNodeStopNode=!1,_=k.closeIndex;continue}{let Pr=new oe(U);if(this.tagsNodeStack.length>B.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(y),Bn&&(Pr[":@"]=Bn),this.addChild(y,Pr,this.readonlyMatcher,us),y=Pr}}N="",_=ve}}}else N+=C[_];return h.child},"ht");function RMe(C,h,y,N){this.options.captureMetaData||(N=void 0);let B=this.options.jPath?y.toString():y,v=this.options.updateTag(h.tagname,B,h[":@"]);v===!1||(typeof v=="string"&&(h.tagname=v),C.addChild(h,N))}i(RMe,"lt");function NMe(C,h,y){let N=this.options.processEntities;if(!N||!N.enabled)return C;if(N.allowedTags){let B=this.options.jPath?y.toString():y;if(!(Array.isArray(N.allowedTags)?N.allowedTags.includes(h):N.allowedTags(h,B)))return C}if(N.tagFilter){let B=this.options.jPath?y.toString():y;if(!N.tagFilter(h,B))return C}return this.entityDecoder.decode(C)}i(NMe,"ut");function TMe(C,h,y,N){return C&&(N===void 0&&(N=h.child.length===0),(C=this.parseTextData(C,h.tagname,y,!1,!!h[":@"]&&Object.keys(h[":@"]).length!==0,N))!==void 0&&C!==""&&h.add(this.options.textNodeName,C),C=""),C}i(TMe,"pt");function PMe(){return this.stopNodeExpressionsSet.size!==0&&this.matcher.matchesAny(this.stopNodeExpressionsSet)}i(PMe,"ct");function tA(C,h,y,N){let B=C.indexOf(h,y);if(B===-1)throw new Error(N);return B+h.length-1}i(tA,"dt");function vMe(C,h,y,N){let B=C.indexOf(h,y);if(B===-1)throw new Error(N);return B}i(vMe,"ft");function XL(C,h,y,N=">"){let B=(function(J,Ae,we=">"){let ve=0,lt=J.length,zr=we.charCodeAt(0),ls=we.length>1?we.charCodeAt(1):-1,Bn="",nA=Ae;for(let us=Ae;us",y,`${h} is not closed`);if(C.substring(y+2,_).trim()===h&&(B--,B===0))return{tagContent:C.substring(N,y),i:_};y=_}else if(L===63)y=tA(C,"?>",y+1,"StopNode is not closed.");else if(L===33&&C.charCodeAt(y+2)===45&&C.charCodeAt(y+3)===45)y=tA(C,"-->",y+3,"StopNode is not closed.");else if(L===33&&C.charCodeAt(y+2)===91)y=tA(C,"]]>",y,"StopNode is not closed.")-2;else{let _=XL(C,y,!1);_&&((_&&_.tagName)===h&&_.tagExp[_.tagExp.length-1]!=="/"&&B++,y=_.closeIndex)}}}i(_Me,"mt");function z9(C,h,y){if(h&&typeof C=="string"){let N=C.trim();return N==="true"||N!=="false"&&(function(B,v={}){if(v=Object.assign({},Nl,v),!B||typeof B!="string")return B;let L=B.trim();if(L.length===0||v.skipLike!==void 0&&v.skipLike.test(L))return B;if(L==="0")return 0;if(v.hex&&cs.test(L))return(function(O){if(parseInt)return parseInt(O,16);if(Number.parseInt)return Number.parseInt(O,16);if(window&&window.parseInt)return window.parseInt(O,16);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")})(L);if(isFinite(L)){if(L.includes("e")||L.includes("E"))return(function(O,k,U){if(!U.eNotation)return O;let J=k.match($u);if(J){let Ae=J[1]||"",we=J[3].indexOf("e")===-1?"E":"e",ve=J[2],lt=Ae?O[ve.length+1]===we:O[ve.length]===we;return ve.length>1&<?O:(ve.length!==1||!J[3].startsWith(`.${we}`)&&J[3][0]!==we)&&ve.length>0?U.leadingZeros&&!lt?(k=(J[1]||"")+J[3],Number(k)):O:Number(k)}return O})(B,L,v);{let O=Zo.exec(L);if(O){let k=O[1]||"",U=O[2],J=((_=O[3])&&_.indexOf(".")!==-1&&((_=_.replace(/0+$/,""))==="."?_="0":_[0]==="."?_="0"+_:_[_.length-1]==="."&&(_=_.substring(0,_.length-1))),_),Ae=k?B[U.length+1]===".":B[U.length]===".";if(!v.leadingZeros&&(U.length>1||U.length===1&&!Ae))return B;{let we=Number(L),ve=String(we);if(we===0)return we;if(ve.search(/[eE]/)!==-1)return v.eNotation?we:B;if(L.indexOf(".")!==-1)return ve==="0"||ve===J||ve===`${k}${J}`?we:B;let lt=U?J:L;return U?lt===ve||k+lt===ve?we:B:lt===ve||lt===k+ve?we:B}}return B}}var _;return(function(O,k,U){let J=k===1/0;switch(U.infinity.toLowerCase()){case"null":return null;case"infinity":return k;case"string":return J?"Infinity":"-Infinity";default:return O}})(B,Number(L),v)})(C,y)}return C!==void 0?C:""}i(z9,"xt");function ZL(C,h,y,N){if(C){let B=C(h);y===h&&(y=B),h=B}return{tagName:h=V9(h,N),tagExp:y}}i(ZL,"Nt");function V9(C,h){if(c.includes(C))throw new Error(`[SECURITY] Invalid name: "${C}" is a reserved JavaScript keyword that could cause prototype pollution`);return a.includes(C)?h.onDangerousProperty(C):C}i(V9,"bt");let eO=oe.getMetaDataSymbol();function QMe(C,h){if(!C||typeof C!="object")return{};if(!h)return C;let y={};for(let N in C)N.startsWith(h)?y[N.substring(h.length)]=C[N]:y[N]=C[N];return y}i(QMe,"Et");function DMe(C,h,y,N){return Y9(C,h,y,N)}i(DMe,"wt");function Y9(C,h,y,N){let B,v={};for(let L=0;L0&&(v[h.textNodeName]=B):B!==void 0&&(v[h.textNodeName]=B),v}i(Y9,"vt");function kMe(C){let h=Object.keys(C);for(let y=0;y/g,"]]]]>")}i(j9,"Pt");function rA(C){return String(C).replace(/"/g,""").replace(/'/g,"'")}i(rA,"Ot");function FMe(C,h){let y="";h.format&&h.indentBy.length>0&&(y=` +`);let N=[];if(h.stopNodes&&Array.isArray(h.stopNodes))for(let B=0;Bh.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(C)){if(C!=null){let _=C.toString();return _=tO(_,h),_}return""}for(let _=0;_`,L=!1,N.pop();continue}if(k===h.commentPropName){v+=y+``,L=!0,N.pop();continue}if(k[0]==="?"){let lt=Z9(O[":@"],h,J),zr=k==="?xml"?"":y,ls=O[k][0][h.textNodeName];ls=ls.length!==0?" "+ls:"",v+=zr+`<${k}${ls}${lt}?>`,L=!0,N.pop();continue}let Ae=y;Ae!==""&&(Ae+=h.indentBy);let we=y+`<${k}${Z9(O[":@"],h,J)}`,ve;ve=J?K9(O[k],h):J9(O[k],h,Ae,N,B),h.unpairedTags.indexOf(k)!==-1?h.suppressUnpairedNode?v+=we+">":v+=we+"/>":ve&&ve.length!==0||!h.suppressEmptyNode?ve&&ve.endsWith(">")?v+=we+`>${ve}${y}`:(v+=we+">",ve&&y!==""&&(ve.includes("/>")||ve.includes("`):v+=we+"/>",L=!0,N.pop()}return v}i(J9,"It");function UMe(C,h){if(!C||h.ignoreAttributes)return null;let y={},N=!1;for(let B in C)Object.prototype.hasOwnProperty.call(C,B)&&(y[B.startsWith(h.attributeNamePrefix)?B.substr(h.attributeNamePrefix.length):B]=rA(C[B]),N=!0);return N?y:null}i(UMe,"Dt");function K9(C,h){if(!Array.isArray(C))return C!=null?C.toString():"";let y="";for(let N=0;N${_}`:y+=`<${v}${L}/>`}}}return y}i(K9,"Mt");function qMe(C,h){let y="";if(C&&!h.ignoreAttributes)for(let N in C){if(!Object.prototype.hasOwnProperty.call(C,N))continue;let B=C[N];B===!0&&h.suppressBooleanAttributes?y+=` ${N.substr(h.attributeNamePrefix.length)}`:y+=` ${N.substr(h.attributeNamePrefix.length)}="${rA(B)}"`}return y}i(qMe,"jt");function X9(C){let h=Object.keys(C);for(let y=0;y0&&h.processEntities)for(let y=0;y","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0};function ei(C){if(this.options=Object.assign({},GMe,C),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(y=>typeof y=="string"&&y.startsWith("*.")?".."+y.substring(2):y)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let y=0;y{for(let N of h)if(typeof N=="string"&&y===N||N instanceof RegExp&&N.test(y))return!0}:()=>!1,this.attrPrefixLen=this.options.attributeNamePrefix.length,this.isAttribute=VMe),this.processTextOrObjNode=HMe,this.options.format?(this.indentate=zMe,this.tagEndChar=`> `,this.newLine=` -`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function $Me(E,A,g,R){let S=this.extractAttributes(E);if(R.push(A,S),this.checkStopNode(R)){let k=this.buildRawContent(E),v=this.buildAttributesForStopNode(E);return R.pop(),this.buildObjectNode(k,A,v,g)}let P=this.j2x(E,g+1,R);return R.pop(),E[this.options.textNodeName]!==void 0&&Object.keys(E).length===1?this.buildTextValNode(E[this.options.textNodeName],A,P.attrStr,g,R):this.buildObjectNode(P.val,A,P.attrStr,g)}function GMe(E){return this.options.indentBy.repeat(E)}function HMe(E){return!(!E.startsWith(this.options.attributeNamePrefix)||E===this.options.textNodeName)&&E.substr(this.attrPrefixLen)}Zo.prototype.build=function(E){if(this.options.preserveOrder)return OMe(E,this.options);{Array.isArray(E)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(E={[this.options.arrayNodeName]:E});let A=new WL;return this.j2x(E,0,A).val}},Zo.prototype.j2x=function(E,A,g){let R="",S="";if(this.options.maxNestedTags&&g.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");let P=this.options.jPath?g.toString():g,k=this.checkStopNode(g);for(let v in E)if(Object.prototype.hasOwnProperty.call(E,v))if(E[v]===void 0)this.isAttribute(v)&&(S+="");else if(E[v]===null)this.isAttribute(v)||v===this.options.cdataPropName||v===this.options.commentPropName?S+="":v[0]==="?"?S+=this.indentate(A)+"<"+v+"?"+this.tagEndChar:S+=this.indentate(A)+"<"+v+"/"+this.tagEndChar;else if(E[v]instanceof Date)S+=this.buildTextValNode(E[v],v,"",A,g);else if(typeof E[v]!="object"){let L=this.isAttribute(v);if(L&&!this.ignoreAttributesFn(L,P))R+=this.buildAttrPairStr(L,""+E[v],k);else if(!L)if(v===this.options.textNodeName){let D=this.options.tagValueProcessor(v,""+E[v]);S+=this.replaceEntitiesValue(D)}else{g.push(v);let D=this.checkStopNode(g);if(g.pop(),D){let F=""+E[v];S+=F===""?this.indentate(A)+"<"+v+this.closeTag(v)+this.tagEndChar:this.indentate(A)+"<"+v+">"+F+""+Pe+"${S}`;else if(typeof S=="object"&&S!==null){let P=this.buildRawContent(S),k=this.buildAttributesForStopNode(S);A+=P===""?`<${g}${k}/>`:`<${g}${k}>${P}`}}else if(typeof R=="object"&&R!==null){let S=this.buildRawContent(R),P=this.buildAttributesForStopNode(R);A+=S===""?`<${g}${P}/>`:`<${g}${P}>${S}`}else A+=`<${g}>${R}`}return A},Zo.prototype.buildAttributesForStopNode=function(E){if(!E||typeof E!="object")return"";let A="";if(this.options.attributesGroupName&&E[this.options.attributesGroupName]){let g=E[this.options.attributesGroupName];for(let R in g){if(!Object.prototype.hasOwnProperty.call(g,R))continue;let S=R.startsWith(this.options.attributeNamePrefix)?R.substring(this.options.attributeNamePrefix.length):R,P=g[R];P===!0&&this.options.suppressBooleanAttributes?A+=" "+S:A+=" "+S+'="'+P+'"'}}else for(let g in E){if(!Object.prototype.hasOwnProperty.call(E,g))continue;let R=this.isAttribute(g);if(R){let S=E[g];S===!0&&this.options.suppressBooleanAttributes?A+=" "+R:A+=" "+R+'="'+S+'"'}}return A},Zo.prototype.buildObjectNode=function(E,A,g,R){if(E==="")return A[0]==="?"?this.indentate(R)+"<"+A+g+"?"+this.tagEndChar:this.indentate(R)+"<"+A+g+this.closeTag(A)+this.tagEndChar;{let S="`+this.newLine:this.indentate(R)+"<"+A+g+P+this.tagEndChar+E+this.indentate(R)+S:this.indentate(R)+"<"+A+g+P+">"+E+S}},Zo.prototype.closeTag=function(E){let A="";return this.options.unpairedTags.indexOf(E)!==-1?this.options.suppressUnpairedNode||(A="/"):A=this.options.suppressEmptyNode?"/":`>`+this.newLine}if(this.options.commentPropName!==!1&&A===this.options.commentPropName){let P=Y9(E);return this.indentate(R)+``+this.newLine}if(A[0]==="?")return this.indentate(R)+"<"+A+g+"?"+this.tagEndChar;{let P=this.options.tagValueProcessor(A,E);return P=this.replaceEntitiesValue(P),P===""?this.indentate(R)+"<"+A+g+this.closeTag(A)+this.tagEndChar:this.indentate(R)+"<"+A+g+">"+P+"0&&this.options.processEntities)for(let A=0;A{"use strict";Object.defineProperty(_a,"__esModule",{value:!0});_a.EntityDecoderImpl=_a.CURRENCY=_a.COMMON_HTML=_a.XML=void 0;_a.XML={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};_a.COMMON_HTML={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};_a.CURRENCY={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"};var Bxt=new Set("!?\\/[]$%{}^&*()<>|+");function wve(t){if(t[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${t}"`);for(let e of t)if(Bxt.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${t}"`);return t}function lJ(...t){let e=Object.create(null);for(let r of t)if(r)for(let n of Object.keys(r)){let s=r[n];if(typeof s=="string")e[n]=s;else if(s&&typeof s=="object"&&s.val!==void 0){let o=s.val;typeof o=="string"&&(e[n]=o)}}return e}var Nf="external",KQ="base",uJ="all";function Rxt(t){return!t||t===Nf?new Set([Nf]):t===uJ?new Set([uJ]):t===KQ?new Set([KQ]):Array.isArray(t)?new Set(t):new Set([Nf])}var lo=Object.freeze({allow:0,leave:1,remove:2,throw:3}),Nxt=new Set([9,10,13]);function Txt(t){if(!t)return{xmlVersion:1,onLevel:lo.allow,nullLevel:lo.remove};let e=t.xmlVersion===1.1?1.1:1,r=lo[t.onNCR??"allow"]??lo.allow,n=lo[t.nullNCR??"remove"]??lo.remove,s=Math.max(n,lo.remove);return{xmlVersion:e,onLevel:r,nullLevel:s}}var Pxt=class{_limit;_maxTotalExpansions;_maxExpandedLength;_postCheck;_limitTiers;_numericAllowed;_baseMap;_externalMap;_inputMap;_totalExpansions;_expandedLength;_removeSet;_leaveSet;_ncrXmlVersion;_ncrOnLevel;_ncrNullLevel;constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:n=>n,this._limitTiers=Rxt(this._limit.applyLimitsTo??Nf),this._numericAllowed=e.numericAllowed??!0,this._baseMap=lJ(_a.XML,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let r=Txt(e.ncr);this._ncrXmlVersion=r.xmlVersion,this._ncrOnLevel=r.onLevel,this._ncrNullLevel=r.nullLevel}setExternalEntities(e){if(e)for(let r of Object.keys(e))wve(r);this._externalMap=lJ(e)}addExternalEntity(e,r){wve(e),typeof r=="string"&&r.indexOf("&")===-1&&(this._externalMap[e]=r)}addInputEntities(e){this._totalExpansions=0,this._expandedLength=0,this._inputMap=lJ(e)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e==="1.1"||e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0)return e;let r=e,n=[],s=e.length,o=0,i=0,a=this._maxTotalExpansions>0,c=this._maxExpandedLength>0,l=a||c;for(;i=s||e.charCodeAt(d)!==59){i++;continue}let p=e.slice(i+1,d);if(p.length===0){i++;continue}let m,h;if(this._removeSet.has(p))m="",h===void 0&&(h=Nf);else if(this._leaveSet.has(p)){i++;continue}else if(p.charCodeAt(0)===35){let y=this._resolveNCR(p);if(y===void 0){i++;continue}m=y,h=KQ}else{let y=this._resolveName(p);m=y?.value,h=y?.tier}if(m===void 0){i++;continue}if(i>o&&n.push(e.slice(o,i)),n.push(m),o=d+1,i=o,l&&this._tierCounts(h)){if(a&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(c){let y=m.length-(p.length+2);if(y>0&&(this._expandedLength+=y,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}o=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!Nxt.has(e)?lo.remove:-1}_applyNCRAction(e,r,n){switch(e){case lo.allow:return String.fromCodePoint(n);case lo.remove:return"";case lo.leave:return;case lo.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${r}; (U+${n.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(n)}}_resolveNCR(e){let r=e.charCodeAt(1),n;if(r===120||r===88?n=parseInt(e.slice(2),16):n=parseInt(e.slice(1),10),Number.isNaN(n)||n<0||n>1114111)return;let s=this._classifyNCR(n);if(!this._numericAllowed&&s{"use strict";Object.defineProperty(dJ,"__esModule",{value:!0});dJ.parseXML=Qxt;var vxt=xve(),XQ=bve(),ZQ=new XQ.EntityDecoderImpl({namedEntities:{...XQ.XML,...XQ.COMMON_HTML,...XQ.CURRENCY},numericAllowed:!0,limit:{maxTotalExpansions:1/0},ncr:{xmlVersion:1.1}}),_xt=new vxt.XMLParser({attributeNamePrefix:"",processEntities:{enabled:!0,maxTotalExpansions:1/0},htmlEntities:!0,entityDecoder:{setExternalEntities:t=>{ZQ.setExternalEntities(t)},addInputEntities:t=>{ZQ.addInputEntities(t)},reset:()=>{ZQ.reset()},decode:t=>ZQ.decode(t),setXmlVersion:t=>{}},ignoreAttributes:!1,ignoreDeclaration:!0,parseTagValue:!1,trimValues:!1,tagValueProcessor:(t,e)=>e.trim()===""&&e.includes(` -`)?"":void 0,maxNestedTags:1/0});function Qxt(t){return _xt.parse(t,!0)}});var rD=w(tD=>{"use strict";var Dxt=Sve(),kxt=/[&<>"]/g,Lxt={"&":"&","<":"<",">":">",'"':"""};function Oxt(t){return t.replace(kxt,e=>Lxt[e])}var Mxt=/[&"'<>\r\n\u0085\u2028]/g,Fxt={"&":"&",'"':""","'":"'","<":"<",">":">","\r":" ","\n":" ","\x85":"…","\u2028":"
"};function Uxt(t){return t.replace(Mxt,e=>Fxt[e])}var eD=class{value;constructor(e){this.value=e}toString(){return Uxt(""+this.value)}},pJ=class t{name;children;attributes={};static of(e,r,n){let s=new t(e);return r!==void 0&&s.addChildNode(new eD(r)),n!==void 0&&s.withName(n),s}constructor(e,r=[]){this.name=e,this.children=r}withName(e){return this.name=e,this}addAttribute(e,r){return this.attributes[e]=r,this}addChildNode(e){return this.children.push(e),this}removeAttribute(e){return delete this.attributes[e],this}n(e){return this.name=e,this}c(e){return this.children.push(e),this}a(e,r){return r!=null&&(this.attributes[e]=r),this}cc(e,r,n=r){if(e[r]!=null){let s=t.of(r,e[r]).withName(n);this.c(s)}}l(e,r,n,s){e[r]!=null&&s().map(i=>{i.withName(n),this.c(i)})}lc(e,r,n,s){if(e[r]!=null){let o=s(),i=new t(n);o.map(a=>{i.c(a)}),this.c(i)}}toString(){let e=!!this.children.length,r=`<${this.name}`,n=this.attributes;for(let s of Object.keys(n)){let o=n[s];o!=null&&(r+=` ${s}="${Oxt(""+o)}"`)}return r+=e?`>${this.children.map(s=>s.toString()).join("")}`:"/>"}};tD.parseXML=Dxt.parseXML;tD.XmlNode=pJ;tD.XmlText=eD});var Bve,Tf,nD=C(()=>{Bve=Q(rD());Ee();_e();Et();nt();gp();eJ();Tf=class extends ss{settings;stringDeserializer;constructor(e){super(),this.settings=e,this.stringDeserializer=new Cf(e)}setSerdeContext(e){this.serdeContext=e,this.stringDeserializer.setSerdeContext(e)}read(e,r,n){let s=ye.of(e),o=s.getMemberSchemas();if(s.isStructSchema()&&s.isMemberSchema()&&!!Object.values(o).find(l=>!!l.getMemberTraits().eventPayload)){let l={},u=Object.keys(o)[0];return o[u].isBlobSchema()?l[u]=r:l[u]=this.read(o[u],r),l}let a=(this.serdeContext?.utf8Encoder??Ar)(r),c=this.parseXml(a);return this.readSchema(e,n?c[n]:c)}readSchema(e,r){let n=ye.of(e);if(n.isUnitSchema())return;let s=n.getMergedTraits();if(n.isListSchema()&&!Array.isArray(r))return this.readSchema(n,[r]);if(r==null)return r;if(typeof r=="object"){let o=!!s.xmlFlattened;if(n.isListSchema()){let a=n.getValueSchema(),c=[],l=a.getMergedTraits().xmlName??"member",u=o?r:(r[0]??r)[l];if(u==null)return c;let d=Array.isArray(u)?u:[u];for(let p of d)c.push(this.readSchema(a,p));return c}let i={};if(n.isMapSchema()){let a=n.getKeySchema(),c=n.getValueSchema(),l;o?l=Array.isArray(r)?r:[r]:l=Array.isArray(r.entry)?r.entry:[r.entry];let u=a.getMergedTraits().xmlName??"key",d=c.getMergedTraits().xmlName??"value";for(let p of l){let m=p[u],h=p[d];i[m]=this.readSchema(c,h)}return i}if(n.isStructSchema()){let a=n.isUnionSchema(),c;a&&(c=new Iy(r,i));for(let[l,u]of n.structIterator()){let d=u.getMergedTraits(),p=d.httpPayload?d.xmlName??u.getName():u.getMemberTraits().xmlName??l;a&&c.mark(p),r[p]!=null&&(i[l]=this.readSchema(u,r[p]))}return a&&c.writeUnknown(),i}if(n.isDocumentSchema())return r;throw new Error(`@aws-sdk/core/protocols - xml deserializer unhandled schema type for ${n.getName(!0)}`)}return n.isListSchema()?[]:n.isMapSchema()||n.isStructSchema()?{}:this.stringDeserializer.read(n,r)}parseXml(e){if(e.length){let r;try{r=(0,Bve.parseXML)(e)}catch(i){throw i&&typeof i=="object"&&Object.defineProperty(i,"$responseBodyText",{value:e}),i}let n="#text",s=Object.keys(r)[0],o=r[s];return o[n]&&(o[s]=o[n],delete o[n]),bf(o)}return{}}}});var fw,mJ=C(()=>{_e();Et();nt();nt();gp();fw=class extends ss{settings;buffer;constructor(e){super(),this.settings=e}write(e,r,n=""){this.buffer===void 0&&(this.buffer="");let s=ye.of(e);if(n&&!n.endsWith(".")&&(n+="."),s.isBlobSchema())(typeof r=="string"||r instanceof Uint8Array)&&(this.writeKey(n),this.writeValue((this.serdeContext?.base64Encoder??fr)(r)));else if(s.isBooleanSchema()||s.isNumericSchema()||s.isStringSchema())r!=null?(this.writeKey(n),this.writeValue(String(r))):s.isIdempotencyToken()&&(this.writeKey(n),this.writeValue(Sa()));else if(s.isBigIntegerSchema())r!=null&&(this.writeKey(n),this.writeValue(String(r)));else if(s.isBigDecimalSchema())r!=null&&(this.writeKey(n),this.writeValue(r instanceof Ut?r.string:String(r)));else if(s.isTimestampSchema()){if(r instanceof Date)switch(this.writeKey(n),Wo(s,this.settings)){case 5:this.writeValue(r.toISOString().replace(".000Z","Z"));break;case 6:this.writeValue(xa(r));break;case 7:this.writeValue(String(r.getTime()/1e3));break}}else if(s.isDocumentSchema())Array.isArray(r)?this.write(79,r,n):r instanceof Date?this.write(4,r,n):r instanceof Uint8Array?this.write(21,r,n):r&&typeof r=="object"?this.write(143,r,n):(this.writeKey(n),this.writeValue(String(r)));else if(s.isListSchema()){if(Array.isArray(r))if(r.length===0)this.settings.serializeEmptyLists&&(this.writeKey(n),this.writeValue(""));else{let o=s.getValueSchema(),i=this.settings.flattenLists||s.getMergedTraits().xmlFlattened,a=1;for(let c of r){if(c==null)continue;let l=o.getMergedTraits(),u=this.getKey("member",l.xmlName,l.ec2QueryName),d=i?`${n}${a}`:`${n}${u}.${a}`;this.write(o,c,d),++a}}}else if(s.isMapSchema()){if(r&&typeof r=="object"){let o=s.getKeySchema(),i=s.getValueSchema(),a=s.getMergedTraits().xmlFlattened,c=1;for(let l in r){let u=r[l];if(u==null)continue;let d=o.getMergedTraits(),p=this.getKey("key",d.xmlName,d.ec2QueryName),m=a?`${n}${c}.${p}`:`${n}entry.${c}.${p}`,h=i.getMergedTraits(),y=this.getKey("value",h.xmlName,h.ec2QueryName),I=a?`${n}${c}.${y}`:`${n}entry.${c}.${y}`;this.write(o,l,m),this.write(i,u,I),++c}}}else if(s.isStructSchema()){if(r&&typeof r=="object"){let o=!1;for(let[i,a]of s.structIterator()){if(r[i]==null&&!a.isIdempotencyToken())continue;let c=a.getMergedTraits(),l=this.getKey(i,c.xmlName,c.ec2QueryName,"struct"),u=`${n}${l}`;this.write(a,r[i],u),o=!0}if(!o&&s.isUnionSchema()){let{$unknown:i}=r;if(Array.isArray(i)){let[a,c]=i,l=`${n}${a}`;this.write(15,c,l)}}}}else if(!s.isUnitSchema())throw new Error(`@aws-sdk/core/protocols - QuerySerializer unrecognized schema type ${s.getName(!0)}`)}flush(){if(this.buffer===void 0)throw new Error("@aws-sdk/core/protocols - QuerySerializer cannot flush with nothing written to buffer.");let e=this.buffer;return delete this.buffer,e}getKey(e,r,n,s){let{ec2:o,capitalizeKeys:i}=this.settings;if(o&&n)return n;let a=r??e;return i&&s==="struct"?a[0].toUpperCase()+a.slice(1):a}writeKey(e){e.endsWith(".")&&(e=e.slice(0,e.length-1)),this.buffer+=`&${jc(e)}=`}writeValue(e){this.buffer+=jc(e)}}});var Pf,fJ=C(()=>{_e();Et();Cy();nD();mJ();Pf=class extends bu{options;serializer;deserializer;mixin=new $i;constructor(e){super({defaultNamespace:e.defaultNamespace,errorTypeRegistries:e.errorTypeRegistries}),this.options=e;let r={timestampFormat:{useTrait:!0,default:5},httpBindings:!1,xmlNamespace:e.xmlNamespace,serviceNamespace:e.defaultNamespace,serializeEmptyLists:!0};this.serializer=new fw(r),this.deserializer=new Tf(r)}getShapeId(){return"aws.protocols#awsQuery"}setSerdeContext(e){this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e)}getPayloadCodec(){throw new Error("AWSQuery protocol has no payload codec.")}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);s.path.endsWith("/")||(s.path+="/"),s.headers["content-type"]="application/x-www-form-urlencoded",(Ca(e.input)==="unit"||!s.body)&&(s.body="");let o=e.name.split("#")[1]??e.name;return s.body=`Action=${o}&Version=${this.options.version}`+s.body,s.body.endsWith("&")&&(s.body=s.body.slice(-1)),s}async deserializeResponse(e,r,n){let s=this.deserializer,o=ye.of(e.output),i={};if(n.statusCode>=300){let u=await ao(n.body,r);u.byteLength>0&&Object.assign(i,await s.read(15,u)),await this.handleError(e,r,n,i,this.deserializeMetadata(n))}for(let u in n.headers){let d=n.headers[u];delete n.headers[u],n.headers[u.toLowerCase()]=d}let a=e.name.split("#")[1]??e.name,c=o.isStructSchema()&&this.useNestedResult()?a+"Result":void 0,l=await ao(n.body,r);return l.byteLength>0&&Object.assign(i,await s.read(o,l,c)),i.$metadata=this.deserializeMetadata(n),i}useNestedResult(){return!0}async handleError(e,r,n,s,o){let i=this.loadQueryErrorCode(n,s)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,i,this.options.defaultNamespace);let a=this.loadQueryError(s)??{},c=this.loadQueryErrorMessage(s);a.message=c,a.Error={Type:a.Type,Code:a.Code,Message:c};let{errorSchema:l,errorMetadata:u}=await this.mixin.getErrorSchemaOrThrowBaseException(i,this.options.defaultNamespace,n,a,o,this.mixin.findQueryCompatibleError),d=ye.of(l),p=this.compositeErrorRegistry.getErrorCtor(l)??Error,m=new p({}),h={Type:a.Error.Type,Code:a.Error.Code,Error:a.Error};for(let[y,I]of d.structIterator()){let x=I.getMergedTraits().xmlName??y,b=a[x]??s[x];h[y]=this.deserializer.readSchema(I,b)}throw this.mixin.decorateServiceException(Object.assign(m,u,{$fault:d.getMergedTraits().error,message:c},h),s)}loadQueryErrorCode(e,r){let n=(r.Errors?.[0]?.Error??r.Errors?.Error??r.Error)?.Code;if(n!==void 0)return n;if(e.statusCode==404)return"NotFound"}loadQueryError(e){return e.Errors?.[0]?.Error??e.Errors?.Error??e.Error}loadQueryErrorMessage(e){let r=this.loadQueryError(e);return r?.message??r?.Message??e.message??e.Message??"Unknown"}getDefaultContentType(){return"application/x-www-form-urlencoded"}}});var AJ,Rve=C(()=>{fJ();AJ=class extends Pf{options;constructor(e){super(e),this.options=e;let r={capitalizeKeys:!0,flattenLists:!0,serializeEmptyLists:!1,ec2:!0};Object.assign(this.serializer.settings,r)}getShapeId(){return"aws.protocols#ec2Query"}useNestedResult(){return!1}}});var Nve=C(()=>{});var Tve,Pve,qxt,hJ,gJ=C(()=>{Tve=Q(rD());Ee();tJ();Pve=(t,e)=>VQ(t,e).then(r=>{if(r.length){let n;try{n=(0,Tve.parseXML)(r)}catch(a){throw a&&typeof a=="object"&&Object.defineProperty(a,"$responseBodyText",{value:r}),a}let s="#text",o=Object.keys(n)[0],i=n[o];return i[s]&&(i[o]=i[s],delete i[s]),bf(i)}return{}}),qxt=async(t,e)=>{let r=await Pve(t,e);return r.Error&&(r.Error.message=r.Error.message??r.Error.Message),r},hJ=(t,e)=>{if(e?.Error?.Code!==void 0)return e.Error.Code;if(e?.Code!==void 0)return e.Code;if(t.statusCode==404)return"NotFound"}});var Ds,Aw,yJ=C(()=>{Ds=Q(rD());_e();Et();nt();nt();gp();Aw=class extends ss{settings;stringBuffer;byteBuffer;buffer;constructor(e){super(),this.settings=e}write(e,r){let n=ye.of(e);if(n.isStringSchema()&&typeof r=="string")this.stringBuffer=r;else if(n.isBlobSchema())this.byteBuffer="byteLength"in r?r:(this.serdeContext?.base64Decoder??qr)(r);else{this.buffer=this.writeStruct(n,r,void 0);let s=n.getMergedTraits();s.httpPayload&&!s.xmlName&&this.buffer.withName(n.getName())}}flush(){if(this.byteBuffer!==void 0){let r=this.byteBuffer;return delete this.byteBuffer,r}if(this.stringBuffer!==void 0){let r=this.stringBuffer;return delete this.stringBuffer,r}let e=this.buffer;return this.settings.xmlNamespace&&(e?.attributes?.xmlns||e.addAttribute("xmlns",this.settings.xmlNamespace)),delete this.buffer,e.toString()}writeStruct(e,r,n){let s=e.getMergedTraits(),o=e.isMemberSchema()&&!s.httpPayload?e.getMemberTraits().xmlName??e.getMemberName():s.xmlName??e.getName();if(!o||!e.isStructSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write struct with empty name or non-struct, schema=${e.getName(!0)}.`);let i=Ds.XmlNode.of(o),[a,c]=this.getXmlnsAttribute(e,n);for(let[u,d]of e.structIterator()){let p=r[u];if(p!=null||d.isIdempotencyToken()){if(d.getMergedTraits().xmlAttribute){i.addAttribute(d.getMergedTraits().xmlName??u,this.writeSimple(d,p));continue}if(d.isListSchema())this.writeList(d,p,i,c);else if(d.isMapSchema())this.writeMap(d,p,i,c);else if(d.isStructSchema())i.addChildNode(this.writeStruct(d,p,c));else{let m=Ds.XmlNode.of(d.getMergedTraits().xmlName??d.getMemberName());this.writeSimpleInto(d,p,m,c),i.addChildNode(m)}}}let{$unknown:l}=r;if(l&&e.isUnionSchema()&&Array.isArray(l)&&Object.keys(r).length===1){let[u,d]=l,p=Ds.XmlNode.of(u);if(typeof d!="string")if(r instanceof Ds.XmlNode||r instanceof Ds.XmlText)i.addChildNode(r);else throw new Error("@aws-sdk - $unknown union member in XML requires value of type string, @aws-sdk/xml-builder::XmlNode or XmlText.");this.writeSimpleInto(0,d,p,c),i.addChildNode(p)}return c&&i.addAttribute(a,c),i}writeList(e,r,n,s){if(!e.isMemberSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write non-member list: ${e.getName(!0)}`);let o=e.getMergedTraits(),i=e.getValueSchema(),a=i.getMergedTraits(),c=!!a.sparse,l=!!o.xmlFlattened,[u,d]=this.getXmlnsAttribute(e,s),p=(m,h)=>{if(i.isListSchema())this.writeList(i,Array.isArray(h)?h:[h],m,d);else if(i.isMapSchema())this.writeMap(i,h,m,d);else if(i.isStructSchema()){let y=this.writeStruct(i,h,d);m.addChildNode(y.withName(l?o.xmlName??e.getMemberName():a.xmlName??"member"))}else{let y=Ds.XmlNode.of(l?o.xmlName??e.getMemberName():a.xmlName??"member");this.writeSimpleInto(i,h,y,d),m.addChildNode(y)}};if(l)for(let m of r)(c||m!=null)&&p(n,m);else{let m=Ds.XmlNode.of(o.xmlName??e.getMemberName());d&&m.addAttribute(u,d);for(let h of r)(c||h!=null)&&p(m,h);n.addChildNode(m)}}writeMap(e,r,n,s,o=!1){if(!e.isMemberSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write non-member map: ${e.getName(!0)}`);let i=e.getMergedTraits(),a=e.getKeySchema(),l=a.getMergedTraits().xmlName??"key",u=e.getValueSchema(),d=u.getMergedTraits(),p=d.xmlName??"value",m=!!d.sparse,h=!!i.xmlFlattened,[y,I]=this.getXmlnsAttribute(e,s),x=(b,T,_)=>{let U=Ds.XmlNode.of(l,T),[O,z]=this.getXmlnsAttribute(a,I);z&&U.addAttribute(O,z),b.addChildNode(U);let de=Ds.XmlNode.of(p);u.isListSchema()?this.writeList(u,_,de,I):u.isMapSchema()?this.writeMap(u,_,de,I,!0):u.isStructSchema()?de=this.writeStruct(u,_,I):this.writeSimpleInto(u,_,de,I),b.addChildNode(de)};if(h)for(let b in r){let T=r[b];if(m||T!=null){let _=Ds.XmlNode.of(i.xmlName??e.getMemberName());x(_,b,T),n.addChildNode(_)}}else{let b;o||(b=Ds.XmlNode.of(i.xmlName??e.getMemberName()),I&&b.addAttribute(y,I),n.addChildNode(b));for(let T in r){let _=r[T];if(m||_!=null){let U=Ds.XmlNode.of("entry");x(U,T,_),(o?n:b).addChildNode(U)}}}}writeSimple(e,r){if(r===null)throw new Error("@aws-sdk/core/protocols - (XML serializer) cannot write null value.");let n=ye.of(e),s=null;if(r&&typeof r=="object")if(n.isBlobSchema())s=(this.serdeContext?.base64Encoder??fr)(r);else if(n.isTimestampSchema()&&r instanceof Date)switch(Wo(n,this.settings)){case 5:s=r.toISOString().replace(".000Z","Z");break;case 6:s=xa(r);break;case 7:s=String(r.getTime()/1e3);break;default:console.warn("Missing timestamp format, using http date",r),s=xa(r);break}else{if(n.isBigDecimalSchema()&&r)return r instanceof Ut?r.string:String(r);throw n.isMapSchema()||n.isListSchema()?new Error("@aws-sdk/core/protocols - xml serializer, cannot call _write() on List/Map schema, call writeList or writeMap() instead."):new Error(`@aws-sdk/core/protocols - xml serializer, unhandled schema type for object value and schema: ${n.getName(!0)}`)}if((n.isBooleanSchema()||n.isNumericSchema()||n.isBigIntegerSchema()||n.isBigDecimalSchema())&&(s=String(r)),n.isStringSchema()&&(r===void 0&&n.isIdempotencyToken()?s=Sa():s=String(r)),s===null)throw new Error(`Unhandled schema-value pair ${n.getName(!0)}=${r}`);return s}writeSimpleInto(e,r,n,s){let o=this.writeSimple(e,r),i=ye.of(e),a=new Ds.XmlText(o),[c,l]=this.getXmlnsAttribute(i,s);l&&n.addAttribute(c,l),n.addChildNode(a)}getXmlnsAttribute(e,r){let n=e.getMergedTraits(),[s,o]=n.xmlNamespace??[];return o&&o!==r?[s?`xmlns:${s}`:"xmlns",o]:[void 0,void 0]}}});var hw,EJ=C(()=>{gp();nD();yJ();hw=class extends ss{settings;constructor(e){super(),this.settings=e}createSerializer(){let e=new Aw(this.settings);return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new Tf(this.settings);return e.setSerdeContext(this.serdeContext),e}}});var CJ,vve=C(()=>{_e();Et();Cy();gJ();EJ();CJ=class extends Ef{codec;serializer;deserializer;mixin=new $i;constructor(e){super(e);let r={timestampFormat:{useTrait:!0,default:5},httpBindings:!0,xmlNamespace:e.xmlNamespace,serviceNamespace:e.defaultNamespace};this.codec=new hw(r),this.serializer=new xf(this.codec.createSerializer(),r),this.deserializer=new If(this.codec.createDeserializer(),r)}getPayloadCodec(){return this.codec}getShapeId(){return"aws.protocols#restXml"}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n),o=ye.of(e.input);if(!s.headers["content-type"]){let i=this.mixin.resolveRestContentType(this.getDefaultContentType(),o);i&&(s.headers["content-type"]=i)}return typeof s.body=="string"&&s.headers["content-type"]===this.getDefaultContentType()&&!s.body.startsWith("'+s.body),s}async deserializeResponse(e,r,n){return super.deserializeResponse(e,r,n)}async handleError(e,r,n,s,o){let i=hJ(n,s)??"Unknown";if(this.mixin.compose(this.compositeErrorRegistry,i,this.options.defaultNamespace),s.Error&&typeof s.Error=="object")for(let y of Object.keys(s.Error))s[y]=s.Error[y],y.toLowerCase()==="message"&&(s.message=s.Error[y]);s.RequestId&&!o.requestId&&(o.requestId=s.RequestId);let{errorSchema:a,errorMetadata:c}=await this.mixin.getErrorSchemaOrThrowBaseException(i,this.options.defaultNamespace,n,s,o),l=ye.of(a),u=s.Error?.message??s.Error?.Message??s.message??s.Message??"UnknownError",d=this.compositeErrorRegistry.getErrorCtor(a)??Error,p=new d({});await this.deserializeHttpMessage(a,r,n,s);let m={},h=this.codec.createDeserializer();for(let[y,I]of l.structIterator()){let x=I.getMergedTraits().xmlName??y,b=s.Error?.[x]??s[x];m[y]=h.readSchema(I,b)}throw this.mixin.decorateServiceException(Object.assign(p,c,{$fault:l.getMergedTraits().error,message:u},m),s)}getDefaultContentType(){return"application/xml"}hasUnstructuredPayloadBinding(e){for(let[,r]of e.structIterator())if(r.getMergedTraits().httpPayload)return!(r.isStructSchema()||r.isMapSchema()||r.isListSchema());return!1}}});var IJ={};Zr(IJ,{AwsEc2QueryProtocol:()=>AJ,AwsJson1_0Protocol:()=>aJ,AwsJson1_1Protocol:()=>cJ,AwsJsonRpcProtocol:()=>Rf,AwsQueryProtocol:()=>Pf,AwsRestJsonProtocol:()=>Lu,AwsRestXmlProtocol:()=>CJ,AwsSmithyRpcV2CborProtocol:()=>Zj,JsonCodec:()=>Bf,JsonShapeDeserializer:()=>pw,JsonShapeSerializer:()=>mw,QueryShapeSerializer:()=>fw,XmlCodec:()=>hw,XmlShapeDeserializer:()=>Tf,XmlShapeSerializer:()=>Aw,_toBool:()=>xxt,_toNum:()=>wxt,_toStr:()=>Ixt,awsExpectUnion:()=>Sxt,loadJsonRpcErrorCode:()=>sJ,loadRestJsonErrorCode:()=>nJ,loadRestXmlErrorCode:()=>hJ,parseJsonBody:()=>YQ,parseJsonErrorBody:()=>bxt,parseXmlBody:()=>Pve,parseXmlErrorBody:()=>qxt});var vf=C(()=>{lve();uve();gve();yve();JQ();Eve();jQ();oJ();iJ();Cve();dw();Rve();fJ();Nve();mJ();vve();EJ();nD();yJ();gJ()});var gw,_f,sD,_ve,Lve,oD,xJ,Qve,wJ,xy,Dve,kve,$xt,uo,Gxt,Ove,Mve=C(()=>{It();gw="ref",_f=-1,sD=!0,_ve="isSet",Lve="PartitionResult",oD="booleanEquals",xJ="getAttr",Qve={[gw]:"Endpoint"},wJ={[gw]:Lve},xy={},Dve=[{[gw]:"Region"}],kve={conditions:[[_ve,[Qve]],[_ve,Dve],["aws.partition",Dve,Lve],[oD,[{[gw]:"UseFIPS"},sD]],[oD,[{[gw]:"UseDualStack"},sD]],[oD,[{fn:xJ,argv:[wJ,"supportsDualStack"]},sD]],[oD,[{fn:xJ,argv:[wJ,"supportsFIPS"]},sD]],["stringEquals",[{fn:xJ,argv:[wJ,"name"]},"aws-us-gov"]]],results:[[_f],[_f,"Invalid Configuration: FIPS and custom endpoint are not supported"],[_f,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[Qve,xy],["https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",xy],[_f,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://oidc.{Region}.amazonaws.com",xy],["https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}",xy],[_f,"FIPS is enabled but this partition does not support FIPS"],["https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}",xy],[_f,"DualStack is enabled but this partition does not support DualStack"],["https://oidc.{Region}.{PartitionResult#dnsSuffix}",xy],[_f,"Invalid Configuration: Missing Region"]]},$xt=2,uo=1e8,Gxt=new Int32Array([-1,1,-1,0,13,3,1,4,uo+12,2,5,uo+12,3,8,6,4,7,uo+11,5,uo+9,uo+10,4,11,9,6,10,uo+8,7,uo+6,uo+7,5,12,uo+5,6,uo+4,uo+5,3,uo+1,14,4,uo+2,uo+3]),Ove=Di.from(Gxt,$xt,kve.conditions,kve.results)});var Hxt,Fve,Uve=C(()=>{xt();It();Mve();Hxt=new ki({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),Fve=(t,e={})=>Hxt.get(t,()=>Wc(Ove,{endpointParams:t,logger:e.logger}));io.aws=va});var xn,iD=C(()=>{Ee();xn=class t extends Mi{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var yw,Ew,Cw,Iw,xw,ww,bw,Sw,Bw,Rw,Nw,bJ=C(()=>{iD();yw=class t extends xn{name="AccessDeniedException";$fault="client";error;reason;error_description;constructor(e){super({name:"AccessDeniedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.reason=e.reason,this.error_description=e.error_description}},Ew=class t extends xn{name="AuthorizationPendingException";$fault="client";error;error_description;constructor(e){super({name:"AuthorizationPendingException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Cw=class t extends xn{name="ExpiredTokenException";$fault="client";error;error_description;constructor(e){super({name:"ExpiredTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Iw=class t extends xn{name="InternalServerException";$fault="server";error;error_description;constructor(e){super({name:"InternalServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},xw=class t extends xn{name="InvalidClientException";$fault="client";error;error_description;constructor(e){super({name:"InvalidClientException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},ww=class t extends xn{name="InvalidGrantException";$fault="client";error;error_description;constructor(e){super({name:"InvalidGrantException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},bw=class t extends xn{name="InvalidRequestException";$fault="client";error;reason;error_description;constructor(e){super({name:"InvalidRequestException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.reason=e.reason,this.error_description=e.error_description}},Sw=class t extends xn{name="InvalidScopeException";$fault="client";error;error_description;constructor(e){super({name:"InvalidScopeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Bw=class t extends xn{name="SlowDownException";$fault="client";error;error_description;constructor(e){super({name:"SlowDownException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Rw=class t extends xn{name="UnauthorizedClientException";$fault="client";error;error_description;constructor(e){super({name:"UnauthorizedClientException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Nw=class t extends xn{name="UnsupportedGrantTypeException";$fault="client";error;error_description;constructor(e){super({name:"UnsupportedGrantTypeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}}});var zxt,Vxt,Yxt,Wxt,jxt,Jxt,Kxt,Xxt,Zxt,ewt,twt,rwt,nwt,swt,owt,iwt,awt,cwt,lwt,uwt,xl,dwt,pwt,mwt,fwt,Awt,Nr,hwt,Qa,gwt,ywt,Da,Ewt,qve,$ve,Cwt,Gve,Iwt,xwt,wwt,Xr,Hve,zve,Gi,Vve,Yve,Wve,jve,Jve,Kve,Xve,Zve,e_e,t_e,r_e,SJ,bwt,Swt,Bwt,Rwt,n_e,s_e,o_e,BJ,aD=C(()=>{Et();bJ();iD();zxt="AccessDeniedException",Vxt="AuthorizationPendingException",Yxt="AccessToken",Wxt="ClientSecret",jxt="CreateToken",Jxt="CreateTokenRequest",Kxt="CreateTokenResponse",Xxt="CodeVerifier",Zxt="ExpiredTokenException",ewt="InvalidClientException",twt="InvalidGrantException",rwt="InvalidRequestException",nwt="InternalServerException",swt="InvalidScopeException",owt="IdToken",iwt="RefreshToken",awt="SlowDownException",cwt="UnauthorizedClientException",lwt="UnsupportedGrantTypeException",uwt="accessToken",xl="client",dwt="clientId",pwt="clientSecret",mwt="codeVerifier",fwt="code",Awt="deviceCode",Nr="error",hwt="expiresIn",Qa="error_description",gwt="grantType",ywt="http",Da="httpError",Ewt="idToken",qve="reason",$ve="refreshToken",Cwt="redirectUri",Gve="smithy.ts.sdk.synthetic.com.amazonaws.ssooidc",Iwt="scope",xwt="server",wwt="tokenType",Xr="com.amazonaws.ssooidc",Hve=hr.for(Gve),zve=[-3,Gve,"SSOOIDCServiceException",0,[],[]];Hve.registerError(zve,xn);Gi=hr.for(Xr),Vve=[-3,Xr,zxt,{[Nr]:xl,[Da]:400},[Nr,qve,Qa],[0,0,0]];Gi.registerError(Vve,yw);Yve=[-3,Xr,Vxt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(Yve,Ew);Wve=[-3,Xr,Zxt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(Wve,Cw);jve=[-3,Xr,nwt,{[Nr]:xwt,[Da]:500},[Nr,Qa],[0,0]];Gi.registerError(jve,Iw);Jve=[-3,Xr,ewt,{[Nr]:xl,[Da]:401},[Nr,Qa],[0,0]];Gi.registerError(Jve,xw);Kve=[-3,Xr,twt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(Kve,ww);Xve=[-3,Xr,rwt,{[Nr]:xl,[Da]:400},[Nr,qve,Qa],[0,0,0]];Gi.registerError(Xve,bw);Zve=[-3,Xr,swt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(Zve,Sw);e_e=[-3,Xr,awt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(e_e,Bw);t_e=[-3,Xr,cwt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(t_e,Rw);r_e=[-3,Xr,lwt,{[Nr]:xl,[Da]:400},[Nr,Qa],[0,0]];Gi.registerError(r_e,Nw);SJ=[Hve,Gi],bwt=[0,Xr,Yxt,8,0],Swt=[0,Xr,Wxt,8,0],Bwt=[0,Xr,Xxt,8,0],Rwt=[0,Xr,owt,8,0],n_e=[0,Xr,iwt,8,0],s_e=[3,Xr,Jxt,0,[dwt,pwt,gwt,Awt,fwt,$ve,Iwt,Cwt,mwt],[0,[()=>Swt,0],0,0,0,[()=>n_e,0],64,0,[()=>Bwt,0]],3],o_e=[3,Xr,Kxt,0,[uwt,wwt,hwt,$ve,Ewt],[[()=>bwt,0],0,1,[()=>n_e,0],[()=>Rwt,0]]],BJ=[9,Xr,jxt,{[ywt]:["POST","/token",200]},()=>s_e,()=>o_e]});var i_e,a_e=C(()=>{Kr();vf();_s();Ee();_e();nt();Lj();Uve();aD();i_e=t=>({apiVersion:"2019-06-10",base64Decoder:t?.base64Decoder??qr,base64Encoder:t?.base64Encoder??fr,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??Fve,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??WPe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new Ln},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new jo}],logger:t?.logger??new co,protocol:t?.protocol??Lu,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ssooidc",errorTypeRegistries:SJ,version:"2019-06-10",serviceTarget:"AWSSSOOIDCService"},serviceId:t?.serviceId??"SSO OIDC",urlParser:t?.urlParser??ts,utf8Decoder:t?.utf8Decoder??$r,utf8Encoder:t?.utf8Encoder??Ar})});var cD,c_e,l_e=C(()=>{iw();xt();Kr();Ee();Nt();vs();nt();cD=Q(Pu());a_e();c_e=t=>{sl(process.version);let e=Yc(t),r=()=>e().then(nl),n=i_e(t);Uc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??rt(Tu,s),bodyLengthChecker:t?.bodyLengthChecker??$c,defaultUserAgentProvider:t?.defaultUserAgentProvider??Pa({serviceId:n.serviceId,clientVersion:pp.version}),maxAttempts:t?.maxAttempts??rt(al,t),region:t?.region??rt(Qn,{...Ts,...s}),requestHandler:cD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??rt({...ll,default:async()=>(await r()).retryMode||Ui},t),sha256:t?.sha256??Oi.bind(null,"sha256"),streamCollector:t?.streamCollector??cD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??rt(zc,s),useFipsEndpoint:t?.useFipsEndpoint??rt(Vc,s),userAgentAppId:t?.userAgentAppId??rt(gl,s)}}});var u_e,d_e,p_e=C(()=>{u_e=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},d_e=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()})});var m_e,f_e=C(()=>{xt();Ee();_e();p_e();m_e=(t,e)=>{let r=Object.assign(yl(t),Ba(t),Xc(t),u_e(t));return e.forEach(n=>n.configure(r)),Object.assign(t,El(r),ol(r),Zc(r),d_e(r))}});var Tw,RJ=C(()=>{xt();_s();Ee();Nt();It();_e();vs();Et();Lj();Oj();l_e();f_e();Tw=class extends Jn{config;constructor(...[e]){let r=c_e(e||{});super(r),this.initConfig=r;let n=JPe(r),s=fl(n),o=cl(s),i=Vo(o),a=i,c=Iu(a),l=jPe(c),u=m_e(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(Su(this.config)),this.middlewareStack.use(Al(this.config)),this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(el(this.config)),this.middlewareStack.use(ul(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(Ru(this.config,{httpAuthSchemeParametersProvider:YPe,identityProviderConfigProvider:async d=>new Ta({"aws.auth#sigv4":d.credentials})})),this.middlewareStack.use(Nu(this.config))}destroy(){super.destroy()}}});var Pw,NJ=C(()=>{Ee();It();Oj();aD();Pw=class extends dn.classBuilder().ep(KPe).m(function(e,r,n,s){return[ba(n,e.getEndpointParameterInstructions())]}).s("AWSSSOOIDCService","CreateToken",{}).n("SSOOIDCClient","CreateTokenCommand").sc(BJ).build(){}});var Nwt,lD,A_e=C(()=>{Ee();NJ();RJ();Nwt={CreateTokenCommand:Pw},lD=class extends Tw{};rl(Nwt,lD)});var h_e=C(()=>{NJ()});var Twt,Pwt,g_e=C(()=>{Twt={KMS_ACCESS_DENIED:"KMS_AccessDeniedException"},Pwt={KMS_DISABLED_KEY:"KMS_DisabledException",KMS_INVALID_KEY_USAGE:"KMS_InvalidKeyUsageException",KMS_INVALID_STATE:"KMS_InvalidStateException",KMS_KEY_NOT_FOUND:"KMS_NotFoundException"}});var y_e=C(()=>{});var TJ={};Zr(TJ,{$Command:()=>dn,AccessDeniedException:()=>yw,AccessDeniedException$:()=>Vve,AccessDeniedExceptionReason:()=>Twt,AuthorizationPendingException:()=>Ew,AuthorizationPendingException$:()=>Yve,CreateToken$:()=>BJ,CreateTokenCommand:()=>Pw,CreateTokenRequest$:()=>s_e,CreateTokenResponse$:()=>o_e,ExpiredTokenException:()=>Cw,ExpiredTokenException$:()=>Wve,InternalServerException:()=>Iw,InternalServerException$:()=>jve,InvalidClientException:()=>xw,InvalidClientException$:()=>Jve,InvalidGrantException:()=>ww,InvalidGrantException$:()=>Kve,InvalidRequestException:()=>bw,InvalidRequestException$:()=>Xve,InvalidRequestExceptionReason:()=>Pwt,InvalidScopeException:()=>Sw,InvalidScopeException$:()=>Zve,SSOOIDC:()=>lD,SSOOIDCClient:()=>Tw,SSOOIDCServiceException:()=>xn,SSOOIDCServiceException$:()=>zve,SlowDownException:()=>Bw,SlowDownException$:()=>e_e,UnauthorizedClientException:()=>Rw,UnauthorizedClientException$:()=>t_e,UnsupportedGrantTypeException:()=>Nw,UnsupportedGrantTypeException$:()=>r_e,__Client:()=>Jn,errorTypeRegistries:()=>SJ});var PJ=C(()=>{RJ();A_e();h_e();aD();g_e();bJ();y_e();iD()});var x_e=w(vw=>{"use strict";var vwt=(xt(),Y(Qs)),_wt=(Kr(),Y(lp)),wn=(Nt(),Y(Dn)),Qwt=require("node:fs"),Dwt=({logger:t,signingName:e}={})=>async()=>{if(t?.debug?.("@aws-sdk/token-providers - fromEnvSigningName"),!e)throw new wn.TokenProviderError("Please pass 'signingName' to compute environment variable key",{logger:t});let r=_wt.getBearerTokenEnvKey(e);if(!(r in process.env))throw new wn.TokenProviderError(`Token not present in '${r}' environment variable`,{logger:t});let n={token:process.env[r]};return vwt.setTokenFeature(n,"BEARER_SERVICE_ENV_VARS","3"),n},kwt=300*1e3,vJ="To refresh this SSO session run 'aws sso login' with the corresponding profile.",Lwt=async(t,e={},r)=>{let{SSOOIDCClient:n}=await Promise.resolve().then(()=>(PJ(),TJ)),s=i=>e.clientConfig?.[i]??e.parentClientConfig?.[i]??r?.[i];return new n(Object.assign({},e.clientConfig??{},{region:t??e.clientConfig?.region,logger:s("logger"),userAgentAppId:s("userAgentAppId")}))},Owt=async(t,e,r={},n)=>{let{CreateTokenCommand:s}=await Promise.resolve().then(()=>(PJ(),TJ));return(await Lwt(e,r,n)).send(new s({clientId:t.clientId,clientSecret:t.clientSecret,refreshToken:t.refreshToken,grantType:"refresh_token"}))},E_e=t=>{if(t.expiration&&t.expiration.getTime(){if(typeof e>"u")throw new wn.TokenProviderError(`Value not present for '${t}' in SSO Token${r?". Cannot refresh":""}. ${vJ}`,!1)},{writeFile:Mwt}=Qwt.promises,Fwt=(t,e)=>{let r=wn.getSSOTokenFilepath(t),n=JSON.stringify(e,null,2);return Mwt(r,n)},C_e=new Date(0),I_e=(t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/token-providers - fromSso");let r=await wn.parseKnownFiles(t),n=wn.getProfileName({profile:t.profile??e?.profile}),s=r[n];if(s){if(!s.sso_session)throw new wn.TokenProviderError(`Profile '${n}' is missing required property 'sso_session'.`)}else throw new wn.TokenProviderError(`Profile '${n}' could not be found in shared credentials file.`,!1);let o=s.sso_session,a=(await wn.loadSsoSessionData(t))[o];if(!a)throw new wn.TokenProviderError(`Sso session '${o}' could not be found in shared credentials file.`,!1);for(let m of["sso_start_url","sso_region"])if(!a[m])throw new wn.TokenProviderError(`Sso session '${o}' is missing required property '${m}'.`,!1);a.sso_start_url;let c=a.sso_region,l;try{l=await wn.getSSOTokenFromFile(o)}catch{throw new wn.TokenProviderError(`The SSO session token associated with profile=${n} was not found or is invalid. ${vJ}`,!1)}Qf("accessToken",l.accessToken),Qf("expiresAt",l.expiresAt);let{accessToken:u,expiresAt:d}=l,p={token:u,expiration:new Date(d)};if(p.expiration.getTime()-Date.now()>kwt)return p;if(Date.now()-C_e.getTime()<30*1e3)return E_e(p),p;Qf("clientId",l.clientId,!0),Qf("clientSecret",l.clientSecret,!0),Qf("refreshToken",l.refreshToken,!0);try{C_e.setTime(Date.now());let m=await Owt(l,c,t,e);Qf("accessToken",m.accessToken),Qf("expiresIn",m.expiresIn);let h=new Date(Date.now()+m.expiresIn*1e3);try{await Fwt(o,{...l,accessToken:m.accessToken,expiresAt:h.toISOString(),refreshToken:m.refreshToken})}catch{}return{token:m.accessToken,expiration:h}}catch{return E_e(p),p}},Uwt=({token:t,logger:e})=>async()=>{if(e?.debug("@aws-sdk/token-providers - fromStatic"),!t||!t.token)throw new wn.TokenProviderError("Please pass a valid token to fromStatic",!1);return t},qwt=(t={})=>wn.memoize(wn.chain(I_e(t),async()=>{throw new wn.TokenProviderError("Could not load token from any providers",!1)}),e=>e.expiration!==void 0&&e.expiration.getTime()-Date.now()<3e5,e=>e.expiration!==void 0);vw.fromEnvSigningName=Dwt;vw.fromSso=I_e;vw.fromStatic=Uwt;vw.nodeProvider=qwt});function $wt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"awsssoportal",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}function Gwt(t){return{schemeId:"smithy.api#noAuth"}}var w_e,b_e,S_e,_J=C(()=>{Kr();Ee();w_e=async(t,e,r)=>({operation:mr(e).operation,region:await Ft(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});b_e=t=>{let e=[];return t.operation==="GetRoleCredentials"?e.push(Gwt(t)):e.push($wt(t)),e},S_e=t=>{let e=Cl(t);return Object.assign(e,{authSchemePreference:Ft(t.authSchemePreference??[])})}});var B_e,R_e,QJ=C(()=>{B_e=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"awsssoportal"}),R_e={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var _w,Df,uD,N_e,__e,dD,DJ,T_e,kJ,wy,P_e,v_e,Hwt,po,zwt,Q_e,D_e=C(()=>{It();_w="ref",Df=-1,uD=!0,N_e="isSet",__e="PartitionResult",dD="booleanEquals",DJ="getAttr",T_e={[_w]:"Endpoint"},kJ={[_w]:__e},wy={},P_e=[{[_w]:"Region"}],v_e={conditions:[[N_e,[T_e]],[N_e,P_e],["aws.partition",P_e,__e],[dD,[{[_w]:"UseFIPS"},uD]],[dD,[{[_w]:"UseDualStack"},uD]],[dD,[{fn:DJ,argv:[kJ,"supportsDualStack"]},uD]],[dD,[{fn:DJ,argv:[kJ,"supportsFIPS"]},uD]],["stringEquals",[{fn:DJ,argv:[kJ,"name"]},"aws-us-gov"]]],results:[[Df],[Df,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Df,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[T_e,wy],["https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",wy],[Df,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://portal.sso.{Region}.amazonaws.com",wy],["https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}",wy],[Df,"FIPS is enabled but this partition does not support FIPS"],["https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}",wy],[Df,"DualStack is enabled but this partition does not support DualStack"],["https://portal.sso.{Region}.{PartitionResult#dnsSuffix}",wy],[Df,"Invalid Configuration: Missing Region"]]},Hwt=2,po=1e8,zwt=new Int32Array([-1,1,-1,0,13,3,1,4,po+12,2,5,po+12,3,8,6,4,7,po+11,5,po+9,po+10,4,11,9,6,10,po+8,7,po+6,po+7,5,12,po+5,6,po+4,po+5,3,po+1,14,4,po+2,po+3]),Q_e=Di.from(zwt,Hwt,v_e.conditions,v_e.results)});var Vwt,k_e,L_e=C(()=>{xt();It();D_e();Vwt=new ki({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),k_e=(t,e={})=>Vwt.get(t,()=>Wc(Q_e,{endpointParams:t,logger:e.logger}));io.aws=va});var ka,pD=C(()=>{Ee();ka=class t extends Mi{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var Qw,Dw,kw,Lw,LJ=C(()=>{pD();Qw=class t extends ka{name="InvalidRequestException";$fault="client";constructor(e){super({name:"InvalidRequestException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Dw=class t extends ka{name="ResourceNotFoundException";$fault="client";constructor(e){super({name:"ResourceNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},kw=class t extends ka{name="TooManyRequestsException";$fault="client";constructor(e){super({name:"TooManyRequestsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Lw=class t extends ka{name="UnauthorizedException";$fault="client";constructor(e){super({name:"UnauthorizedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}}});var Ywt,Wwt,jwt,Jwt,Kwt,Xwt,Zwt,e0t,t0t,r0t,n0t,s0t,o0t,i0t,a0t,mD,fD,c0t,l0t,AD,u0t,O_e,hD,d0t,p0t,m0t,M_e,f0t,A0t,h0t,Hi,F_e,U_e,Ow,q_e,$_e,G_e,H_e,OJ,g0t,y0t,E0t,z_e,V_e,Y_e,MJ,gD=C(()=>{Et();LJ();pD();Ywt="AccessTokenType",Wwt="GetRoleCredentials",jwt="GetRoleCredentialsRequest",Jwt="GetRoleCredentialsResponse",Kwt="InvalidRequestException",Xwt="RoleCredentials",Zwt="ResourceNotFoundException",e0t="SecretAccessKeyType",t0t="SessionTokenType",r0t="TooManyRequestsException",n0t="UnauthorizedException",s0t="accountId",o0t="accessKeyId",i0t="accessToken",a0t="account_id",mD="client",fD="error",c0t="expiration",l0t="http",AD="httpError",u0t="httpHeader",O_e="httpQuery",hD="message",d0t="roleCredentials",p0t="roleName",m0t="role_name",M_e="smithy.ts.sdk.synthetic.com.amazonaws.sso",f0t="secretAccessKey",A0t="sessionToken",h0t="x-amz-sso_bearer_token",Hi="com.amazonaws.sso",F_e=hr.for(M_e),U_e=[-3,M_e,"SSOServiceException",0,[],[]];F_e.registerError(U_e,ka);Ow=hr.for(Hi),q_e=[-3,Hi,Kwt,{[fD]:mD,[AD]:400},[hD],[0]];Ow.registerError(q_e,Qw);$_e=[-3,Hi,Zwt,{[fD]:mD,[AD]:404},[hD],[0]];Ow.registerError($_e,Dw);G_e=[-3,Hi,r0t,{[fD]:mD,[AD]:429},[hD],[0]];Ow.registerError(G_e,kw);H_e=[-3,Hi,n0t,{[fD]:mD,[AD]:401},[hD],[0]];Ow.registerError(H_e,Lw);OJ=[F_e,Ow],g0t=[0,Hi,Ywt,8,0],y0t=[0,Hi,e0t,8,0],E0t=[0,Hi,t0t,8,0],z_e=[3,Hi,jwt,0,[p0t,s0t,i0t],[[0,{[O_e]:m0t}],[0,{[O_e]:a0t}],[()=>g0t,{[u0t]:h0t}]],3],V_e=[3,Hi,Jwt,0,[d0t],[[()=>Y_e,0]]],Y_e=[3,Hi,Xwt,0,[o0t,f0t,A0t,c0t],[0,[()=>y0t,0],[()=>E0t,0],1]],MJ=[9,Hi,Wwt,{[l0t]:["GET","/federation/credentials",200]},()=>z_e,()=>V_e]});var W_e,j_e=C(()=>{Kr();vf();_s();Ee();_e();nt();_J();L_e();gD();W_e=t=>({apiVersion:"2019-06-10",base64Decoder:t?.base64Decoder??qr,base64Encoder:t?.base64Encoder??fr,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??k_e,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??b_e,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new Ln},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new jo}],logger:t?.logger??new co,protocol:t?.protocol??Lu,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.sso",errorTypeRegistries:OJ,version:"2019-06-10",serviceTarget:"SWBPortalService"},serviceId:t?.serviceId??"SSO",urlParser:t?.urlParser??ts,utf8Decoder:t?.utf8Decoder??$r,utf8Encoder:t?.utf8Encoder??Ar})});var yD,J_e,K_e=C(()=>{iw();xt();Kr();Ee();Nt();vs();nt();yD=Q(Pu());j_e();J_e=t=>{sl(process.version);let e=Yc(t),r=()=>e().then(nl),n=W_e(t);Uc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??rt(Tu,s),bodyLengthChecker:t?.bodyLengthChecker??$c,defaultUserAgentProvider:t?.defaultUserAgentProvider??Pa({serviceId:n.serviceId,clientVersion:pp.version}),maxAttempts:t?.maxAttempts??rt(al,t),region:t?.region??rt(Qn,{...Ts,...s}),requestHandler:yD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??rt({...ll,default:async()=>(await r()).retryMode||Ui},t),sha256:t?.sha256??Oi.bind(null,"sha256"),streamCollector:t?.streamCollector??yD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??rt(zc,s),useFipsEndpoint:t?.useFipsEndpoint??rt(Vc,s),userAgentAppId:t?.userAgentAppId??rt(gl,s)}}});var X_e,Z_e,eQe=C(()=>{X_e=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},Z_e=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()})});var tQe,rQe=C(()=>{xt();Ee();_e();eQe();tQe=(t,e)=>{let r=Object.assign(yl(t),Ba(t),Xc(t),X_e(t));return e.forEach(n=>n.configure(r)),Object.assign(t,El(r),ol(r),Zc(r),Z_e(r))}});var Mw,FJ=C(()=>{xt();_s();Ee();Nt();It();_e();vs();Et();_J();QJ();K_e();rQe();Mw=class extends Jn{config;constructor(...[e]){let r=J_e(e||{});super(r),this.initConfig=r;let n=B_e(r),s=fl(n),o=cl(s),i=Vo(o),a=i,c=Iu(a),l=S_e(c),u=tQe(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(Su(this.config)),this.middlewareStack.use(Al(this.config)),this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(el(this.config)),this.middlewareStack.use(ul(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(Ru(this.config,{httpAuthSchemeParametersProvider:w_e,identityProviderConfigProvider:async d=>new Ta({"aws.auth#sigv4":d.credentials})})),this.middlewareStack.use(Nu(this.config))}destroy(){super.destroy()}}});var Fw,UJ=C(()=>{Ee();It();QJ();gD();Fw=class extends dn.classBuilder().ep(R_e).m(function(e,r,n,s){return[ba(n,e.getEndpointParameterInstructions())]}).s("SWBPortalService","GetRoleCredentials",{}).n("SSOClient","GetRoleCredentialsCommand").sc(MJ).build(){}});var C0t,ED,nQe=C(()=>{Ee();UJ();FJ();C0t={GetRoleCredentialsCommand:Fw},ED=class extends Mw{};rl(C0t,ED)});var sQe=C(()=>{UJ()});var oQe=C(()=>{});var iQe={};Zr(iQe,{$Command:()=>dn,GetRoleCredentials$:()=>MJ,GetRoleCredentialsCommand:()=>Fw,GetRoleCredentialsRequest$:()=>z_e,GetRoleCredentialsResponse$:()=>V_e,InvalidRequestException:()=>Qw,InvalidRequestException$:()=>q_e,ResourceNotFoundException:()=>Dw,ResourceNotFoundException$:()=>$_e,RoleCredentials$:()=>Y_e,SSO:()=>ED,SSOClient:()=>Mw,SSOServiceException:()=>ka,SSOServiceException$:()=>U_e,TooManyRequestsException:()=>kw,TooManyRequestsException$:()=>G_e,UnauthorizedException:()=>Lw,UnauthorizedException$:()=>H_e,__Client:()=>Jn,errorTypeRegistries:()=>OJ});var aQe=C(()=>{FJ();nQe();sQe();gD();LJ();oQe();pD()});var lQe=w(qJ=>{"use strict";var cQe=(aQe(),Y(iQe));qJ.GetRoleCredentialsCommand=cQe.GetRoleCredentialsCommand;qJ.SSOClient=cQe.SSOClient});var $J=w(CD=>{"use strict";var ks=(Nt(),Y(Dn)),uQe=(xt(),Y(Qs)),I0t=x_e(),pQe=t=>t&&(typeof t.sso_start_url=="string"||typeof t.sso_account_id=="string"||typeof t.sso_session=="string"||typeof t.sso_region=="string"||typeof t.sso_role_name=="string"),Uw=!1,dQe=async({ssoStartUrl:t,ssoSession:e,ssoAccountId:r,ssoRegion:n,ssoRoleName:s,ssoClient:o,clientConfig:i,parentClientConfig:a,callerClientConfig:c,profile:l,filepath:u,configFilepath:d,ignoreCache:p,logger:m})=>{let h,y="To refresh this SSO session run aws sso login with the corresponding profile.";if(e)try{let ge=await I0t.fromSso({profile:l,filepath:u,configFilepath:d,ignoreCache:p})();h={accessToken:ge.token,expiresAt:new Date(ge.expiration).toISOString()}}catch(ge){throw new ks.CredentialsProviderError(ge.message,{tryNextLink:Uw,logger:m})}else try{h=await ks.getSSOTokenFromFile(t)}catch{throw new ks.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${y}`,{tryNextLink:Uw,logger:m})}if(new Date(h.expiresAt).getTime()-Date.now()<=0)throw new ks.CredentialsProviderError(`The SSO session associated with this profile has expired. ${y}`,{tryNextLink:Uw,logger:m});let{accessToken:I}=h,{SSOClient:x,GetRoleCredentialsCommand:b}=await Promise.resolve().then(function(){return lQe()}),T=o||new x(Object.assign({},i??{},{logger:i?.logger??c?.logger??a?.logger,region:i?.region??n,userAgentAppId:i?.userAgentAppId??c?.userAgentAppId??a?.userAgentAppId})),_;try{_=await T.send(new b({accountId:r,roleName:s,accessToken:I}))}catch(ge){throw new ks.CredentialsProviderError(ge,{tryNextLink:Uw,logger:m})}let{roleCredentials:{accessKeyId:U,secretAccessKey:O,sessionToken:z,expiration:de,credentialScope:De,accountId:Be}={}}=_;if(!U||!O||!z||!de)throw new ks.CredentialsProviderError("SSO returns an invalid temporary credential.",{tryNextLink:Uw,logger:m});let ne={accessKeyId:U,secretAccessKey:O,sessionToken:z,expiration:new Date(de),...De&&{credentialScope:De},...Be&&{accountId:Be}};return e?uQe.setCredentialFeature(ne,"CREDENTIALS_SSO","s"):uQe.setCredentialFeature(ne,"CREDENTIALS_SSO_LEGACY","u"),ne},mQe=(t,e)=>{let{sso_start_url:r,sso_account_id:n,sso_region:s,sso_role_name:o}=t;if(!r||!n||!s||!o)throw new ks.CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(t).join(", ")} -Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:e});return t},x0t=(t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:i}=t,{ssoClient:a}=t,c=ks.getProfileName({profile:t.profile??e?.profile});if(!r&&!n&&!s&&!o&&!i){let u=(await ks.parseKnownFiles(t))[c];if(!u)throw new ks.CredentialsProviderError(`Profile ${c} was not found.`,{logger:t.logger});if(!pQe(u))throw new ks.CredentialsProviderError(`Profile ${c} is not configured with SSO credentials.`,{logger:t.logger});if(u?.sso_session){let x=(await ks.loadSsoSessionData(t))[u.sso_session],b=` configurations in profile ${c} and sso-session ${u.sso_session}`;if(s&&s!==x.sso_region)throw new ks.CredentialsProviderError("Conflicting SSO region"+b,{tryNextLink:!1,logger:t.logger});if(r&&r!==x.sso_start_url)throw new ks.CredentialsProviderError("Conflicting SSO start_url"+b,{tryNextLink:!1,logger:t.logger});u.sso_region=x.sso_region,u.sso_start_url=x.sso_start_url}let{sso_start_url:d,sso_account_id:p,sso_region:m,sso_role_name:h,sso_session:y}=mQe(u,t.logger);return dQe({ssoStartUrl:d,ssoSession:y,ssoAccountId:p,ssoRegion:m,ssoRoleName:h,ssoClient:a,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:c,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}else{if(!r||!n||!s||!o)throw new ks.CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:t.logger});return dQe({ssoStartUrl:r,ssoSession:i,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoClient:a,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:c,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}};CD.fromSSO=x0t;CD.isSsoProfile=pQe;CD.validateSsoProfile=mQe});function w0t(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"signin",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}function b0t(t){return{schemeId:"smithy.api#noAuth"}}var fQe,AQe,hQe,GJ=C(()=>{Kr();Ee();fQe=async(t,e,r)=>({operation:mr(e).operation,region:await Ft(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});AQe=t=>{let e=[];return t.operation==="CreateOAuth2Token"?e.push(b0t(t)):e.push(w0t(t)),e},hQe=t=>{let e=Cl(t);return Object.assign(e,{authSchemePreference:Ft(t.authSchemePreference??[])})}});var gQe,yQe,HJ=C(()=>{gQe=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"signin"}),yQe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var qw,kf,ID,EQe,wQe,xD,YJ,zJ,CQe,WJ,VJ,yp,IQe,xQe,S0t,os,B0t,bQe,SQe=C(()=>{It();qw="ref",kf=-1,ID=!0,EQe="isSet",wQe="PartitionResult",xD="booleanEquals",YJ="getAttr",zJ="stringEquals",CQe={[qw]:"Endpoint"},WJ={[qw]:wQe},VJ={fn:YJ,argv:[WJ,"name"]},yp={},IQe=[{[qw]:"Region"}],xQe={conditions:[[EQe,[CQe]],[EQe,IQe],["aws.partition",IQe,wQe],[xD,[{[qw]:"UseFIPS"},ID]],[xD,[{[qw]:"UseDualStack"},ID]],[xD,[{fn:YJ,argv:[WJ,"supportsDualStack"]},ID]],[xD,[{fn:YJ,argv:[WJ,"supportsFIPS"]},ID]],[zJ,[VJ,"aws"]],[zJ,[VJ,"aws-cn"]],[zJ,[VJ,"aws-us-gov"]]],results:[[kf],[kf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[kf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[CQe,yp],["https://{Region}.signin.aws.amazon.com",yp],["https://{Region}.signin.amazonaws.cn",yp],["https://{Region}.signin.amazonaws-us-gov.com",yp],["https://signin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",yp],[kf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://signin-fips.{Region}.{PartitionResult#dnsSuffix}",yp],[kf,"FIPS is enabled but this partition does not support FIPS"],["https://signin.{Region}.{PartitionResult#dualStackDnsSuffix}",yp],[kf,"DualStack is enabled but this partition does not support DualStack"],["https://signin.{Region}.{PartitionResult#dnsSuffix}",yp],[kf,"Invalid Configuration: Missing Region"]]},S0t=2,os=1e8,B0t=new Int32Array([-1,1,-1,0,15,3,1,4,os+14,2,5,os+14,3,11,6,4,10,7,7,os+4,8,8,os+5,9,9,os+6,os+13,5,os+11,os+12,4,13,12,6,os+9,os+10,5,14,os+8,6,os+7,os+8,3,os+1,16,4,os+2,os+3]),bQe=Di.from(B0t,S0t,xQe.conditions,xQe.results)});var R0t,BQe,RQe=C(()=>{xt();It();SQe();R0t=new ki({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),BQe=(t,e={})=>R0t.get(t,()=>Wc(bQe,{endpointParams:t,logger:e.logger}));io.aws=va});var La,wD=C(()=>{Ee();La=class t extends Mi{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var $w,Gw,Hw,zw,jJ=C(()=>{wD();$w=class t extends La{name="AccessDeniedException";$fault="client";error;constructor(e){super({name:"AccessDeniedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},Gw=class t extends La{name="InternalServerException";$fault="server";error;constructor(e){super({name:"InternalServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},Hw=class t extends La{name="TooManyRequestsError";$fault="client";error;constructor(e){super({name:"TooManyRequestsError",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},zw=class t extends La{name="ValidationException";$fault="client";error;constructor(e){super({name:"ValidationException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}}});var N0t,T0t,P0t,v0t,_0t,Q0t,D0t,k0t,L0t,O0t,M0t,NQe,TQe,JJ,PQe,vQe,F0t,Ep,_Qe,QQe,U0t,KJ,DQe,Ko,SD,bD,kQe,FQe,LQe,OQe,q0t,$0t,G0t,MQe,zi,UQe,qQe,Vw,$Qe,GQe,HQe,zQe,XJ,VQe,YQe,WQe,jQe,JQe,KQe,ZJ,BD=C(()=>{Et();jJ();wD();N0t="AccessDeniedException",T0t="AccessToken",P0t="CreateOAuth2Token",v0t="CreateOAuth2TokenRequest",_0t="CreateOAuth2TokenRequestBody",Q0t="CreateOAuth2TokenResponseBody",D0t="CreateOAuth2TokenResponse",k0t="InternalServerException",L0t="RefreshToken",O0t="TooManyRequestsError",M0t="ValidationException",NQe="accessKeyId",TQe="accessToken",JJ="client",PQe="clientId",vQe="codeVerifier",F0t="code",Ep="error",_Qe="expiresIn",QQe="grantType",U0t="http",KJ="httpError",DQe="idToken",Ko="jsonName",SD="message",bD="refreshToken",kQe="redirectUri",FQe="smithy.ts.sdk.synthetic.com.amazonaws.signin",LQe="secretAccessKey",OQe="sessionToken",q0t="server",$0t="tokenInput",G0t="tokenOutput",MQe="tokenType",zi="com.amazonaws.signin",UQe=hr.for(FQe),qQe=[-3,FQe,"SigninServiceException",0,[],[]];UQe.registerError(qQe,La);Vw=hr.for(zi),$Qe=[-3,zi,N0t,{[Ep]:JJ},[Ep,SD],[0,0],2];Vw.registerError($Qe,$w);GQe=[-3,zi,k0t,{[Ep]:q0t,[KJ]:500},[Ep,SD],[0,0],2];Vw.registerError(GQe,Gw);HQe=[-3,zi,O0t,{[Ep]:JJ,[KJ]:429},[Ep,SD],[0,0],2];Vw.registerError(HQe,Hw);zQe=[-3,zi,M0t,{[Ep]:JJ,[KJ]:400},[Ep,SD],[0,0],2];Vw.registerError(zQe,zw);XJ=[UQe,Vw],VQe=[0,zi,L0t,8,0],YQe=[3,zi,T0t,8,[NQe,LQe,OQe],[[0,{[Ko]:NQe}],[0,{[Ko]:LQe}],[0,{[Ko]:OQe}]],3],WQe=[3,zi,v0t,0,[$0t],[[()=>jQe,16]],1],jQe=[3,zi,_0t,0,[PQe,QQe,F0t,kQe,vQe,bD],[[0,{[Ko]:PQe}],[0,{[Ko]:QQe}],0,[0,{[Ko]:kQe}],[0,{[Ko]:vQe}],[()=>VQe,{[Ko]:bD}]],2],JQe=[3,zi,D0t,0,[G0t],[[()=>KQe,16]],1],KQe=[3,zi,Q0t,0,[TQe,MQe,_Qe,bD,DQe],[[()=>YQe,{[Ko]:TQe}],[0,{[Ko]:MQe}],[1,{[Ko]:_Qe}],[()=>VQe,{[Ko]:bD}],[0,{[Ko]:DQe}]],4],ZJ=[9,zi,P0t,{[U0t]:["POST","/v1/token",200]},()=>WQe,()=>JQe]});var XQe,ZQe=C(()=>{Kr();vf();_s();Ee();_e();nt();GJ();RQe();BD();XQe=t=>({apiVersion:"2023-01-01",base64Decoder:t?.base64Decoder??qr,base64Encoder:t?.base64Encoder??fr,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??BQe,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??AQe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new Ln},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new jo}],logger:t?.logger??new co,protocol:t?.protocol??Lu,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.signin",errorTypeRegistries:XJ,version:"2023-01-01",serviceTarget:"Signin"},serviceId:t?.serviceId??"Signin",urlParser:t?.urlParser??ts,utf8Decoder:t?.utf8Decoder??$r,utf8Encoder:t?.utf8Encoder??Ar})});var RD,eDe,tDe=C(()=>{iw();xt();Kr();Ee();Nt();vs();nt();RD=Q(Pu());ZQe();eDe=t=>{sl(process.version);let e=Yc(t),r=()=>e().then(nl),n=XQe(t);Uc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??rt(Tu,s),bodyLengthChecker:t?.bodyLengthChecker??$c,defaultUserAgentProvider:t?.defaultUserAgentProvider??Pa({serviceId:n.serviceId,clientVersion:pp.version}),maxAttempts:t?.maxAttempts??rt(al,t),region:t?.region??rt(Qn,{...Ts,...s}),requestHandler:RD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??rt({...ll,default:async()=>(await r()).retryMode||Ui},t),sha256:t?.sha256??Oi.bind(null,"sha256"),streamCollector:t?.streamCollector??RD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??rt(zc,s),useFipsEndpoint:t?.useFipsEndpoint??rt(Vc,s),userAgentAppId:t?.userAgentAppId??rt(gl,s)}}});var rDe,nDe,sDe=C(()=>{rDe=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},nDe=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()})});var oDe,iDe=C(()=>{xt();Ee();_e();sDe();oDe=(t,e)=>{let r=Object.assign(yl(t),Ba(t),Xc(t),rDe(t));return e.forEach(n=>n.configure(r)),Object.assign(t,El(r),ol(r),Zc(r),nDe(r))}});var Yw,e5=C(()=>{xt();_s();Ee();Nt();It();_e();vs();Et();GJ();HJ();tDe();iDe();Yw=class extends Jn{config;constructor(...[e]){let r=eDe(e||{});super(r),this.initConfig=r;let n=gQe(r),s=fl(n),o=cl(s),i=Vo(o),a=i,c=Iu(a),l=hQe(c),u=oDe(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(Su(this.config)),this.middlewareStack.use(Al(this.config)),this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(el(this.config)),this.middlewareStack.use(ul(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(Ru(this.config,{httpAuthSchemeParametersProvider:fQe,identityProviderConfigProvider:async d=>new Ta({"aws.auth#sigv4":d.credentials})})),this.middlewareStack.use(Nu(this.config))}destroy(){super.destroy()}}});var Ww,t5=C(()=>{Ee();It();HJ();BD();Ww=class extends dn.classBuilder().ep(yQe).m(function(e,r,n,s){return[ba(n,e.getEndpointParameterInstructions())]}).s("Signin","CreateOAuth2Token",{}).n("SigninClient","CreateOAuth2TokenCommand").sc(ZJ).build(){}});var H0t,ND,aDe=C(()=>{Ee();t5();e5();H0t={CreateOAuth2TokenCommand:Ww},ND=class extends Yw{};rl(H0t,ND)});var cDe=C(()=>{t5()});var z0t,lDe=C(()=>{z0t={AUTHCODE_EXPIRED:"AUTHCODE_EXPIRED",INSUFFICIENT_PERMISSIONS:"INSUFFICIENT_PERMISSIONS",INVALID_REQUEST:"INVALID_REQUEST",SERVER_ERROR:"server_error",TOKEN_EXPIRED:"TOKEN_EXPIRED",USER_CREDENTIALS_CHANGED:"USER_CREDENTIALS_CHANGED"}});var uDe=C(()=>{});var dDe={};Zr(dDe,{$Command:()=>dn,AccessDeniedException:()=>$w,AccessDeniedException$:()=>$Qe,AccessToken$:()=>YQe,CreateOAuth2Token$:()=>ZJ,CreateOAuth2TokenCommand:()=>Ww,CreateOAuth2TokenRequest$:()=>WQe,CreateOAuth2TokenRequestBody$:()=>jQe,CreateOAuth2TokenResponse$:()=>JQe,CreateOAuth2TokenResponseBody$:()=>KQe,InternalServerException:()=>Gw,InternalServerException$:()=>GQe,OAuth2ErrorCode:()=>z0t,Signin:()=>ND,SigninClient:()=>Yw,SigninServiceException:()=>La,SigninServiceException$:()=>qQe,TooManyRequestsError:()=>Hw,TooManyRequestsError$:()=>HQe,ValidationException:()=>zw,ValidationException$:()=>zQe,__Client:()=>Jn,errorTypeRegistries:()=>XJ});var pDe=C(()=>{e5();aDe();cDe();BD();lDe();jJ();uDe();wD()});var fDe=w(mDe=>{"use strict";var V0t=(xt(),Y(Qs)),Oa=(Nt(),Y(Dn)),Y0t=(_e(),Y(tl)),TD=require("node:crypto"),r5=require("node:fs"),W0t=require("node:os"),n5=require("node:path"),s5=class t{profileData;init;callerClientConfig;static REFRESH_THRESHOLD=300*1e3;constructor(e,r,n){this.profileData=e,this.init=r,this.callerClientConfig=n}async loadCredentials(){let e=await this.loadToken();if(!e)throw new Oa.CredentialsProviderError(`Failed to load a token for session ${this.loginSession}, please re-authenticate using aws login`,{tryNextLink:!1,logger:this.logger});let r=e.accessToken,n=Date.now();return new Date(r.expiresAt).getTime()-n<=t.REFRESH_THRESHOLD?this.refresh(e):{accessKeyId:r.accessKeyId,secretAccessKey:r.secretAccessKey,sessionToken:r.sessionToken,accountId:r.accountId,expiration:new Date(r.expiresAt)}}get logger(){return this.init?.logger}get loginSession(){return this.profileData.login_session}async refresh(e){let{SigninClient:r,CreateOAuth2TokenCommand:n}=await Promise.resolve().then(()=>(pDe(),dDe)),{logger:s,userAgentAppId:o}=this.callerClientConfig??{},a=(d=>d?.metadata?.handlerProtocol==="h2")(this.callerClientConfig?.requestHandler)?void 0:this.callerClientConfig?.requestHandler,c=this.profileData.region??await this.callerClientConfig?.region?.()??process.env.AWS_REGION,l=new r({credentials:{accessKeyId:"",secretAccessKey:""},region:c,requestHandler:a,logger:s,userAgentAppId:o,...this.init?.clientConfig});this.createDPoPInterceptor(l.middlewareStack);let u={tokenInput:{clientId:e.clientId,refreshToken:e.refreshToken,grantType:"refresh_token"}};try{let d=await l.send(new n(u)),{accessKeyId:p,secretAccessKey:m,sessionToken:h}=d.tokenOutput?.accessToken??{},{refreshToken:y,expiresIn:I}=d.tokenOutput??{};if(!p||!m||!h||!y)throw new Oa.CredentialsProviderError("Token refresh response missing required fields",{logger:this.logger,tryNextLink:!1});let x=(I??900)*1e3,b=new Date(Date.now()+x),T={...e,accessToken:{...e.accessToken,accessKeyId:p,secretAccessKey:m,sessionToken:h,expiresAt:b.toISOString()},refreshToken:y};await this.saveToken(T);let _=T.accessToken;return{accessKeyId:_.accessKeyId,secretAccessKey:_.secretAccessKey,sessionToken:_.sessionToken,accountId:_.accountId,expiration:b}}catch(d){if(d.name==="AccessDeniedException"){let p=d.error,m;switch(p){case"TOKEN_EXPIRED":m="Your session has expired. Please reauthenticate.";break;case"USER_CREDENTIALS_CHANGED":m="Unable to refresh credentials because of a change in your password. Please reauthenticate with your new password.";break;case"INSUFFICIENT_PERMISSIONS":m="Unable to refresh credentials due to insufficient permissions. You may be missing permission for the 'CreateOAuth2Token' action.";break;default:m=`Failed to refresh token: ${String(d)}. Please re-authenticate using \`aws login\``}throw new Oa.CredentialsProviderError(m,{logger:this.logger,tryNextLink:!1})}throw new Oa.CredentialsProviderError(`Failed to refresh token: ${String(d)}. Please re-authenticate using aws login`,{logger:this.logger})}}async loadToken(){let e=this.getTokenFilePath();try{let r;try{r=await Oa.readFile(e,{ignoreCache:this.init?.ignoreCache})}catch{r=await r5.promises.readFile(e,"utf8")}let n=JSON.parse(r),s=["accessToken","clientId","refreshToken","dpopKey"].filter(o=>!n[o]);if(n.accessToken?.accountId||s.push("accountId"),s.length>0)throw new Oa.CredentialsProviderError(`Token validation failed, missing fields: ${s.join(", ")}`,{logger:this.logger,tryNextLink:!1});return n}catch(r){throw new Oa.CredentialsProviderError(`Failed to load token from ${e}: ${String(r)}`,{logger:this.logger,tryNextLink:!1})}}async saveToken(e){let r=this.getTokenFilePath(),n=n5.dirname(r);try{await r5.promises.mkdir(n,{recursive:!0})}catch{}await r5.promises.writeFile(r,JSON.stringify(e,null,2),"utf8")}getTokenFilePath(){let e=process.env.AWS_LOGIN_CACHE_DIRECTORY??n5.join(W0t.homedir(),".aws","login","cache"),r=Buffer.from(this.loginSession,"utf8"),n=TD.createHash("sha256").update(r).digest("hex");return n5.join(e,`${n}.json`)}derToRawSignature(e){let r=2;if(e[r]!==2)throw new Error("Invalid DER signature");r++;let n=e[r++],s=e.subarray(r,r+n);if(r+=n,e[r]!==2)throw new Error("Invalid DER signature");r++;let o=e[r++],i=e.subarray(r,r+o);s=s[0]===0?s.subarray(1):s,i=i[0]===0?i.subarray(1):i;let a=Buffer.concat([Buffer.alloc(32-s.length),s]),c=Buffer.concat([Buffer.alloc(32-i.length),i]);return Buffer.concat([a,c])}createDPoPInterceptor(e){e.add(r=>async n=>{if(Y0t.HttpRequest.isInstance(n.request)){let s=n.request,o=`${s.protocol}//${s.hostname}${s.port?`:${s.port}`:""}${s.path}`,i=await this.generateDpop(s.method,o);s.headers={...s.headers,DPoP:i}}return r(n)},{step:"finalizeRequest",name:"dpopInterceptor",override:!0})}async generateDpop(e="POST",r){let n=await this.loadToken();try{let s=TD.createPrivateKey({key:n.dpopKey,format:"pem",type:"sec1"}),i=TD.createPublicKey(s).export({format:"der",type:"spki"}),a=-1;for(let b=0;basync({callerClientConfig:e}={})=>{t?.logger?.debug?.("@aws-sdk/credential-providers - fromLoginCredentials");let r=await Oa.parseKnownFiles(t||{}),n=Oa.getProfileName({profile:t?.profile??e?.profile}),s=r[n];if(!s?.login_session)throw new Oa.CredentialsProviderError(`Profile ${n} does not contain login_session.`,{tryNextLink:!0,logger:t?.logger});let i=await new s5(s,t,e).loadCredentials();return V0t.setCredentialFeature(i,"CREDENTIALS_LOGIN","AD")};mDe.fromLoginCredentials=j0t});var c5=w(vD=>{"use strict";var o5=Ej(),jw={CrtSignerV4:null},i5="X-Amz-S3session-Token",ADe=i5.toLowerCase(),PD=class extends o5.SignatureV4{async signWithCredentials(e,r,n){let s=hDe(r);e.headers[ADe]=r.sessionToken;let o=this;return gDe(o,s),o.signRequest(e,n??{})}async presignWithCredentials(e,r,n){let s=hDe(r);return delete e.headers[ADe],e.headers[i5]=r.sessionToken,e.query=e.query??{},e.query[i5]=r.sessionToken,gDe(this,s),this.presign(e,n)}};function hDe(t){return{accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,expiration:t.expiration}}function gDe(t,e){let r=t.credentialProvider;t.credentialProvider=()=>(t.credentialProvider=r,Promise.resolve(e))}var a5=class{sigv4aSigner;sigv4Signer;signerOptions;static sigv4aDependency(){return typeof jw.CrtSignerV4=="function"?"crt":typeof o5.signatureV4aContainer.SignatureV4a=="function"?"js":"none"}constructor(e){this.sigv4Signer=new PD(e),this.signerOptions=e}async sign(e,r={}){return r.signingRegion==="*"?this.getSigv4aSigner().sign(e,r):this.sigv4Signer.sign(e,r)}async signWithCredentials(e,r,n={}){if(n.signingRegion==="*"){let s=this.getSigv4aSigner(),o=jw.CrtSignerV4;if(o&&s instanceof o)return s.signWithCredentials(e,r,n);throw new Error(`signWithCredentials with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.signWithCredentials(e,r,n)}async presign(e,r={}){if(r.signingRegion==="*"){let n=this.getSigv4aSigner(),s=jw.CrtSignerV4;if(s&&n instanceof s)return n.presign(e,r);throw new Error(`presign with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.presign(e,r)}async presignWithCredentials(e,r,n={}){if(n.signingRegion==="*")throw new Error("Method presignWithCredentials is not supported for [signingRegion=*].");return this.sigv4Signer.presignWithCredentials(e,r,n)}getSigv4aSigner(){if(!this.sigv4aSigner){let e=jw.CrtSignerV4,r=o5.signatureV4aContainer.SignatureV4a;if(this.signerOptions.runtime==="node"){if(!e&&!r)throw new Error("Neither CRT nor JS SigV4a implementation is available. Please load either @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt");if(e&&typeof e=="function")this.sigv4aSigner=new e({...this.signerOptions,signingAlgorithm:1});else if(r&&typeof r=="function")this.sigv4aSigner=new r({...this.signerOptions});else throw new Error("Available SigV4a implementation is not a valid constructor. Please ensure you've properly imported @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a.For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt")}else{if(!r||typeof r!="function")throw new Error("JS SigV4a implementation is not available or not a valid constructor. Please check whether you have installed the @aws-sdk/signature-v4a package explicitly. The CRT implementation is not available for browsers. You must also register the package by calling [require('@aws-sdk/signature-v4a');] or an ESM equivalent such as [import '@aws-sdk/signature-v4a';]. For more information please go to https://github.com/aws/aws-sdk-js-v3#using-javascript-non-crt-implementation-of-sigv4a");this.sigv4aSigner=new r({...this.signerOptions})}}return this.sigv4aSigner}};vD.SignatureV4MultiRegion=a5;vD.SignatureV4SignWithCredentials=PD;vD.signatureV4CrtContainer=jw});var Sy,Lf,Jw,yDe,BDe,Kw,Mn,l5,EDe,CDe,IDe,xDe,wDe,Fn,u5,by,bDe,SDe,J0t,Tt,K0t,RDe,NDe=C(()=>{It();Sy="ref",Lf=-1,Jw=!0,yDe="isSet",BDe="PartitionResult",Kw="booleanEquals",Mn="stringEquals",l5="getAttr",EDe="us-east-1",CDe="sigv4",IDe="sts",xDe="https://sts.{Region}.{PartitionResult#dnsSuffix}",wDe={[Sy]:"Endpoint"},Fn={[Sy]:"Region"},u5={[Sy]:BDe},by={},bDe=[Fn],SDe={conditions:[[yDe,[wDe]],[yDe,bDe],["aws.partition",bDe,BDe],[Kw,[{[Sy]:"UseFIPS"},Jw]],[Kw,[{[Sy]:"UseDualStack"},Jw]],[Mn,[Fn,"aws-global"]],[Kw,[{[Sy]:"UseGlobalEndpoint"},Jw]],[Mn,[Fn,"eu-central-1"]],[Kw,[{fn:l5,argv:[u5,"supportsDualStack"]},Jw]],[Kw,[{fn:l5,argv:[u5,"supportsFIPS"]},Jw]],[Mn,[Fn,"ap-south-1"]],[Mn,[Fn,"eu-north-1"]],[Mn,[Fn,"eu-west-1"]],[Mn,[Fn,"eu-west-2"]],[Mn,[Fn,"eu-west-3"]],[Mn,[Fn,"sa-east-1"]],[Mn,[Fn,EDe]],[Mn,[Fn,"us-east-2"]],[Mn,[Fn,"us-west-2"]],[Mn,[Fn,"us-west-1"]],[Mn,[Fn,"ca-central-1"]],[Mn,[Fn,"ap-southeast-1"]],[Mn,[Fn,"ap-northeast-1"]],[Mn,[Fn,"ap-southeast-2"]],[Mn,[{fn:l5,argv:[u5,"name"]},"aws-us-gov"]]],results:[[Lf],["https://sts.amazonaws.com",{authSchemes:[{name:CDe,signingName:IDe,signingRegion:EDe}]}],[xDe,{authSchemes:[{name:CDe,signingName:IDe,signingRegion:"{Region}"}]}],[Lf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Lf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[wDe,by],["https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",by],[Lf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://sts.{Region}.amazonaws.com",by],["https://sts-fips.{Region}.{PartitionResult#dnsSuffix}",by],[Lf,"FIPS is enabled but this partition does not support FIPS"],["https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}",by],[Lf,"DualStack is enabled but this partition does not support DualStack"],[xDe,by],[Lf,"Invalid Configuration: Missing Region"]]},J0t=2,Tt=1e8,K0t=new Int32Array([-1,1,-1,0,30,3,1,4,Tt+14,2,5,Tt+14,3,25,6,4,24,7,5,Tt+1,8,6,9,Tt+13,7,Tt+1,10,10,Tt+1,11,11,Tt+1,12,12,Tt+1,13,13,Tt+1,14,14,Tt+1,15,15,Tt+1,16,16,Tt+1,17,17,Tt+1,18,18,Tt+1,19,19,Tt+1,20,20,Tt+1,21,21,Tt+1,22,22,Tt+1,23,23,Tt+1,Tt+2,8,Tt+11,Tt+12,4,28,26,9,27,Tt+10,24,Tt+8,Tt+9,8,29,Tt+7,9,Tt+6,Tt+7,3,Tt+3,31,4,Tt+4,Tt+5]),RDe=Di.from(K0t,J0t,SDe.conditions,SDe.results)});var X0t,_D,d5=C(()=>{xt();It();NDe();X0t=new ki({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS","UseGlobalEndpoint"]}),_D=(t,e={})=>X0t.get(t,()=>Wc(RDe,{endpointParams:t,logger:e.logger}));io.aws=va});function vDe(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sts",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}function p5(t){return{schemeId:"aws.auth#sigv4a",signingProperties:{name:"sts",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}function _De(t){return{schemeId:"smithy.api#noAuth"}}var TDe,Z0t,ebt,PDe,tbt,rbt,QDe,DDe,m5=C(()=>{Kr();TDe=Q(c5());Ee();It();d5();Z0t=t=>async(e,r,n)=>{if(!n)throw new Error("Could not find `input` for `defaultEndpointRuleSetHttpAuthSchemeParametersProvider`");let s=await t(e,r,n),o=mr(r)?.commandInstance?.constructor?.getEndpointParameterInstructions;if(!o)throw new Error(`getEndpointParameterInstructions() is not defined on '${r.commandName}'`);let i=await Tx(n,{getEndpointParameterInstructions:o},e);return Object.assign(s,i)},ebt=async(t,e,r)=>({operation:mr(e).operation,region:await Ft(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),PDe=Z0t(ebt);tbt=(t,e,r)=>s=>{let i=t(s).properties?.authSchemes;if(!i)return e(s);let a=[];for(let c of i){let{name:l,properties:u={},...d}=c,p=l.toLowerCase();l!==p&&console.warn(`HttpAuthScheme has been normalized with lowercasing: '${l}' to '${p}'`);let m;if(p==="sigv4a"){m="aws.auth#sigv4a";let I=i.find(x=>{let b=x.name.toLowerCase();return b!=="sigv4a"&&b.startsWith("sigv4")});if(TDe.SignatureV4MultiRegion.sigv4aDependency()==="none"&&I)continue}else if(p.startsWith("sigv4"))m="aws.auth#sigv4";else throw new Error(`Unknown HttpAuthScheme found in '@smithy.rules#endpointRuleSet': '${p}'`);let h=r[m];if(!h)throw new Error(`Could not find HttpAuthOption create function for '${m}'`);let y=h(s);y.schemeId=m,y.signingProperties={...y.signingProperties||{},...d,...u},a.push(y)}return a},rbt=t=>{let e=[];return t.operation==="AssumeRoleWithWebIdentity"?(e.push(_De(t)),e.push(p5(t))):(e.push(vDe(t)),e.push(p5(t))),e},QDe=tbt(_D,rbt,{"aws.auth#sigv4":vDe,"aws.auth#sigv4a":p5,"smithy.api#noAuth":_De}),DDe=t=>{let e=Cl(t),r=ij(e);return Object.assign(r,{authSchemePreference:Ft(t.authSchemePreference??[])})}});var kDe,QD,DD=C(()=>{kDe=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,useGlobalEndpoint:t.useGlobalEndpoint??!1,defaultSigningName:"sts"}),QD={UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var mo,kD=C(()=>{Ee();mo=class t extends Mi{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var Xw,Zw,e0,t0,r0,n0,s0,f5=C(()=>{kD();Xw=class t extends mo{name="ExpiredTokenException";$fault="client";constructor(e){super({name:"ExpiredTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Zw=class t extends mo{name="MalformedPolicyDocumentException";$fault="client";constructor(e){super({name:"MalformedPolicyDocumentException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},e0=class t extends mo{name="PackedPolicyTooLargeException";$fault="client";constructor(e){super({name:"PackedPolicyTooLargeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},t0=class t extends mo{name="RegionDisabledException";$fault="client";constructor(e){super({name:"RegionDisabledException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},r0=class t extends mo{name="IDPRejectedClaimException";$fault="client";constructor(e){super({name:"IDPRejectedClaimException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},n0=class t extends mo{name="InvalidIdentityTokenException";$fault="client";constructor(e){super({name:"InvalidIdentityTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},s0=class t extends mo{name="IDPCommunicationErrorException";$fault="client";$retryable={};constructor(e){super({name:"IDPCommunicationErrorException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}}});var nbt,sbt,obt,ibt,abt,cbt,A5,lbt,ubt,dbt,pbt,h5,mbt,LDe,fbt,Abt,hbt,gbt,ybt,Ebt,Cbt,Ibt,ODe,MDe,xbt,wbt,bbt,Sbt,Bbt,Rbt,FDe,Nbt,Tbt,UDe,Pbt,qDe,vbt,_bt,g5,Qbt,Dbt,kbt,Lbt,Obt,Mbt,Fbt,Ubt,qbt,$bt,Of,Mf,Gbt,Ff,Uf,qf,Hbt,$De,zbt,or,GDe,HDe,Cp,zDe,VDe,YDe,WDe,jDe,JDe,KDe,y5,Vbt,Ybt,E5,XDe,ZDe,eke,tke,C5,rke,nke,ske,oke,Wbt,jbt,I5,x5,o0=C(()=>{Et();f5();kD();nbt="Arn",sbt="AccessKeyId",obt="AssumeRole",ibt="AssumedRoleId",abt="AssumeRoleRequest",cbt="AssumeRoleResponse",A5="AssumedRoleUser",lbt="AssumeRoleWithWebIdentity",ubt="AssumeRoleWithWebIdentityRequest",dbt="AssumeRoleWithWebIdentityResponse",pbt="Audience",h5="Credentials",mbt="ContextAssertion",LDe="DurationSeconds",fbt="Expiration",Abt="ExternalId",hbt="ExpiredTokenException",gbt="IDPCommunicationErrorException",ybt="IDPRejectedClaimException",Ebt="InvalidIdentityTokenException",Cbt="Key",Ibt="MalformedPolicyDocumentException",ODe="Policy",MDe="PolicyArns",xbt="ProviderArn",wbt="ProvidedContexts",bbt="ProvidedContextsListType",Sbt="ProvidedContext",Bbt="PolicyDescriptorType",Rbt="ProviderId",FDe="PackedPolicySize",Nbt="PackedPolicyTooLargeException",Tbt="Provider",UDe="RoleArn",Pbt="RegionDisabledException",qDe="RoleSessionName",vbt="SecretAccessKey",_bt="SubjectFromWebIdentityToken",g5="SourceIdentity",Qbt="SerialNumber",Dbt="SessionToken",kbt="Tags",Lbt="TokenCode",Obt="TransitiveTagKeys",Mbt="Tag",Fbt="Value",Ubt="WebIdentityToken",qbt="arn",$bt="accessKeySecretType",Of="awsQueryError",Mf="client",Gbt="clientTokenType",Ff="error",Uf="httpError",qf="message",Hbt="policyDescriptorListType",$De="smithy.ts.sdk.synthetic.com.amazonaws.sts",zbt="tagListType",or="com.amazonaws.sts",GDe=hr.for($De),HDe=[-3,$De,"STSServiceException",0,[],[]];GDe.registerError(HDe,mo);Cp=hr.for(or),zDe=[-3,or,hbt,{[Of]:["ExpiredTokenException",400],[Ff]:Mf,[Uf]:400},[qf],[0]];Cp.registerError(zDe,Xw);VDe=[-3,or,gbt,{[Of]:["IDPCommunicationError",400],[Ff]:Mf,[Uf]:400},[qf],[0]];Cp.registerError(VDe,s0);YDe=[-3,or,ybt,{[Of]:["IDPRejectedClaim",403],[Ff]:Mf,[Uf]:403},[qf],[0]];Cp.registerError(YDe,r0);WDe=[-3,or,Ebt,{[Of]:["InvalidIdentityToken",400],[Ff]:Mf,[Uf]:400},[qf],[0]];Cp.registerError(WDe,n0);jDe=[-3,or,Ibt,{[Of]:["MalformedPolicyDocument",400],[Ff]:Mf,[Uf]:400},[qf],[0]];Cp.registerError(jDe,Zw);JDe=[-3,or,Nbt,{[Of]:["PackedPolicyTooLarge",400],[Ff]:Mf,[Uf]:400},[qf],[0]];Cp.registerError(JDe,e0);KDe=[-3,or,Pbt,{[Of]:["RegionDisabledException",403],[Ff]:Mf,[Uf]:403},[qf],[0]];Cp.registerError(KDe,t0);y5=[GDe,Cp],Vbt=[0,or,$bt,8,0],Ybt=[0,or,Gbt,8,0],E5=[3,or,A5,0,[ibt,nbt],[0,0],2],XDe=[3,or,abt,0,[UDe,qDe,MDe,ODe,LDe,kbt,Obt,Abt,Qbt,Lbt,g5,wbt],[0,0,()=>oke,0,1,()=>jbt,64,0,0,0,0,()=>Wbt],2],ZDe=[3,or,cbt,0,[h5,A5,FDe,g5],[[()=>C5,0],()=>E5,1,0]],eke=[3,or,ubt,0,[UDe,qDe,Ubt,Rbt,MDe,ODe,LDe],[0,0,[()=>Ybt,0],0,()=>oke,0,1],3],tke=[3,or,dbt,0,[h5,_bt,A5,FDe,Tbt,pbt,g5],[[()=>C5,0],0,()=>E5,1,0,0,0]],C5=[3,or,h5,0,[sbt,vbt,Dbt,fbt],[0,[()=>Vbt,0],0,4],4],rke=[3,or,Bbt,0,[qbt],[0]],nke=[3,or,Sbt,0,[xbt,mbt],[0,0]],ske=[3,or,Mbt,0,[Cbt,Fbt],[0,0],2],oke=[1,or,Hbt,0,()=>rke],Wbt=[1,or,bbt,0,()=>nke],jbt=[1,or,zbt,0,()=>ske],I5=[9,or,obt,0,()=>XDe,()=>ZDe],x5=[9,or,lbt,0,()=>eke,()=>tke]});var ike,ake,cke=C(()=>{Kr();vf();ike=Q(c5());_s();Ee();_e();nt();m5();d5();o0();ake=t=>({apiVersion:"2011-06-15",base64Decoder:t?.base64Decoder??qr,base64Encoder:t?.base64Encoder??fr,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??_D,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??QDe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new Ln},{schemeId:"aws.auth#sigv4a",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4a"),signer:new cp},{schemeId:"smithy.api#noAuth",identityProvider:e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new jo}],logger:t?.logger??new co,protocol:t?.protocol??Pf,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.sts",errorTypeRegistries:y5,xmlNamespace:"https://sts.amazonaws.com/doc/2011-06-15/",version:"2011-06-15",serviceTarget:"AWSSecurityTokenServiceV20110615"},serviceId:t?.serviceId??"STS",signerConstructor:t?.signerConstructor??ike.SignatureV4MultiRegion,urlParser:t?.urlParser??ts,utf8Decoder:t?.utf8Decoder??$r,utf8Encoder:t?.utf8Encoder??Ar})});var LD,lke,uke=C(()=>{iw();xt();Kr();_s();Ee();Nt();vs();nt();LD=Q(Pu());cke();lke=t=>{sl(process.version);let e=Yc(t),r=()=>e().then(nl),n=ake(t);Uc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??rt(Tu,s),bodyLengthChecker:t?.bodyLengthChecker??$c,defaultUserAgentProvider:t?.defaultUserAgentProvider??Pa({serviceId:n.serviceId,clientVersion:pp.version}),httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:o=>o.getIdentityProvider("aws.auth#sigv4")||(async i=>await t.credentialDefaultProvider(i?.__config||{})()),signer:new Ln},{schemeId:"aws.auth#sigv4a",identityProvider:o=>o.getIdentityProvider("aws.auth#sigv4a"),signer:new cp},{schemeId:"smithy.api#noAuth",identityProvider:o=>o.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),signer:new jo}],maxAttempts:t?.maxAttempts??rt(al,t),region:t?.region??rt(Qn,{...Ts,...s}),requestHandler:LD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??rt({...ll,default:async()=>(await r()).retryMode||Ui},t),sha256:t?.sha256??Oi.bind(null,"sha256"),sigv4aSigningRegionSet:t?.sigv4aSigningRegionSet??rt(aj,s),streamCollector:t?.streamCollector??LD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??rt(zc,s),useFipsEndpoint:t?.useFipsEndpoint??rt(Vc,s),userAgentAppId:t?.userAgentAppId??rt(gl,s)}}});var dke,pke,mke=C(()=>{dke=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},pke=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()})});var fke,Ake=C(()=>{xt();Ee();_e();mke();fke=(t,e)=>{let r=Object.assign(yl(t),Ba(t),Xc(t),dke(t));return e.forEach(n=>n.configure(r)),Object.assign(t,El(r),ol(r),Zc(r),pke(r))}});var Ip,OD=C(()=>{xt();_s();Ee();Nt();It();_e();vs();Et();m5();DD();uke();Ake();Ip=class extends Jn{config;constructor(...[e]){let r=lke(e||{});super(r),this.initConfig=r;let n=kDe(r),s=fl(n),o=cl(s),i=Vo(o),a=i,c=Iu(a),l=DDe(c),u=fke(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(Su(this.config)),this.middlewareStack.use(Al(this.config)),this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(el(this.config)),this.middlewareStack.use(ul(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(Ru(this.config,{httpAuthSchemeParametersProvider:PDe,identityProviderConfigProvider:async d=>new Ta({"aws.auth#sigv4":d.credentials,"aws.auth#sigv4a":d.credentials})})),this.middlewareStack.use(Nu(this.config))}destroy(){super.destroy()}}});var $f,MD=C(()=>{Ee();It();DD();o0();$f=class extends dn.classBuilder().ep(QD).m(function(e,r,n,s){return[ba(n,e.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRole",{}).n("STSClient","AssumeRoleCommand").sc(I5).build(){}});var Gf,FD=C(()=>{Ee();It();DD();o0();Gf=class extends dn.classBuilder().ep(QD).m(function(e,r,n,s){return[ba(n,e.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRoleWithWebIdentity",{}).n("STSClient","AssumeRoleWithWebIdentityCommand").sc(x5).build(){}});var Jbt,UD,hke=C(()=>{Ee();MD();FD();OD();Jbt={AssumeRoleCommand:$f,AssumeRoleWithWebIdentityCommand:Gf},UD=class extends Ip{};rl(Jbt,UD)});var gke=C(()=>{MD();FD()});var yke=C(()=>{});var Eke,Cke,Ike,xke,wke,bke=C(()=>{xt();MD();FD();Eke=t=>{if(typeof t?.Arn=="string"){let e=t.Arn.split(":");if(e.length>4&&e[4]!=="")return e[4]}},Cke=async(t,e,r,n={})=>{let s=typeof t=="function"?await t():t,o=typeof e=="function"?await e():e,i="",a=s??o??(i=await yQ(n)());return r?.debug?.("@aws-sdk/client-sts::resolveRegion","accepting first of:",`${s} (credential provider clientConfig)`,`${o} (contextual client)`,`${i} (STS default: AWS_REGION, profile region, or us-east-1)`),a},Ike=(t,e)=>{let r,n;return async(s,o)=>{if(n=s,!r){let{logger:u=t?.parentClientConfig?.logger,profile:d=t?.parentClientConfig?.profile,region:p,requestHandler:m=t?.parentClientConfig?.requestHandler,credentialProviderLogger:h,userAgentAppId:y=t?.parentClientConfig?.userAgentAppId}=t,I=await Cke(p,t?.parentClientConfig?.region,h,{logger:u,profile:d}),x=!wke(m);r=new e({...t,userAgentAppId:y,profile:d,credentialDefaultProvider:()=>async()=>n,region:I,requestHandler:x?m:void 0,logger:u})}let{Credentials:i,AssumedRoleUser:a}=await r.send(new $f(o));if(!i||!i.AccessKeyId||!i.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRole call with role ${o.RoleArn}`);let c=Eke(a),l={accessKeyId:i.AccessKeyId,secretAccessKey:i.SecretAccessKey,sessionToken:i.SessionToken,expiration:i.Expiration,...i.CredentialScope&&{credentialScope:i.CredentialScope},...c&&{accountId:c}};return Hd(l,"CREDENTIALS_STS_ASSUME_ROLE","i"),l}},xke=(t,e)=>{let r;return async n=>{if(!r){let{logger:c=t?.parentClientConfig?.logger,profile:l=t?.parentClientConfig?.profile,region:u,requestHandler:d=t?.parentClientConfig?.requestHandler,credentialProviderLogger:p,userAgentAppId:m=t?.parentClientConfig?.userAgentAppId}=t,h=await Cke(u,t?.parentClientConfig?.region,p,{logger:c,profile:l}),y=!wke(d);r=new e({...t,userAgentAppId:m,profile:l,region:h,requestHandler:y?d:void 0,logger:c})}let{Credentials:s,AssumedRoleUser:o}=await r.send(new Gf(n));if(!s||!s.AccessKeyId||!s.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${n.RoleArn}`);let i=Eke(o),a={accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,sessionToken:s.SessionToken,expiration:s.Expiration,...s.CredentialScope&&{credentialScope:s.CredentialScope},...i&&{accountId:i}};return i&&Hd(a,"RESOLVED_ACCOUNT_ID","T"),Hd(a,"CREDENTIALS_STS_ASSUME_ROLE_WEB_ID","k"),a}},wke=t=>t?.metadata?.handlerProtocol==="h2"});var Ske,Bke,Rke,Kbt,Nke=C(()=>{bke();OD();Ske=(t,e)=>e?class extends t{constructor(n){super(n);for(let s of e)this.middlewareStack.use(s)}}:t,Bke=(t={},e)=>Ike(t,Ske(Ip,e)),Rke=(t={},e)=>xke(t,Ske(Ip,e)),Kbt=t=>e=>t({roleAssumer:Bke(e),roleAssumerWithWebIdentity:Rke(e),...e})});var w5={};Zr(w5,{$Command:()=>dn,AssumeRole$:()=>I5,AssumeRoleCommand:()=>$f,AssumeRoleRequest$:()=>XDe,AssumeRoleResponse$:()=>ZDe,AssumeRoleWithWebIdentity$:()=>x5,AssumeRoleWithWebIdentityCommand:()=>Gf,AssumeRoleWithWebIdentityRequest$:()=>eke,AssumeRoleWithWebIdentityResponse$:()=>tke,AssumedRoleUser$:()=>E5,Credentials$:()=>C5,ExpiredTokenException:()=>Xw,ExpiredTokenException$:()=>zDe,IDPCommunicationErrorException:()=>s0,IDPCommunicationErrorException$:()=>VDe,IDPRejectedClaimException:()=>r0,IDPRejectedClaimException$:()=>YDe,InvalidIdentityTokenException:()=>n0,InvalidIdentityTokenException$:()=>WDe,MalformedPolicyDocumentException:()=>Zw,MalformedPolicyDocumentException$:()=>jDe,PackedPolicyTooLargeException:()=>e0,PackedPolicyTooLargeException$:()=>JDe,PolicyDescriptorType$:()=>rke,ProvidedContext$:()=>nke,RegionDisabledException:()=>t0,RegionDisabledException$:()=>KDe,STS:()=>UD,STSClient:()=>Ip,STSServiceException:()=>mo,STSServiceException$:()=>HDe,Tag$:()=>ske,__Client:()=>Jn,decorateDefaultCredentialProvider:()=>Kbt,errorTypeRegistries:()=>y5,getDefaultRoleAssumer:()=>Bke,getDefaultRoleAssumerWithWebIdentity:()=>Rke});var b5=C(()=>{OD();hke();gke();o0();f5();yke();Nke();kD()});var S5=w(Tke=>{"use strict";var By=(Nt(),Y(Dn)),Xbt=require("node:child_process"),Zbt=require("node:util"),eSt=(xt(),Y(Qs)),tSt=(t,e,r)=>{if(e.Version!==1)throw Error(`Profile ${t} credential_process did not return Version 1.`);if(e.AccessKeyId===void 0||e.SecretAccessKey===void 0)throw Error(`Profile ${t} credential_process returned invalid credentials.`);if(e.Expiration){let o=new Date;if(new Date(e.Expiration){let n=e[t];if(e[t]){let s=n.credential_process;if(s!==void 0){let o=Zbt.promisify(By.externalDataInterceptor?.getTokenRecord?.().exec??Xbt.exec);try{let{stdout:i}=await o(s),a;try{a=JSON.parse(i.trim())}catch{throw Error(`Profile ${t} credential_process returned invalid JSON.`)}return tSt(t,a,e)}catch(i){throw new By.CredentialsProviderError(i.message,{logger:r})}}else throw new By.CredentialsProviderError(`Profile ${t} did not contain credential_process.`,{logger:r})}else throw new By.CredentialsProviderError(`Profile ${t} could not be found in shared credentials file.`,{logger:r})},nSt=(t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");let r=await By.parseKnownFiles(t);return rSt(By.getProfileName({profile:t.profile??e?.profile}),r,t.logger)};Tke.fromProcess=nSt});var B5=w(qD=>{"use strict";Object.defineProperty(qD,"__esModule",{value:!0});qD.fromWebToken=void 0;var sSt=t=>async e=>{t.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");let{roleArn:r,roleSessionName:n,webIdentityToken:s,providerId:o,policyArns:i,policy:a,durationSeconds:c}=t,{roleAssumerWithWebIdentity:l}=t;if(!l){let{getDefaultRoleAssumerWithWebIdentity:u}=await Promise.resolve().then(()=>(b5(),w5));l=u({...t.clientConfig,credentialProviderLogger:t.logger,parentClientConfig:{...e?.callerClientConfig,...t.parentClientConfig}},t.clientPlugins)}return l({RoleArn:r,RoleSessionName:n??`aws-sdk-js-session-${Date.now()}`,WebIdentityToken:s,ProviderId:o,PolicyArns:i,Policy:a,DurationSeconds:c})};qD.fromWebToken=sSt});var _ke=w($D=>{"use strict";Object.defineProperty($D,"__esModule",{value:!0});$D.fromTokenFile=void 0;var oSt=(xt(),Y(Qs)),Pke=(Nt(),Y(Dn)),iSt=require("node:fs"),aSt=B5(),vke="AWS_WEB_IDENTITY_TOKEN_FILE",cSt="AWS_ROLE_ARN",lSt="AWS_ROLE_SESSION_NAME",uSt=(t={})=>async e=>{t.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");let r=t?.webIdentityTokenFile??process.env[vke],n=t?.roleArn??process.env[cSt],s=t?.roleSessionName??process.env[lSt];if(!r||!n)throw new Pke.CredentialsProviderError("Web identity configuration not specified",{logger:t.logger});let o=await(0,aSt.fromWebToken)({...t,webIdentityToken:Pke.externalDataInterceptor?.getTokenRecord?.()[r]??(0,iSt.readFileSync)(r,{encoding:"ascii"}),roleArn:n,roleSessionName:s})(e);return r===process.env[vke]&&(0,oSt.setCredentialFeature)(o,"CREDENTIALS_ENV_VARS_STS_WEB_ID_TOKEN","h"),o};$D.fromTokenFile=uSt});var R5=w(Ou=>{"use strict";var GD=_ke(),HD=B5();Object.prototype.hasOwnProperty.call(GD,"__proto__")&&!Object.prototype.hasOwnProperty.call(Ou,"__proto__")&&Object.defineProperty(Ou,"__proto__",{enumerable:!0,value:GD.__proto__});Object.keys(GD).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Ou,t)&&(Ou[t]=GD[t])});Object.prototype.hasOwnProperty.call(HD,"__proto__")&&!Object.prototype.hasOwnProperty.call(Ou,"__proto__")&&Object.defineProperty(Ou,"__proto__",{enumerable:!0,value:HD.__proto__});Object.keys(HD).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Ou,t)&&(Ou[t]=HD[t])})});var Mke=w(Oke=>{"use strict";var xp=(Nt(),Y(Dn)),Mu=(xt(),Y(Qs)),dSt=fDe(),pSt=(t,e,r)=>{let n={EcsContainer:async s=>{let{fromHttp:o}=await Promise.resolve().then(()=>Q(kj())),{fromContainerMetadata:i}=await Promise.resolve().then(()=>Q(RQ()));return r?.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer"),async()=>xp.chain(o(s??{}),i(s))().then(N5)},Ec2InstanceMetadata:async s=>{r?.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");let{fromInstanceMetadata:o}=await Promise.resolve().then(()=>Q(RQ()));return async()=>o(s)().then(N5)},Environment:async s=>{r?.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");let{fromEnv:o}=await Promise.resolve().then(()=>Q(wj()));return async()=>o(s)().then(N5)}};if(t in n)return n[t];throw new xp.CredentialsProviderError(`Unsupported credential source in profile ${e}. Got ${t}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,{logger:r})},N5=t=>Mu.setCredentialFeature(t,"CREDENTIALS_PROFILE_NAMED_PROVIDER","p"),mSt=(t,{profile:e="default",logger:r}={})=>!!t&&typeof t=="object"&&typeof t.role_arn=="string"&&["undefined","string"].indexOf(typeof t.role_session_name)>-1&&["undefined","string"].indexOf(typeof t.external_id)>-1&&["undefined","string"].indexOf(typeof t.mfa_serial)>-1&&(fSt(t,{profile:e,logger:r})||ASt(t,{profile:e,logger:r})),fSt=(t,{profile:e,logger:r})=>{let n=typeof t.source_profile=="string"&&typeof t.credential_source>"u";return n&&r?.debug?.(` ${e} isAssumeRoleWithSourceProfile source_profile=${t.source_profile}`),n},ASt=(t,{profile:e,logger:r})=>{let n=typeof t.credential_source=="string"&&typeof t.source_profile>"u";return n&&r?.debug?.(` ${e} isCredentialSourceProfile credential_source=${t.credential_source}`),n},hSt=async(t,e,r,n,s={},o)=>{r.logger?.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");let i=e[t],{source_profile:a,region:c}=i;if(!r.roleAssumer){let{getDefaultRoleAssumer:u}=await Promise.resolve().then(()=>(b5(),w5));r.roleAssumer=u({...r.clientConfig,credentialProviderLogger:r.logger,parentClientConfig:{...n,...r?.parentClientConfig,region:c??r?.parentClientConfig?.region??n?.region}},r.clientPlugins)}if(a&&a in s)throw new xp.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${xp.getProfileName(r)}. Profiles visited: `+Object.keys(s).join(", "),{logger:r.logger});r.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${a?`source_profile=[${a}]`:`profile=[${t}]`}`);let l=a?o(a,e,r,n,{...s,[a]:!0},Qke(e[a]??{})):(await pSt(i.credential_source,t,r.logger)(r))();if(Qke(i))return l.then(u=>Mu.setCredentialFeature(u,"CREDENTIALS_PROFILE_SOURCE_PROFILE","o"));{let u={RoleArn:i.role_arn,RoleSessionName:i.role_session_name||`aws-sdk-js-${Date.now()}`,ExternalId:i.external_id,DurationSeconds:parseInt(i.duration_seconds||"3600",10)},{mfa_serial:d}=i;if(d){if(!r.mfaCodeProvider)throw new xp.CredentialsProviderError(`Profile ${t} requires multi-factor authentication, but no MFA code callback was provided.`,{logger:r.logger,tryNextLink:!1});u.SerialNumber=d,u.TokenCode=await r.mfaCodeProvider(d)}let p=await l;return r.roleAssumer(p,u).then(m=>Mu.setCredentialFeature(m,"CREDENTIALS_PROFILE_SOURCE_PROFILE","o"))}},Qke=t=>!t.role_arn&&!!t.credential_source,gSt=t=>!!(t&&t.login_session),ySt=async(t,e,r)=>{let n=await dSt.fromLoginCredentials({...e,profile:t})({callerClientConfig:r});return Mu.setCredentialFeature(n,"CREDENTIALS_PROFILE_LOGIN","AC")},ESt=t=>!!t&&typeof t=="object"&&typeof t.credential_process=="string",CSt=async(t,e)=>Promise.resolve().then(()=>Q(S5())).then(({fromProcess:r})=>r({...t,profile:e})().then(n=>Mu.setCredentialFeature(n,"CREDENTIALS_PROFILE_PROCESS","v"))),ISt=async(t,e,r={},n)=>{let{fromSSO:s}=await Promise.resolve().then(()=>Q($J()));return s({profile:t,logger:r.logger,parentClientConfig:r.parentClientConfig,clientConfig:r.clientConfig})({callerClientConfig:n}).then(o=>e.sso_session?Mu.setCredentialFeature(o,"CREDENTIALS_PROFILE_SSO","r"):Mu.setCredentialFeature(o,"CREDENTIALS_PROFILE_SSO_LEGACY","t"))},xSt=t=>t&&(typeof t.sso_start_url=="string"||typeof t.sso_account_id=="string"||typeof t.sso_session=="string"||typeof t.sso_region=="string"||typeof t.sso_role_name=="string"),Dke=t=>!!t&&typeof t=="object"&&typeof t.aws_access_key_id=="string"&&typeof t.aws_secret_access_key=="string"&&["undefined","string"].indexOf(typeof t.aws_session_token)>-1&&["undefined","string"].indexOf(typeof t.aws_account_id)>-1,kke=async(t,e)=>{e?.logger?.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");let r={accessKeyId:t.aws_access_key_id,secretAccessKey:t.aws_secret_access_key,sessionToken:t.aws_session_token,...t.aws_credential_scope&&{credentialScope:t.aws_credential_scope},...t.aws_account_id&&{accountId:t.aws_account_id}};return Mu.setCredentialFeature(r,"CREDENTIALS_PROFILE","n")},wSt=t=>!!t&&typeof t=="object"&&typeof t.web_identity_token_file=="string"&&typeof t.role_arn=="string"&&["undefined","string"].indexOf(typeof t.role_session_name)>-1,bSt=async(t,e,r)=>Promise.resolve().then(()=>Q(R5())).then(({fromTokenFile:n})=>n({webIdentityTokenFile:t.web_identity_token_file,roleArn:t.role_arn,roleSessionName:t.role_session_name,roleAssumerWithWebIdentity:e.roleAssumerWithWebIdentity,logger:e.logger,parentClientConfig:e.parentClientConfig})({callerClientConfig:r}).then(s=>Mu.setCredentialFeature(s,"CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN","q"))),Lke=async(t,e,r,n,s={},o=!1)=>{let i=e[t];if(Object.keys(s).length>0&&Dke(i))return kke(i,r);if(o||mSt(i,{profile:t,logger:r.logger}))return hSt(t,e,r,n,s,Lke);if(Dke(i))return kke(i,r);if(wSt(i))return bSt(i,r,n);if(ESt(i))return CSt(r,t);if(xSt(i))return await ISt(t,i,r,n);if(gSt(i))return ySt(t,r,n);throw new xp.CredentialsProviderError(`Could not resolve credentials using profile: [${t}] in configuration/credentials file(s).`,{logger:r.logger})},SSt=(t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-ini - fromIni");let r=await xp.parseKnownFiles(t);return Lke(xp.getProfileName({profile:t.profile??e?.profile}),r,t,e)};Oke.fromIni=SSt});var P5=w(zD=>{"use strict";var T5=wj(),Ry=(Nt(),Y(Dn)),Fke="AWS_EC2_METADATA_DISABLED",BSt=async t=>{let{ENV_CMDS_FULL_URI:e,ENV_CMDS_RELATIVE_URI:r,fromContainerMetadata:n,fromInstanceMetadata:s}=await Promise.resolve().then(()=>Q(RQ()));if(process.env[r]||process.env[e]){t.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");let{fromHttp:o}=await Promise.resolve().then(()=>Q(kj()));return Ry.chain(o(t),n(t))}return process.env[Fke]&&process.env[Fke]!=="false"?async()=>{throw new Ry.CredentialsProviderError("EC2 Instance Metadata Service access disabled",{logger:t.logger})}:(t.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata"),s(t))};function RSt(t,e){let r=NSt(t),n,s,o,i=async a=>{if(a?.forceRefresh)return await r(a);if(o?.expiration&&o?.expiration?.getTime(){o=c}).finally(()=>{s=void 0}));else return n=r(a).then(c=>{o=c}).finally(()=>{n=void 0}),i(a);return o};return i}var NSt=t=>async e=>{let r;for(let n of t)try{return await n(e)}catch(s){if(r=s,s?.tryNextLink)continue;throw s}throw r},Uke=!1,TSt=(t={})=>RSt([async()=>{if(t.profile??process.env[Ry.ENV_PROFILE])throw process.env[T5.ENV_KEY]&&process.env[T5.ENV_SECRET]&&(Uke||((t.logger?.warn&&t.logger?.constructor?.name!=="NoOpLogger"?t.logger.warn.bind(t.logger):console.warn)(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING: +`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}i(ei,"Gt");function HMe(C,h,y,N){let B=this.extractAttributes(C);if(N.push(h,B),this.checkStopNode(N)){let L=this.buildRawContent(C),_=this.buildAttributesForStopNode(C);return N.pop(),this.buildObjectNode(L,h,_,y)}let v=this.j2x(C,y+1,N);return N.pop(),C[this.options.textNodeName]!==void 0&&Object.keys(C).length===1?this.buildTextValNode(C[this.options.textNodeName],h,v.attrStr,y,N):this.buildObjectNode(v.val,h,v.attrStr,y)}i(HMe,"Bt");function zMe(C){return this.options.indentBy.repeat(C)}i(zMe,"Ut");function VMe(C){return!(!C.startsWith(this.options.attributeNamePrefix)||C===this.options.textNodeName)&&C.substr(this.attrPrefixLen)}i(VMe,"Wt"),ei.prototype.build=function(C){if(this.options.preserveOrder)return FMe(C,this.options);{Array.isArray(C)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(C={[this.options.arrayNodeName]:C});let h=new jL;return this.j2x(C,0,h).val}},ei.prototype.j2x=function(C,h,y){let N="",B="";if(this.options.maxNestedTags&&y.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");let v=this.options.jPath?y.toString():y,L=this.checkStopNode(y);for(let _ in C)if(Object.prototype.hasOwnProperty.call(C,_))if(C[_]===void 0)this.isAttribute(_)&&(B+="");else if(C[_]===null)this.isAttribute(_)||_===this.options.cdataPropName||_===this.options.commentPropName?B+="":_[0]==="?"?B+=this.indentate(h)+"<"+_+"?"+this.tagEndChar:B+=this.indentate(h)+"<"+_+"/"+this.tagEndChar;else if(C[_]instanceof Date)B+=this.buildTextValNode(C[_],_,"",h,y);else if(typeof C[_]!="object"){let O=this.isAttribute(_);if(O&&!this.ignoreAttributesFn(O,v))N+=this.buildAttrPairStr(O,""+C[_],L);else if(!O)if(_===this.options.textNodeName){let k=this.options.tagValueProcessor(_,""+C[_]);B+=this.replaceEntitiesValue(k)}else{y.push(_);let k=this.checkStopNode(y);if(y.pop(),k){let U=""+C[_];B+=U===""?this.indentate(h)+"<"+_+this.closeTag(_)+this.tagEndChar:this.indentate(h)+"<"+_+">"+U+""+ve+"${B}`;else if(typeof B=="object"&&B!==null){let v=this.buildRawContent(B),L=this.buildAttributesForStopNode(B);h+=v===""?`<${y}${L}/>`:`<${y}${L}>${v}`}}else if(typeof N=="object"&&N!==null){let B=this.buildRawContent(N),v=this.buildAttributesForStopNode(N);h+=B===""?`<${y}${v}/>`:`<${y}${v}>${B}`}else h+=`<${y}>${N}`}return h},ei.prototype.buildAttributesForStopNode=function(C){if(!C||typeof C!="object")return"";let h="";if(this.options.attributesGroupName&&C[this.options.attributesGroupName]){let y=C[this.options.attributesGroupName];for(let N in y){if(!Object.prototype.hasOwnProperty.call(y,N))continue;let B=N.startsWith(this.options.attributeNamePrefix)?N.substring(this.options.attributeNamePrefix.length):N,v=y[N];v===!0&&this.options.suppressBooleanAttributes?h+=" "+B:h+=" "+B+'="'+v+'"'}}else for(let y in C){if(!Object.prototype.hasOwnProperty.call(C,y))continue;let N=this.isAttribute(y);if(N){let B=C[y];B===!0&&this.options.suppressBooleanAttributes?h+=" "+N:h+=" "+N+'="'+B+'"'}}return h},ei.prototype.buildObjectNode=function(C,h,y,N){if(C==="")return h[0]==="?"?this.indentate(N)+"<"+h+y+"?"+this.tagEndChar:this.indentate(N)+"<"+h+y+this.closeTag(h)+this.tagEndChar;{let B="`+this.newLine:this.indentate(N)+"<"+h+y+v+this.tagEndChar+C+this.indentate(N)+B:this.indentate(N)+"<"+h+y+v+">"+C+B}},ei.prototype.closeTag=function(C){let h="";return this.options.unpairedTags.indexOf(C)!==-1?this.options.suppressUnpairedNode||(h="/"):h=this.options.suppressEmptyNode?"/":`>`+this.newLine}if(this.options.commentPropName!==!1&&h===this.options.commentPropName){let v=W9(C);return this.indentate(N)+``+this.newLine}if(h[0]==="?")return this.indentate(N)+"<"+h+y+"?"+this.tagEndChar;{let v=this.options.tagValueProcessor(h,C);return v=this.replaceEntitiesValue(v),v===""?this.indentate(N)+"<"+h+y+this.closeTag(h)+this.tagEndChar:this.indentate(N)+"<"+h+y+">"+v+"0&&this.options.processEntities)for(let h=0;h{"use strict";Object.defineProperty(Qa,"__esModule",{value:!0});Qa.EntityDecoderImpl=Qa.CURRENCY=Qa.COMMON_HTML=Qa.XML=void 0;Qa.XML={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'};Qa.COMMON_HTML={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};Qa.CURRENCY={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"};var Rxt=new Set("!?\\/[]$%{}^&*()<>|+");function Sve(t){if(t[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${t}"`);for(let e of t)if(Rxt.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${t}"`);return t}i(Sve,"validateEntityName");function uJ(...t){let e=Object.create(null);for(let r of t)if(r)for(let n of Object.keys(r)){let s=r[n];if(typeof s=="string")e[n]=s;else if(s&&typeof s=="object"&&s.val!==void 0){let o=s.val;typeof o=="string"&&(e[n]=o)}}return e}i(uJ,"mergeEntityMaps");var Tf="external",XQ="base",dJ="all";function Nxt(t){return!t||t===Tf?new Set([Tf]):t===dJ?new Set([dJ]):t===XQ?new Set([XQ]):Array.isArray(t)?new Set(t):new Set([Tf])}i(Nxt,"parseLimitTiers");var uo=Object.freeze({allow:0,leave:1,remove:2,throw:3}),Txt=new Set([9,10,13]);function Pxt(t){if(!t)return{xmlVersion:1,onLevel:uo.allow,nullLevel:uo.remove};let e=t.xmlVersion===1.1?1.1:1,r=uo[t.onNCR??"allow"]??uo.allow,n=uo[t.nullNCR??"remove"]??uo.remove,s=Math.max(n,uo.remove);return{xmlVersion:e,onLevel:r,nullLevel:s}}i(Pxt,"parseNCRConfig");var vxt=class{static{i(this,"EntityDecoderImpl")}_limit;_maxTotalExpansions;_maxExpandedLength;_postCheck;_limitTiers;_numericAllowed;_baseMap;_externalMap;_inputMap;_totalExpansions;_expandedLength;_removeSet;_leaveSet;_ncrXmlVersion;_ncrOnLevel;_ncrNullLevel;constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:n=>n,this._limitTiers=Nxt(this._limit.applyLimitsTo??Tf),this._numericAllowed=e.numericAllowed??!0,this._baseMap=uJ(Qa.XML,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let r=Pxt(e.ncr);this._ncrXmlVersion=r.xmlVersion,this._ncrOnLevel=r.onLevel,this._ncrNullLevel=r.nullLevel}setExternalEntities(e){if(e)for(let r of Object.keys(e))Sve(r);this._externalMap=uJ(e)}addExternalEntity(e,r){Sve(e),typeof r=="string"&&r.indexOf("&")===-1&&(this._externalMap[e]=r)}addInputEntities(e){this._totalExpansions=0,this._expandedLength=0,this._inputMap=uJ(e)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e==="1.1"||e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0)return e;let r=e,n=[],s=e.length,o=0,a=0,c=this._maxTotalExpansions>0,l=this._maxExpandedLength>0,u=c||l;for(;a=s||e.charCodeAt(p)!==59){a++;continue}let m=e.slice(a+1,p);if(m.length===0){a++;continue}let f,g;if(this._removeSet.has(m))f="",g===void 0&&(g=Tf);else if(this._leaveSet.has(m)){a++;continue}else if(m.charCodeAt(0)===35){let E=this._resolveNCR(m);if(E===void 0){a++;continue}f=E,g=XQ}else{let E=this._resolveName(m);f=E?.value,g=E?.tier}if(f===void 0){a++;continue}if(a>o&&n.push(e.slice(o,a)),n.push(f),o=p+1,a=o,u&&this._tierCounts(g)){if(c&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(l){let E=f.length-(m.length+2);if(E>0&&(this._expandedLength+=E,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}o=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!Txt.has(e)?uo.remove:-1}_applyNCRAction(e,r,n){switch(e){case uo.allow:return String.fromCodePoint(n);case uo.remove:return"";case uo.leave:return;case uo.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${r}; (U+${n.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(n)}}_resolveNCR(e){let r=e.charCodeAt(1),n;if(r===120||r===88?n=parseInt(e.slice(2),16):n=parseInt(e.slice(1),10),Number.isNaN(n)||n<0||n>1114111)return;let s=this._classifyNCR(n);if(!this._numericAllowed&&s{"use strict";Object.defineProperty(pJ,"__esModule",{value:!0});pJ.parseXML=Dxt;var _xt=bve(),ZQ=Bve(),eD=new ZQ.EntityDecoderImpl({namedEntities:{...ZQ.XML,...ZQ.COMMON_HTML,...ZQ.CURRENCY},numericAllowed:!0,limit:{maxTotalExpansions:1/0},ncr:{xmlVersion:1.1}}),Qxt=new _xt.XMLParser({attributeNamePrefix:"",processEntities:{enabled:!0,maxTotalExpansions:1/0},htmlEntities:!0,entityDecoder:{setExternalEntities:i(t=>{eD.setExternalEntities(t)},"setExternalEntities"),addInputEntities:i(t=>{eD.addInputEntities(t)},"addInputEntities"),reset:i(()=>{eD.reset()},"reset"),decode:i(t=>eD.decode(t),"decode"),setXmlVersion:i(t=>{},"setXmlVersion")},ignoreAttributes:!1,ignoreDeclaration:!0,parseTagValue:!1,trimValues:!1,tagValueProcessor:i((t,e)=>e.trim()===""&&e.includes(` +`)?"":void 0,"tagValueProcessor"),maxNestedTags:1/0});function Dxt(t){return Qxt.parse(t,!0)}i(Dxt,"parseXML")});var nD=b(rD=>{"use strict";var kxt=Rve(),Lxt=/[&<>"]/g,Oxt={"&":"&","<":"<",">":">",'"':"""};function Mxt(t){return t.replace(Lxt,e=>Oxt[e])}i(Mxt,"escapeAttribute");var Fxt=/[&"'<>\r\n\u0085\u2028]/g,Uxt={"&":"&",'"':""","'":"'","<":"<",">":">","\r":" ","\n":" ","\x85":"…","\u2028":"
"};function qxt(t){return t.replace(Fxt,e=>Uxt[e])}i(qxt,"escapeElement");var tD=class{static{i(this,"XmlText")}value;constructor(e){this.value=e}toString(){return qxt(""+this.value)}},mJ=class t{static{i(this,"XmlNode")}name;children;attributes={};static of(e,r,n){let s=new t(e);return r!==void 0&&s.addChildNode(new tD(r)),n!==void 0&&s.withName(n),s}constructor(e,r=[]){this.name=e,this.children=r}withName(e){return this.name=e,this}addAttribute(e,r){return this.attributes[e]=r,this}addChildNode(e){return this.children.push(e),this}removeAttribute(e){return delete this.attributes[e],this}n(e){return this.name=e,this}c(e){return this.children.push(e),this}a(e,r){return r!=null&&(this.attributes[e]=r),this}cc(e,r,n=r){if(e[r]!=null){let s=t.of(r,e[r]).withName(n);this.c(s)}}l(e,r,n,s){e[r]!=null&&s().map(a=>{a.withName(n),this.c(a)})}lc(e,r,n,s){if(e[r]!=null){let o=s(),a=new t(n);o.map(c=>{a.c(c)}),this.c(a)}}toString(){let e=!!this.children.length,r=`<${this.name}`,n=this.attributes;for(let s of Object.keys(n)){let o=n[s];o!=null&&(r+=` ${s}="${Mxt(""+o)}"`)}return r+=e?`>${this.children.map(s=>s.toString()).join("")}`:"/>"}};rD.parseXML=kxt.parseXML;rD.XmlNode=mJ;rD.XmlText=tD});var Nve,Pf,sD=I(()=>{Nve=D(nD());Ce();Qe();Ct();st();yp();tJ();Pf=class extends os{static{i(this,"XmlShapeDeserializer")}settings;stringDeserializer;constructor(e){super(),this.settings=e,this.stringDeserializer=new If(e)}setSerdeContext(e){this.serdeContext=e,this.stringDeserializer.setSerdeContext(e)}read(e,r,n){let s=Ee.of(e),o=s.getMemberSchemas();if(s.isStructSchema()&&s.isMemberSchema()&&!!Object.values(o).find(u=>!!u.getMemberTraits().eventPayload)){let u={},d=Object.keys(o)[0];return o[d].isBlobSchema()?u[d]=r:u[d]=this.read(o[d],r),u}let c=(this.serdeContext?.utf8Encoder??hr)(r),l=this.parseXml(c);return this.readSchema(e,n?l[n]:l)}readSchema(e,r){let n=Ee.of(e);if(n.isUnitSchema())return;let s=n.getMergedTraits();if(n.isListSchema()&&!Array.isArray(r))return this.readSchema(n,[r]);if(r==null)return r;if(typeof r=="object"){let o=!!s.xmlFlattened;if(n.isListSchema()){let c=n.getValueSchema(),l=[],u=c.getMergedTraits().xmlName??"member",d=o?r:(r[0]??r)[u];if(d==null)return l;let p=Array.isArray(d)?d:[d];for(let m of p)l.push(this.readSchema(c,m));return l}let a={};if(n.isMapSchema()){let c=n.getKeySchema(),l=n.getValueSchema(),u;o?u=Array.isArray(r)?r:[r]:u=Array.isArray(r.entry)?r.entry:[r.entry];let d=c.getMergedTraits().xmlName??"key",p=l.getMergedTraits().xmlName??"value";for(let m of u){let f=m[d],g=m[p];a[f]=this.readSchema(l,g)}return a}if(n.isStructSchema()){let c=n.isUnionSchema(),l;c&&(l=new xy(r,a));for(let[u,d]of n.structIterator()){let p=d.getMergedTraits(),m=p.httpPayload?p.xmlName??d.getName():d.getMemberTraits().xmlName??u;c&&l.mark(m),r[m]!=null&&(a[u]=this.readSchema(d,r[m]))}return c&&l.writeUnknown(),a}if(n.isDocumentSchema())return r;throw new Error(`@aws-sdk/core/protocols - xml deserializer unhandled schema type for ${n.getName(!0)}`)}return n.isListSchema()?[]:n.isMapSchema()||n.isStructSchema()?{}:this.stringDeserializer.read(n,r)}parseXml(e){if(e.length){let r;try{r=(0,Nve.parseXML)(e)}catch(a){throw a&&typeof a=="object"&&Object.defineProperty(a,"$responseBodyText",{value:e}),a}let n="#text",s=Object.keys(r)[0],o=r[s];return o[n]&&(o[s]=o[n],delete o[n]),Sf(o)}return{}}}});var hw,fJ=I(()=>{Qe();Ct();st();st();yp();hw=class extends os{static{i(this,"QueryShapeSerializer")}settings;buffer;constructor(e){super(),this.settings=e}write(e,r,n=""){this.buffer===void 0&&(this.buffer="");let s=Ee.of(e);if(n&&!n.endsWith(".")&&(n+="."),s.isBlobSchema())(typeof r=="string"||r instanceof Uint8Array)&&(this.writeKey(n),this.writeValue((this.serdeContext?.base64Encoder??Ar)(r)));else if(s.isBooleanSchema()||s.isNumericSchema()||s.isStringSchema())r!=null?(this.writeKey(n),this.writeValue(String(r))):s.isIdempotencyToken()&&(this.writeKey(n),this.writeValue(Ba()));else if(s.isBigIntegerSchema())r!=null&&(this.writeKey(n),this.writeValue(String(r)));else if(s.isBigDecimalSchema())r!=null&&(this.writeKey(n),this.writeValue(r instanceof qt?r.string:String(r)));else if(s.isTimestampSchema()){if(r instanceof Date)switch(this.writeKey(n),jo(s,this.settings)){case 5:this.writeValue(r.toISOString().replace(".000Z","Z"));break;case 6:this.writeValue(wa(r));break;case 7:this.writeValue(String(r.getTime()/1e3));break}}else if(s.isDocumentSchema())Array.isArray(r)?this.write(79,r,n):r instanceof Date?this.write(4,r,n):r instanceof Uint8Array?this.write(21,r,n):r&&typeof r=="object"?this.write(143,r,n):(this.writeKey(n),this.writeValue(String(r)));else if(s.isListSchema()){if(Array.isArray(r))if(r.length===0)this.settings.serializeEmptyLists&&(this.writeKey(n),this.writeValue(""));else{let o=s.getValueSchema(),a=this.settings.flattenLists||s.getMergedTraits().xmlFlattened,c=1;for(let l of r){if(l==null)continue;let u=o.getMergedTraits(),d=this.getKey("member",u.xmlName,u.ec2QueryName),p=a?`${n}${c}`:`${n}${d}.${c}`;this.write(o,l,p),++c}}}else if(s.isMapSchema()){if(r&&typeof r=="object"){let o=s.getKeySchema(),a=s.getValueSchema(),c=s.getMergedTraits().xmlFlattened,l=1;for(let u in r){let d=r[u];if(d==null)continue;let p=o.getMergedTraits(),m=this.getKey("key",p.xmlName,p.ec2QueryName),f=c?`${n}${l}.${m}`:`${n}entry.${l}.${m}`,g=a.getMergedTraits(),E=this.getKey("value",g.xmlName,g.ec2QueryName),x=c?`${n}${l}.${E}`:`${n}entry.${l}.${E}`;this.write(o,u,f),this.write(a,d,x),++l}}}else if(s.isStructSchema()){if(r&&typeof r=="object"){let o=!1;for(let[a,c]of s.structIterator()){if(r[a]==null&&!c.isIdempotencyToken())continue;let l=c.getMergedTraits(),u=this.getKey(a,l.xmlName,l.ec2QueryName,"struct"),d=`${n}${u}`;this.write(c,r[a],d),o=!0}if(!o&&s.isUnionSchema()){let{$unknown:a}=r;if(Array.isArray(a)){let[c,l]=a,u=`${n}${c}`;this.write(15,l,u)}}}}else if(!s.isUnitSchema())throw new Error(`@aws-sdk/core/protocols - QuerySerializer unrecognized schema type ${s.getName(!0)}`)}flush(){if(this.buffer===void 0)throw new Error("@aws-sdk/core/protocols - QuerySerializer cannot flush with nothing written to buffer.");let e=this.buffer;return delete this.buffer,e}getKey(e,r,n,s){let{ec2:o,capitalizeKeys:a}=this.settings;if(o&&n)return n;let c=r??e;return a&&s==="struct"?c[0].toUpperCase()+c.slice(1):c}writeKey(e){e.endsWith(".")&&(e=e.slice(0,e.length-1)),this.buffer+=`&${Jc(e)}=`}writeValue(e){this.buffer+=Jc(e)}}});var vf,AJ=I(()=>{Qe();Ct();Iy();sD();fJ();vf=class extends Su{static{i(this,"AwsQueryProtocol")}options;serializer;deserializer;mixin=new Gi;constructor(e){super({defaultNamespace:e.defaultNamespace,errorTypeRegistries:e.errorTypeRegistries}),this.options=e;let r={timestampFormat:{useTrait:!0,default:5},httpBindings:!1,xmlNamespace:e.xmlNamespace,serviceNamespace:e.defaultNamespace,serializeEmptyLists:!0};this.serializer=new hw(r),this.deserializer=new Pf(r)}getShapeId(){return"aws.protocols#awsQuery"}setSerdeContext(e){this.serializer.setSerdeContext(e),this.deserializer.setSerdeContext(e)}getPayloadCodec(){throw new Error("AWSQuery protocol has no payload codec.")}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n);s.path.endsWith("/")||(s.path+="/"),s.headers["content-type"]="application/x-www-form-urlencoded",(Ia(e.input)==="unit"||!s.body)&&(s.body="");let o=e.name.split("#")[1]??e.name;return s.body=`Action=${o}&Version=${this.options.version}`+s.body,s.body.endsWith("&")&&(s.body=s.body.slice(-1)),s}async deserializeResponse(e,r,n){let s=this.deserializer,o=Ee.of(e.output),a={};if(n.statusCode>=300){let d=await co(n.body,r);d.byteLength>0&&Object.assign(a,await s.read(15,d)),await this.handleError(e,r,n,a,this.deserializeMetadata(n))}for(let d in n.headers){let p=n.headers[d];delete n.headers[d],n.headers[d.toLowerCase()]=p}let c=e.name.split("#")[1]??e.name,l=o.isStructSchema()&&this.useNestedResult()?c+"Result":void 0,u=await co(n.body,r);return u.byteLength>0&&Object.assign(a,await s.read(o,u,l)),a.$metadata=this.deserializeMetadata(n),a}useNestedResult(){return!0}async handleError(e,r,n,s,o){let a=this.loadQueryErrorCode(n,s)??"Unknown";this.mixin.compose(this.compositeErrorRegistry,a,this.options.defaultNamespace);let c=this.loadQueryError(s)??{},l=this.loadQueryErrorMessage(s);c.message=l,c.Error={Type:c.Type,Code:c.Code,Message:l};let{errorSchema:u,errorMetadata:d}=await this.mixin.getErrorSchemaOrThrowBaseException(a,this.options.defaultNamespace,n,c,o,this.mixin.findQueryCompatibleError),p=Ee.of(u),m=this.compositeErrorRegistry.getErrorCtor(u)??Error,f=new m({}),g={Type:c.Error.Type,Code:c.Error.Code,Error:c.Error};for(let[E,x]of p.structIterator()){let w=x.getMergedTraits().xmlName??E,S=c[w]??s[w];g[E]=this.deserializer.readSchema(x,S)}throw this.mixin.decorateServiceException(Object.assign(f,d,{$fault:p.getMergedTraits().error,message:l},g),s)}loadQueryErrorCode(e,r){let n=(r.Errors?.[0]?.Error??r.Errors?.Error??r.Error)?.Code;if(n!==void 0)return n;if(e.statusCode==404)return"NotFound"}loadQueryError(e){return e.Errors?.[0]?.Error??e.Errors?.Error??e.Error}loadQueryErrorMessage(e){let r=this.loadQueryError(e);return r?.message??r?.Message??e.message??e.Message??"Unknown"}getDefaultContentType(){return"application/x-www-form-urlencoded"}}});var hJ,Tve=I(()=>{AJ();hJ=class extends vf{static{i(this,"AwsEc2QueryProtocol")}options;constructor(e){super(e),this.options=e;let r={capitalizeKeys:!0,flattenLists:!0,serializeEmptyLists:!1,ec2:!0};Object.assign(this.serializer.settings,r)}getShapeId(){return"aws.protocols#ec2Query"}useNestedResult(){return!1}}});var Pve=I(()=>{});var vve,_ve,$xt,gJ,yJ=I(()=>{vve=D(nD());Ce();rJ();_ve=i((t,e)=>YQ(t,e).then(r=>{if(r.length){let n;try{n=(0,vve.parseXML)(r)}catch(c){throw c&&typeof c=="object"&&Object.defineProperty(c,"$responseBodyText",{value:r}),c}let s="#text",o=Object.keys(n)[0],a=n[o];return a[s]&&(a[o]=a[s],delete a[s]),Sf(a)}return{}}),"parseXmlBody"),$xt=i(async(t,e)=>{let r=await _ve(t,e);return r.Error&&(r.Error.message=r.Error.message??r.Error.Message),r},"parseXmlErrorBody"),gJ=i((t,e)=>{if(e?.Error?.Code!==void 0)return e.Error.Code;if(e?.Code!==void 0)return e.Code;if(t.statusCode==404)return"NotFound"},"loadRestXmlErrorCode")});var ks,gw,EJ=I(()=>{ks=D(nD());Qe();Ct();st();st();yp();gw=class extends os{static{i(this,"XmlShapeSerializer")}settings;stringBuffer;byteBuffer;buffer;constructor(e){super(),this.settings=e}write(e,r){let n=Ee.of(e);if(n.isStringSchema()&&typeof r=="string")this.stringBuffer=r;else if(n.isBlobSchema())this.byteBuffer="byteLength"in r?r:(this.serdeContext?.base64Decoder??$r)(r);else{this.buffer=this.writeStruct(n,r,void 0);let s=n.getMergedTraits();s.httpPayload&&!s.xmlName&&this.buffer.withName(n.getName())}}flush(){if(this.byteBuffer!==void 0){let r=this.byteBuffer;return delete this.byteBuffer,r}if(this.stringBuffer!==void 0){let r=this.stringBuffer;return delete this.stringBuffer,r}let e=this.buffer;return this.settings.xmlNamespace&&(e?.attributes?.xmlns||e.addAttribute("xmlns",this.settings.xmlNamespace)),delete this.buffer,e.toString()}writeStruct(e,r,n){let s=e.getMergedTraits(),o=e.isMemberSchema()&&!s.httpPayload?e.getMemberTraits().xmlName??e.getMemberName():s.xmlName??e.getName();if(!o||!e.isStructSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write struct with empty name or non-struct, schema=${e.getName(!0)}.`);let a=ks.XmlNode.of(o),[c,l]=this.getXmlnsAttribute(e,n);for(let[d,p]of e.structIterator()){let m=r[d];if(m!=null||p.isIdempotencyToken()){if(p.getMergedTraits().xmlAttribute){a.addAttribute(p.getMergedTraits().xmlName??d,this.writeSimple(p,m));continue}if(p.isListSchema())this.writeList(p,m,a,l);else if(p.isMapSchema())this.writeMap(p,m,a,l);else if(p.isStructSchema())a.addChildNode(this.writeStruct(p,m,l));else{let f=ks.XmlNode.of(p.getMergedTraits().xmlName??p.getMemberName());this.writeSimpleInto(p,m,f,l),a.addChildNode(f)}}}let{$unknown:u}=r;if(u&&e.isUnionSchema()&&Array.isArray(u)&&Object.keys(r).length===1){let[d,p]=u,m=ks.XmlNode.of(d);if(typeof p!="string")if(r instanceof ks.XmlNode||r instanceof ks.XmlText)a.addChildNode(r);else throw new Error("@aws-sdk - $unknown union member in XML requires value of type string, @aws-sdk/xml-builder::XmlNode or XmlText.");this.writeSimpleInto(0,p,m,l),a.addChildNode(m)}return l&&a.addAttribute(c,l),a}writeList(e,r,n,s){if(!e.isMemberSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write non-member list: ${e.getName(!0)}`);let o=e.getMergedTraits(),a=e.getValueSchema(),c=a.getMergedTraits(),l=!!c.sparse,u=!!o.xmlFlattened,[d,p]=this.getXmlnsAttribute(e,s),m=i((f,g)=>{if(a.isListSchema())this.writeList(a,Array.isArray(g)?g:[g],f,p);else if(a.isMapSchema())this.writeMap(a,g,f,p);else if(a.isStructSchema()){let E=this.writeStruct(a,g,p);f.addChildNode(E.withName(u?o.xmlName??e.getMemberName():c.xmlName??"member"))}else{let E=ks.XmlNode.of(u?o.xmlName??e.getMemberName():c.xmlName??"member");this.writeSimpleInto(a,g,E,p),f.addChildNode(E)}},"writeItem");if(u)for(let f of r)(l||f!=null)&&m(n,f);else{let f=ks.XmlNode.of(o.xmlName??e.getMemberName());p&&f.addAttribute(d,p);for(let g of r)(l||g!=null)&&m(f,g);n.addChildNode(f)}}writeMap(e,r,n,s,o=!1){if(!e.isMemberSchema())throw new Error(`@aws-sdk/core/protocols - xml serializer, cannot write non-member map: ${e.getName(!0)}`);let a=e.getMergedTraits(),c=e.getKeySchema(),u=c.getMergedTraits().xmlName??"key",d=e.getValueSchema(),p=d.getMergedTraits(),m=p.xmlName??"value",f=!!p.sparse,g=!!a.xmlFlattened,[E,x]=this.getXmlnsAttribute(e,s),w=i((S,P,Q)=>{let q=ks.XmlNode.of(u,P),[M,V]=this.getXmlnsAttribute(c,x);V&&q.addAttribute(M,V),S.addChildNode(q);let pe=ks.XmlNode.of(m);d.isListSchema()?this.writeList(d,Q,pe,x):d.isMapSchema()?this.writeMap(d,Q,pe,x,!0):d.isStructSchema()?pe=this.writeStruct(d,Q,x):this.writeSimpleInto(d,Q,pe,x),S.addChildNode(pe)},"addKeyValue");if(g)for(let S in r){let P=r[S];if(f||P!=null){let Q=ks.XmlNode.of(a.xmlName??e.getMemberName());w(Q,S,P),n.addChildNode(Q)}}else{let S;o||(S=ks.XmlNode.of(a.xmlName??e.getMemberName()),x&&S.addAttribute(E,x),n.addChildNode(S));for(let P in r){let Q=r[P];if(f||Q!=null){let q=ks.XmlNode.of("entry");w(q,P,Q),(o?n:S).addChildNode(q)}}}}writeSimple(e,r){if(r===null)throw new Error("@aws-sdk/core/protocols - (XML serializer) cannot write null value.");let n=Ee.of(e),s=null;if(r&&typeof r=="object")if(n.isBlobSchema())s=(this.serdeContext?.base64Encoder??Ar)(r);else if(n.isTimestampSchema()&&r instanceof Date)switch(jo(n,this.settings)){case 5:s=r.toISOString().replace(".000Z","Z");break;case 6:s=wa(r);break;case 7:s=String(r.getTime()/1e3);break;default:console.warn("Missing timestamp format, using http date",r),s=wa(r);break}else{if(n.isBigDecimalSchema()&&r)return r instanceof qt?r.string:String(r);throw n.isMapSchema()||n.isListSchema()?new Error("@aws-sdk/core/protocols - xml serializer, cannot call _write() on List/Map schema, call writeList or writeMap() instead."):new Error(`@aws-sdk/core/protocols - xml serializer, unhandled schema type for object value and schema: ${n.getName(!0)}`)}if((n.isBooleanSchema()||n.isNumericSchema()||n.isBigIntegerSchema()||n.isBigDecimalSchema())&&(s=String(r)),n.isStringSchema()&&(r===void 0&&n.isIdempotencyToken()?s=Ba():s=String(r)),s===null)throw new Error(`Unhandled schema-value pair ${n.getName(!0)}=${r}`);return s}writeSimpleInto(e,r,n,s){let o=this.writeSimple(e,r),a=Ee.of(e),c=new ks.XmlText(o),[l,u]=this.getXmlnsAttribute(a,s);u&&n.addAttribute(l,u),n.addChildNode(c)}getXmlnsAttribute(e,r){let n=e.getMergedTraits(),[s,o]=n.xmlNamespace??[];return o&&o!==r?[s?`xmlns:${s}`:"xmlns",o]:[void 0,void 0]}}});var yw,CJ=I(()=>{yp();sD();EJ();yw=class extends os{static{i(this,"XmlCodec")}settings;constructor(e){super(),this.settings=e}createSerializer(){let e=new gw(this.settings);return e.setSerdeContext(this.serdeContext),e}createDeserializer(){let e=new Pf(this.settings);return e.setSerdeContext(this.serdeContext),e}}});var IJ,Qve=I(()=>{Qe();Ct();Iy();yJ();CJ();IJ=class extends Cf{static{i(this,"AwsRestXmlProtocol")}codec;serializer;deserializer;mixin=new Gi;constructor(e){super(e);let r={timestampFormat:{useTrait:!0,default:5},httpBindings:!0,xmlNamespace:e.xmlNamespace,serviceNamespace:e.defaultNamespace};this.codec=new yw(r),this.serializer=new wf(this.codec.createSerializer(),r),this.deserializer=new xf(this.codec.createDeserializer(),r)}getPayloadCodec(){return this.codec}getShapeId(){return"aws.protocols#restXml"}async serializeRequest(e,r,n){let s=await super.serializeRequest(e,r,n),o=Ee.of(e.input);if(!s.headers["content-type"]){let a=this.mixin.resolveRestContentType(this.getDefaultContentType(),o);a&&(s.headers["content-type"]=a)}return typeof s.body=="string"&&s.headers["content-type"]===this.getDefaultContentType()&&!s.body.startsWith("'+s.body),s}async deserializeResponse(e,r,n){return super.deserializeResponse(e,r,n)}async handleError(e,r,n,s,o){let a=gJ(n,s)??"Unknown";if(this.mixin.compose(this.compositeErrorRegistry,a,this.options.defaultNamespace),s.Error&&typeof s.Error=="object")for(let E of Object.keys(s.Error))s[E]=s.Error[E],E.toLowerCase()==="message"&&(s.message=s.Error[E]);s.RequestId&&!o.requestId&&(o.requestId=s.RequestId);let{errorSchema:c,errorMetadata:l}=await this.mixin.getErrorSchemaOrThrowBaseException(a,this.options.defaultNamespace,n,s,o),u=Ee.of(c),d=s.Error?.message??s.Error?.Message??s.message??s.Message??"UnknownError",p=this.compositeErrorRegistry.getErrorCtor(c)??Error,m=new p({});await this.deserializeHttpMessage(c,r,n,s);let f={},g=this.codec.createDeserializer();for(let[E,x]of u.structIterator()){let w=x.getMergedTraits().xmlName??E,S=s.Error?.[w]??s[w];f[E]=g.readSchema(x,S)}throw this.mixin.decorateServiceException(Object.assign(m,l,{$fault:u.getMergedTraits().error,message:d},f),s)}getDefaultContentType(){return"application/xml"}hasUnstructuredPayloadBinding(e){for(let[,r]of e.structIterator())if(r.getMergedTraits().httpPayload)return!(r.isStructSchema()||r.isMapSchema()||r.isListSchema());return!1}}});var xJ={};en(xJ,{AwsEc2QueryProtocol:()=>hJ,AwsJson1_0Protocol:()=>cJ,AwsJson1_1Protocol:()=>lJ,AwsJsonRpcProtocol:()=>Nf,AwsQueryProtocol:()=>vf,AwsRestJsonProtocol:()=>Ou,AwsRestXmlProtocol:()=>IJ,AwsSmithyRpcV2CborProtocol:()=>eJ,JsonCodec:()=>Rf,JsonShapeDeserializer:()=>fw,JsonShapeSerializer:()=>Aw,QueryShapeSerializer:()=>hw,XmlCodec:()=>yw,XmlShapeDeserializer:()=>Pf,XmlShapeSerializer:()=>gw,_toBool:()=>wxt,_toNum:()=>bxt,_toStr:()=>xxt,awsExpectUnion:()=>Bxt,loadJsonRpcErrorCode:()=>oJ,loadRestJsonErrorCode:()=>sJ,loadRestXmlErrorCode:()=>gJ,parseJsonBody:()=>WQ,parseJsonErrorBody:()=>Sxt,parseXmlBody:()=>_ve,parseXmlErrorBody:()=>$xt});var _f=I(()=>{dve();pve();Eve();Cve();KQ();Ive();JQ();iJ();aJ();xve();mw();Tve();AJ();Pve();fJ();Qve();CJ();sD();EJ();yJ()});var Ew,Qf,oD,Dve,Mve,iD,wJ,kve,bJ,wy,Lve,Ove,Gxt,po,Hxt,Fve,Uve=I(()=>{xt();Ew="ref",Qf=-1,oD=!0,Dve="isSet",Mve="PartitionResult",iD="booleanEquals",wJ="getAttr",kve={[Ew]:"Endpoint"},bJ={[Ew]:Mve},wy={},Lve=[{[Ew]:"Region"}],Ove={conditions:[[Dve,[kve]],[Dve,Lve],["aws.partition",Lve,Mve],[iD,[{[Ew]:"UseFIPS"},oD]],[iD,[{[Ew]:"UseDualStack"},oD]],[iD,[{fn:wJ,argv:[bJ,"supportsDualStack"]},oD]],[iD,[{fn:wJ,argv:[bJ,"supportsFIPS"]},oD]],["stringEquals",[{fn:wJ,argv:[bJ,"name"]},"aws-us-gov"]]],results:[[Qf],[Qf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Qf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[kve,wy],["https://oidc-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",wy],[Qf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://oidc.{Region}.amazonaws.com",wy],["https://oidc-fips.{Region}.{PartitionResult#dnsSuffix}",wy],[Qf,"FIPS is enabled but this partition does not support FIPS"],["https://oidc.{Region}.{PartitionResult#dualStackDnsSuffix}",wy],[Qf,"DualStack is enabled but this partition does not support DualStack"],["https://oidc.{Region}.{PartitionResult#dnsSuffix}",wy],[Qf,"Invalid Configuration: Missing Region"]]},Gxt=2,po=1e8,Hxt=new Int32Array([-1,1,-1,0,13,3,1,4,po+12,2,5,po+12,3,8,6,4,7,po+11,5,po+9,po+10,4,11,9,6,10,po+8,7,po+6,po+7,5,12,po+5,6,po+4,po+5,3,po+1,14,4,po+2,po+3]),Fve=ki.from(Hxt,Gxt,Ove.conditions,Ove.results)});var zxt,qve,$ve=I(()=>{wt();xt();Uve();zxt=new Li({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),qve=i((t,e={})=>zxt.get(t,()=>jc(Fve,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");ao.aws=_a});var wn,aD=I(()=>{Ce();wn=class t extends Fi{static{i(this,"SSOOIDCServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var Cw,Iw,xw,ww,bw,Sw,Bw,Rw,Nw,Tw,Pw,SJ=I(()=>{aD();Cw=class t extends wn{static{i(this,"AccessDeniedException")}name="AccessDeniedException";$fault="client";error;reason;error_description;constructor(e){super({name:"AccessDeniedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.reason=e.reason,this.error_description=e.error_description}},Iw=class t extends wn{static{i(this,"AuthorizationPendingException")}name="AuthorizationPendingException";$fault="client";error;error_description;constructor(e){super({name:"AuthorizationPendingException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},xw=class t extends wn{static{i(this,"ExpiredTokenException")}name="ExpiredTokenException";$fault="client";error;error_description;constructor(e){super({name:"ExpiredTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},ww=class t extends wn{static{i(this,"InternalServerException")}name="InternalServerException";$fault="server";error;error_description;constructor(e){super({name:"InternalServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},bw=class t extends wn{static{i(this,"InvalidClientException")}name="InvalidClientException";$fault="client";error;error_description;constructor(e){super({name:"InvalidClientException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Sw=class t extends wn{static{i(this,"InvalidGrantException")}name="InvalidGrantException";$fault="client";error;error_description;constructor(e){super({name:"InvalidGrantException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Bw=class t extends wn{static{i(this,"InvalidRequestException")}name="InvalidRequestException";$fault="client";error;reason;error_description;constructor(e){super({name:"InvalidRequestException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.reason=e.reason,this.error_description=e.error_description}},Rw=class t extends wn{static{i(this,"InvalidScopeException")}name="InvalidScopeException";$fault="client";error;error_description;constructor(e){super({name:"InvalidScopeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Nw=class t extends wn{static{i(this,"SlowDownException")}name="SlowDownException";$fault="client";error;error_description;constructor(e){super({name:"SlowDownException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Tw=class t extends wn{static{i(this,"UnauthorizedClientException")}name="UnauthorizedClientException";$fault="client";error;error_description;constructor(e){super({name:"UnauthorizedClientException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}},Pw=class t extends wn{static{i(this,"UnsupportedGrantTypeException")}name="UnsupportedGrantTypeException";$fault="client";error;error_description;constructor(e){super({name:"UnsupportedGrantTypeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error,this.error_description=e.error_description}}});var Vxt,Yxt,Wxt,jxt,Jxt,Kxt,Xxt,Zxt,ewt,twt,rwt,nwt,swt,owt,iwt,awt,cwt,lwt,uwt,dwt,wl,pwt,mwt,fwt,Awt,hwt,Tr,gwt,Da,ywt,Ewt,ka,Cwt,Gve,Hve,Iwt,zve,xwt,wwt,bwt,Zr,Vve,Yve,Hi,Wve,jve,Jve,Kve,Xve,Zve,e_e,t_e,r_e,n_e,s_e,BJ,Swt,Bwt,Rwt,Nwt,o_e,i_e,a_e,RJ,cD=I(()=>{Ct();SJ();aD();Vxt="AccessDeniedException",Yxt="AuthorizationPendingException",Wxt="AccessToken",jxt="ClientSecret",Jxt="CreateToken",Kxt="CreateTokenRequest",Xxt="CreateTokenResponse",Zxt="CodeVerifier",ewt="ExpiredTokenException",twt="InvalidClientException",rwt="InvalidGrantException",nwt="InvalidRequestException",swt="InternalServerException",owt="InvalidScopeException",iwt="IdToken",awt="RefreshToken",cwt="SlowDownException",lwt="UnauthorizedClientException",uwt="UnsupportedGrantTypeException",dwt="accessToken",wl="client",pwt="clientId",mwt="clientSecret",fwt="codeVerifier",Awt="code",hwt="deviceCode",Tr="error",gwt="expiresIn",Da="error_description",ywt="grantType",Ewt="http",ka="httpError",Cwt="idToken",Gve="reason",Hve="refreshToken",Iwt="redirectUri",zve="smithy.ts.sdk.synthetic.com.amazonaws.ssooidc",xwt="scope",wwt="server",bwt="tokenType",Zr="com.amazonaws.ssooidc",Vve=gr.for(zve),Yve=[-3,zve,"SSOOIDCServiceException",0,[],[]];Vve.registerError(Yve,wn);Hi=gr.for(Zr),Wve=[-3,Zr,Vxt,{[Tr]:wl,[ka]:400},[Tr,Gve,Da],[0,0,0]];Hi.registerError(Wve,Cw);jve=[-3,Zr,Yxt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(jve,Iw);Jve=[-3,Zr,ewt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(Jve,xw);Kve=[-3,Zr,swt,{[Tr]:wwt,[ka]:500},[Tr,Da],[0,0]];Hi.registerError(Kve,ww);Xve=[-3,Zr,twt,{[Tr]:wl,[ka]:401},[Tr,Da],[0,0]];Hi.registerError(Xve,bw);Zve=[-3,Zr,rwt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(Zve,Sw);e_e=[-3,Zr,nwt,{[Tr]:wl,[ka]:400},[Tr,Gve,Da],[0,0,0]];Hi.registerError(e_e,Bw);t_e=[-3,Zr,owt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(t_e,Rw);r_e=[-3,Zr,cwt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(r_e,Nw);n_e=[-3,Zr,lwt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(n_e,Tw);s_e=[-3,Zr,uwt,{[Tr]:wl,[ka]:400},[Tr,Da],[0,0]];Hi.registerError(s_e,Pw);BJ=[Vve,Hi],Swt=[0,Zr,Wxt,8,0],Bwt=[0,Zr,jxt,8,0],Rwt=[0,Zr,Zxt,8,0],Nwt=[0,Zr,iwt,8,0],o_e=[0,Zr,awt,8,0],i_e=[3,Zr,Kxt,0,[pwt,mwt,ywt,hwt,Awt,Hve,xwt,Iwt,fwt],[0,[()=>Bwt,0],0,0,0,[()=>o_e,0],64,0,[()=>Rwt,0]],3],a_e=[3,Zr,Xxt,0,[dwt,bwt,gwt,Hve,Cwt],[[()=>Swt,0],0,1,[()=>o_e,0],[()=>Nwt,0]]],RJ=[9,Zr,Jxt,{[Ewt]:["POST","/token",200]},()=>i_e,()=>a_e]});var c_e,l_e=I(()=>{Xr();_f();Qs();Ce();Qe();st();Oj();$ve();cD();c_e=i(t=>({apiVersion:"2019-06-10",base64Decoder:t?.base64Decoder??$r,base64Encoder:t?.base64Encoder??Ar,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??qve,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??JPe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new On},{schemeId:"smithy.api#noAuth",identityProvider:i(e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),"identityProvider"),signer:new Jo}],logger:t?.logger??new lo,protocol:t?.protocol??Ou,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ssooidc",errorTypeRegistries:BJ,version:"2019-06-10",serviceTarget:"AWSSSOOIDCService"},serviceId:t?.serviceId??"SSO OIDC",urlParser:t?.urlParser??rs,utf8Decoder:t?.utf8Decoder??Gr,utf8Encoder:t?.utf8Encoder??hr}),"getRuntimeConfig")});var lD,u_e,d_e=I(()=>{cw();wt();Xr();Ce();Tt();_s();st();lD=D(vu());l_e();u_e=i(t=>{ol(process.version);let e=Wc(t),r=i(()=>e().then(sl),"defaultConfigProvider"),n=c_e(t);qc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??nt(Pu,s),bodyLengthChecker:t?.bodyLengthChecker??Gc,defaultUserAgentProvider:t?.defaultUserAgentProvider??va({serviceId:n.serviceId,clientVersion:mp.version}),maxAttempts:t?.maxAttempts??nt(cl,t),region:t?.region??nt(Dn,{...Ps,...s}),requestHandler:lD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??nt({...ul,default:i(async()=>(await r()).retryMode||qi,"default")},t),sha256:t?.sha256??Mi.bind(null,"sha256"),streamCollector:t?.streamCollector??lD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??nt(Vc,s),useFipsEndpoint:t?.useFipsEndpoint??nt(Yc,s),userAgentAppId:t?.userAgentAppId??nt(yl,s)}},"getRuntimeConfig")});var p_e,m_e,f_e=I(()=>{p_e=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),m_e=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig")});var A_e,h_e=I(()=>{wt();Ce();Qe();f_e();A_e=i((t,e)=>{let r=Object.assign(El(t),Ra(t),Zc(t),p_e(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Cl(r),il(r),el(r),m_e(r))},"resolveRuntimeExtensions")});var vw,NJ=I(()=>{wt();Qs();Ce();Tt();xt();Qe();_s();Ct();Oj();Mj();d_e();h_e();vw=class extends Kn{static{i(this,"SSOOIDCClient")}config;constructor(...[e]){let r=u_e(e||{});super(r),this.initConfig=r;let n=XPe(r),s=Al(n),o=ll(s),a=Yo(o),c=a,l=xu(c),u=KPe(l),d=A_e(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(hl(this.config)),this.middlewareStack.use(Ru(this.config)),this.middlewareStack.use(tl(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(ml(this.config)),this.middlewareStack.use(Nu(this.config,{httpAuthSchemeParametersProvider:jPe,identityProviderConfigProvider:i(async p=>new Pa({"aws.auth#sigv4":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Tu(this.config))}destroy(){super.destroy()}}});var _w,TJ=I(()=>{Ce();xt();Mj();cD();_w=class extends pn.classBuilder().ep(ZPe).m(function(e,r,n,s){return[Sa(n,e.getEndpointParameterInstructions())]}).s("AWSSSOOIDCService","CreateToken",{}).n("SSOOIDCClient","CreateTokenCommand").sc(RJ).build(){static{i(this,"CreateTokenCommand")}}});var Twt,uD,g_e=I(()=>{Ce();TJ();NJ();Twt={CreateTokenCommand:_w},uD=class extends vw{static{i(this,"SSOOIDC")}};nl(Twt,uD)});var y_e=I(()=>{TJ()});var Pwt,vwt,E_e=I(()=>{Pwt={KMS_ACCESS_DENIED:"KMS_AccessDeniedException"},vwt={KMS_DISABLED_KEY:"KMS_DisabledException",KMS_INVALID_KEY_USAGE:"KMS_InvalidKeyUsageException",KMS_INVALID_STATE:"KMS_InvalidStateException",KMS_KEY_NOT_FOUND:"KMS_NotFoundException"}});var C_e=I(()=>{});var PJ={};en(PJ,{$Command:()=>pn,AccessDeniedException:()=>Cw,AccessDeniedException$:()=>Wve,AccessDeniedExceptionReason:()=>Pwt,AuthorizationPendingException:()=>Iw,AuthorizationPendingException$:()=>jve,CreateToken$:()=>RJ,CreateTokenCommand:()=>_w,CreateTokenRequest$:()=>i_e,CreateTokenResponse$:()=>a_e,ExpiredTokenException:()=>xw,ExpiredTokenException$:()=>Jve,InternalServerException:()=>ww,InternalServerException$:()=>Kve,InvalidClientException:()=>bw,InvalidClientException$:()=>Xve,InvalidGrantException:()=>Sw,InvalidGrantException$:()=>Zve,InvalidRequestException:()=>Bw,InvalidRequestException$:()=>e_e,InvalidRequestExceptionReason:()=>vwt,InvalidScopeException:()=>Rw,InvalidScopeException$:()=>t_e,SSOOIDC:()=>uD,SSOOIDCClient:()=>vw,SSOOIDCServiceException:()=>wn,SSOOIDCServiceException$:()=>Yve,SlowDownException:()=>Nw,SlowDownException$:()=>r_e,UnauthorizedClientException:()=>Tw,UnauthorizedClientException$:()=>n_e,UnsupportedGrantTypeException:()=>Pw,UnsupportedGrantTypeException$:()=>s_e,__Client:()=>Kn,errorTypeRegistries:()=>BJ});var vJ=I(()=>{NJ();g_e();y_e();cD();E_e();SJ();C_e();aD()});var b_e=b(Qw=>{"use strict";var _wt=(wt(),W(Ds)),Qwt=(Xr(),W(up)),bn=(Tt(),W(kn)),Dwt=require("node:fs"),kwt=i(({logger:t,signingName:e}={})=>async()=>{if(t?.debug?.("@aws-sdk/token-providers - fromEnvSigningName"),!e)throw new bn.TokenProviderError("Please pass 'signingName' to compute environment variable key",{logger:t});let r=Qwt.getBearerTokenEnvKey(e);if(!(r in process.env))throw new bn.TokenProviderError(`Token not present in '${r}' environment variable`,{logger:t});let n={token:process.env[r]};return _wt.setTokenFeature(n,"BEARER_SERVICE_ENV_VARS","3"),n},"fromEnvSigningName"),Lwt=300*1e3,_J="To refresh this SSO session run 'aws sso login' with the corresponding profile.",Owt=i(async(t,e={},r)=>{let{SSOOIDCClient:n}=await Promise.resolve().then(()=>(vJ(),PJ)),s=i(a=>e.clientConfig?.[a]??e.parentClientConfig?.[a]??r?.[a],"coalesce");return new n(Object.assign({},e.clientConfig??{},{region:t??e.clientConfig?.region,logger:s("logger"),userAgentAppId:s("userAgentAppId")}))},"getSsoOidcClient"),Mwt=i(async(t,e,r={},n)=>{let{CreateTokenCommand:s}=await Promise.resolve().then(()=>(vJ(),PJ));return(await Owt(e,r,n)).send(new s({clientId:t.clientId,clientSecret:t.clientSecret,refreshToken:t.refreshToken,grantType:"refresh_token"}))},"getNewSsoOidcToken"),I_e=i(t=>{if(t.expiration&&t.expiration.getTime(){if(typeof e>"u")throw new bn.TokenProviderError(`Value not present for '${t}' in SSO Token${r?". Cannot refresh":""}. ${_J}`,!1)},"validateTokenKey"),{writeFile:Fwt}=Dwt.promises,Uwt=i((t,e)=>{let r=bn.getSSOTokenFilepath(t),n=JSON.stringify(e,null,2);return Fwt(r,n)},"writeSSOTokenToFile"),x_e=new Date(0),w_e=i((t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/token-providers - fromSso");let r=await bn.parseKnownFiles(t),n=bn.getProfileName({profile:t.profile??e?.profile}),s=r[n];if(s){if(!s.sso_session)throw new bn.TokenProviderError(`Profile '${n}' is missing required property 'sso_session'.`)}else throw new bn.TokenProviderError(`Profile '${n}' could not be found in shared credentials file.`,!1);let o=s.sso_session,c=(await bn.loadSsoSessionData(t))[o];if(!c)throw new bn.TokenProviderError(`Sso session '${o}' could not be found in shared credentials file.`,!1);for(let f of["sso_start_url","sso_region"])if(!c[f])throw new bn.TokenProviderError(`Sso session '${o}' is missing required property '${f}'.`,!1);c.sso_start_url;let l=c.sso_region,u;try{u=await bn.getSSOTokenFromFile(o)}catch{throw new bn.TokenProviderError(`The SSO session token associated with profile=${n} was not found or is invalid. ${_J}`,!1)}Df("accessToken",u.accessToken),Df("expiresAt",u.expiresAt);let{accessToken:d,expiresAt:p}=u,m={token:d,expiration:new Date(p)};if(m.expiration.getTime()-Date.now()>Lwt)return m;if(Date.now()-x_e.getTime()<30*1e3)return I_e(m),m;Df("clientId",u.clientId,!0),Df("clientSecret",u.clientSecret,!0),Df("refreshToken",u.refreshToken,!0);try{x_e.setTime(Date.now());let f=await Mwt(u,l,t,e);Df("accessToken",f.accessToken),Df("expiresIn",f.expiresIn);let g=new Date(Date.now()+f.expiresIn*1e3);try{await Uwt(o,{...u,accessToken:f.accessToken,expiresAt:g.toISOString(),refreshToken:f.refreshToken})}catch{}return{token:f.accessToken,expiration:g}}catch{return I_e(m),m}},"fromSso"),qwt=i(({token:t,logger:e})=>async()=>{if(e?.debug("@aws-sdk/token-providers - fromStatic"),!t||!t.token)throw new bn.TokenProviderError("Please pass a valid token to fromStatic",!1);return t},"fromStatic"),$wt=i((t={})=>bn.memoize(bn.chain(w_e(t),async()=>{throw new bn.TokenProviderError("Could not load token from any providers",!1)}),e=>e.expiration!==void 0&&e.expiration.getTime()-Date.now()<3e5,e=>e.expiration!==void 0),"nodeProvider");Qw.fromEnvSigningName=kwt;Qw.fromSso=w_e;Qw.fromStatic=qwt;Qw.nodeProvider=$wt});function Gwt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"awsssoportal",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function Hwt(t){return{schemeId:"smithy.api#noAuth"}}var S_e,B_e,R_e,QJ=I(()=>{Xr();Ce();S_e=i(async(t,e,r)=>({operation:fr(e).operation,region:await Ut(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSSOHttpAuthSchemeParametersProvider");i(Gwt,"createAwsAuthSigv4HttpAuthOption");i(Hwt,"createSmithyApiNoAuthHttpAuthOption");B_e=i(t=>{let e=[];return t.operation==="GetRoleCredentials"?e.push(Hwt(t)):e.push(Gwt(t)),e},"defaultSSOHttpAuthSchemeProvider"),R_e=i(t=>{let e=Il(t);return Object.assign(e,{authSchemePreference:Ut(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var N_e,T_e,DJ=I(()=>{N_e=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"awsssoportal"}),"resolveClientEndpointParameters"),T_e={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var Dw,kf,dD,P_e,D_e,pD,kJ,v_e,LJ,by,__e,Q_e,zwt,mo,Vwt,k_e,L_e=I(()=>{xt();Dw="ref",kf=-1,dD=!0,P_e="isSet",D_e="PartitionResult",pD="booleanEquals",kJ="getAttr",v_e={[Dw]:"Endpoint"},LJ={[Dw]:D_e},by={},__e=[{[Dw]:"Region"}],Q_e={conditions:[[P_e,[v_e]],[P_e,__e],["aws.partition",__e,D_e],[pD,[{[Dw]:"UseFIPS"},dD]],[pD,[{[Dw]:"UseDualStack"},dD]],[pD,[{fn:kJ,argv:[LJ,"supportsDualStack"]},dD]],[pD,[{fn:kJ,argv:[LJ,"supportsFIPS"]},dD]],["stringEquals",[{fn:kJ,argv:[LJ,"name"]},"aws-us-gov"]]],results:[[kf],[kf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[kf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[v_e,by],["https://portal.sso-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",by],[kf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://portal.sso.{Region}.amazonaws.com",by],["https://portal.sso-fips.{Region}.{PartitionResult#dnsSuffix}",by],[kf,"FIPS is enabled but this partition does not support FIPS"],["https://portal.sso.{Region}.{PartitionResult#dualStackDnsSuffix}",by],[kf,"DualStack is enabled but this partition does not support DualStack"],["https://portal.sso.{Region}.{PartitionResult#dnsSuffix}",by],[kf,"Invalid Configuration: Missing Region"]]},zwt=2,mo=1e8,Vwt=new Int32Array([-1,1,-1,0,13,3,1,4,mo+12,2,5,mo+12,3,8,6,4,7,mo+11,5,mo+9,mo+10,4,11,9,6,10,mo+8,7,mo+6,mo+7,5,12,mo+5,6,mo+4,mo+5,3,mo+1,14,4,mo+2,mo+3]),k_e=ki.from(Vwt,zwt,Q_e.conditions,Q_e.results)});var Ywt,O_e,M_e=I(()=>{wt();xt();L_e();Ywt=new Li({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),O_e=i((t,e={})=>Ywt.get(t,()=>jc(k_e,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");ao.aws=_a});var La,mD=I(()=>{Ce();La=class t extends Fi{static{i(this,"SSOServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var kw,Lw,Ow,Mw,OJ=I(()=>{mD();kw=class t extends La{static{i(this,"InvalidRequestException")}name="InvalidRequestException";$fault="client";constructor(e){super({name:"InvalidRequestException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Lw=class t extends La{static{i(this,"ResourceNotFoundException")}name="ResourceNotFoundException";$fault="client";constructor(e){super({name:"ResourceNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Ow=class t extends La{static{i(this,"TooManyRequestsException")}name="TooManyRequestsException";$fault="client";constructor(e){super({name:"TooManyRequestsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},Mw=class t extends La{static{i(this,"UnauthorizedException")}name="UnauthorizedException";$fault="client";constructor(e){super({name:"UnauthorizedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}}});var Wwt,jwt,Jwt,Kwt,Xwt,Zwt,e0t,t0t,r0t,n0t,s0t,o0t,i0t,a0t,c0t,fD,AD,l0t,u0t,hD,d0t,F_e,gD,p0t,m0t,f0t,U_e,A0t,h0t,g0t,zi,q_e,$_e,Fw,G_e,H_e,z_e,V_e,MJ,y0t,E0t,C0t,Y_e,W_e,j_e,FJ,yD=I(()=>{Ct();OJ();mD();Wwt="AccessTokenType",jwt="GetRoleCredentials",Jwt="GetRoleCredentialsRequest",Kwt="GetRoleCredentialsResponse",Xwt="InvalidRequestException",Zwt="RoleCredentials",e0t="ResourceNotFoundException",t0t="SecretAccessKeyType",r0t="SessionTokenType",n0t="TooManyRequestsException",s0t="UnauthorizedException",o0t="accountId",i0t="accessKeyId",a0t="accessToken",c0t="account_id",fD="client",AD="error",l0t="expiration",u0t="http",hD="httpError",d0t="httpHeader",F_e="httpQuery",gD="message",p0t="roleCredentials",m0t="roleName",f0t="role_name",U_e="smithy.ts.sdk.synthetic.com.amazonaws.sso",A0t="secretAccessKey",h0t="sessionToken",g0t="x-amz-sso_bearer_token",zi="com.amazonaws.sso",q_e=gr.for(U_e),$_e=[-3,U_e,"SSOServiceException",0,[],[]];q_e.registerError($_e,La);Fw=gr.for(zi),G_e=[-3,zi,Xwt,{[AD]:fD,[hD]:400},[gD],[0]];Fw.registerError(G_e,kw);H_e=[-3,zi,e0t,{[AD]:fD,[hD]:404},[gD],[0]];Fw.registerError(H_e,Lw);z_e=[-3,zi,n0t,{[AD]:fD,[hD]:429},[gD],[0]];Fw.registerError(z_e,Ow);V_e=[-3,zi,s0t,{[AD]:fD,[hD]:401},[gD],[0]];Fw.registerError(V_e,Mw);MJ=[q_e,Fw],y0t=[0,zi,Wwt,8,0],E0t=[0,zi,t0t,8,0],C0t=[0,zi,r0t,8,0],Y_e=[3,zi,Jwt,0,[m0t,o0t,a0t],[[0,{[F_e]:f0t}],[0,{[F_e]:c0t}],[()=>y0t,{[d0t]:g0t}]],3],W_e=[3,zi,Kwt,0,[p0t],[[()=>j_e,0]]],j_e=[3,zi,Zwt,0,[i0t,A0t,h0t,l0t],[0,[()=>E0t,0],[()=>C0t,0],1]],FJ=[9,zi,jwt,{[u0t]:["GET","/federation/credentials",200]},()=>Y_e,()=>W_e]});var J_e,K_e=I(()=>{Xr();_f();Qs();Ce();Qe();st();QJ();M_e();yD();J_e=i(t=>({apiVersion:"2019-06-10",base64Decoder:t?.base64Decoder??$r,base64Encoder:t?.base64Encoder??Ar,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??O_e,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??B_e,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new On},{schemeId:"smithy.api#noAuth",identityProvider:i(e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),"identityProvider"),signer:new Jo}],logger:t?.logger??new lo,protocol:t?.protocol??Ou,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.sso",errorTypeRegistries:MJ,version:"2019-06-10",serviceTarget:"SWBPortalService"},serviceId:t?.serviceId??"SSO",urlParser:t?.urlParser??rs,utf8Decoder:t?.utf8Decoder??Gr,utf8Encoder:t?.utf8Encoder??hr}),"getRuntimeConfig")});var ED,X_e,Z_e=I(()=>{cw();wt();Xr();Ce();Tt();_s();st();ED=D(vu());K_e();X_e=i(t=>{ol(process.version);let e=Wc(t),r=i(()=>e().then(sl),"defaultConfigProvider"),n=J_e(t);qc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??nt(Pu,s),bodyLengthChecker:t?.bodyLengthChecker??Gc,defaultUserAgentProvider:t?.defaultUserAgentProvider??va({serviceId:n.serviceId,clientVersion:mp.version}),maxAttempts:t?.maxAttempts??nt(cl,t),region:t?.region??nt(Dn,{...Ps,...s}),requestHandler:ED.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??nt({...ul,default:i(async()=>(await r()).retryMode||qi,"default")},t),sha256:t?.sha256??Mi.bind(null,"sha256"),streamCollector:t?.streamCollector??ED.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??nt(Vc,s),useFipsEndpoint:t?.useFipsEndpoint??nt(Yc,s),userAgentAppId:t?.userAgentAppId??nt(yl,s)}},"getRuntimeConfig")});var eQe,tQe,rQe=I(()=>{eQe=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),tQe=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig")});var nQe,sQe=I(()=>{wt();Ce();Qe();rQe();nQe=i((t,e)=>{let r=Object.assign(El(t),Ra(t),Zc(t),eQe(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Cl(r),il(r),el(r),tQe(r))},"resolveRuntimeExtensions")});var Uw,UJ=I(()=>{wt();Qs();Ce();Tt();xt();Qe();_s();Ct();QJ();DJ();Z_e();sQe();Uw=class extends Kn{static{i(this,"SSOClient")}config;constructor(...[e]){let r=X_e(e||{});super(r),this.initConfig=r;let n=N_e(r),s=Al(n),o=ll(s),a=Yo(o),c=a,l=xu(c),u=R_e(l),d=nQe(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(hl(this.config)),this.middlewareStack.use(Ru(this.config)),this.middlewareStack.use(tl(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(ml(this.config)),this.middlewareStack.use(Nu(this.config,{httpAuthSchemeParametersProvider:S_e,identityProviderConfigProvider:i(async p=>new Pa({"aws.auth#sigv4":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Tu(this.config))}destroy(){super.destroy()}}});var qw,qJ=I(()=>{Ce();xt();DJ();yD();qw=class extends pn.classBuilder().ep(T_e).m(function(e,r,n,s){return[Sa(n,e.getEndpointParameterInstructions())]}).s("SWBPortalService","GetRoleCredentials",{}).n("SSOClient","GetRoleCredentialsCommand").sc(FJ).build(){static{i(this,"GetRoleCredentialsCommand")}}});var I0t,CD,oQe=I(()=>{Ce();qJ();UJ();I0t={GetRoleCredentialsCommand:qw},CD=class extends Uw{static{i(this,"SSO")}};nl(I0t,CD)});var iQe=I(()=>{qJ()});var aQe=I(()=>{});var cQe={};en(cQe,{$Command:()=>pn,GetRoleCredentials$:()=>FJ,GetRoleCredentialsCommand:()=>qw,GetRoleCredentialsRequest$:()=>Y_e,GetRoleCredentialsResponse$:()=>W_e,InvalidRequestException:()=>kw,InvalidRequestException$:()=>G_e,ResourceNotFoundException:()=>Lw,ResourceNotFoundException$:()=>H_e,RoleCredentials$:()=>j_e,SSO:()=>CD,SSOClient:()=>Uw,SSOServiceException:()=>La,SSOServiceException$:()=>$_e,TooManyRequestsException:()=>Ow,TooManyRequestsException$:()=>z_e,UnauthorizedException:()=>Mw,UnauthorizedException$:()=>V_e,__Client:()=>Kn,errorTypeRegistries:()=>MJ});var lQe=I(()=>{UJ();oQe();iQe();yD();OJ();aQe();mD()});var dQe=b($J=>{"use strict";var uQe=(lQe(),W(cQe));$J.GetRoleCredentialsCommand=uQe.GetRoleCredentialsCommand;$J.SSOClient=uQe.SSOClient});var GJ=b(ID=>{"use strict";var Ls=(Tt(),W(kn)),pQe=(wt(),W(Ds)),x0t=b_e(),fQe=i(t=>t&&(typeof t.sso_start_url=="string"||typeof t.sso_account_id=="string"||typeof t.sso_session=="string"||typeof t.sso_region=="string"||typeof t.sso_role_name=="string"),"isSsoProfile"),$w=!1,mQe=i(async({ssoStartUrl:t,ssoSession:e,ssoAccountId:r,ssoRegion:n,ssoRoleName:s,ssoClient:o,clientConfig:a,parentClientConfig:c,callerClientConfig:l,profile:u,filepath:d,configFilepath:p,ignoreCache:m,logger:f})=>{let g,E="To refresh this SSO session run aws sso login with the corresponding profile.";if(e)try{let ye=await x0t.fromSso({profile:u,filepath:d,configFilepath:p,ignoreCache:m})();g={accessToken:ye.token,expiresAt:new Date(ye.expiration).toISOString()}}catch(ye){throw new Ls.CredentialsProviderError(ye.message,{tryNextLink:$w,logger:f})}else try{g=await Ls.getSSOTokenFromFile(t)}catch{throw new Ls.CredentialsProviderError(`The SSO session associated with this profile is invalid. ${E}`,{tryNextLink:$w,logger:f})}if(new Date(g.expiresAt).getTime()-Date.now()<=0)throw new Ls.CredentialsProviderError(`The SSO session associated with this profile has expired. ${E}`,{tryNextLink:$w,logger:f});let{accessToken:x}=g,{SSOClient:w,GetRoleCredentialsCommand:S}=await Promise.resolve().then(function(){return dQe()}),P=o||new w(Object.assign({},a??{},{logger:a?.logger??l?.logger??c?.logger,region:a?.region??n,userAgentAppId:a?.userAgentAppId??l?.userAgentAppId??c?.userAgentAppId})),Q;try{Q=await P.send(new S({accountId:r,roleName:s,accessToken:x}))}catch(ye){throw new Ls.CredentialsProviderError(ye,{tryNextLink:$w,logger:f})}let{roleCredentials:{accessKeyId:q,secretAccessKey:M,sessionToken:V,expiration:pe,credentialScope:ke,accountId:Re}={}}=Q;if(!q||!M||!V||!pe)throw new Ls.CredentialsProviderError("SSO returns an invalid temporary credential.",{tryNextLink:$w,logger:f});let se={accessKeyId:q,secretAccessKey:M,sessionToken:V,expiration:new Date(pe),...ke&&{credentialScope:ke},...Re&&{accountId:Re}};return e?pQe.setCredentialFeature(se,"CREDENTIALS_SSO","s"):pQe.setCredentialFeature(se,"CREDENTIALS_SSO_LEGACY","u"),se},"resolveSSOCredentials"),AQe=i((t,e)=>{let{sso_start_url:r,sso_account_id:n,sso_region:s,sso_role_name:o}=t;if(!r||!n||!s||!o)throw new Ls.CredentialsProviderError(`Profile is configured with invalid SSO credentials. Required parameters "sso_account_id", "sso_region", "sso_role_name", "sso_start_url". Got ${Object.keys(t).join(", ")} +Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.html`,{tryNextLink:!1,logger:e});return t},"validateSsoProfile"),w0t=i((t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-sso - fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:a}=t,{ssoClient:c}=t,l=Ls.getProfileName({profile:t.profile??e?.profile});if(!r&&!n&&!s&&!o&&!a){let d=(await Ls.parseKnownFiles(t))[l];if(!d)throw new Ls.CredentialsProviderError(`Profile ${l} was not found.`,{logger:t.logger});if(!fQe(d))throw new Ls.CredentialsProviderError(`Profile ${l} is not configured with SSO credentials.`,{logger:t.logger});if(d?.sso_session){let w=(await Ls.loadSsoSessionData(t))[d.sso_session],S=` configurations in profile ${l} and sso-session ${d.sso_session}`;if(s&&s!==w.sso_region)throw new Ls.CredentialsProviderError("Conflicting SSO region"+S,{tryNextLink:!1,logger:t.logger});if(r&&r!==w.sso_start_url)throw new Ls.CredentialsProviderError("Conflicting SSO start_url"+S,{tryNextLink:!1,logger:t.logger});d.sso_region=w.sso_region,d.sso_start_url=w.sso_start_url}let{sso_start_url:p,sso_account_id:m,sso_region:f,sso_role_name:g,sso_session:E}=AQe(d,t.logger);return mQe({ssoStartUrl:p,ssoSession:E,ssoAccountId:m,ssoRegion:f,ssoRoleName:g,ssoClient:c,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:l,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}else{if(!r||!n||!s||!o)throw new Ls.CredentialsProviderError('Incomplete configuration. The fromSSO() argument hash must include "ssoStartUrl", "ssoAccountId", "ssoRegion", "ssoRoleName"',{tryNextLink:!1,logger:t.logger});return mQe({ssoStartUrl:r,ssoSession:a,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoClient:c,clientConfig:t.clientConfig,parentClientConfig:t.parentClientConfig,callerClientConfig:t.callerClientConfig,profile:l,filepath:t.filepath,configFilepath:t.configFilepath,ignoreCache:t.ignoreCache,logger:t.logger})}},"fromSSO");ID.fromSSO=w0t;ID.isSsoProfile=fQe;ID.validateSsoProfile=AQe});function b0t(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"signin",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function S0t(t){return{schemeId:"smithy.api#noAuth"}}var hQe,gQe,yQe,HJ=I(()=>{Xr();Ce();hQe=i(async(t,e,r)=>({operation:fr(e).operation,region:await Ut(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultSigninHttpAuthSchemeParametersProvider");i(b0t,"createAwsAuthSigv4HttpAuthOption");i(S0t,"createSmithyApiNoAuthHttpAuthOption");gQe=i(t=>{let e=[];return t.operation==="CreateOAuth2Token"?e.push(S0t(t)):e.push(b0t(t)),e},"defaultSigninHttpAuthSchemeProvider"),yQe=i(t=>{let e=Il(t);return Object.assign(e,{authSchemePreference:Ut(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var EQe,CQe,zJ=I(()=>{EQe=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"signin"}),"resolveClientEndpointParameters"),CQe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var Gw,Lf,xD,IQe,SQe,wD,WJ,VJ,xQe,jJ,YJ,Ep,wQe,bQe,B0t,is,R0t,BQe,RQe=I(()=>{xt();Gw="ref",Lf=-1,xD=!0,IQe="isSet",SQe="PartitionResult",wD="booleanEquals",WJ="getAttr",VJ="stringEquals",xQe={[Gw]:"Endpoint"},jJ={[Gw]:SQe},YJ={fn:WJ,argv:[jJ,"name"]},Ep={},wQe=[{[Gw]:"Region"}],bQe={conditions:[[IQe,[xQe]],[IQe,wQe],["aws.partition",wQe,SQe],[wD,[{[Gw]:"UseFIPS"},xD]],[wD,[{[Gw]:"UseDualStack"},xD]],[wD,[{fn:WJ,argv:[jJ,"supportsDualStack"]},xD]],[wD,[{fn:WJ,argv:[jJ,"supportsFIPS"]},xD]],[VJ,[YJ,"aws"]],[VJ,[YJ,"aws-cn"]],[VJ,[YJ,"aws-us-gov"]]],results:[[Lf],[Lf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Lf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[xQe,Ep],["https://{Region}.signin.aws.amazon.com",Ep],["https://{Region}.signin.amazonaws.cn",Ep],["https://{Region}.signin.amazonaws-us-gov.com",Ep],["https://signin-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",Ep],[Lf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://signin-fips.{Region}.{PartitionResult#dnsSuffix}",Ep],[Lf,"FIPS is enabled but this partition does not support FIPS"],["https://signin.{Region}.{PartitionResult#dualStackDnsSuffix}",Ep],[Lf,"DualStack is enabled but this partition does not support DualStack"],["https://signin.{Region}.{PartitionResult#dnsSuffix}",Ep],[Lf,"Invalid Configuration: Missing Region"]]},B0t=2,is=1e8,R0t=new Int32Array([-1,1,-1,0,15,3,1,4,is+14,2,5,is+14,3,11,6,4,10,7,7,is+4,8,8,is+5,9,9,is+6,is+13,5,is+11,is+12,4,13,12,6,is+9,is+10,5,14,is+8,6,is+7,is+8,3,is+1,16,4,is+2,is+3]),BQe=ki.from(R0t,B0t,bQe.conditions,bQe.results)});var N0t,NQe,TQe=I(()=>{wt();xt();RQe();N0t=new Li({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),NQe=i((t,e={})=>N0t.get(t,()=>jc(BQe,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");ao.aws=_a});var Oa,bD=I(()=>{Ce();Oa=class t extends Fi{static{i(this,"SigninServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var Hw,zw,Vw,Yw,JJ=I(()=>{bD();Hw=class t extends Oa{static{i(this,"AccessDeniedException")}name="AccessDeniedException";$fault="client";error;constructor(e){super({name:"AccessDeniedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},zw=class t extends Oa{static{i(this,"InternalServerException")}name="InternalServerException";$fault="server";error;constructor(e){super({name:"InternalServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},Vw=class t extends Oa{static{i(this,"TooManyRequestsError")}name="TooManyRequestsError";$fault="client";error;constructor(e){super({name:"TooManyRequestsError",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}},Yw=class t extends Oa{static{i(this,"ValidationException")}name="ValidationException";$fault="client";error;constructor(e){super({name:"ValidationException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.error=e.error}}});var T0t,P0t,v0t,_0t,Q0t,D0t,k0t,L0t,O0t,M0t,F0t,PQe,vQe,KJ,_Qe,QQe,U0t,Cp,DQe,kQe,q0t,XJ,LQe,Xo,BD,SD,OQe,qQe,MQe,FQe,$0t,G0t,H0t,UQe,Vi,$Qe,GQe,Ww,HQe,zQe,VQe,YQe,ZJ,WQe,jQe,JQe,KQe,XQe,ZQe,e5,RD=I(()=>{Ct();JJ();bD();T0t="AccessDeniedException",P0t="AccessToken",v0t="CreateOAuth2Token",_0t="CreateOAuth2TokenRequest",Q0t="CreateOAuth2TokenRequestBody",D0t="CreateOAuth2TokenResponseBody",k0t="CreateOAuth2TokenResponse",L0t="InternalServerException",O0t="RefreshToken",M0t="TooManyRequestsError",F0t="ValidationException",PQe="accessKeyId",vQe="accessToken",KJ="client",_Qe="clientId",QQe="codeVerifier",U0t="code",Cp="error",DQe="expiresIn",kQe="grantType",q0t="http",XJ="httpError",LQe="idToken",Xo="jsonName",BD="message",SD="refreshToken",OQe="redirectUri",qQe="smithy.ts.sdk.synthetic.com.amazonaws.signin",MQe="secretAccessKey",FQe="sessionToken",$0t="server",G0t="tokenInput",H0t="tokenOutput",UQe="tokenType",Vi="com.amazonaws.signin",$Qe=gr.for(qQe),GQe=[-3,qQe,"SigninServiceException",0,[],[]];$Qe.registerError(GQe,Oa);Ww=gr.for(Vi),HQe=[-3,Vi,T0t,{[Cp]:KJ},[Cp,BD],[0,0],2];Ww.registerError(HQe,Hw);zQe=[-3,Vi,L0t,{[Cp]:$0t,[XJ]:500},[Cp,BD],[0,0],2];Ww.registerError(zQe,zw);VQe=[-3,Vi,M0t,{[Cp]:KJ,[XJ]:429},[Cp,BD],[0,0],2];Ww.registerError(VQe,Vw);YQe=[-3,Vi,F0t,{[Cp]:KJ,[XJ]:400},[Cp,BD],[0,0],2];Ww.registerError(YQe,Yw);ZJ=[$Qe,Ww],WQe=[0,Vi,O0t,8,0],jQe=[3,Vi,P0t,8,[PQe,MQe,FQe],[[0,{[Xo]:PQe}],[0,{[Xo]:MQe}],[0,{[Xo]:FQe}]],3],JQe=[3,Vi,_0t,0,[G0t],[[()=>KQe,16]],1],KQe=[3,Vi,Q0t,0,[_Qe,kQe,U0t,OQe,QQe,SD],[[0,{[Xo]:_Qe}],[0,{[Xo]:kQe}],0,[0,{[Xo]:OQe}],[0,{[Xo]:QQe}],[()=>WQe,{[Xo]:SD}]],2],XQe=[3,Vi,k0t,0,[H0t],[[()=>ZQe,16]],1],ZQe=[3,Vi,D0t,0,[vQe,UQe,DQe,SD,LQe],[[()=>jQe,{[Xo]:vQe}],[0,{[Xo]:UQe}],[1,{[Xo]:DQe}],[()=>WQe,{[Xo]:SD}],[0,{[Xo]:LQe}]],4],e5=[9,Vi,v0t,{[q0t]:["POST","/v1/token",200]},()=>JQe,()=>XQe]});var eDe,tDe=I(()=>{Xr();_f();Qs();Ce();Qe();st();HJ();TQe();RD();eDe=i(t=>({apiVersion:"2023-01-01",base64Decoder:t?.base64Decoder??$r,base64Encoder:t?.base64Encoder??Ar,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??NQe,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??gQe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new On},{schemeId:"smithy.api#noAuth",identityProvider:i(e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),"identityProvider"),signer:new Jo}],logger:t?.logger??new lo,protocol:t?.protocol??Ou,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.signin",errorTypeRegistries:ZJ,version:"2023-01-01",serviceTarget:"Signin"},serviceId:t?.serviceId??"Signin",urlParser:t?.urlParser??rs,utf8Decoder:t?.utf8Decoder??Gr,utf8Encoder:t?.utf8Encoder??hr}),"getRuntimeConfig")});var ND,rDe,nDe=I(()=>{cw();wt();Xr();Ce();Tt();_s();st();ND=D(vu());tDe();rDe=i(t=>{ol(process.version);let e=Wc(t),r=i(()=>e().then(sl),"defaultConfigProvider"),n=eDe(t);qc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??nt(Pu,s),bodyLengthChecker:t?.bodyLengthChecker??Gc,defaultUserAgentProvider:t?.defaultUserAgentProvider??va({serviceId:n.serviceId,clientVersion:mp.version}),maxAttempts:t?.maxAttempts??nt(cl,t),region:t?.region??nt(Dn,{...Ps,...s}),requestHandler:ND.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??nt({...ul,default:i(async()=>(await r()).retryMode||qi,"default")},t),sha256:t?.sha256??Mi.bind(null,"sha256"),streamCollector:t?.streamCollector??ND.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??nt(Vc,s),useFipsEndpoint:t?.useFipsEndpoint??nt(Yc,s),userAgentAppId:t?.userAgentAppId??nt(yl,s)}},"getRuntimeConfig")});var sDe,oDe,iDe=I(()=>{sDe=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),oDe=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig")});var aDe,cDe=I(()=>{wt();Ce();Qe();iDe();aDe=i((t,e)=>{let r=Object.assign(El(t),Ra(t),Zc(t),sDe(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Cl(r),il(r),el(r),oDe(r))},"resolveRuntimeExtensions")});var jw,t5=I(()=>{wt();Qs();Ce();Tt();xt();Qe();_s();Ct();HJ();zJ();nDe();cDe();jw=class extends Kn{static{i(this,"SigninClient")}config;constructor(...[e]){let r=rDe(e||{});super(r),this.initConfig=r;let n=EQe(r),s=Al(n),o=ll(s),a=Yo(o),c=a,l=xu(c),u=yQe(l),d=aDe(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(hl(this.config)),this.middlewareStack.use(Ru(this.config)),this.middlewareStack.use(tl(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(ml(this.config)),this.middlewareStack.use(Nu(this.config,{httpAuthSchemeParametersProvider:hQe,identityProviderConfigProvider:i(async p=>new Pa({"aws.auth#sigv4":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Tu(this.config))}destroy(){super.destroy()}}});var Jw,r5=I(()=>{Ce();xt();zJ();RD();Jw=class extends pn.classBuilder().ep(CQe).m(function(e,r,n,s){return[Sa(n,e.getEndpointParameterInstructions())]}).s("Signin","CreateOAuth2Token",{}).n("SigninClient","CreateOAuth2TokenCommand").sc(e5).build(){static{i(this,"CreateOAuth2TokenCommand")}}});var z0t,TD,lDe=I(()=>{Ce();r5();t5();z0t={CreateOAuth2TokenCommand:Jw},TD=class extends jw{static{i(this,"Signin")}};nl(z0t,TD)});var uDe=I(()=>{r5()});var V0t,dDe=I(()=>{V0t={AUTHCODE_EXPIRED:"AUTHCODE_EXPIRED",INSUFFICIENT_PERMISSIONS:"INSUFFICIENT_PERMISSIONS",INVALID_REQUEST:"INVALID_REQUEST",SERVER_ERROR:"server_error",TOKEN_EXPIRED:"TOKEN_EXPIRED",USER_CREDENTIALS_CHANGED:"USER_CREDENTIALS_CHANGED"}});var pDe=I(()=>{});var mDe={};en(mDe,{$Command:()=>pn,AccessDeniedException:()=>Hw,AccessDeniedException$:()=>HQe,AccessToken$:()=>jQe,CreateOAuth2Token$:()=>e5,CreateOAuth2TokenCommand:()=>Jw,CreateOAuth2TokenRequest$:()=>JQe,CreateOAuth2TokenRequestBody$:()=>KQe,CreateOAuth2TokenResponse$:()=>XQe,CreateOAuth2TokenResponseBody$:()=>ZQe,InternalServerException:()=>zw,InternalServerException$:()=>zQe,OAuth2ErrorCode:()=>V0t,Signin:()=>TD,SigninClient:()=>jw,SigninServiceException:()=>Oa,SigninServiceException$:()=>GQe,TooManyRequestsError:()=>Vw,TooManyRequestsError$:()=>VQe,ValidationException:()=>Yw,ValidationException$:()=>YQe,__Client:()=>Kn,errorTypeRegistries:()=>ZJ});var fDe=I(()=>{t5();lDe();uDe();RD();dDe();JJ();pDe();bD()});var hDe=b(ADe=>{"use strict";var Y0t=(wt(),W(Ds)),Ma=(Tt(),W(kn)),W0t=(Qe(),W(rl)),PD=require("node:crypto"),n5=require("node:fs"),j0t=require("node:os"),s5=require("node:path"),o5=class t{static{i(this,"LoginCredentialsFetcher")}profileData;init;callerClientConfig;static REFRESH_THRESHOLD=300*1e3;constructor(e,r,n){this.profileData=e,this.init=r,this.callerClientConfig=n}async loadCredentials(){let e=await this.loadToken();if(!e)throw new Ma.CredentialsProviderError(`Failed to load a token for session ${this.loginSession}, please re-authenticate using aws login`,{tryNextLink:!1,logger:this.logger});let r=e.accessToken,n=Date.now();return new Date(r.expiresAt).getTime()-n<=t.REFRESH_THRESHOLD?this.refresh(e):{accessKeyId:r.accessKeyId,secretAccessKey:r.secretAccessKey,sessionToken:r.sessionToken,accountId:r.accountId,expiration:new Date(r.expiresAt)}}get logger(){return this.init?.logger}get loginSession(){return this.profileData.login_session}async refresh(e){let{SigninClient:r,CreateOAuth2TokenCommand:n}=await Promise.resolve().then(()=>(fDe(),mDe)),{logger:s,userAgentAppId:o}=this.callerClientConfig??{},c=i(p=>p?.metadata?.handlerProtocol==="h2","isH2")(this.callerClientConfig?.requestHandler)?void 0:this.callerClientConfig?.requestHandler,l=this.profileData.region??await this.callerClientConfig?.region?.()??process.env.AWS_REGION,u=new r({credentials:{accessKeyId:"",secretAccessKey:""},region:l,requestHandler:c,logger:s,userAgentAppId:o,...this.init?.clientConfig});this.createDPoPInterceptor(u.middlewareStack);let d={tokenInput:{clientId:e.clientId,refreshToken:e.refreshToken,grantType:"refresh_token"}};try{let p=await u.send(new n(d)),{accessKeyId:m,secretAccessKey:f,sessionToken:g}=p.tokenOutput?.accessToken??{},{refreshToken:E,expiresIn:x}=p.tokenOutput??{};if(!m||!f||!g||!E)throw new Ma.CredentialsProviderError("Token refresh response missing required fields",{logger:this.logger,tryNextLink:!1});let w=(x??900)*1e3,S=new Date(Date.now()+w),P={...e,accessToken:{...e.accessToken,accessKeyId:m,secretAccessKey:f,sessionToken:g,expiresAt:S.toISOString()},refreshToken:E};await this.saveToken(P);let Q=P.accessToken;return{accessKeyId:Q.accessKeyId,secretAccessKey:Q.secretAccessKey,sessionToken:Q.sessionToken,accountId:Q.accountId,expiration:S}}catch(p){if(p.name==="AccessDeniedException"){let m=p.error,f;switch(m){case"TOKEN_EXPIRED":f="Your session has expired. Please reauthenticate.";break;case"USER_CREDENTIALS_CHANGED":f="Unable to refresh credentials because of a change in your password. Please reauthenticate with your new password.";break;case"INSUFFICIENT_PERMISSIONS":f="Unable to refresh credentials due to insufficient permissions. You may be missing permission for the 'CreateOAuth2Token' action.";break;default:f=`Failed to refresh token: ${String(p)}. Please re-authenticate using \`aws login\``}throw new Ma.CredentialsProviderError(f,{logger:this.logger,tryNextLink:!1})}throw new Ma.CredentialsProviderError(`Failed to refresh token: ${String(p)}. Please re-authenticate using aws login`,{logger:this.logger})}}async loadToken(){let e=this.getTokenFilePath();try{let r;try{r=await Ma.readFile(e,{ignoreCache:this.init?.ignoreCache})}catch{r=await n5.promises.readFile(e,"utf8")}let n=JSON.parse(r),s=["accessToken","clientId","refreshToken","dpopKey"].filter(o=>!n[o]);if(n.accessToken?.accountId||s.push("accountId"),s.length>0)throw new Ma.CredentialsProviderError(`Token validation failed, missing fields: ${s.join(", ")}`,{logger:this.logger,tryNextLink:!1});return n}catch(r){throw new Ma.CredentialsProviderError(`Failed to load token from ${e}: ${String(r)}`,{logger:this.logger,tryNextLink:!1})}}async saveToken(e){let r=this.getTokenFilePath(),n=s5.dirname(r);try{await n5.promises.mkdir(n,{recursive:!0})}catch{}await n5.promises.writeFile(r,JSON.stringify(e,null,2),"utf8")}getTokenFilePath(){let e=process.env.AWS_LOGIN_CACHE_DIRECTORY??s5.join(j0t.homedir(),".aws","login","cache"),r=Buffer.from(this.loginSession,"utf8"),n=PD.createHash("sha256").update(r).digest("hex");return s5.join(e,`${n}.json`)}derToRawSignature(e){let r=2;if(e[r]!==2)throw new Error("Invalid DER signature");r++;let n=e[r++],s=e.subarray(r,r+n);if(r+=n,e[r]!==2)throw new Error("Invalid DER signature");r++;let o=e[r++],a=e.subarray(r,r+o);s=s[0]===0?s.subarray(1):s,a=a[0]===0?a.subarray(1):a;let c=Buffer.concat([Buffer.alloc(32-s.length),s]),l=Buffer.concat([Buffer.alloc(32-a.length),a]);return Buffer.concat([c,l])}createDPoPInterceptor(e){e.add(r=>async n=>{if(W0t.HttpRequest.isInstance(n.request)){let s=n.request,o=`${s.protocol}//${s.hostname}${s.port?`:${s.port}`:""}${s.path}`,a=await this.generateDpop(s.method,o);s.headers={...s.headers,DPoP:a}}return r(n)},{step:"finalizeRequest",name:"dpopInterceptor",override:!0})}async generateDpop(e="POST",r){let n=await this.loadToken();try{let s=PD.createPrivateKey({key:n.dpopKey,format:"pem",type:"sec1"}),a=PD.createPublicKey(s).export({format:"der",type:"spki"}),c=-1;for(let S=0;Sasync({callerClientConfig:e}={})=>{t?.logger?.debug?.("@aws-sdk/credential-providers - fromLoginCredentials");let r=await Ma.parseKnownFiles(t||{}),n=Ma.getProfileName({profile:t?.profile??e?.profile}),s=r[n];if(!s?.login_session)throw new Ma.CredentialsProviderError(`Profile ${n} does not contain login_session.`,{tryNextLink:!0,logger:t?.logger});let a=await new o5(s,t,e).loadCredentials();return Y0t.setCredentialFeature(a,"CREDENTIALS_LOGIN","AD")},"fromLoginCredentials");ADe.fromLoginCredentials=J0t});var l5=b(_D=>{"use strict";var i5=Cj(),Kw={CrtSignerV4:null},a5="X-Amz-S3session-Token",gDe=a5.toLowerCase(),vD=class extends i5.SignatureV4{static{i(this,"SignatureV4SignWithCredentials")}async signWithCredentials(e,r,n){let s=yDe(r);e.headers[gDe]=r.sessionToken;let o=this;return EDe(o,s),o.signRequest(e,n??{})}async presignWithCredentials(e,r,n){let s=yDe(r);return delete e.headers[gDe],e.headers[a5]=r.sessionToken,e.query=e.query??{},e.query[a5]=r.sessionToken,EDe(this,s),this.presign(e,n)}};function yDe(t){return{accessKeyId:t.accessKeyId,secretAccessKey:t.secretAccessKey,expiration:t.expiration}}i(yDe,"getCredentialsWithoutSessionToken");function EDe(t,e){let r=t.credentialProvider;t.credentialProvider=()=>(t.credentialProvider=r,Promise.resolve(e))}i(EDe,"setSingleOverride");var c5=class{static{i(this,"SignatureV4MultiRegion")}sigv4aSigner;sigv4Signer;signerOptions;static sigv4aDependency(){return typeof Kw.CrtSignerV4=="function"?"crt":typeof i5.signatureV4aContainer.SignatureV4a=="function"?"js":"none"}constructor(e){this.sigv4Signer=new vD(e),this.signerOptions=e}async sign(e,r={}){return r.signingRegion==="*"?this.getSigv4aSigner().sign(e,r):this.sigv4Signer.sign(e,r)}async signWithCredentials(e,r,n={}){if(n.signingRegion==="*"){let s=this.getSigv4aSigner(),o=Kw.CrtSignerV4;if(o&&s instanceof o)return s.signWithCredentials(e,r,n);throw new Error(`signWithCredentials with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.signWithCredentials(e,r,n)}async presign(e,r={}){if(r.signingRegion==="*"){let n=this.getSigv4aSigner(),s=Kw.CrtSignerV4;if(s&&n instanceof s)return n.presign(e,r);throw new Error(`presign with signingRegion '*' is only supported when using the CRT dependency @aws-sdk/signature-v4-crt. Please check whether you have installed the "@aws-sdk/signature-v4-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/signature-v4-crt");] or an ESM equivalent such as [import "@aws-sdk/signature-v4-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt`)}return this.sigv4Signer.presign(e,r)}async presignWithCredentials(e,r,n={}){if(n.signingRegion==="*")throw new Error("Method presignWithCredentials is not supported for [signingRegion=*].");return this.sigv4Signer.presignWithCredentials(e,r,n)}getSigv4aSigner(){if(!this.sigv4aSigner){let e=Kw.CrtSignerV4,r=i5.signatureV4aContainer.SignatureV4a;if(this.signerOptions.runtime==="node"){if(!e&&!r)throw new Error("Neither CRT nor JS SigV4a implementation is available. Please load either @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt");if(e&&typeof e=="function")this.sigv4aSigner=new e({...this.signerOptions,signingAlgorithm:1});else if(r&&typeof r=="function")this.sigv4aSigner=new r({...this.signerOptions});else throw new Error("Available SigV4a implementation is not a valid constructor. Please ensure you've properly imported @aws-sdk/signature-v4-crt or @aws-sdk/signature-v4a.For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt")}else{if(!r||typeof r!="function")throw new Error("JS SigV4a implementation is not available or not a valid constructor. Please check whether you have installed the @aws-sdk/signature-v4a package explicitly. The CRT implementation is not available for browsers. You must also register the package by calling [require('@aws-sdk/signature-v4a');] or an ESM equivalent such as [import '@aws-sdk/signature-v4a';]. For more information please go to https://github.com/aws/aws-sdk-js-v3#using-javascript-non-crt-implementation-of-sigv4a");this.sigv4aSigner=new r({...this.signerOptions})}}return this.sigv4aSigner}};_D.SignatureV4MultiRegion=c5;_D.SignatureV4SignWithCredentials=vD;_D.signatureV4CrtContainer=Kw});var By,Of,Xw,CDe,NDe,Zw,Fn,u5,IDe,xDe,wDe,bDe,SDe,Un,d5,Sy,BDe,RDe,K0t,Pt,X0t,TDe,PDe=I(()=>{xt();By="ref",Of=-1,Xw=!0,CDe="isSet",NDe="PartitionResult",Zw="booleanEquals",Fn="stringEquals",u5="getAttr",IDe="us-east-1",xDe="sigv4",wDe="sts",bDe="https://sts.{Region}.{PartitionResult#dnsSuffix}",SDe={[By]:"Endpoint"},Un={[By]:"Region"},d5={[By]:NDe},Sy={},BDe=[Un],RDe={conditions:[[CDe,[SDe]],[CDe,BDe],["aws.partition",BDe,NDe],[Zw,[{[By]:"UseFIPS"},Xw]],[Zw,[{[By]:"UseDualStack"},Xw]],[Fn,[Un,"aws-global"]],[Zw,[{[By]:"UseGlobalEndpoint"},Xw]],[Fn,[Un,"eu-central-1"]],[Zw,[{fn:u5,argv:[d5,"supportsDualStack"]},Xw]],[Zw,[{fn:u5,argv:[d5,"supportsFIPS"]},Xw]],[Fn,[Un,"ap-south-1"]],[Fn,[Un,"eu-north-1"]],[Fn,[Un,"eu-west-1"]],[Fn,[Un,"eu-west-2"]],[Fn,[Un,"eu-west-3"]],[Fn,[Un,"sa-east-1"]],[Fn,[Un,IDe]],[Fn,[Un,"us-east-2"]],[Fn,[Un,"us-west-2"]],[Fn,[Un,"us-west-1"]],[Fn,[Un,"ca-central-1"]],[Fn,[Un,"ap-southeast-1"]],[Fn,[Un,"ap-northeast-1"]],[Fn,[Un,"ap-southeast-2"]],[Fn,[{fn:u5,argv:[d5,"name"]},"aws-us-gov"]]],results:[[Of],["https://sts.amazonaws.com",{authSchemes:[{name:xDe,signingName:wDe,signingRegion:IDe}]}],[bDe,{authSchemes:[{name:xDe,signingName:wDe,signingRegion:"{Region}"}]}],[Of,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Of,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[SDe,Sy],["https://sts-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",Sy],[Of,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://sts.{Region}.amazonaws.com",Sy],["https://sts-fips.{Region}.{PartitionResult#dnsSuffix}",Sy],[Of,"FIPS is enabled but this partition does not support FIPS"],["https://sts.{Region}.{PartitionResult#dualStackDnsSuffix}",Sy],[Of,"DualStack is enabled but this partition does not support DualStack"],[bDe,Sy],[Of,"Invalid Configuration: Missing Region"]]},K0t=2,Pt=1e8,X0t=new Int32Array([-1,1,-1,0,30,3,1,4,Pt+14,2,5,Pt+14,3,25,6,4,24,7,5,Pt+1,8,6,9,Pt+13,7,Pt+1,10,10,Pt+1,11,11,Pt+1,12,12,Pt+1,13,13,Pt+1,14,14,Pt+1,15,15,Pt+1,16,16,Pt+1,17,17,Pt+1,18,18,Pt+1,19,19,Pt+1,20,20,Pt+1,21,21,Pt+1,22,22,Pt+1,23,23,Pt+1,Pt+2,8,Pt+11,Pt+12,4,28,26,9,27,Pt+10,24,Pt+8,Pt+9,8,29,Pt+7,9,Pt+6,Pt+7,3,Pt+3,31,4,Pt+4,Pt+5]),TDe=ki.from(X0t,K0t,RDe.conditions,RDe.results)});var Z0t,QD,p5=I(()=>{wt();xt();PDe();Z0t=new Li({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS","UseGlobalEndpoint"]}),QD=i((t,e={})=>Z0t.get(t,()=>jc(TDe,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");ao.aws=_a});function QDe(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"sts",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function m5(t){return{schemeId:"aws.auth#sigv4a",signingProperties:{name:"sts",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}function DDe(t){return{schemeId:"smithy.api#noAuth"}}var vDe,ebt,tbt,_De,rbt,nbt,kDe,LDe,f5=I(()=>{Xr();vDe=D(l5());Ce();xt();p5();ebt=i(t=>async(e,r,n)=>{if(!n)throw new Error("Could not find `input` for `defaultEndpointRuleSetHttpAuthSchemeParametersProvider`");let s=await t(e,r,n),o=fr(r)?.commandInstance?.constructor?.getEndpointParameterInstructions;if(!o)throw new Error(`getEndpointParameterInstructions() is not defined on '${r.commandName}'`);let a=await vx(n,{getEndpointParameterInstructions:o},e);return Object.assign(s,a)},"createEndpointRuleSetHttpAuthSchemeParametersProvider"),tbt=i(async(t,e,r)=>({operation:fr(e).operation,region:await Ut(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"_defaultSTSHttpAuthSchemeParametersProvider"),_De=ebt(tbt);i(QDe,"createAwsAuthSigv4HttpAuthOption");i(m5,"createAwsAuthSigv4aHttpAuthOption");i(DDe,"createSmithyApiNoAuthHttpAuthOption");rbt=i((t,e,r)=>i(s=>{let a=t(s).properties?.authSchemes;if(!a)return e(s);let c=[];for(let l of a){let{name:u,properties:d={},...p}=l,m=u.toLowerCase();u!==m&&console.warn(`HttpAuthScheme has been normalized with lowercasing: '${u}' to '${m}'`);let f;if(m==="sigv4a"){f="aws.auth#sigv4a";let x=a.find(w=>{let S=w.name.toLowerCase();return S!=="sigv4a"&&S.startsWith("sigv4")});if(vDe.SignatureV4MultiRegion.sigv4aDependency()==="none"&&x)continue}else if(m.startsWith("sigv4"))f="aws.auth#sigv4";else throw new Error(`Unknown HttpAuthScheme found in '@smithy.rules#endpointRuleSet': '${m}'`);let g=r[f];if(!g)throw new Error(`Could not find HttpAuthOption create function for '${f}'`);let E=g(s);E.schemeId=f,E.signingProperties={...E.signingProperties||{},...p,...d},c.push(E)}return c},"endpointRuleSetHttpAuthSchemeProvider"),"createEndpointRuleSetHttpAuthSchemeProvider"),nbt=i(t=>{let e=[];return t.operation==="AssumeRoleWithWebIdentity"?(e.push(DDe(t)),e.push(m5(t))):(e.push(QDe(t)),e.push(m5(t))),e},"_defaultSTSHttpAuthSchemeProvider"),kDe=rbt(QD,nbt,{"aws.auth#sigv4":QDe,"aws.auth#sigv4a":m5,"smithy.api#noAuth":DDe}),LDe=i(t=>{let e=Il(t),r=aj(e);return Object.assign(r,{authSchemePreference:Ut(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig")});var ODe,DD,kD=I(()=>{ODe=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,useGlobalEndpoint:t.useGlobalEndpoint??!1,defaultSigningName:"sts"}),"resolveClientEndpointParameters"),DD={UseGlobalEndpoint:{type:"builtInParams",name:"useGlobalEndpoint"},UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}}});var fo,LD=I(()=>{Ce();fo=class t extends Fi{static{i(this,"STSServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}}});var e0,t0,r0,n0,s0,o0,i0,A5=I(()=>{LD();e0=class t extends fo{static{i(this,"ExpiredTokenException")}name="ExpiredTokenException";$fault="client";constructor(e){super({name:"ExpiredTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},t0=class t extends fo{static{i(this,"MalformedPolicyDocumentException")}name="MalformedPolicyDocumentException";$fault="client";constructor(e){super({name:"MalformedPolicyDocumentException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},r0=class t extends fo{static{i(this,"PackedPolicyTooLargeException")}name="PackedPolicyTooLargeException";$fault="client";constructor(e){super({name:"PackedPolicyTooLargeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},n0=class t extends fo{static{i(this,"RegionDisabledException")}name="RegionDisabledException";$fault="client";constructor(e){super({name:"RegionDisabledException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},s0=class t extends fo{static{i(this,"IDPRejectedClaimException")}name="IDPRejectedClaimException";$fault="client";constructor(e){super({name:"IDPRejectedClaimException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},o0=class t extends fo{static{i(this,"InvalidIdentityTokenException")}name="InvalidIdentityTokenException";$fault="client";constructor(e){super({name:"InvalidIdentityTokenException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}},i0=class t extends fo{static{i(this,"IDPCommunicationErrorException")}name="IDPCommunicationErrorException";$fault="client";$retryable={};constructor(e){super({name:"IDPCommunicationErrorException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}}});var sbt,obt,ibt,abt,cbt,lbt,h5,ubt,dbt,pbt,mbt,g5,fbt,MDe,Abt,hbt,gbt,ybt,Ebt,Cbt,Ibt,xbt,FDe,UDe,wbt,bbt,Sbt,Bbt,Rbt,Nbt,qDe,Tbt,Pbt,$De,vbt,GDe,_bt,Qbt,y5,Dbt,kbt,Lbt,Obt,Mbt,Fbt,Ubt,qbt,$bt,Gbt,Mf,Ff,Hbt,Uf,qf,$f,zbt,HDe,Vbt,ir,zDe,VDe,Ip,YDe,WDe,jDe,JDe,KDe,XDe,ZDe,E5,Ybt,Wbt,C5,eke,tke,rke,nke,I5,ske,oke,ike,ake,jbt,Jbt,x5,w5,a0=I(()=>{Ct();A5();LD();sbt="Arn",obt="AccessKeyId",ibt="AssumeRole",abt="AssumedRoleId",cbt="AssumeRoleRequest",lbt="AssumeRoleResponse",h5="AssumedRoleUser",ubt="AssumeRoleWithWebIdentity",dbt="AssumeRoleWithWebIdentityRequest",pbt="AssumeRoleWithWebIdentityResponse",mbt="Audience",g5="Credentials",fbt="ContextAssertion",MDe="DurationSeconds",Abt="Expiration",hbt="ExternalId",gbt="ExpiredTokenException",ybt="IDPCommunicationErrorException",Ebt="IDPRejectedClaimException",Cbt="InvalidIdentityTokenException",Ibt="Key",xbt="MalformedPolicyDocumentException",FDe="Policy",UDe="PolicyArns",wbt="ProviderArn",bbt="ProvidedContexts",Sbt="ProvidedContextsListType",Bbt="ProvidedContext",Rbt="PolicyDescriptorType",Nbt="ProviderId",qDe="PackedPolicySize",Tbt="PackedPolicyTooLargeException",Pbt="Provider",$De="RoleArn",vbt="RegionDisabledException",GDe="RoleSessionName",_bt="SecretAccessKey",Qbt="SubjectFromWebIdentityToken",y5="SourceIdentity",Dbt="SerialNumber",kbt="SessionToken",Lbt="Tags",Obt="TokenCode",Mbt="TransitiveTagKeys",Fbt="Tag",Ubt="Value",qbt="WebIdentityToken",$bt="arn",Gbt="accessKeySecretType",Mf="awsQueryError",Ff="client",Hbt="clientTokenType",Uf="error",qf="httpError",$f="message",zbt="policyDescriptorListType",HDe="smithy.ts.sdk.synthetic.com.amazonaws.sts",Vbt="tagListType",ir="com.amazonaws.sts",zDe=gr.for(HDe),VDe=[-3,HDe,"STSServiceException",0,[],[]];zDe.registerError(VDe,fo);Ip=gr.for(ir),YDe=[-3,ir,gbt,{[Mf]:["ExpiredTokenException",400],[Uf]:Ff,[qf]:400},[$f],[0]];Ip.registerError(YDe,e0);WDe=[-3,ir,ybt,{[Mf]:["IDPCommunicationError",400],[Uf]:Ff,[qf]:400},[$f],[0]];Ip.registerError(WDe,i0);jDe=[-3,ir,Ebt,{[Mf]:["IDPRejectedClaim",403],[Uf]:Ff,[qf]:403},[$f],[0]];Ip.registerError(jDe,s0);JDe=[-3,ir,Cbt,{[Mf]:["InvalidIdentityToken",400],[Uf]:Ff,[qf]:400},[$f],[0]];Ip.registerError(JDe,o0);KDe=[-3,ir,xbt,{[Mf]:["MalformedPolicyDocument",400],[Uf]:Ff,[qf]:400},[$f],[0]];Ip.registerError(KDe,t0);XDe=[-3,ir,Tbt,{[Mf]:["PackedPolicyTooLarge",400],[Uf]:Ff,[qf]:400},[$f],[0]];Ip.registerError(XDe,r0);ZDe=[-3,ir,vbt,{[Mf]:["RegionDisabledException",403],[Uf]:Ff,[qf]:403},[$f],[0]];Ip.registerError(ZDe,n0);E5=[zDe,Ip],Ybt=[0,ir,Gbt,8,0],Wbt=[0,ir,Hbt,8,0],C5=[3,ir,h5,0,[abt,sbt],[0,0],2],eke=[3,ir,cbt,0,[$De,GDe,UDe,FDe,MDe,Lbt,Mbt,hbt,Dbt,Obt,y5,bbt],[0,0,()=>ake,0,1,()=>Jbt,64,0,0,0,0,()=>jbt],2],tke=[3,ir,lbt,0,[g5,h5,qDe,y5],[[()=>I5,0],()=>C5,1,0]],rke=[3,ir,dbt,0,[$De,GDe,qbt,Nbt,UDe,FDe,MDe],[0,0,[()=>Wbt,0],0,()=>ake,0,1],3],nke=[3,ir,pbt,0,[g5,Qbt,h5,qDe,Pbt,mbt,y5],[[()=>I5,0],0,()=>C5,1,0,0,0]],I5=[3,ir,g5,0,[obt,_bt,kbt,Abt],[0,[()=>Ybt,0],0,4],4],ske=[3,ir,Rbt,0,[$bt],[0]],oke=[3,ir,Bbt,0,[wbt,fbt],[0,0]],ike=[3,ir,Fbt,0,[Ibt,Ubt],[0,0],2],ake=[1,ir,zbt,0,()=>ske],jbt=[1,ir,Sbt,0,()=>oke],Jbt=[1,ir,Vbt,0,()=>ike],x5=[9,ir,ibt,0,()=>eke,()=>tke],w5=[9,ir,ubt,0,()=>rke,()=>nke]});var cke,lke,uke=I(()=>{Xr();_f();cke=D(l5());Qs();Ce();Qe();st();f5();p5();a0();lke=i(t=>({apiVersion:"2011-06-15",base64Decoder:t?.base64Decoder??$r,base64Encoder:t?.base64Encoder??Ar,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??QD,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??kDe,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new On},{schemeId:"aws.auth#sigv4a",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4a"),"identityProvider"),signer:new lp},{schemeId:"smithy.api#noAuth",identityProvider:i(e=>e.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),"identityProvider"),signer:new Jo}],logger:t?.logger??new lo,protocol:t?.protocol??vf,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.sts",errorTypeRegistries:E5,xmlNamespace:"https://sts.amazonaws.com/doc/2011-06-15/",version:"2011-06-15",serviceTarget:"AWSSecurityTokenServiceV20110615"},serviceId:t?.serviceId??"STS",signerConstructor:t?.signerConstructor??cke.SignatureV4MultiRegion,urlParser:t?.urlParser??rs,utf8Decoder:t?.utf8Decoder??Gr,utf8Encoder:t?.utf8Encoder??hr}),"getRuntimeConfig")});var OD,dke,pke=I(()=>{cw();wt();Xr();Qs();Ce();Tt();_s();st();OD=D(vu());uke();dke=i(t=>{ol(process.version);let e=Wc(t),r=i(()=>e().then(sl),"defaultConfigProvider"),n=lke(t);qc(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??nt(Pu,s),bodyLengthChecker:t?.bodyLengthChecker??Gc,defaultUserAgentProvider:t?.defaultUserAgentProvider??va({serviceId:n.serviceId,clientVersion:mp.version}),httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(o=>o.getIdentityProvider("aws.auth#sigv4")||(async a=>await t.credentialDefaultProvider(a?.__config||{})()),"identityProvider"),signer:new On},{schemeId:"aws.auth#sigv4a",identityProvider:i(o=>o.getIdentityProvider("aws.auth#sigv4a"),"identityProvider"),signer:new lp},{schemeId:"smithy.api#noAuth",identityProvider:i(o=>o.getIdentityProvider("smithy.api#noAuth")||(async()=>({})),"identityProvider"),signer:new Jo}],maxAttempts:t?.maxAttempts??nt(cl,t),region:t?.region??nt(Dn,{...Ps,...s}),requestHandler:OD.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??nt({...ul,default:i(async()=>(await r()).retryMode||qi,"default")},t),sha256:t?.sha256??Mi.bind(null,"sha256"),sigv4aSigningRegionSet:t?.sigv4aSigningRegionSet??nt(cj,s),streamCollector:t?.streamCollector??OD.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??nt(Vc,s),useFipsEndpoint:t?.useFipsEndpoint??nt(Yc,s),userAgentAppId:t?.userAgentAppId??nt(yl,s)}},"getRuntimeConfig")});var mke,fke,Ake=I(()=>{mke=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),fke=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig")});var hke,gke=I(()=>{wt();Ce();Qe();Ake();hke=i((t,e)=>{let r=Object.assign(El(t),Ra(t),Zc(t),mke(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Cl(r),il(r),el(r),fke(r))},"resolveRuntimeExtensions")});var xp,MD=I(()=>{wt();Qs();Ce();Tt();xt();Qe();_s();Ct();f5();kD();pke();gke();xp=class extends Kn{static{i(this,"STSClient")}config;constructor(...[e]){let r=dke(e||{});super(r),this.initConfig=r;let n=ODe(r),s=Al(n),o=ll(s),a=Yo(o),c=a,l=xu(c),u=LDe(l),d=hke(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(Bu(this.config)),this.middlewareStack.use(hl(this.config)),this.middlewareStack.use(Ru(this.config)),this.middlewareStack.use(tl(this.config)),this.middlewareStack.use(dl(this.config)),this.middlewareStack.use(pl(this.config)),this.middlewareStack.use(ml(this.config)),this.middlewareStack.use(Nu(this.config,{httpAuthSchemeParametersProvider:_De,identityProviderConfigProvider:i(async p=>new Pa({"aws.auth#sigv4":p.credentials,"aws.auth#sigv4a":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Tu(this.config))}destroy(){super.destroy()}}});var Gf,FD=I(()=>{Ce();xt();kD();a0();Gf=class extends pn.classBuilder().ep(DD).m(function(e,r,n,s){return[Sa(n,e.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRole",{}).n("STSClient","AssumeRoleCommand").sc(x5).build(){static{i(this,"AssumeRoleCommand")}}});var Hf,UD=I(()=>{Ce();xt();kD();a0();Hf=class extends pn.classBuilder().ep(DD).m(function(e,r,n,s){return[Sa(n,e.getEndpointParameterInstructions())]}).s("AWSSecurityTokenServiceV20110615","AssumeRoleWithWebIdentity",{}).n("STSClient","AssumeRoleWithWebIdentityCommand").sc(w5).build(){static{i(this,"AssumeRoleWithWebIdentityCommand")}}});var Kbt,qD,yke=I(()=>{Ce();FD();UD();MD();Kbt={AssumeRoleCommand:Gf,AssumeRoleWithWebIdentityCommand:Hf},qD=class extends xp{static{i(this,"STS")}};nl(Kbt,qD)});var Eke=I(()=>{FD();UD()});var Cke=I(()=>{});var Ike,xke,wke,bke,Ske,Bke=I(()=>{wt();FD();UD();Ike=i(t=>{if(typeof t?.Arn=="string"){let e=t.Arn.split(":");if(e.length>4&&e[4]!=="")return e[4]}},"getAccountIdFromAssumedRoleUser"),xke=i(async(t,e,r,n={})=>{let s=typeof t=="function"?await t():t,o=typeof e=="function"?await e():e,a="",c=s??o??(a=await EQ(n)());return r?.debug?.("@aws-sdk/client-sts::resolveRegion","accepting first of:",`${s} (credential provider clientConfig)`,`${o} (contextual client)`,`${a} (STS default: AWS_REGION, profile region, or us-east-1)`),c},"resolveRegion"),wke=i((t,e)=>{let r,n;return async(s,o)=>{if(n=s,!r){let{logger:d=t?.parentClientConfig?.logger,profile:p=t?.parentClientConfig?.profile,region:m,requestHandler:f=t?.parentClientConfig?.requestHandler,credentialProviderLogger:g,userAgentAppId:E=t?.parentClientConfig?.userAgentAppId}=t,x=await xke(m,t?.parentClientConfig?.region,g,{logger:d,profile:p}),w=!Ske(f);r=new e({...t,userAgentAppId:E,profile:p,credentialDefaultProvider:i(()=>async()=>n,"credentialDefaultProvider"),region:x,requestHandler:w?f:void 0,logger:d})}let{Credentials:a,AssumedRoleUser:c}=await r.send(new Gf(o));if(!a||!a.AccessKeyId||!a.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRole call with role ${o.RoleArn}`);let l=Ike(c),u={accessKeyId:a.AccessKeyId,secretAccessKey:a.SecretAccessKey,sessionToken:a.SessionToken,expiration:a.Expiration,...a.CredentialScope&&{credentialScope:a.CredentialScope},...l&&{accountId:l}};return zd(u,"CREDENTIALS_STS_ASSUME_ROLE","i"),u}},"getDefaultRoleAssumer"),bke=i((t,e)=>{let r;return async n=>{if(!r){let{logger:l=t?.parentClientConfig?.logger,profile:u=t?.parentClientConfig?.profile,region:d,requestHandler:p=t?.parentClientConfig?.requestHandler,credentialProviderLogger:m,userAgentAppId:f=t?.parentClientConfig?.userAgentAppId}=t,g=await xke(d,t?.parentClientConfig?.region,m,{logger:l,profile:u}),E=!Ske(p);r=new e({...t,userAgentAppId:f,profile:u,region:g,requestHandler:E?p:void 0,logger:l})}let{Credentials:s,AssumedRoleUser:o}=await r.send(new Hf(n));if(!s||!s.AccessKeyId||!s.SecretAccessKey)throw new Error(`Invalid response from STS.assumeRoleWithWebIdentity call with role ${n.RoleArn}`);let a=Ike(o),c={accessKeyId:s.AccessKeyId,secretAccessKey:s.SecretAccessKey,sessionToken:s.SessionToken,expiration:s.Expiration,...s.CredentialScope&&{credentialScope:s.CredentialScope},...a&&{accountId:a}};return a&&zd(c,"RESOLVED_ACCOUNT_ID","T"),zd(c,"CREDENTIALS_STS_ASSUME_ROLE_WEB_ID","k"),c}},"getDefaultRoleAssumerWithWebIdentity"),Ske=i(t=>t?.metadata?.handlerProtocol==="h2","isH2")});var Rke,Nke,Tke,Xbt,Pke=I(()=>{Bke();MD();Rke=i((t,e)=>e?class extends t{static{i(this,"CustomizableSTSClient")}constructor(n){super(n);for(let s of e)this.middlewareStack.use(s)}}:t,"getCustomizableStsClientCtor"),Nke=i((t={},e)=>wke(t,Rke(xp,e)),"getDefaultRoleAssumer"),Tke=i((t={},e)=>bke(t,Rke(xp,e)),"getDefaultRoleAssumerWithWebIdentity"),Xbt=i(t=>e=>t({roleAssumer:Nke(e),roleAssumerWithWebIdentity:Tke(e),...e}),"decorateDefaultCredentialProvider")});var b5={};en(b5,{$Command:()=>pn,AssumeRole$:()=>x5,AssumeRoleCommand:()=>Gf,AssumeRoleRequest$:()=>eke,AssumeRoleResponse$:()=>tke,AssumeRoleWithWebIdentity$:()=>w5,AssumeRoleWithWebIdentityCommand:()=>Hf,AssumeRoleWithWebIdentityRequest$:()=>rke,AssumeRoleWithWebIdentityResponse$:()=>nke,AssumedRoleUser$:()=>C5,Credentials$:()=>I5,ExpiredTokenException:()=>e0,ExpiredTokenException$:()=>YDe,IDPCommunicationErrorException:()=>i0,IDPCommunicationErrorException$:()=>WDe,IDPRejectedClaimException:()=>s0,IDPRejectedClaimException$:()=>jDe,InvalidIdentityTokenException:()=>o0,InvalidIdentityTokenException$:()=>JDe,MalformedPolicyDocumentException:()=>t0,MalformedPolicyDocumentException$:()=>KDe,PackedPolicyTooLargeException:()=>r0,PackedPolicyTooLargeException$:()=>XDe,PolicyDescriptorType$:()=>ske,ProvidedContext$:()=>oke,RegionDisabledException:()=>n0,RegionDisabledException$:()=>ZDe,STS:()=>qD,STSClient:()=>xp,STSServiceException:()=>fo,STSServiceException$:()=>VDe,Tag$:()=>ike,__Client:()=>Kn,decorateDefaultCredentialProvider:()=>Xbt,errorTypeRegistries:()=>E5,getDefaultRoleAssumer:()=>Nke,getDefaultRoleAssumerWithWebIdentity:()=>Tke});var S5=I(()=>{MD();yke();Eke();a0();A5();Cke();Pke();LD()});var B5=b(vke=>{"use strict";var Ry=(Tt(),W(kn)),Zbt=require("node:child_process"),eSt=require("node:util"),tSt=(wt(),W(Ds)),rSt=i((t,e,r)=>{if(e.Version!==1)throw Error(`Profile ${t} credential_process did not return Version 1.`);if(e.AccessKeyId===void 0||e.SecretAccessKey===void 0)throw Error(`Profile ${t} credential_process returned invalid credentials.`);if(e.Expiration){let o=new Date;if(new Date(e.Expiration){let n=e[t];if(e[t]){let s=n.credential_process;if(s!==void 0){let o=eSt.promisify(Ry.externalDataInterceptor?.getTokenRecord?.().exec??Zbt.exec);try{let{stdout:a}=await o(s),c;try{c=JSON.parse(a.trim())}catch{throw Error(`Profile ${t} credential_process returned invalid JSON.`)}return rSt(t,c,e)}catch(a){throw new Ry.CredentialsProviderError(a.message,{logger:r})}}else throw new Ry.CredentialsProviderError(`Profile ${t} did not contain credential_process.`,{logger:r})}else throw new Ry.CredentialsProviderError(`Profile ${t} could not be found in shared credentials file.`,{logger:r})},"resolveProcessCredentials"),sSt=i((t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-process - fromProcess");let r=await Ry.parseKnownFiles(t);return nSt(Ry.getProfileName({profile:t.profile??e?.profile}),r,t.logger)},"fromProcess");vke.fromProcess=sSt});var R5=b($D=>{"use strict";Object.defineProperty($D,"__esModule",{value:!0});$D.fromWebToken=void 0;var oSt=i(t=>async e=>{t.logger?.debug("@aws-sdk/credential-provider-web-identity - fromWebToken");let{roleArn:r,roleSessionName:n,webIdentityToken:s,providerId:o,policyArns:a,policy:c,durationSeconds:l}=t,{roleAssumerWithWebIdentity:u}=t;if(!u){let{getDefaultRoleAssumerWithWebIdentity:d}=await Promise.resolve().then(()=>(S5(),b5));u=d({...t.clientConfig,credentialProviderLogger:t.logger,parentClientConfig:{...e?.callerClientConfig,...t.parentClientConfig}},t.clientPlugins)}return u({RoleArn:r,RoleSessionName:n??`aws-sdk-js-session-${Date.now()}`,WebIdentityToken:s,ProviderId:o,PolicyArns:a,Policy:c,DurationSeconds:l})},"fromWebToken");$D.fromWebToken=oSt});var Dke=b(GD=>{"use strict";Object.defineProperty(GD,"__esModule",{value:!0});GD.fromTokenFile=void 0;var iSt=(wt(),W(Ds)),_ke=(Tt(),W(kn)),aSt=require("node:fs"),cSt=R5(),Qke="AWS_WEB_IDENTITY_TOKEN_FILE",lSt="AWS_ROLE_ARN",uSt="AWS_ROLE_SESSION_NAME",dSt=i((t={})=>async e=>{t.logger?.debug("@aws-sdk/credential-provider-web-identity - fromTokenFile");let r=t?.webIdentityTokenFile??process.env[Qke],n=t?.roleArn??process.env[lSt],s=t?.roleSessionName??process.env[uSt];if(!r||!n)throw new _ke.CredentialsProviderError("Web identity configuration not specified",{logger:t.logger});let o=await(0,cSt.fromWebToken)({...t,webIdentityToken:_ke.externalDataInterceptor?.getTokenRecord?.()[r]??(0,aSt.readFileSync)(r,{encoding:"ascii"}),roleArn:n,roleSessionName:s})(e);return r===process.env[Qke]&&(0,iSt.setCredentialFeature)(o,"CREDENTIALS_ENV_VARS_STS_WEB_ID_TOKEN","h"),o},"fromTokenFile");GD.fromTokenFile=dSt});var N5=b(Mu=>{"use strict";var HD=Dke(),zD=R5();Object.prototype.hasOwnProperty.call(HD,"__proto__")&&!Object.prototype.hasOwnProperty.call(Mu,"__proto__")&&Object.defineProperty(Mu,"__proto__",{enumerable:!0,value:HD.__proto__});Object.keys(HD).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Mu,t)&&(Mu[t]=HD[t])});Object.prototype.hasOwnProperty.call(zD,"__proto__")&&!Object.prototype.hasOwnProperty.call(Mu,"__proto__")&&Object.defineProperty(Mu,"__proto__",{enumerable:!0,value:zD.__proto__});Object.keys(zD).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Mu,t)&&(Mu[t]=zD[t])})});var Uke=b(Fke=>{"use strict";var wp=(Tt(),W(kn)),Fu=(wt(),W(Ds)),pSt=hDe(),mSt=i((t,e,r)=>{let n={EcsContainer:i(async s=>{let{fromHttp:o}=await Promise.resolve().then(()=>D(Lj())),{fromContainerMetadata:a}=await Promise.resolve().then(()=>D(NQ()));return r?.debug("@aws-sdk/credential-provider-ini - credential_source is EcsContainer"),async()=>wp.chain(o(s??{}),a(s))().then(T5)},"EcsContainer"),Ec2InstanceMetadata:i(async s=>{r?.debug("@aws-sdk/credential-provider-ini - credential_source is Ec2InstanceMetadata");let{fromInstanceMetadata:o}=await Promise.resolve().then(()=>D(NQ()));return async()=>o(s)().then(T5)},"Ec2InstanceMetadata"),Environment:i(async s=>{r?.debug("@aws-sdk/credential-provider-ini - credential_source is Environment");let{fromEnv:o}=await Promise.resolve().then(()=>D(bj()));return async()=>o(s)().then(T5)},"Environment")};if(t in n)return n[t];throw new wp.CredentialsProviderError(`Unsupported credential source in profile ${e}. Got ${t}, expected EcsContainer or Ec2InstanceMetadata or Environment.`,{logger:r})},"resolveCredentialSource"),T5=i(t=>Fu.setCredentialFeature(t,"CREDENTIALS_PROFILE_NAMED_PROVIDER","p"),"setNamedProvider"),fSt=i((t,{profile:e="default",logger:r}={})=>!!t&&typeof t=="object"&&typeof t.role_arn=="string"&&["undefined","string"].indexOf(typeof t.role_session_name)>-1&&["undefined","string"].indexOf(typeof t.external_id)>-1&&["undefined","string"].indexOf(typeof t.mfa_serial)>-1&&(ASt(t,{profile:e,logger:r})||hSt(t,{profile:e,logger:r})),"isAssumeRoleProfile"),ASt=i((t,{profile:e,logger:r})=>{let n=typeof t.source_profile=="string"&&typeof t.credential_source>"u";return n&&r?.debug?.(` ${e} isAssumeRoleWithSourceProfile source_profile=${t.source_profile}`),n},"isAssumeRoleWithSourceProfile"),hSt=i((t,{profile:e,logger:r})=>{let n=typeof t.credential_source=="string"&&typeof t.source_profile>"u";return n&&r?.debug?.(` ${e} isCredentialSourceProfile credential_source=${t.credential_source}`),n},"isCredentialSourceProfile"),gSt=i(async(t,e,r,n,s={},o)=>{r.logger?.debug("@aws-sdk/credential-provider-ini - resolveAssumeRoleCredentials (STS)");let a=e[t],{source_profile:c,region:l}=a;if(!r.roleAssumer){let{getDefaultRoleAssumer:d}=await Promise.resolve().then(()=>(S5(),b5));r.roleAssumer=d({...r.clientConfig,credentialProviderLogger:r.logger,parentClientConfig:{...n,...r?.parentClientConfig,region:l??r?.parentClientConfig?.region??n?.region}},r.clientPlugins)}if(c&&c in s)throw new wp.CredentialsProviderError(`Detected a cycle attempting to resolve credentials for profile ${wp.getProfileName(r)}. Profiles visited: `+Object.keys(s).join(", "),{logger:r.logger});r.logger?.debug(`@aws-sdk/credential-provider-ini - finding credential resolver using ${c?`source_profile=[${c}]`:`profile=[${t}]`}`);let u=c?o(c,e,r,n,{...s,[c]:!0},kke(e[c]??{})):(await mSt(a.credential_source,t,r.logger)(r))();if(kke(a))return u.then(d=>Fu.setCredentialFeature(d,"CREDENTIALS_PROFILE_SOURCE_PROFILE","o"));{let d={RoleArn:a.role_arn,RoleSessionName:a.role_session_name||`aws-sdk-js-${Date.now()}`,ExternalId:a.external_id,DurationSeconds:parseInt(a.duration_seconds||"3600",10)},{mfa_serial:p}=a;if(p){if(!r.mfaCodeProvider)throw new wp.CredentialsProviderError(`Profile ${t} requires multi-factor authentication, but no MFA code callback was provided.`,{logger:r.logger,tryNextLink:!1});d.SerialNumber=p,d.TokenCode=await r.mfaCodeProvider(p)}let m=await u;return r.roleAssumer(m,d).then(f=>Fu.setCredentialFeature(f,"CREDENTIALS_PROFILE_SOURCE_PROFILE","o"))}},"resolveAssumeRoleCredentials"),kke=i(t=>!t.role_arn&&!!t.credential_source,"isCredentialSourceWithoutRoleArn"),ySt=i(t=>!!(t&&t.login_session),"isLoginProfile"),ESt=i(async(t,e,r)=>{let n=await pSt.fromLoginCredentials({...e,profile:t})({callerClientConfig:r});return Fu.setCredentialFeature(n,"CREDENTIALS_PROFILE_LOGIN","AC")},"resolveLoginCredentials"),CSt=i(t=>!!t&&typeof t=="object"&&typeof t.credential_process=="string","isProcessProfile"),ISt=i(async(t,e)=>Promise.resolve().then(()=>D(B5())).then(({fromProcess:r})=>r({...t,profile:e})().then(n=>Fu.setCredentialFeature(n,"CREDENTIALS_PROFILE_PROCESS","v"))),"resolveProcessCredentials"),xSt=i(async(t,e,r={},n)=>{let{fromSSO:s}=await Promise.resolve().then(()=>D(GJ()));return s({profile:t,logger:r.logger,parentClientConfig:r.parentClientConfig,clientConfig:r.clientConfig})({callerClientConfig:n}).then(o=>e.sso_session?Fu.setCredentialFeature(o,"CREDENTIALS_PROFILE_SSO","r"):Fu.setCredentialFeature(o,"CREDENTIALS_PROFILE_SSO_LEGACY","t"))},"resolveSsoCredentials"),wSt=i(t=>t&&(typeof t.sso_start_url=="string"||typeof t.sso_account_id=="string"||typeof t.sso_session=="string"||typeof t.sso_region=="string"||typeof t.sso_role_name=="string"),"isSsoProfile"),Lke=i(t=>!!t&&typeof t=="object"&&typeof t.aws_access_key_id=="string"&&typeof t.aws_secret_access_key=="string"&&["undefined","string"].indexOf(typeof t.aws_session_token)>-1&&["undefined","string"].indexOf(typeof t.aws_account_id)>-1,"isStaticCredsProfile"),Oke=i(async(t,e)=>{e?.logger?.debug("@aws-sdk/credential-provider-ini - resolveStaticCredentials");let r={accessKeyId:t.aws_access_key_id,secretAccessKey:t.aws_secret_access_key,sessionToken:t.aws_session_token,...t.aws_credential_scope&&{credentialScope:t.aws_credential_scope},...t.aws_account_id&&{accountId:t.aws_account_id}};return Fu.setCredentialFeature(r,"CREDENTIALS_PROFILE","n")},"resolveStaticCredentials"),bSt=i(t=>!!t&&typeof t=="object"&&typeof t.web_identity_token_file=="string"&&typeof t.role_arn=="string"&&["undefined","string"].indexOf(typeof t.role_session_name)>-1,"isWebIdentityProfile"),SSt=i(async(t,e,r)=>Promise.resolve().then(()=>D(N5())).then(({fromTokenFile:n})=>n({webIdentityTokenFile:t.web_identity_token_file,roleArn:t.role_arn,roleSessionName:t.role_session_name,roleAssumerWithWebIdentity:e.roleAssumerWithWebIdentity,logger:e.logger,parentClientConfig:e.parentClientConfig})({callerClientConfig:r}).then(s=>Fu.setCredentialFeature(s,"CREDENTIALS_PROFILE_STS_WEB_ID_TOKEN","q"))),"resolveWebIdentityCredentials"),Mke=i(async(t,e,r,n,s={},o=!1)=>{let a=e[t];if(Object.keys(s).length>0&&Lke(a))return Oke(a,r);if(o||fSt(a,{profile:t,logger:r.logger}))return gSt(t,e,r,n,s,Mke);if(Lke(a))return Oke(a,r);if(bSt(a))return SSt(a,r,n);if(CSt(a))return ISt(r,t);if(wSt(a))return await xSt(t,a,r,n);if(ySt(a))return ESt(t,r,n);throw new wp.CredentialsProviderError(`Could not resolve credentials using profile: [${t}] in configuration/credentials file(s).`,{logger:r.logger})},"resolveProfileData"),BSt=i((t={})=>async({callerClientConfig:e}={})=>{t.logger?.debug("@aws-sdk/credential-provider-ini - fromIni");let r=await wp.parseKnownFiles(t);return Mke(wp.getProfileName({profile:t.profile??e?.profile}),r,t,e)},"fromIni");Fke.fromIni=BSt});var v5=b(VD=>{"use strict";var P5=bj(),Ny=(Tt(),W(kn)),qke="AWS_EC2_METADATA_DISABLED",RSt=i(async t=>{let{ENV_CMDS_FULL_URI:e,ENV_CMDS_RELATIVE_URI:r,fromContainerMetadata:n,fromInstanceMetadata:s}=await Promise.resolve().then(()=>D(NQ()));if(process.env[r]||process.env[e]){t.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromHttp/fromContainerMetadata");let{fromHttp:o}=await Promise.resolve().then(()=>D(Lj()));return Ny.chain(o(t),n(t))}return process.env[qke]&&process.env[qke]!=="false"?async()=>{throw new Ny.CredentialsProviderError("EC2 Instance Metadata Service access disabled",{logger:t.logger})}:(t.logger?.debug("@aws-sdk/credential-provider-node - remoteProvider::fromInstanceMetadata"),s(t))},"remoteProvider");function NSt(t,e){let r=TSt(t),n,s,o,a=i(async c=>{if(c?.forceRefresh)return await r(c);if(o?.expiration&&o?.expiration?.getTime(){o=l}).finally(()=>{s=void 0}));else return n=r(c).then(l=>{o=l}).finally(()=>{n=void 0}),a(c);return o},"provider");return a}i(NSt,"memoizeChain");var TSt=i(t=>async e=>{let r;for(let n of t)try{return await n(e)}catch(s){if(r=s,s?.tryNextLink)continue;throw s}throw r},"internalCreateChain"),$ke=!1,PSt=i((t={})=>NSt([async()=>{if(t.profile??process.env[Ny.ENV_PROFILE])throw process.env[P5.ENV_KEY]&&process.env[P5.ENV_SECRET]&&($ke||((t.logger?.warn&&t.logger?.constructor?.name!=="NoOpLogger"?t.logger.warn.bind(t.logger):console.warn)(`@aws-sdk/credential-provider-node - defaultProvider::fromEnv WARNING: Multiple credential sources detected: Both AWS_PROFILE and the pair AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY static credentials are set. This SDK will proceed with the AWS_PROFILE value. @@ -142,92 +142,92 @@ Reference: https://docs.aws.amazon.com/cli/latest/userguide/cli-configure-sso.ht However, a future version may change this behavior to prefer the ENV static credentials. Please ensure that your environment only sets either the AWS_PROFILE or the AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY pair. -`),Uke=!0)),new Ry.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:t.logger,tryNextLink:!0});return t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),T5.fromEnv(t)()},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:i}=t;if(!r&&!n&&!s&&!o&&!i)throw new Ry.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:t.logger});let{fromSSO:a}=await Promise.resolve().then(()=>Q($J()));return a(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:r}=await Promise.resolve().then(()=>Q(Mke()));return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:r}=await Promise.resolve().then(()=>Q(S5()));return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:r}=await Promise.resolve().then(()=>Q(R5()));return r(t)(e)},async()=>(t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await BSt(t))()),async()=>{throw new Ry.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:t.logger})}],qke),PSt=t=>t?.expiration!==void 0,qke=t=>t?.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5;zD.credentialsTreatedAsExpired=qke;zD.credentialsWillNeedRefresh=PSt;zD.defaultProvider=TSt});var Yke=w(WD=>{"use strict";Object.defineProperty(WD,"__esModule",{value:!0});WD.bdd=void 0;var vSt=(It(),Y(uf)),Ny="ref",Hf=-1,VD=!0,$ke="isSet",_5="PartitionResult",wp="stringEquals",YD="booleanEquals",v5="getAttr",Gke={[Ny]:"Endpoint"},bp={fn:v5,argv:[{[Ny]:_5},"name"]},Hke={[Ny]:_5},zf={},zke=[{[Ny]:"Region"}],Vke={conditions:[[$ke,[Gke]],[$ke,zke],["aws.partition",zke,_5],[wp,[bp,"aws-eusc"]],[wp,[bp,"aws-iso-f"]],[wp,[bp,"aws-iso-e"]],[wp,[bp,"aws-iso-b"]],[wp,[bp,"aws-iso"]],[wp,[bp,"aws-cn"]],[wp,[bp,"aws-us-gov"]],[wp,[bp,"aws"]],[YD,[{[Ny]:"UseFIPS"},VD]],[YD,[{fn:v5,argv:[Hke,"supportsFIPS"]},VD]],[YD,[{[Ny]:"UseDualStack"},VD]],[YD,[{fn:v5,argv:[Hke,"supportsDualStack"]},VD]]],results:[[Hf],[Hf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Hf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[Gke,zf],["https://api.ecr.{Region}.{PartitionResult#dnsSuffix}",zf],["https://ecr.{Region}.{PartitionResult#dualStackDnsSuffix}",zf],["https://api.ecr-fips.{Region}.{PartitionResult#dnsSuffix}",zf],["https://ecr-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",zf],["https://api.ecr-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",zf],[Hf,"FIPS and DualStack are enabled, but this partition does not support one or both"],[Hf,"FIPS is enabled but this partition does not support FIPS"],["https://api.ecr.{Region}.{PartitionResult#dualStackDnsSuffix}",zf],[Hf,"DualStack is enabled but this partition does not support DualStack"],[Hf,"Invalid Configuration: Missing Region"]]},_St=2,Un=1e8,QSt=new Int32Array([-1,1,-1,0,23,3,1,4,Un+13,2,5,Un+13,3,20,6,4,20,7,5,20,8,6,20,9,7,20,10,8,20,11,9,20,12,10,20,13,11,16,14,13,15,Un+4,14,Un+11,Un+12,12,18,17,13,Un+9,Un+10,13,19,Un+6,14,Un+8,Un+9,11,22,21,13,Un+5,Un+4,13,Un+7,Un+6,11,Un+1,24,13,Un+2,Un+3]);WD.bdd=vSt.BinaryDecisionDiagram.from(QSt,_St,Vke.conditions,Vke.results)});var Wke=w(jD=>{"use strict";Object.defineProperty(jD,"__esModule",{value:!0});jD.defaultEndpointResolver=void 0;var DSt=(xt(),Y(Qs)),Q5=(It(),Y(uf)),kSt=Yke(),LSt=new Q5.EndpointCache({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),OSt=(t,e={})=>LSt.get(t,()=>(0,Q5.decideEndpoint)(kSt.bdd,{endpointParams:t,logger:e.logger}));jD.defaultEndpointResolver=OSt;Q5.customEndpointFunctions.aws=DSt.awsEndpointFunctions});var JD=w(Ty=>{"use strict";Object.defineProperty(Ty,"__esModule",{value:!0});Ty.ECRServiceException=Ty.__ServiceException=void 0;var jke=(Ee(),Y(Fi));Object.defineProperty(Ty,"__ServiceException",{enumerable:!0,get:function(){return jke.ServiceException}});var D5=class t extends jke.ServiceException{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}};Ty.ECRServiceException=D5});var N6=w(H=>{"use strict";Object.defineProperty(H,"__esModule",{value:!0});H.InvalidLayerPartException=H.ImageStorageClassUpdateNotSupportedException=H.LifecyclePolicyPreviewInProgressException=H.UnsupportedImageTypeException=H.ImageArchivedException=H.ExclusionAlreadyExistsException=H.BlockedByOrganizationPolicyException=H.ReferencedImagesNotFoundException=H.ImageTagAlreadyExistsException=H.ImageDigestDoesNotMatchException=H.ImageAlreadyExistsException=H.UnableToListUpstreamImageReferrersException=H.LifecyclePolicyPreviewNotFoundException=H.UnableToGetUpstreamLayerException=H.LayersNotFoundException=H.LayerInaccessibleException=H.ScanNotFoundException=H.ImageNotFoundException=H.ExclusionNotFoundException=H.SigningConfigurationNotFoundException=H.RepositoryPolicyNotFoundException=H.TemplateNotFoundException=H.RepositoryNotEmptyException=H.RegistryPolicyNotFoundException=H.PullThroughCacheRuleNotFoundException=H.LifecyclePolicyNotFoundException=H.TemplateAlreadyExistsException=H.TooManyTagsException=H.RepositoryAlreadyExistsException=H.InvalidTagParameterException=H.UnsupportedUpstreamRegistryException=H.UnableToDecryptSecretValueException=H.UnableToAccessSecretException=H.SecretNotFoundException=H.PullThroughCacheRuleAlreadyExistsException=H.UploadNotFoundException=H.LayerPartTooSmallException=H.LayerAlreadyExistsException=H.KmsException=H.InvalidLayerException=H.EmptyUploadException=H.ValidationException=H.UnableToGetUpstreamImageException=H.LimitExceededException=H.ServerException=H.RepositoryNotFoundException=H.InvalidParameterException=void 0;var $e=JD(),k5=class t extends $e.ECRServiceException{name="InvalidParameterException";$fault="client";constructor(e){super({name:"InvalidParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.InvalidParameterException=k5;var L5=class t extends $e.ECRServiceException{name="RepositoryNotFoundException";$fault="client";constructor(e){super({name:"RepositoryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.RepositoryNotFoundException=L5;var O5=class t extends $e.ECRServiceException{name="ServerException";$fault="server";constructor(e){super({name:"ServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ServerException=O5;var M5=class t extends $e.ECRServiceException{name="LimitExceededException";$fault="client";constructor(e){super({name:"LimitExceededException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LimitExceededException=M5;var F5=class t extends $e.ECRServiceException{name="UnableToGetUpstreamImageException";$fault="client";constructor(e){super({name:"UnableToGetUpstreamImageException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnableToGetUpstreamImageException=F5;var U5=class t extends $e.ECRServiceException{name="ValidationException";$fault="client";constructor(e){super({name:"ValidationException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ValidationException=U5;var q5=class t extends $e.ECRServiceException{name="EmptyUploadException";$fault="client";constructor(e){super({name:"EmptyUploadException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.EmptyUploadException=q5;var $5=class t extends $e.ECRServiceException{name="InvalidLayerException";$fault="client";constructor(e){super({name:"InvalidLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.InvalidLayerException=$5;var G5=class t extends $e.ECRServiceException{name="KmsException";$fault="client";kmsError;constructor(e){super({name:"KmsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.kmsError=e.kmsError}};H.KmsException=G5;var H5=class t extends $e.ECRServiceException{name="LayerAlreadyExistsException";$fault="client";constructor(e){super({name:"LayerAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LayerAlreadyExistsException=H5;var z5=class t extends $e.ECRServiceException{name="LayerPartTooSmallException";$fault="client";constructor(e){super({name:"LayerPartTooSmallException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LayerPartTooSmallException=z5;var V5=class t extends $e.ECRServiceException{name="UploadNotFoundException";$fault="client";constructor(e){super({name:"UploadNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UploadNotFoundException=V5;var Y5=class t extends $e.ECRServiceException{name="PullThroughCacheRuleAlreadyExistsException";$fault="client";constructor(e){super({name:"PullThroughCacheRuleAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.PullThroughCacheRuleAlreadyExistsException=Y5;var W5=class t extends $e.ECRServiceException{name="SecretNotFoundException";$fault="client";constructor(e){super({name:"SecretNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.SecretNotFoundException=W5;var j5=class t extends $e.ECRServiceException{name="UnableToAccessSecretException";$fault="client";constructor(e){super({name:"UnableToAccessSecretException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnableToAccessSecretException=j5;var J5=class t extends $e.ECRServiceException{name="UnableToDecryptSecretValueException";$fault="client";constructor(e){super({name:"UnableToDecryptSecretValueException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnableToDecryptSecretValueException=J5;var K5=class t extends $e.ECRServiceException{name="UnsupportedUpstreamRegistryException";$fault="client";constructor(e){super({name:"UnsupportedUpstreamRegistryException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnsupportedUpstreamRegistryException=K5;var X5=class t extends $e.ECRServiceException{name="InvalidTagParameterException";$fault="client";constructor(e){super({name:"InvalidTagParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.InvalidTagParameterException=X5;var Z5=class t extends $e.ECRServiceException{name="RepositoryAlreadyExistsException";$fault="client";constructor(e){super({name:"RepositoryAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.RepositoryAlreadyExistsException=Z5;var e6=class t extends $e.ECRServiceException{name="TooManyTagsException";$fault="client";constructor(e){super({name:"TooManyTagsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.TooManyTagsException=e6;var t6=class t extends $e.ECRServiceException{name="TemplateAlreadyExistsException";$fault="client";constructor(e){super({name:"TemplateAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.TemplateAlreadyExistsException=t6;var r6=class t extends $e.ECRServiceException{name="LifecyclePolicyNotFoundException";$fault="client";constructor(e){super({name:"LifecyclePolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LifecyclePolicyNotFoundException=r6;var n6=class t extends $e.ECRServiceException{name="PullThroughCacheRuleNotFoundException";$fault="client";constructor(e){super({name:"PullThroughCacheRuleNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.PullThroughCacheRuleNotFoundException=n6;var s6=class t extends $e.ECRServiceException{name="RegistryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RegistryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.RegistryPolicyNotFoundException=s6;var o6=class t extends $e.ECRServiceException{name="RepositoryNotEmptyException";$fault="client";constructor(e){super({name:"RepositoryNotEmptyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.RepositoryNotEmptyException=o6;var i6=class t extends $e.ECRServiceException{name="TemplateNotFoundException";$fault="client";constructor(e){super({name:"TemplateNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.TemplateNotFoundException=i6;var a6=class t extends $e.ECRServiceException{name="RepositoryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RepositoryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.RepositoryPolicyNotFoundException=a6;var c6=class t extends $e.ECRServiceException{name="SigningConfigurationNotFoundException";$fault="client";constructor(e){super({name:"SigningConfigurationNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.SigningConfigurationNotFoundException=c6;var l6=class t extends $e.ECRServiceException{name="ExclusionNotFoundException";$fault="client";constructor(e){super({name:"ExclusionNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ExclusionNotFoundException=l6;var u6=class t extends $e.ECRServiceException{name="ImageNotFoundException";$fault="client";constructor(e){super({name:"ImageNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageNotFoundException=u6;var d6=class t extends $e.ECRServiceException{name="ScanNotFoundException";$fault="client";constructor(e){super({name:"ScanNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ScanNotFoundException=d6;var p6=class t extends $e.ECRServiceException{name="LayerInaccessibleException";$fault="client";constructor(e){super({name:"LayerInaccessibleException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LayerInaccessibleException=p6;var m6=class t extends $e.ECRServiceException{name="LayersNotFoundException";$fault="client";constructor(e){super({name:"LayersNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LayersNotFoundException=m6;var f6=class t extends $e.ECRServiceException{name="UnableToGetUpstreamLayerException";$fault="client";constructor(e){super({name:"UnableToGetUpstreamLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnableToGetUpstreamLayerException=f6;var A6=class t extends $e.ECRServiceException{name="LifecyclePolicyPreviewNotFoundException";$fault="client";constructor(e){super({name:"LifecyclePolicyPreviewNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LifecyclePolicyPreviewNotFoundException=A6;var h6=class t extends $e.ECRServiceException{name="UnableToListUpstreamImageReferrersException";$fault="client";constructor(e){super({name:"UnableToListUpstreamImageReferrersException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnableToListUpstreamImageReferrersException=h6;var g6=class t extends $e.ECRServiceException{name="ImageAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageAlreadyExistsException=g6;var y6=class t extends $e.ECRServiceException{name="ImageDigestDoesNotMatchException";$fault="client";constructor(e){super({name:"ImageDigestDoesNotMatchException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageDigestDoesNotMatchException=y6;var E6=class t extends $e.ECRServiceException{name="ImageTagAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageTagAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageTagAlreadyExistsException=E6;var C6=class t extends $e.ECRServiceException{name="ReferencedImagesNotFoundException";$fault="client";constructor(e){super({name:"ReferencedImagesNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ReferencedImagesNotFoundException=C6;var I6=class t extends $e.ECRServiceException{name="BlockedByOrganizationPolicyException";$fault="client";constructor(e){super({name:"BlockedByOrganizationPolicyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.BlockedByOrganizationPolicyException=I6;var x6=class t extends $e.ECRServiceException{name="ExclusionAlreadyExistsException";$fault="client";constructor(e){super({name:"ExclusionAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ExclusionAlreadyExistsException=x6;var w6=class t extends $e.ECRServiceException{name="ImageArchivedException";$fault="client";constructor(e){super({name:"ImageArchivedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageArchivedException=w6;var b6=class t extends $e.ECRServiceException{name="UnsupportedImageTypeException";$fault="client";constructor(e){super({name:"UnsupportedImageTypeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.UnsupportedImageTypeException=b6;var S6=class t extends $e.ECRServiceException{name="LifecyclePolicyPreviewInProgressException";$fault="client";constructor(e){super({name:"LifecyclePolicyPreviewInProgressException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.LifecyclePolicyPreviewInProgressException=S6;var B6=class t extends $e.ECRServiceException{name="ImageStorageClassUpdateNotSupportedException";$fault="client";constructor(e){super({name:"ImageStorageClassUpdateNotSupportedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};H.ImageStorageClassUpdateNotSupportedException=B6;var R6=class t extends $e.ECRServiceException{name="InvalidLayerPartException";$fault="client";registryId;repositoryName;uploadId;lastValidByteReceived;constructor(e){super({name:"InvalidLayerPartException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.registryId=e.registryId,this.repositoryName=e.repositoryName,this.uploadId=e.uploadId,this.lastValidByteReceived=e.lastValidByteReceived}};H.InvalidLayerPartException=R6});var z6=w(f=>{"use strict";Object.defineProperty(f,"__esModule",{value:!0});f.Attribute$=f.errorTypeRegistries=f.ValidationException$=f.UploadNotFoundException$=f.UnsupportedUpstreamRegistryException$=f.UnsupportedImageTypeException$=f.UnableToListUpstreamImageReferrersException$=f.UnableToGetUpstreamLayerException$=f.UnableToGetUpstreamImageException$=f.UnableToDecryptSecretValueException$=f.UnableToAccessSecretException$=f.TooManyTagsException$=f.TemplateNotFoundException$=f.TemplateAlreadyExistsException$=f.SigningConfigurationNotFoundException$=f.ServerException$=f.SecretNotFoundException$=f.ScanNotFoundException$=f.RepositoryPolicyNotFoundException$=f.RepositoryNotFoundException$=f.RepositoryNotEmptyException$=f.RepositoryAlreadyExistsException$=f.RegistryPolicyNotFoundException$=f.ReferencedImagesNotFoundException$=f.PullThroughCacheRuleNotFoundException$=f.PullThroughCacheRuleAlreadyExistsException$=f.LimitExceededException$=f.LifecyclePolicyPreviewNotFoundException$=f.LifecyclePolicyPreviewInProgressException$=f.LifecyclePolicyNotFoundException$=f.LayersNotFoundException$=f.LayerPartTooSmallException$=f.LayerInaccessibleException$=f.LayerAlreadyExistsException$=f.KmsException$=f.InvalidTagParameterException$=f.InvalidParameterException$=f.InvalidLayerPartException$=f.InvalidLayerException$=f.ImageTagAlreadyExistsException$=f.ImageStorageClassUpdateNotSupportedException$=f.ImageNotFoundException$=f.ImageDigestDoesNotMatchException$=f.ImageArchivedException$=f.ImageAlreadyExistsException$=f.ExclusionNotFoundException$=f.ExclusionAlreadyExistsException$=f.EmptyUploadException$=f.BlockedByOrganizationPolicyException$=f.ECRServiceException$=void 0;f.DescribeRegistryResponse$=f.DescribeRegistryRequest$=f.DescribePullThroughCacheRulesResponse$=f.DescribePullThroughCacheRulesRequest$=f.DescribeImagesResponse$=f.DescribeImagesRequest$=f.DescribeImageSigningStatusResponse$=f.DescribeImageSigningStatusRequest$=f.DescribeImagesFilter$=f.DescribeImageScanFindingsResponse$=f.DescribeImageScanFindingsRequest$=f.DescribeImageReplicationStatusResponse$=f.DescribeImageReplicationStatusRequest$=f.DeregisterPullTimeUpdateExclusionResponse$=f.DeregisterPullTimeUpdateExclusionRequest$=f.DeleteSigningConfigurationResponse$=f.DeleteSigningConfigurationRequest$=f.DeleteRepositoryResponse$=f.DeleteRepositoryRequest$=f.DeleteRepositoryPolicyResponse$=f.DeleteRepositoryPolicyRequest$=f.DeleteRepositoryCreationTemplateResponse$=f.DeleteRepositoryCreationTemplateRequest$=f.DeleteRegistryPolicyResponse$=f.DeleteRegistryPolicyRequest$=f.DeletePullThroughCacheRuleResponse$=f.DeletePullThroughCacheRuleRequest$=f.DeleteLifecyclePolicyResponse$=f.DeleteLifecyclePolicyRequest$=f.CvssScoreDetails$=f.CvssScoreAdjustment$=f.CvssScore$=f.CreateRepositoryResponse$=f.CreateRepositoryRequest$=f.CreateRepositoryCreationTemplateResponse$=f.CreateRepositoryCreationTemplateRequest$=f.CreatePullThroughCacheRuleResponse$=f.CreatePullThroughCacheRuleRequest$=f.CompleteLayerUploadResponse$=f.CompleteLayerUploadRequest$=f.BatchGetRepositoryScanningConfigurationResponse$=f.BatchGetRepositoryScanningConfigurationRequest$=f.BatchGetImageResponse$=f.BatchGetImageRequest$=f.BatchDeleteImageResponse$=f.BatchDeleteImageRequest$=f.BatchCheckLayerAvailabilityResponse$=f.BatchCheckLayerAvailabilityRequest$=f.AwsEcrContainerImageDetails$=f.AuthorizationData$=void 0;f.ListImagesFilter$=f.ListImageReferrersResponse$=f.ListImageReferrersRequest$=f.ListImageReferrersFilter$=f.LifecyclePolicyRuleAction$=f.LifecyclePolicyPreviewSummary$=f.LifecyclePolicyPreviewResult$=f.LifecyclePolicyPreviewFilter$=f.LayerFailure$=f.Layer$=f.InitiateLayerUploadResponse$=f.InitiateLayerUploadRequest$=f.ImageTagMutabilityExclusionFilter$=f.ImageSigningStatus$=f.ImageScanStatus$=f.ImageScanningConfiguration$=f.ImageScanFindingsSummary$=f.ImageScanFindings$=f.ImageScanFinding$=f.ImageReplicationStatus$=f.ImageReferrer$=f.ImageIdentifier$=f.ImageFailure$=f.ImageDetail$=f.Image$=f.GetSigningConfigurationResponse$=f.GetSigningConfigurationRequest$=f.GetRepositoryPolicyResponse$=f.GetRepositoryPolicyRequest$=f.GetRegistryScanningConfigurationResponse$=f.GetRegistryScanningConfigurationRequest$=f.GetRegistryPolicyResponse$=f.GetRegistryPolicyRequest$=f.GetLifecyclePolicyResponse$=f.GetLifecyclePolicyRequest$=f.GetLifecyclePolicyPreviewResponse$=f.GetLifecyclePolicyPreviewRequest$=f.GetDownloadUrlForLayerResponse$=f.GetDownloadUrlForLayerRequest$=f.GetAuthorizationTokenResponse$=f.GetAuthorizationTokenRequest$=f.GetAccountSettingResponse$=f.GetAccountSettingRequest$=f.EnhancedImageScanFinding$=f.EncryptionConfigurationForRepositoryCreationTemplate$=f.EncryptionConfiguration$=f.DescribeRepositoryCreationTemplatesResponse$=f.DescribeRepositoryCreationTemplatesRequest$=f.DescribeRepositoriesResponse$=f.DescribeRepositoriesRequest$=void 0;f.StartImageScanRequest$=f.SigningRule$=f.SigningRepositoryFilter$=f.SigningConfiguration$=f.SetRepositoryPolicyResponse$=f.SetRepositoryPolicyRequest$=f.ScoreDetails$=f.ScanningRepositoryFilter$=f.ResourceDetails$=f.Resource$=f.RepositoryScanningConfigurationFailure$=f.RepositoryScanningConfiguration$=f.RepositoryFilter$=f.RepositoryCreationTemplate$=f.Repository$=f.ReplicationRule$=f.ReplicationDestination$=f.ReplicationConfiguration$=f.Remediation$=f.RegistryScanningRule$=f.RegistryScanningConfiguration$=f.RegisterPullTimeUpdateExclusionResponse$=f.RegisterPullTimeUpdateExclusionRequest$=f.Recommendation$=f.PutSigningConfigurationResponse$=f.PutSigningConfigurationRequest$=f.PutReplicationConfigurationResponse$=f.PutReplicationConfigurationRequest$=f.PutRegistryScanningConfigurationResponse$=f.PutRegistryScanningConfigurationRequest$=f.PutRegistryPolicyResponse$=f.PutRegistryPolicyRequest$=f.PutLifecyclePolicyResponse$=f.PutLifecyclePolicyRequest$=f.PutImageTagMutabilityResponse$=f.PutImageTagMutabilityRequest$=f.PutImageScanningConfigurationResponse$=f.PutImageScanningConfigurationRequest$=f.PutImageResponse$=f.PutImageRequest$=f.PutAccountSettingResponse$=f.PutAccountSettingRequest$=f.PullThroughCacheRule$=f.PackageVulnerabilityDetails$=f.ListTagsForResourceResponse$=f.ListTagsForResourceRequest$=f.ListPullTimeUpdateExclusionsResponse$=f.ListPullTimeUpdateExclusionsRequest$=f.ListImagesResponse$=f.ListImagesRequest$=void 0;f.GetLifecyclePolicyPreview$=f.GetLifecyclePolicy$=f.GetDownloadUrlForLayer$=f.GetAuthorizationToken$=f.GetAccountSetting$=f.DescribeRepositoryCreationTemplates$=f.DescribeRepositories$=f.DescribeRegistry$=f.DescribePullThroughCacheRules$=f.DescribeImageSigningStatus$=f.DescribeImageScanFindings$=f.DescribeImages$=f.DescribeImageReplicationStatus$=f.DeregisterPullTimeUpdateExclusion$=f.DeleteSigningConfiguration$=f.DeleteRepositoryPolicy$=f.DeleteRepositoryCreationTemplate$=f.DeleteRepository$=f.DeleteRegistryPolicy$=f.DeletePullThroughCacheRule$=f.DeleteLifecyclePolicy$=f.CreateRepositoryCreationTemplate$=f.CreateRepository$=f.CreatePullThroughCacheRule$=f.CompleteLayerUpload$=f.BatchGetRepositoryScanningConfiguration$=f.BatchGetImage$=f.BatchDeleteImage$=f.BatchCheckLayerAvailability$=f.VulnerablePackage$=f.ValidatePullThroughCacheRuleResponse$=f.ValidatePullThroughCacheRuleRequest$=f.UploadLayerPartResponse$=f.UploadLayerPartRequest$=f.UpdateRepositoryCreationTemplateResponse$=f.UpdateRepositoryCreationTemplateRequest$=f.UpdatePullThroughCacheRuleResponse$=f.UpdatePullThroughCacheRuleRequest$=f.UpdateImageStorageClassResponse$=f.UpdateImageStorageClassRequest$=f.UntagResourceResponse$=f.UntagResourceRequest$=f.TransitioningImageTotalCount$=f.TagResourceResponse$=f.TagResourceRequest$=f.Tag$=f.SubjectIdentifier$=f.StartLifecyclePolicyPreviewResponse$=f.StartLifecyclePolicyPreviewRequest$=f.StartImageScanResponse$=void 0;f.ValidatePullThroughCacheRule$=f.UploadLayerPart$=f.UpdateRepositoryCreationTemplate$=f.UpdatePullThroughCacheRule$=f.UpdateImageStorageClass$=f.UntagResource$=f.TagResource$=f.StartLifecyclePolicyPreview$=f.StartImageScan$=f.SetRepositoryPolicy$=f.RegisterPullTimeUpdateExclusion$=f.PutSigningConfiguration$=f.PutReplicationConfiguration$=f.PutRegistryScanningConfiguration$=f.PutRegistryPolicy$=f.PutLifecyclePolicy$=f.PutImageTagMutability$=f.PutImageScanningConfiguration$=f.PutImage$=f.PutAccountSetting$=f.ListTagsForResource$=f.ListPullTimeUpdateExclusions$=f.ListImages$=f.ListImageReferrers$=f.InitiateLayerUpload$=f.GetSigningConfiguration$=f.GetRepositoryPolicy$=f.GetRegistryScanningConfiguration$=f.GetRegistryPolicy$=void 0;var MSt="Attribute",FSt="AuthorizationData",USt="AuthorizationDataList",qSt="AwsEcrContainerImageDetails",$St="AttributeList",GSt="BlockedByOrganizationPolicyException",HSt="BatchCheckLayerAvailability",zSt="BatchCheckLayerAvailabilityRequest",VSt="BatchCheckLayerAvailabilityResponse",YSt="BatchDeleteImage",WSt="BatchDeleteImageRequest",jSt="BatchDeleteImageResponse",JSt="BatchGetImage",KSt="BatchGetImageRequest",XSt="BatchGetImageResponse",ZSt="BatchGetRepositoryScanningConfiguration",eBt="BatchGetRepositoryScanningConfigurationRequest",tBt="BatchGetRepositoryScanningConfigurationResponse",rBt="CompleteLayerUpload",nBt="CompleteLayerUploadRequest",sBt="CompleteLayerUploadResponse",oBt="CreatePullThroughCacheRule",iBt="CreatePullThroughCacheRuleRequest",aBt="CreatePullThroughCacheRuleResponse",cBt="CreateRepository",lBt="CreateRepositoryCreationTemplate",uBt="CreateRepositoryCreationTemplateRequest",dBt="CreateRepositoryCreationTemplateResponse",pBt="CreateRepositoryRequest",mBt="CreateRepositoryResponse",fBt="CvssScore",ABt="CvssScoreAdjustment",hBt="CvssScoreAdjustmentList",gBt="CvssScoreDetails",yBt="CvssScoreList",EBt="DescribeImages",CBt="DescribeImagesFilter",IBt="DescribeImagesRequest",xBt="DescribeImageReplicationStatus",wBt="DescribeImageReplicationStatusRequest",bBt="DescribeImageReplicationStatusResponse",SBt="DescribeImagesResponse",BBt="DescribeImageScanFindings",RBt="DescribeImageScanFindingsRequest",NBt="DescribeImageScanFindingsResponse",TBt="DescribeImageSigningStatus",PBt="DescribeImageSigningStatusRequest",vBt="DescribeImageSigningStatusResponse",_Bt="DeleteLifecyclePolicy",QBt="DeleteLifecyclePolicyRequest",DBt="DeleteLifecyclePolicyResponse",kBt="DeletePullThroughCacheRule",LBt="DeletePullThroughCacheRuleRequest",OBt="DeletePullThroughCacheRuleResponse",MBt="DescribePullThroughCacheRulesRequest",FBt="DescribePullThroughCacheRulesResponse",UBt="DescribePullThroughCacheRules",qBt="DeregisterPullTimeUpdateExclusion",$Bt="DeregisterPullTimeUpdateExclusionRequest",GBt="DeregisterPullTimeUpdateExclusionResponse",HBt="DeleteRepository",zBt="DeleteRepositoryCreationTemplate",VBt="DeleteRepositoryCreationTemplateRequest",YBt="DeleteRepositoryCreationTemplateResponse",WBt="DescribeRepositoryCreationTemplatesRequest",jBt="DescribeRepositoryCreationTemplatesResponse",JBt="DescribeRepositoryCreationTemplates",KBt="DeleteRegistryPolicy",XBt="DeleteRegistryPolicyRequest",ZBt="DeleteRegistryPolicyResponse",eRt="DeleteRepositoryPolicyRequest",tRt="DeleteRepositoryPolicyResponse",rRt="DeleteRepositoryPolicy",nRt="DeleteRepositoryRequest",sRt="DeleteRepositoryResponse",oRt="DescribeRegistryRequest",iRt="DescribeRegistryResponse",aRt="DescribeRepositoriesRequest",cRt="DescribeRepositoriesResponse",lRt="DescribeRegistry",uRt="DescribeRepositories",dRt="DeleteSigningConfiguration",pRt="DeleteSigningConfigurationRequest",mRt="DeleteSigningConfigurationResponse",fRt="ExclusionAlreadyExistsException",ARt="EncryptionConfiguration",hRt="EncryptionConfigurationForRepositoryCreationTemplate",gRt="EnhancedImageScanFinding",yRt="EnhancedImageScanFindingList",ERt="ExclusionNotFoundException",CRt="EmptyUploadException",IRt="GetAccountSetting",xRt="GetAccountSettingRequest",wRt="GetAccountSettingResponse",bRt="GetAuthorizationToken",SRt="GetAuthorizationTokenRequest",BRt="GetAuthorizationTokenResponse",RRt="GetDownloadUrlForLayer",NRt="GetDownloadUrlForLayerRequest",TRt="GetDownloadUrlForLayerResponse",PRt="GetLifecyclePolicy",vRt="GetLifecyclePolicyPreview",_Rt="GetLifecyclePolicyPreviewRequest",QRt="GetLifecyclePolicyPreviewResponse",DRt="GetLifecyclePolicyRequest",kRt="GetLifecyclePolicyResponse",LRt="GetRegistryPolicy",ORt="GetRegistryPolicyRequest",MRt="GetRegistryPolicyResponse",FRt="GetRepositoryPolicyRequest",URt="GetRepositoryPolicyResponse",qRt="GetRepositoryPolicy",$Rt="GetRegistryScanningConfiguration",GRt="GetRegistryScanningConfigurationRequest",HRt="GetRegistryScanningConfigurationResponse",zRt="GetSigningConfiguration",VRt="GetSigningConfigurationRequest",YRt="GetSigningConfigurationResponse",WRt="Image",jRt="ImageArchivedException",JRt="ImageAlreadyExistsException",KRt="ImageDetail",XRt="ImageDigestDoesNotMatchException",ZRt="ImageDetailList",eNt="ImageFailure",tNt="ImageFailureList",rNt="ImageIdentifier",nNt="ImageIdentifierList",sNt="ImageList",oNt="InvalidLayerException",iNt="InvalidLayerPartException",aNt="InitiateLayerUpload",cNt="InitiateLayerUploadRequest",lNt="InitiateLayerUploadResponse",uNt="ImageNotFoundException",dNt="InvalidParameterException",pNt="ImageReferrer",mNt="ImageReferrerList",fNt="ImageReplicationStatus",ANt="ImageReplicationStatusList",hNt="ImageScanningConfiguration",gNt="ImageStorageClassUpdateNotSupportedException",yNt="ImageScanFinding",ENt="ImageScanFindingList",CNt="ImageScanFindingsSummary",INt="ImageScanFindings",xNt="ImageScanStatus",wNt="ImageSigningStatusList",bNt="ImageSigningStatus",SNt="ImageTagAlreadyExistsException",BNt="ImageTagMutabilityExclusionFilter",RNt="ImageTagMutabilityExclusionFilters",NNt="InvalidTagParameterException",TNt="Key",PNt="KmsException",vNt="Layer",_Nt="LayerAlreadyExistsException",QNt="LimitExceededException",DNt="LayerFailure",kNt="LayerFailureList",LNt="ListImages",ONt="LayerInaccessibleException",MNt="ListImagesFilter",FNt="ListImagesRequest",UNt="ListImageReferrersFilter",qNt="ListImageReferrersRequest",$Nt="ListImageReferrersResponse",GNt="ListImagesResponse",HNt="ListImageReferrers",zNt="LayerList",VNt="LayersNotFoundException",YNt="LifecyclePolicyNotFoundException",WNt="LifecyclePolicyPreviewFilter",jNt="LifecyclePolicyPreviewInProgressException",JNt="LifecyclePolicyPreviewNotFoundException",KNt="LifecyclePolicyPreviewResult",XNt="LifecyclePolicyPreviewResultList",ZNt="LifecyclePolicyPreviewSummary",eTt="LifecyclePolicyRuleAction",tTt="LayerPartTooSmallException",rTt="ListPullTimeUpdateExclusions",nTt="ListPullTimeUpdateExclusionsRequest",sTt="ListPullTimeUpdateExclusionsResponse",oTt="ListTagsForResource",iTt="ListTagsForResourceRequest",aTt="ListTagsForResourceResponse",cTt="PutAccountSetting",lTt="PutAccountSettingRequest",uTt="PutAccountSettingResponse",dTt="PutImage",pTt="PutImageRequest",mTt="PutImageResponse",fTt="PutImageScanningConfiguration",ATt="PutImageScanningConfigurationRequest",hTt="PutImageScanningConfigurationResponse",gTt="PutImageTagMutability",yTt="PutImageTagMutabilityRequest",ETt="PutImageTagMutabilityResponse",CTt="PutLifecyclePolicy",ITt="PutLifecyclePolicyRequest",xTt="PutLifecyclePolicyResponse",wTt="PutReplicationConfiguration",bTt="PutReplicationConfigurationRequest",STt="PutReplicationConfigurationResponse",BTt="PutRegistryPolicy",RTt="PutRegistryPolicyRequest",NTt="PutRegistryPolicyResponse",TTt="PutRegistryScanningConfiguration",PTt="PutRegistryScanningConfigurationRequest",vTt="PutRegistryScanningConfigurationResponse",_Tt="PutSigningConfiguration",QTt="PutSigningConfigurationRequest",DTt="PutSigningConfigurationResponse",kTt="PullThroughCacheRule",LTt="PullThroughCacheRuleAlreadyExistsException",OTt="PullThroughCacheRuleList",MTt="PullThroughCacheRuleNotFoundException",FTt="PackageVulnerabilityDetails",UTt="Recommendation",qTt="RepositoryAlreadyExistsException",$Tt="ReplicationConfiguration",GTt="RepositoryCreationTemplate",HTt="RepositoryCreationTemplateList",zTt="ReplicationDestination",VTt="ReplicationDestinationList",YTt="ResourceDetails",WTt="RepositoryFilter",jTt="RepositoryFilterList",JTt="ReferencedImagesNotFoundException",KTt="RepositoryList",XTt="ResourceList",ZTt="RepositoryNotEmptyException",ePt="RepositoryNotFoundException",tPt="RegistryPolicyNotFoundException",rPt="RepositoryPolicyNotFoundException",nPt="RegisterPullTimeUpdateExclusion",sPt="RegisterPullTimeUpdateExclusionRequest",oPt="RegisterPullTimeUpdateExclusionResponse",iPt="ReplicationRule",aPt="ReplicationRuleList",cPt="RegistryScanningConfiguration",lPt="RepositoryScanningConfigurationFailure",uPt="RepositoryScanningConfigurationFailureList",dPt="RepositoryScanningConfigurationList",pPt="RepositoryScanningConfiguration",mPt="RegistryScanningRule",fPt="RegistryScanningRuleList",APt="Remediation",hPt="Repository",gPt="Resource",yPt="SigningConfiguration",EPt="SigningConfigurationNotFoundException",CPt="ScoreDetails",IPt="ServerException",xPt="SubjectIdentifier",wPt="StartImageScan",bPt="StartImageScanRequest",SPt="StartImageScanResponse",BPt="StartLifecyclePolicyPreview",RPt="StartLifecyclePolicyPreviewRequest",NPt="StartLifecyclePolicyPreviewResponse",TPt="ScanNotFoundException",PPt="SecretNotFoundException",vPt="SigningRule",_Pt="ScanningRepositoryFilter",QPt="ScanningRepositoryFilterList",DPt="SigningRepositoryFilterList",kPt="SigningRepositoryFilter",LPt="SigningRuleList",OPt="SetRepositoryPolicy",MPt="SetRepositoryPolicyRequest",FPt="SetRepositoryPolicyResponse",UPt="Tag",qPt="TemplateAlreadyExistsException",$Pt="TransitioningImageTotalCount",GPt="TransitioningImageTotalCounts",HPt="TagList",zPt="TooManyTagsException",VPt="TemplateNotFoundException",YPt="TagResource",WPt="TagResourceRequest",jPt="TagResourceResponse",JPt="UpdateImageStorageClass",KPt="UpdateImageStorageClassRequest",XPt="UpdateImageStorageClassResponse",ZPt="UnsupportedImageTypeException",evt="UploadLayerPart",tvt="UploadLayerPartRequest",rvt="UploadLayerPartResponse",nvt="UploadNotFoundException",svt="UpdatePullThroughCacheRule",ovt="UpdatePullThroughCacheRuleRequest",ivt="UpdatePullThroughCacheRuleResponse",avt="UntagResource",cvt="UpdateRepositoryCreationTemplate",lvt="UpdateRepositoryCreationTemplateRequest",uvt="UpdateRepositoryCreationTemplateResponse",dvt="UntagResourceRequest",pvt="UntagResourceResponse",mvt="UnableToAccessSecretException",fvt="UnableToDecryptSecretValueException",Avt="UnableToGetUpstreamImageException",hvt="UnableToGetUpstreamLayerException",gvt="UnableToListUpstreamImageReferrersException",yvt="UnsupportedUpstreamRegistryException",Evt="Value",Cvt="ValidationException",Ivt="VulnerablePackage",xvt="VulnerablePackagesList",wvt="ValidatePullThroughCacheRule",bvt="ValidatePullThroughCacheRuleRequest",Svt="ValidatePullThroughCacheRuleResponse",Bvt="architecture",Rvt="awsAccountId",Nvt="authorizationData",Tvt="awsEcrContainerImage",T6="appliedFor",Pvt="acceptedMediaTypes",vvt="artifactMediaType",_vt="appliedRulePriority",Jke="artifactStatus",Qvt="appliedScanFilters",Dvt="authorizationToken",kvt="artifactType",Lvt="artifactTypes",Ovt="action",Mvt="adjustments",Fvt="annotations",Uvt="arch",qvt="attributes",$vt="author",Gvt="baseScore",Ye="client",Vf="credentialArn",Py="createdAt",wl="customRoleArn",Kke="cvss",vy="description",Hvt="downloadUrl",zvt="destinations",Vvt="details",Yvt="digest",Ge="error",Wvt="expiresAt",jvt="exploitAvailable",i0="encryptionConfiguration",Jvt="enhancedFindings",Kvt="expiringImageTotalCount",Fu="ecrRepositoryPrefix",Xvt="ecrRepositoryPrefixes",Xke="encryptionType",Zvt="epoch",KD="failures",e_t="findingArn",t_t="fixAvailable",a0="failureCode",r_t="fixedInVersion",n_t="firstObservedAt",s_t="filePath",XD="failureReason",Zke="findingSeverityCounts",ZD="filterType",o_t="failure",Sp="filter",i_t="findings",eLe="force",a_t="httpError",c_t="images",l_t="imageDetails",c0="imageDigest",u_t="imageHash",_y="imageIds",Vi="imageId",tLe="imageManifest",P6="imageManifestMediaType",rLe="imagePushedAt",ek="imageStatus",tk="imageScanningConfiguration",nLe="imageScanCompletedAt",d_t="imageScanFindings",p_t="imageScanFindingsSummary",m_t="imageSizeInBytes",v6="imageScanStatus",_6="imageTags",f_t="imageTotalCount",Yf="imageTagMutability",Wf="imageTagMutabilityExclusionFilters",sLe="imageTag",A_t="inUseCount",h_t="isValid",g_t="id",y_t="image",E_t="key",C_t="kmsError",oLe="kmsKey",I_t="layers",x_t="layerAvailability",w_t="lastArchivedAt",b_t="lastActivatedAt",S_t="lastByteReceived",iLe="layerDigests",l0="layerDigest",aLe="lastEvaluatedAt",B_t="lastInUseAt",R_t="lastObservedAt",Q6="lifecyclePolicy",N_t="layerPartBlob",jf="lifecyclePolicyText",T_t="lastRecordedPullTime",P_t="layerSize",v_t="lastValidByteReceived",He="message",Uu="maxResults",cLe="mediaType",__t="metric",Qy="name",bn="nextToken",Q_t="platform",D_t="pushedAt",rk="principalArn",k_t="proxyEndpoint",L_t="partFirstByte",O_t="partLastByte",M_t="packageManager",F_t="previewResults",U_t="partSize",Bp="policyText",q_t="pullThroughCacheRules",$_t="pullTimeUpdateExclusions",G_t="packageVulnerabilityDetails",nk="prefix",H_t="prefixes",z_t="registry",D6="resourceArn",lLe="repositoryArn",k6="replicationConfiguration",L6="repositoryCreationTemplate",V_t="repositoryCreationTemplates",O6="repositoryFilters",re="registryId",Y_t="registryIds",Qe="repositoryName",uLe="repositoryNames",M6="repositoryPolicy",W_t="replicationStatuses",j_t="registryScanningConfiguration",F6="resourceTags",J_t="referenceUrls",K_t="repositoryUri",X_t="relatedVulnerabilities",dLe="repository",Z_t="reason",eQt="recommendation",tQt="referrers",pLe="region",rQt="release",nQt="remediation",sQt="repositories",oQt="resources",sk="rules",mLe="smithy.ts.sdk.synthetic.com.amazonaws.ecr",iQt="scanningConfigurations",aQt="scanningConfiguration",ok="signingConfiguration",cQt="storageClass",lQt="scoreDetails",fLe="scanFrequency",uQt="subjectId",dQt="sourceLayerHash",pQt="subjectManifestDigest",ALe="scanOnPush",hLe="signingProfileArn",mQt="scoreSource",fQt="signingStatuses",gLe="scanType",AQt="sourceUrl",yLe="scoringVector",ELe="score",hQt="server",CLe="severity",gQt="size",ILe="source",Dy="status",yQt="summary",ik="tags",EQt="transitioningImageTotalCounts",CQt="tagKeys",U6="tagStatus",q6="targetStorageClass",IQt="text",xQt="title",$6="type",wQt="uri",ak="updatedAt",ky="uploadId",G6="upstreamRegistry",Ly="upstreamRepositoryPrefix",u0="upstreamRegistryUrl",bQt="url",ck="value",SQt="vendorCreatedAt",BQt="vulnerabilityId",RQt="vulnerablePackages",NQt="vendorSeverity",xLe="vulnerabilitySourceUpdatedAt",TQt="vendorUpdatedAt",H6="version",N="com.amazonaws.ecr",wLe=(Et(),Y(Ux)),PQt=JD(),ze=N6(),bLe=wLe.TypeRegistry.for(mLe);f.ECRServiceException$=[-3,mLe,"ECRServiceException",0,[],[]];bLe.registerError(f.ECRServiceException$,PQt.ECRServiceException);var Fe=wLe.TypeRegistry.for(N);f.BlockedByOrganizationPolicyException$=[-3,N,GSt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.BlockedByOrganizationPolicyException$,ze.BlockedByOrganizationPolicyException);f.EmptyUploadException$=[-3,N,CRt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.EmptyUploadException$,ze.EmptyUploadException);f.ExclusionAlreadyExistsException$=[-3,N,fRt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ExclusionAlreadyExistsException$,ze.ExclusionAlreadyExistsException);f.ExclusionNotFoundException$=[-3,N,ERt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ExclusionNotFoundException$,ze.ExclusionNotFoundException);f.ImageAlreadyExistsException$=[-3,N,JRt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageAlreadyExistsException$,ze.ImageAlreadyExistsException);f.ImageArchivedException$=[-3,N,jRt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageArchivedException$,ze.ImageArchivedException);f.ImageDigestDoesNotMatchException$=[-3,N,XRt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageDigestDoesNotMatchException$,ze.ImageDigestDoesNotMatchException);f.ImageNotFoundException$=[-3,N,uNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageNotFoundException$,ze.ImageNotFoundException);f.ImageStorageClassUpdateNotSupportedException$=[-3,N,gNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageStorageClassUpdateNotSupportedException$,ze.ImageStorageClassUpdateNotSupportedException);f.ImageTagAlreadyExistsException$=[-3,N,SNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ImageTagAlreadyExistsException$,ze.ImageTagAlreadyExistsException);f.InvalidLayerException$=[-3,N,oNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.InvalidLayerException$,ze.InvalidLayerException);f.InvalidLayerPartException$=[-3,N,iNt,{[Ge]:Ye},[re,Qe,ky,v_t,He],[0,0,0,1,0]];Fe.registerError(f.InvalidLayerPartException$,ze.InvalidLayerPartException);f.InvalidParameterException$=[-3,N,dNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.InvalidParameterException$,ze.InvalidParameterException);f.InvalidTagParameterException$=[-3,N,NNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.InvalidTagParameterException$,ze.InvalidTagParameterException);f.KmsException$=[-3,N,PNt,{[Ge]:Ye},[He,C_t],[0,0]];Fe.registerError(f.KmsException$,ze.KmsException);f.LayerAlreadyExistsException$=[-3,N,_Nt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LayerAlreadyExistsException$,ze.LayerAlreadyExistsException);f.LayerInaccessibleException$=[-3,N,ONt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LayerInaccessibleException$,ze.LayerInaccessibleException);f.LayerPartTooSmallException$=[-3,N,tTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LayerPartTooSmallException$,ze.LayerPartTooSmallException);f.LayersNotFoundException$=[-3,N,VNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LayersNotFoundException$,ze.LayersNotFoundException);f.LifecyclePolicyNotFoundException$=[-3,N,YNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LifecyclePolicyNotFoundException$,ze.LifecyclePolicyNotFoundException);f.LifecyclePolicyPreviewInProgressException$=[-3,N,jNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LifecyclePolicyPreviewInProgressException$,ze.LifecyclePolicyPreviewInProgressException);f.LifecyclePolicyPreviewNotFoundException$=[-3,N,JNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LifecyclePolicyPreviewNotFoundException$,ze.LifecyclePolicyPreviewNotFoundException);f.LimitExceededException$=[-3,N,QNt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.LimitExceededException$,ze.LimitExceededException);f.PullThroughCacheRuleAlreadyExistsException$=[-3,N,LTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.PullThroughCacheRuleAlreadyExistsException$,ze.PullThroughCacheRuleAlreadyExistsException);f.PullThroughCacheRuleNotFoundException$=[-3,N,MTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.PullThroughCacheRuleNotFoundException$,ze.PullThroughCacheRuleNotFoundException);f.ReferencedImagesNotFoundException$=[-3,N,JTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ReferencedImagesNotFoundException$,ze.ReferencedImagesNotFoundException);f.RegistryPolicyNotFoundException$=[-3,N,tPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.RegistryPolicyNotFoundException$,ze.RegistryPolicyNotFoundException);f.RepositoryAlreadyExistsException$=[-3,N,qTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.RepositoryAlreadyExistsException$,ze.RepositoryAlreadyExistsException);f.RepositoryNotEmptyException$=[-3,N,ZTt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.RepositoryNotEmptyException$,ze.RepositoryNotEmptyException);f.RepositoryNotFoundException$=[-3,N,ePt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.RepositoryNotFoundException$,ze.RepositoryNotFoundException);f.RepositoryPolicyNotFoundException$=[-3,N,rPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.RepositoryPolicyNotFoundException$,ze.RepositoryPolicyNotFoundException);f.ScanNotFoundException$=[-3,N,TPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.ScanNotFoundException$,ze.ScanNotFoundException);f.SecretNotFoundException$=[-3,N,PPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.SecretNotFoundException$,ze.SecretNotFoundException);f.ServerException$=[-3,N,IPt,{[Ge]:hQt},[He],[0]];Fe.registerError(f.ServerException$,ze.ServerException);f.SigningConfigurationNotFoundException$=[-3,N,EPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.SigningConfigurationNotFoundException$,ze.SigningConfigurationNotFoundException);f.TemplateAlreadyExistsException$=[-3,N,qPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.TemplateAlreadyExistsException$,ze.TemplateAlreadyExistsException);f.TemplateNotFoundException$=[-3,N,VPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.TemplateNotFoundException$,ze.TemplateNotFoundException);f.TooManyTagsException$=[-3,N,zPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.TooManyTagsException$,ze.TooManyTagsException);f.UnableToAccessSecretException$=[-3,N,mvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnableToAccessSecretException$,ze.UnableToAccessSecretException);f.UnableToDecryptSecretValueException$=[-3,N,fvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnableToDecryptSecretValueException$,ze.UnableToDecryptSecretValueException);f.UnableToGetUpstreamImageException$=[-3,N,Avt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnableToGetUpstreamImageException$,ze.UnableToGetUpstreamImageException);f.UnableToGetUpstreamLayerException$=[-3,N,hvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnableToGetUpstreamLayerException$,ze.UnableToGetUpstreamLayerException);f.UnableToListUpstreamImageReferrersException$=[-3,N,gvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnableToListUpstreamImageReferrersException$,ze.UnableToListUpstreamImageReferrersException);f.UnsupportedImageTypeException$=[-3,N,ZPt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnsupportedImageTypeException$,ze.UnsupportedImageTypeException);f.UnsupportedUpstreamRegistryException$=[-3,N,yvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UnsupportedUpstreamRegistryException$,ze.UnsupportedUpstreamRegistryException);f.UploadNotFoundException$=[-3,N,nvt,{[Ge]:Ye},[He],[0]];Fe.registerError(f.UploadNotFoundException$,ze.UploadNotFoundException);f.ValidationException$=[-3,N,Cvt,{[Ge]:Ye,[a_t]:400},[He],[0]];Fe.registerError(f.ValidationException$,ze.ValidationException);f.errorTypeRegistries=[bLe,Fe];f.Attribute$=[3,N,MSt,0,[E_t,ck],[0,0],1];f.AuthorizationData$=[3,N,FSt,0,[Dvt,Wvt,k_t],[0,4,0]];f.AwsEcrContainerImageDetails$=[3,N,qSt,0,[Bvt,$vt,u_t,_6,Q_t,D_t,B_t,A_t,z_t,Qe],[0,0,0,64,0,4,4,1,0,0]];f.BatchCheckLayerAvailabilityRequest$=[3,N,zSt,0,[Qe,iLe,re],[0,64,0],2];f.BatchCheckLayerAvailabilityResponse$=[3,N,VSt,0,[I_t,KD],[()=>GQt,()=>$Qt]];f.BatchDeleteImageRequest$=[3,N,WSt,0,[Qe,_y,re],[0,()=>Oy,0],2];f.BatchDeleteImageResponse$=[3,N,jSt,0,[_y,KD],[()=>Oy,()=>SLe]];f.BatchGetImageRequest$=[3,N,KSt,0,[Qe,_y,re,Pvt],[0,()=>Oy,0,64],2];f.BatchGetImageResponse$=[3,N,XSt,0,[c_t,KD],[()=>OQt,()=>SLe]];f.BatchGetRepositoryScanningConfigurationRequest$=[3,N,eBt,0,[uLe],[64],1];f.BatchGetRepositoryScanningConfigurationResponse$=[3,N,tBt,0,[iQt,KD],[()=>XQt,()=>KQt]];f.CompleteLayerUploadRequest$=[3,N,nBt,0,[Qe,ky,iLe,re],[0,0,64,0],3];f.CompleteLayerUploadResponse$=[3,N,sBt,0,[re,Qe,ky,l0],[0,0,0,0]];f.CreatePullThroughCacheRuleRequest$=[3,N,iBt,0,[Fu,u0,re,G6,Vf,wl,Ly],[0,0,0,0,0,0,0],2];f.CreatePullThroughCacheRuleResponse$=[3,N,aBt,0,[Fu,u0,Py,re,G6,Vf,wl,Ly],[0,0,4,0,0,0,0,0]];f.CreateRepositoryCreationTemplateRequest$=[3,N,uBt,0,[nk,T6,vy,i0,F6,Yf,Wf,M6,Q6,wl],[0,64,0,()=>f.EncryptionConfigurationForRepositoryCreationTemplate$,()=>My,0,()=>Jf,0,0,0],2];f.CreateRepositoryCreationTemplateResponse$=[3,N,dBt,0,[re,L6],[0,()=>f.RepositoryCreationTemplate$]];f.CreateRepositoryRequest$=[3,N,pBt,0,[Qe,re,ik,Yf,Wf,tk,i0],[0,0,()=>My,0,()=>Jf,()=>f.ImageScanningConfiguration$,()=>f.EncryptionConfiguration$],1];f.CreateRepositoryResponse$=[3,N,mBt,0,[dLe],[()=>f.Repository$]];f.CvssScore$=[3,N,fBt,0,[Gvt,yLe,ILe,H6],[1,0,0,0]];f.CvssScoreAdjustment$=[3,N,ABt,0,[__t,Z_t],[0,0]];f.CvssScoreDetails$=[3,N,gBt,0,[Mvt,ELe,mQt,yLe,H6],[()=>QQt,1,0,0,0]];f.DeleteLifecyclePolicyRequest$=[3,N,QBt,0,[Qe,re],[0,0],1];f.DeleteLifecyclePolicyResponse$=[3,N,DBt,0,[re,Qe,jf,aLe],[0,0,0,4]];f.DeletePullThroughCacheRuleRequest$=[3,N,LBt,0,[Fu,re],[0,0],1];f.DeletePullThroughCacheRuleResponse$=[3,N,OBt,0,[Fu,u0,Py,re,Vf,wl,Ly],[0,0,4,0,0,0,0]];f.DeleteRegistryPolicyRequest$=[3,N,XBt,0,[],[]];f.DeleteRegistryPolicyResponse$=[3,N,ZBt,0,[re,Bp],[0,0]];f.DeleteRepositoryCreationTemplateRequest$=[3,N,VBt,0,[nk],[0],1];f.DeleteRepositoryCreationTemplateResponse$=[3,N,YBt,0,[re,L6],[0,()=>f.RepositoryCreationTemplate$]];f.DeleteRepositoryPolicyRequest$=[3,N,eRt,0,[Qe,re],[0,0],1];f.DeleteRepositoryPolicyResponse$=[3,N,tRt,0,[re,Qe,Bp],[0,0,0]];f.DeleteRepositoryRequest$=[3,N,nRt,0,[Qe,re,eLe],[0,0,2],1];f.DeleteRepositoryResponse$=[3,N,sRt,0,[dLe],[()=>f.Repository$]];f.DeleteSigningConfigurationRequest$=[3,N,pRt,0,[],[]];f.DeleteSigningConfigurationResponse$=[3,N,mRt,0,[re,ok],[0,()=>f.SigningConfiguration$]];f.DeregisterPullTimeUpdateExclusionRequest$=[3,N,$Bt,0,[rk],[0],1];f.DeregisterPullTimeUpdateExclusionResponse$=[3,N,GBt,0,[rk],[0]];f.DescribeImageReplicationStatusRequest$=[3,N,wBt,0,[Qe,Vi,re],[0,()=>f.ImageIdentifier$,0],2];f.DescribeImageReplicationStatusResponse$=[3,N,bBt,0,[Qe,Vi,W_t],[0,()=>f.ImageIdentifier$,()=>FQt]];f.DescribeImageScanFindingsRequest$=[3,N,RBt,0,[Qe,Vi,re,bn,Uu],[0,()=>f.ImageIdentifier$,0,0,1],2];f.DescribeImageScanFindingsResponse$=[3,N,NBt,0,[re,Qe,Vi,v6,d_t,bn],[0,0,()=>f.ImageIdentifier$,()=>f.ImageScanStatus$,()=>f.ImageScanFindings$,0]];f.DescribeImagesFilter$=[3,N,CBt,0,[U6,ek],[0,0]];f.DescribeImageSigningStatusRequest$=[3,N,PBt,0,[Qe,Vi,re],[0,()=>f.ImageIdentifier$,0],2];f.DescribeImageSigningStatusResponse$=[3,N,vBt,0,[Qe,Vi,re,fQt],[0,()=>f.ImageIdentifier$,0,()=>qQt]];f.DescribeImagesRequest$=[3,N,IBt,0,[Qe,re,_y,bn,Uu,Sp],[0,0,()=>Oy,0,1,()=>f.DescribeImagesFilter$],1];f.DescribeImagesResponse$=[3,N,SBt,0,[l_t,bn],[()=>LQt,0]];f.DescribePullThroughCacheRulesRequest$=[3,N,MBt,0,[re,Xvt,bn,Uu],[0,64,0,1]];f.DescribePullThroughCacheRulesResponse$=[3,N,FBt,0,[q_t,bn],[()=>zQt,0]];f.DescribeRegistryRequest$=[3,N,oRt,0,[],[]];f.DescribeRegistryResponse$=[3,N,iRt,0,[re,k6],[0,()=>f.ReplicationConfiguration$]];f.DescribeRepositoriesRequest$=[3,N,aRt,0,[re,uLe,bn,Uu],[0,64,0,1]];f.DescribeRepositoriesResponse$=[3,N,cRt,0,[sQt,bn],[()=>JQt,0]];f.DescribeRepositoryCreationTemplatesRequest$=[3,N,WBt,0,[H_t,bn,Uu],[64,0,1]];f.DescribeRepositoryCreationTemplatesResponse$=[3,N,jBt,0,[re,V_t,bn],[0,()=>WQt,0]];f.EncryptionConfiguration$=[3,N,ARt,0,[Xke,oLe],[0,0],1];f.EncryptionConfigurationForRepositoryCreationTemplate$=[3,N,hRt,0,[Xke,oLe],[0,0],1];f.EnhancedImageScanFinding$=[3,N,gRt,0,[Rvt,vy,e_t,n_t,R_t,G_t,nQt,oQt,ELe,lQt,CLe,Dy,xQt,$6,ak,t_t,jvt],[0,0,0,4,4,()=>f.PackageVulnerabilityDetails$,()=>f.Remediation$,()=>ZQt,1,()=>f.ScoreDetails$,0,0,0,0,4,0,0]];f.GetAccountSettingRequest$=[3,N,xRt,0,[Qy],[0],1];f.GetAccountSettingResponse$=[3,N,wRt,0,[Qy,ck],[0,0]];f.GetAuthorizationTokenRequest$=[3,N,SRt,0,[Y_t],[64]];f.GetAuthorizationTokenResponse$=[3,N,BRt,0,[Nvt],[()=>_Qt]];f.GetDownloadUrlForLayerRequest$=[3,N,NRt,0,[Qe,l0,re],[0,0,0],2];f.GetDownloadUrlForLayerResponse$=[3,N,TRt,0,[Hvt,l0],[0,0]];f.GetLifecyclePolicyPreviewRequest$=[3,N,_Rt,0,[Qe,re,_y,bn,Uu,Sp],[0,0,()=>Oy,0,1,()=>f.LifecyclePolicyPreviewFilter$],1];f.GetLifecyclePolicyPreviewResponse$=[3,N,QRt,0,[re,Qe,jf,Dy,bn,F_t,yQt],[0,0,0,0,0,()=>HQt,()=>f.LifecyclePolicyPreviewSummary$]];f.GetLifecyclePolicyRequest$=[3,N,DRt,0,[Qe,re],[0,0],1];f.GetLifecyclePolicyResponse$=[3,N,kRt,0,[re,Qe,jf,aLe],[0,0,0,4]];f.GetRegistryPolicyRequest$=[3,N,ORt,0,[],[]];f.GetRegistryPolicyResponse$=[3,N,MRt,0,[re,Bp],[0,0]];f.GetRegistryScanningConfigurationRequest$=[3,N,GRt,0,[],[]];f.GetRegistryScanningConfigurationResponse$=[3,N,HRt,0,[re,aQt],[0,()=>f.RegistryScanningConfiguration$]];f.GetRepositoryPolicyRequest$=[3,N,FRt,0,[Qe,re],[0,0],1];f.GetRepositoryPolicyResponse$=[3,N,URt,0,[re,Qe,Bp],[0,0,0]];f.GetSigningConfigurationRequest$=[3,N,VRt,0,[],[]];f.GetSigningConfigurationResponse$=[3,N,YRt,0,[re,ok],[0,()=>f.SigningConfiguration$]];f.Image$=[3,N,WRt,0,[re,Qe,Vi,tLe,P6],[0,0,()=>f.ImageIdentifier$,0,0]];f.ImageDetail$=[3,N,KRt,0,[re,Qe,c0,_6,m_t,rLe,v6,p_t,P6,vvt,T_t,pQt,ek,w_t,b_t],[0,0,0,64,1,4,()=>f.ImageScanStatus$,()=>f.ImageScanFindingsSummary$,0,0,4,0,0,4,4]];f.ImageFailure$=[3,N,eNt,0,[Vi,a0,XD],[()=>f.ImageIdentifier$,0,0]];f.ImageIdentifier$=[3,N,rNt,0,[c0,sLe],[0,0]];f.ImageReferrer$=[3,N,pNt,0,[Yvt,cLe,gQt,kvt,Fvt,Jke],[0,0,1,0,128,0],3];f.ImageReplicationStatus$=[3,N,fNt,0,[pLe,re,Dy,a0],[0,0,0,0]];f.ImageScanFinding$=[3,N,yNt,0,[Qy,vy,wQt,CLe,qvt],[0,0,0,0,()=>vQt]];f.ImageScanFindings$=[3,N,INt,0,[nLe,xLe,Zke,i_t,Jvt],[4,4,129,()=>UQt,()=>kQt]];f.ImageScanFindingsSummary$=[3,N,CNt,0,[nLe,xLe,Zke],[4,4,129]];f.ImageScanningConfiguration$=[3,N,hNt,0,[ALe],[2]];f.ImageScanStatus$=[3,N,xNt,0,[Dy,vy],[0,0]];f.ImageSigningStatus$=[3,N,bNt,0,[hLe,a0,XD,Dy],[0,0,0,0]];f.ImageTagMutabilityExclusionFilter$=[3,N,BNt,0,[ZD,Sp],[0,0],2];f.InitiateLayerUploadRequest$=[3,N,cNt,0,[Qe,re],[0,0],1];f.InitiateLayerUploadResponse$=[3,N,lNt,0,[ky,U_t],[0,1]];f.Layer$=[3,N,vNt,0,[l0,x_t,P_t,cLe],[0,0,1,0]];f.LayerFailure$=[3,N,DNt,0,[l0,a0,XD],[0,0,0]];f.LifecyclePolicyPreviewFilter$=[3,N,WNt,0,[U6],[0]];f.LifecyclePolicyPreviewResult$=[3,N,KNt,0,[_6,c0,rLe,Ovt,_vt,cQt],[64,0,4,()=>f.LifecyclePolicyRuleAction$,1,0]];f.LifecyclePolicyPreviewSummary$=[3,N,ZNt,0,[Kvt,EQt],[1,()=>rDt]];f.LifecyclePolicyRuleAction$=[3,N,eTt,0,[$6,q6],[0,0]];f.ListImageReferrersFilter$=[3,N,UNt,0,[Lvt,Jke],[64,0]];f.ListImageReferrersRequest$=[3,N,qNt,0,[Qe,uQt,re,Sp,bn,Uu],[0,()=>f.SubjectIdentifier$,0,()=>f.ListImageReferrersFilter$,0,1],2];f.ListImageReferrersResponse$=[3,N,$Nt,0,[tQt,bn],[()=>MQt,0]];f.ListImagesFilter$=[3,N,MNt,0,[U6,ek],[0,0]];f.ListImagesRequest$=[3,N,FNt,0,[Qe,re,bn,Uu,Sp],[0,0,0,1,()=>f.ListImagesFilter$],1];f.ListImagesResponse$=[3,N,GNt,0,[_y,bn],[()=>Oy,0]];f.ListPullTimeUpdateExclusionsRequest$=[3,N,nTt,0,[Uu,bn],[1,0]];f.ListPullTimeUpdateExclusionsResponse$=[3,N,sTt,0,[$_t,bn],[64,0]];f.ListTagsForResourceRequest$=[3,N,iTt,0,[D6],[0],1];f.ListTagsForResourceResponse$=[3,N,aTt,0,[ik],[()=>My]];f.PackageVulnerabilityDetails$=[3,N,FTt,0,[Kke,J_t,X_t,ILe,AQt,SQt,NQt,TQt,BQt,RQt],[()=>DQt,64,64,0,0,4,0,4,0,()=>nDt]];f.PullThroughCacheRule$=[3,N,kTt,0,[Fu,u0,Py,re,Vf,wl,Ly,G6,ak],[0,0,4,0,0,0,0,0,4]];f.PutAccountSettingRequest$=[3,N,lTt,0,[Qy,ck],[0,0],2];f.PutAccountSettingResponse$=[3,N,uTt,0,[Qy,ck],[0,0]];f.PutImageRequest$=[3,N,pTt,0,[Qe,tLe,re,P6,sLe,c0],[0,0,0,0,0,0],2];f.PutImageResponse$=[3,N,mTt,0,[y_t],[()=>f.Image$]];f.PutImageScanningConfigurationRequest$=[3,N,ATt,0,[Qe,tk,re],[0,()=>f.ImageScanningConfiguration$,0],2];f.PutImageScanningConfigurationResponse$=[3,N,hTt,0,[re,Qe,tk],[0,0,()=>f.ImageScanningConfiguration$]];f.PutImageTagMutabilityRequest$=[3,N,yTt,0,[Qe,Yf,re,Wf],[0,0,0,()=>Jf],2];f.PutImageTagMutabilityResponse$=[3,N,ETt,0,[re,Qe,Yf,Wf],[0,0,0,()=>Jf]];f.PutLifecyclePolicyRequest$=[3,N,ITt,0,[Qe,jf,re],[0,0,0],2];f.PutLifecyclePolicyResponse$=[3,N,xTt,0,[re,Qe,jf],[0,0,0]];f.PutRegistryPolicyRequest$=[3,N,RTt,0,[Bp],[0],1];f.PutRegistryPolicyResponse$=[3,N,NTt,0,[re,Bp],[0,0]];f.PutRegistryScanningConfigurationRequest$=[3,N,PTt,0,[gLe,sk],[0,()=>BLe]];f.PutRegistryScanningConfigurationResponse$=[3,N,vTt,0,[j_t],[()=>f.RegistryScanningConfiguration$]];f.PutReplicationConfigurationRequest$=[3,N,bTt,0,[k6],[()=>f.ReplicationConfiguration$],1];f.PutReplicationConfigurationResponse$=[3,N,STt,0,[k6],[()=>f.ReplicationConfiguration$]];f.PutSigningConfigurationRequest$=[3,N,QTt,0,[ok],[()=>f.SigningConfiguration$],1];f.PutSigningConfigurationResponse$=[3,N,DTt,0,[ok],[()=>f.SigningConfiguration$]];f.Recommendation$=[3,N,UTt,0,[bQt,IQt],[0,0]];f.RegisterPullTimeUpdateExclusionRequest$=[3,N,sPt,0,[rk],[0],1];f.RegisterPullTimeUpdateExclusionResponse$=[3,N,oPt,0,[rk,Py],[0,4]];f.RegistryScanningConfiguration$=[3,N,cPt,0,[gLe,sk],[0,()=>BLe]];f.RegistryScanningRule$=[3,N,mPt,0,[fLe,O6],[0,()=>RLe],2];f.Remediation$=[3,N,APt,0,[eQt],[()=>f.Recommendation$]];f.ReplicationConfiguration$=[3,N,$Tt,0,[sk],[()=>YQt],1];f.ReplicationDestination$=[3,N,zTt,0,[pLe,re],[0,0],2];f.ReplicationRule$=[3,N,iPt,0,[zvt,O6],[()=>VQt,()=>jQt],1];f.Repository$=[3,N,hPt,0,[lLe,re,Qe,K_t,Py,Yf,Wf,tk,i0],[0,0,0,0,4,0,()=>Jf,()=>f.ImageScanningConfiguration$,()=>f.EncryptionConfiguration$]];f.RepositoryCreationTemplate$=[3,N,GTt,0,[nk,vy,i0,F6,Yf,Wf,M6,Q6,T6,wl,Py,ak],[0,0,()=>f.EncryptionConfigurationForRepositoryCreationTemplate$,()=>My,0,()=>Jf,0,0,64,0,4,4]];f.RepositoryFilter$=[3,N,WTt,0,[Sp,ZD],[0,0],2];f.RepositoryScanningConfiguration$=[3,N,pPt,0,[lLe,Qe,ALe,fLe,Qvt],[0,0,2,0,()=>RLe]];f.RepositoryScanningConfigurationFailure$=[3,N,lPt,0,[Qe,a0,XD],[0,0,0]];f.Resource$=[3,N,gPt,0,[Vvt,g_t,ik,$6],[()=>f.ResourceDetails$,0,128,0]];f.ResourceDetails$=[3,N,YTt,0,[Tvt],[()=>f.AwsEcrContainerImageDetails$]];f.ScanningRepositoryFilter$=[3,N,_Pt,0,[Sp,ZD],[0,0],2];f.ScoreDetails$=[3,N,CPt,0,[Kke],[()=>f.CvssScoreDetails$]];f.SetRepositoryPolicyRequest$=[3,N,MPt,0,[Qe,Bp,re,eLe],[0,0,0,2],2];f.SetRepositoryPolicyResponse$=[3,N,FPt,0,[re,Qe,Bp],[0,0,0]];f.SigningConfiguration$=[3,N,yPt,0,[sk],[()=>tDt],1];f.SigningRepositoryFilter$=[3,N,kPt,0,[Sp,ZD],[0,0],2];f.SigningRule$=[3,N,vPt,0,[hLe,O6],[0,()=>eDt],1];f.StartImageScanRequest$=[3,N,bPt,0,[Qe,Vi,re],[0,()=>f.ImageIdentifier$,0],2];f.StartImageScanResponse$=[3,N,SPt,0,[re,Qe,Vi,v6],[0,0,()=>f.ImageIdentifier$,()=>f.ImageScanStatus$]];f.StartLifecyclePolicyPreviewRequest$=[3,N,RPt,0,[Qe,re,jf],[0,0,0],1];f.StartLifecyclePolicyPreviewResponse$=[3,N,NPt,0,[re,Qe,jf,Dy],[0,0,0,0]];f.SubjectIdentifier$=[3,N,xPt,0,[c0],[0],1];f.Tag$=[3,N,UPt,0,[TNt,Evt],[0,0],2];f.TagResourceRequest$=[3,N,WPt,0,[D6,ik],[0,()=>My],2];f.TagResourceResponse$=[3,N,jPt,0,[],[]];f.TransitioningImageTotalCount$=[3,N,$Pt,0,[q6,f_t],[0,1]];f.UntagResourceRequest$=[3,N,dvt,0,[D6,CQt],[0,64],2];f.UntagResourceResponse$=[3,N,pvt,0,[],[]];f.UpdateImageStorageClassRequest$=[3,N,KPt,0,[Qe,Vi,q6,re],[0,()=>f.ImageIdentifier$,0,0],3];f.UpdateImageStorageClassResponse$=[3,N,XPt,0,[re,Qe,Vi,ek],[0,0,()=>f.ImageIdentifier$,0]];f.UpdatePullThroughCacheRuleRequest$=[3,N,ovt,0,[Fu,re,Vf,wl],[0,0,0,0],1];f.UpdatePullThroughCacheRuleResponse$=[3,N,ivt,0,[Fu,re,ak,Vf,wl,Ly],[0,0,4,0,0,0]];f.UpdateRepositoryCreationTemplateRequest$=[3,N,lvt,0,[nk,vy,i0,F6,Yf,Wf,M6,Q6,T6,wl],[0,0,()=>f.EncryptionConfigurationForRepositoryCreationTemplate$,()=>My,0,()=>Jf,0,0,64,0],1];f.UpdateRepositoryCreationTemplateResponse$=[3,N,uvt,0,[re,L6],[0,()=>f.RepositoryCreationTemplate$]];f.UploadLayerPartRequest$=[3,N,tvt,0,[Qe,ky,L_t,O_t,N_t,re],[0,0,1,1,21,0],5];f.UploadLayerPartResponse$=[3,N,rvt,0,[re,Qe,ky,S_t],[0,0,0,1]];f.ValidatePullThroughCacheRuleRequest$=[3,N,bvt,0,[Fu,re],[0,0],1];f.ValidatePullThroughCacheRuleResponse$=[3,N,Svt,0,[Fu,re,u0,Vf,wl,Ly,h_t,o_t],[0,0,0,0,0,0,2,0]];f.VulnerablePackage$=[3,N,Ivt,0,[Uvt,Zvt,s_t,Qy,M_t,rQt,dQt,H6,r_t],[0,1,0,0,0,0,0,0,0]];var vQt=[1,N,$St,0,()=>f.Attribute$],_Qt=[1,N,USt,0,()=>f.AuthorizationData$],QQt=[1,N,hBt,0,()=>f.CvssScoreAdjustment$],DQt=[1,N,yBt,0,()=>f.CvssScore$],kQt=[1,N,yRt,0,()=>f.EnhancedImageScanFinding$],LQt=[1,N,ZRt,0,()=>f.ImageDetail$],SLe=[1,N,tNt,0,()=>f.ImageFailure$],Oy=[1,N,nNt,0,()=>f.ImageIdentifier$],OQt=[1,N,sNt,0,()=>f.Image$],MQt=[1,N,mNt,0,()=>f.ImageReferrer$],FQt=[1,N,ANt,0,()=>f.ImageReplicationStatus$],UQt=[1,N,ENt,0,()=>f.ImageScanFinding$],qQt=[1,N,wNt,0,()=>f.ImageSigningStatus$],Jf=[1,N,RNt,0,()=>f.ImageTagMutabilityExclusionFilter$],$Qt=[1,N,kNt,0,()=>f.LayerFailure$],GQt=[1,N,zNt,0,()=>f.Layer$],HQt=[1,N,XNt,0,()=>f.LifecyclePolicyPreviewResult$],zQt=[1,N,OTt,0,()=>f.PullThroughCacheRule$],BLe=[1,N,fPt,0,()=>f.RegistryScanningRule$],VQt=[1,N,VTt,0,()=>f.ReplicationDestination$],YQt=[1,N,aPt,0,()=>f.ReplicationRule$],WQt=[1,N,HTt,0,()=>f.RepositoryCreationTemplate$],jQt=[1,N,jTt,0,()=>f.RepositoryFilter$],JQt=[1,N,KTt,0,()=>f.Repository$],KQt=[1,N,uPt,0,()=>f.RepositoryScanningConfigurationFailure$],XQt=[1,N,dPt,0,()=>f.RepositoryScanningConfiguration$],ZQt=[1,N,XTt,0,()=>f.Resource$],RLe=[1,N,QPt,0,()=>f.ScanningRepositoryFilter$],eDt=[1,N,DPt,0,()=>f.SigningRepositoryFilter$],tDt=[1,N,LPt,0,()=>f.SigningRule$],My=[1,N,HPt,0,()=>f.Tag$],rDt=[1,N,GPt,0,()=>f.TransitioningImageTotalCount$],nDt=[1,N,xvt,0,()=>f.VulnerablePackage$];f.BatchCheckLayerAvailability$=[9,N,HSt,0,()=>f.BatchCheckLayerAvailabilityRequest$,()=>f.BatchCheckLayerAvailabilityResponse$];f.BatchDeleteImage$=[9,N,YSt,0,()=>f.BatchDeleteImageRequest$,()=>f.BatchDeleteImageResponse$];f.BatchGetImage$=[9,N,JSt,0,()=>f.BatchGetImageRequest$,()=>f.BatchGetImageResponse$];f.BatchGetRepositoryScanningConfiguration$=[9,N,ZSt,0,()=>f.BatchGetRepositoryScanningConfigurationRequest$,()=>f.BatchGetRepositoryScanningConfigurationResponse$];f.CompleteLayerUpload$=[9,N,rBt,0,()=>f.CompleteLayerUploadRequest$,()=>f.CompleteLayerUploadResponse$];f.CreatePullThroughCacheRule$=[9,N,oBt,0,()=>f.CreatePullThroughCacheRuleRequest$,()=>f.CreatePullThroughCacheRuleResponse$];f.CreateRepository$=[9,N,cBt,0,()=>f.CreateRepositoryRequest$,()=>f.CreateRepositoryResponse$];f.CreateRepositoryCreationTemplate$=[9,N,lBt,0,()=>f.CreateRepositoryCreationTemplateRequest$,()=>f.CreateRepositoryCreationTemplateResponse$];f.DeleteLifecyclePolicy$=[9,N,_Bt,0,()=>f.DeleteLifecyclePolicyRequest$,()=>f.DeleteLifecyclePolicyResponse$];f.DeletePullThroughCacheRule$=[9,N,kBt,0,()=>f.DeletePullThroughCacheRuleRequest$,()=>f.DeletePullThroughCacheRuleResponse$];f.DeleteRegistryPolicy$=[9,N,KBt,0,()=>f.DeleteRegistryPolicyRequest$,()=>f.DeleteRegistryPolicyResponse$];f.DeleteRepository$=[9,N,HBt,0,()=>f.DeleteRepositoryRequest$,()=>f.DeleteRepositoryResponse$];f.DeleteRepositoryCreationTemplate$=[9,N,zBt,0,()=>f.DeleteRepositoryCreationTemplateRequest$,()=>f.DeleteRepositoryCreationTemplateResponse$];f.DeleteRepositoryPolicy$=[9,N,rRt,0,()=>f.DeleteRepositoryPolicyRequest$,()=>f.DeleteRepositoryPolicyResponse$];f.DeleteSigningConfiguration$=[9,N,dRt,0,()=>f.DeleteSigningConfigurationRequest$,()=>f.DeleteSigningConfigurationResponse$];f.DeregisterPullTimeUpdateExclusion$=[9,N,qBt,0,()=>f.DeregisterPullTimeUpdateExclusionRequest$,()=>f.DeregisterPullTimeUpdateExclusionResponse$];f.DescribeImageReplicationStatus$=[9,N,xBt,0,()=>f.DescribeImageReplicationStatusRequest$,()=>f.DescribeImageReplicationStatusResponse$];f.DescribeImages$=[9,N,EBt,0,()=>f.DescribeImagesRequest$,()=>f.DescribeImagesResponse$];f.DescribeImageScanFindings$=[9,N,BBt,0,()=>f.DescribeImageScanFindingsRequest$,()=>f.DescribeImageScanFindingsResponse$];f.DescribeImageSigningStatus$=[9,N,TBt,0,()=>f.DescribeImageSigningStatusRequest$,()=>f.DescribeImageSigningStatusResponse$];f.DescribePullThroughCacheRules$=[9,N,UBt,0,()=>f.DescribePullThroughCacheRulesRequest$,()=>f.DescribePullThroughCacheRulesResponse$];f.DescribeRegistry$=[9,N,lRt,0,()=>f.DescribeRegistryRequest$,()=>f.DescribeRegistryResponse$];f.DescribeRepositories$=[9,N,uRt,0,()=>f.DescribeRepositoriesRequest$,()=>f.DescribeRepositoriesResponse$];f.DescribeRepositoryCreationTemplates$=[9,N,JBt,0,()=>f.DescribeRepositoryCreationTemplatesRequest$,()=>f.DescribeRepositoryCreationTemplatesResponse$];f.GetAccountSetting$=[9,N,IRt,0,()=>f.GetAccountSettingRequest$,()=>f.GetAccountSettingResponse$];f.GetAuthorizationToken$=[9,N,bRt,0,()=>f.GetAuthorizationTokenRequest$,()=>f.GetAuthorizationTokenResponse$];f.GetDownloadUrlForLayer$=[9,N,RRt,0,()=>f.GetDownloadUrlForLayerRequest$,()=>f.GetDownloadUrlForLayerResponse$];f.GetLifecyclePolicy$=[9,N,PRt,0,()=>f.GetLifecyclePolicyRequest$,()=>f.GetLifecyclePolicyResponse$];f.GetLifecyclePolicyPreview$=[9,N,vRt,0,()=>f.GetLifecyclePolicyPreviewRequest$,()=>f.GetLifecyclePolicyPreviewResponse$];f.GetRegistryPolicy$=[9,N,LRt,0,()=>f.GetRegistryPolicyRequest$,()=>f.GetRegistryPolicyResponse$];f.GetRegistryScanningConfiguration$=[9,N,$Rt,0,()=>f.GetRegistryScanningConfigurationRequest$,()=>f.GetRegistryScanningConfigurationResponse$];f.GetRepositoryPolicy$=[9,N,qRt,0,()=>f.GetRepositoryPolicyRequest$,()=>f.GetRepositoryPolicyResponse$];f.GetSigningConfiguration$=[9,N,zRt,0,()=>f.GetSigningConfigurationRequest$,()=>f.GetSigningConfigurationResponse$];f.InitiateLayerUpload$=[9,N,aNt,0,()=>f.InitiateLayerUploadRequest$,()=>f.InitiateLayerUploadResponse$];f.ListImageReferrers$=[9,N,HNt,0,()=>f.ListImageReferrersRequest$,()=>f.ListImageReferrersResponse$];f.ListImages$=[9,N,LNt,0,()=>f.ListImagesRequest$,()=>f.ListImagesResponse$];f.ListPullTimeUpdateExclusions$=[9,N,rTt,0,()=>f.ListPullTimeUpdateExclusionsRequest$,()=>f.ListPullTimeUpdateExclusionsResponse$];f.ListTagsForResource$=[9,N,oTt,0,()=>f.ListTagsForResourceRequest$,()=>f.ListTagsForResourceResponse$];f.PutAccountSetting$=[9,N,cTt,0,()=>f.PutAccountSettingRequest$,()=>f.PutAccountSettingResponse$];f.PutImage$=[9,N,dTt,0,()=>f.PutImageRequest$,()=>f.PutImageResponse$];f.PutImageScanningConfiguration$=[9,N,fTt,0,()=>f.PutImageScanningConfigurationRequest$,()=>f.PutImageScanningConfigurationResponse$];f.PutImageTagMutability$=[9,N,gTt,0,()=>f.PutImageTagMutabilityRequest$,()=>f.PutImageTagMutabilityResponse$];f.PutLifecyclePolicy$=[9,N,CTt,0,()=>f.PutLifecyclePolicyRequest$,()=>f.PutLifecyclePolicyResponse$];f.PutRegistryPolicy$=[9,N,BTt,0,()=>f.PutRegistryPolicyRequest$,()=>f.PutRegistryPolicyResponse$];f.PutRegistryScanningConfiguration$=[9,N,TTt,0,()=>f.PutRegistryScanningConfigurationRequest$,()=>f.PutRegistryScanningConfigurationResponse$];f.PutReplicationConfiguration$=[9,N,wTt,0,()=>f.PutReplicationConfigurationRequest$,()=>f.PutReplicationConfigurationResponse$];f.PutSigningConfiguration$=[9,N,_Tt,0,()=>f.PutSigningConfigurationRequest$,()=>f.PutSigningConfigurationResponse$];f.RegisterPullTimeUpdateExclusion$=[9,N,nPt,0,()=>f.RegisterPullTimeUpdateExclusionRequest$,()=>f.RegisterPullTimeUpdateExclusionResponse$];f.SetRepositoryPolicy$=[9,N,OPt,0,()=>f.SetRepositoryPolicyRequest$,()=>f.SetRepositoryPolicyResponse$];f.StartImageScan$=[9,N,wPt,0,()=>f.StartImageScanRequest$,()=>f.StartImageScanResponse$];f.StartLifecyclePolicyPreview$=[9,N,BPt,0,()=>f.StartLifecyclePolicyPreviewRequest$,()=>f.StartLifecyclePolicyPreviewResponse$];f.TagResource$=[9,N,YPt,0,()=>f.TagResourceRequest$,()=>f.TagResourceResponse$];f.UntagResource$=[9,N,avt,0,()=>f.UntagResourceRequest$,()=>f.UntagResourceResponse$];f.UpdateImageStorageClass$=[9,N,JPt,0,()=>f.UpdateImageStorageClassRequest$,()=>f.UpdateImageStorageClassResponse$];f.UpdatePullThroughCacheRule$=[9,N,svt,0,()=>f.UpdatePullThroughCacheRuleRequest$,()=>f.UpdatePullThroughCacheRuleResponse$];f.UpdateRepositoryCreationTemplate$=[9,N,cvt,0,()=>f.UpdateRepositoryCreationTemplateRequest$,()=>f.UpdateRepositoryCreationTemplateResponse$];f.UploadLayerPart$=[9,N,evt,0,()=>f.UploadLayerPartRequest$,()=>f.UploadLayerPartResponse$];f.ValidatePullThroughCacheRule$=[9,N,wvt,0,()=>f.ValidatePullThroughCacheRuleRequest$,()=>f.ValidatePullThroughCacheRuleResponse$]});var NLe=w(uk=>{"use strict";Object.defineProperty(uk,"__esModule",{value:!0});uk.getRuntimeConfig=void 0;var sDt=(Kr(),Y(lp)),oDt=(vf(),Y(IJ)),iDt=(Ee(),Y(Fi)),aDt=(_e(),Y(tl)),lk=(nt(),Y(Xd)),cDt=xj(),lDt=Wke(),uDt=z6(),dDt=t=>({apiVersion:"2015-09-21",base64Decoder:t?.base64Decoder??lk.fromBase64,base64Encoder:t?.base64Encoder??lk.toBase64,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??lDt.defaultEndpointResolver,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??cDt.defaultECRHttpAuthSchemeProvider,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new sDt.AwsSdkSigV4Signer}],logger:t?.logger??new iDt.NoOpLogger,protocol:t?.protocol??oDt.AwsJson1_1Protocol,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ecr",errorTypeRegistries:uDt.errorTypeRegistries,xmlNamespace:"http://ecr.amazonaws.com/doc/2015-09-21/",version:"2015-09-21",serviceTarget:"AmazonEC2ContainerRegistry_V20150921"},serviceId:t?.serviceId??"ECR",urlParser:t?.urlParser??aDt.parseUrl,utf8Decoder:t?.utf8Decoder??lk.fromUtf8,utf8Encoder:t?.utf8Encoder??lk.toUtf8});uk.getRuntimeConfig=dDt});var _Le=w(dk=>{"use strict";Object.defineProperty(dk,"__esModule",{value:!0});dk.getRuntimeConfig=void 0;var pDt=(ey(),Y(Zg)),mDt=pDt.__importDefault(gPe()),V6=(xt(),Y(Qs)),fDt=(Kr(),Y(lp)),ADt=P5(),TLe=(Ee(),Y(Fi)),Yi=(Nt(),Y(Dn)),Y6=(vs(),Y(Yx)),PLe=(nt(),Y(Xd)),vLe=Pu(),hDt=NLe(),gDt=t=>{(0,TLe.emitWarningIfUnsupportedVersion)(process.version);let e=(0,Yi.resolveDefaultsModeConfig)(t),r=()=>e().then(TLe.loadConfigsForDefaultMode),n=(0,hDt.getRuntimeConfig)(t);(0,V6.emitWarningIfUnsupportedVersion)(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??(0,Yi.loadConfig)(fDt.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,s),bodyLengthChecker:t?.bodyLengthChecker??PLe.calculateBodyLength,credentialDefaultProvider:t?.credentialDefaultProvider??ADt.defaultProvider,defaultUserAgentProvider:t?.defaultUserAgentProvider??(0,V6.createDefaultUserAgentProvider)({serviceId:n.serviceId,clientVersion:mDt.default.version}),maxAttempts:t?.maxAttempts??(0,Yi.loadConfig)(Y6.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,t),region:t?.region??(0,Yi.loadConfig)(Yi.NODE_REGION_CONFIG_OPTIONS,{...Yi.NODE_REGION_CONFIG_FILE_OPTIONS,...s}),requestHandler:vLe.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??(0,Yi.loadConfig)({...Y6.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await r()).retryMode||Y6.DEFAULT_RETRY_MODE},t),sha256:t?.sha256??PLe.Hash.bind(null,"sha256"),streamCollector:t?.streamCollector??vLe.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??(0,Yi.loadConfig)(Yi.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,s),useFipsEndpoint:t?.useFipsEndpoint??(0,Yi.loadConfig)(Yi.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,s),userAgentAppId:t?.userAgentAppId??(0,Yi.loadConfig)(V6.NODE_APP_ID_CONFIG_OPTIONS,s)}};dk.getRuntimeConfig=gDt});var VLe=w(q=>{"use strict";var Rp=(xt(),Y(Qs)),bl=(_s(),Y(_8)),K=(Ee(),Y(Fi)),yDt=(Nt(),Y(Dn)),Ce=(It(),Y(uf)),W6=(_e(),Y(tl)),QLe=(vs(),Y(Yx)),EDt=(Et(),Y(Ux)),DLe=xj(),CDt=_Le(),he=z6(),pk=N6(),IDt=JD(),xDt=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr"}),Ie={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},wDt=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},bDt=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),SDt=(t,e)=>{let r=Object.assign(Rp.getAwsRegionExtensionConfiguration(t),K.getDefaultExtensionConfiguration(t),W6.getHttpHandlerExtensionConfiguration(t),wDt(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Rp.resolveAwsRegionExtensionConfiguration(r),K.resolveDefaultRuntimeConfig(r),W6.resolveHttpHandlerRuntimeConfig(r),bDt(r))},Ma=class extends K.Client{config;constructor(...[e]){let r=CDt.getRuntimeConfig(e||{});super(r),this.initConfig=r;let n=xDt(r),s=Rp.resolveUserAgentConfig(n),o=QLe.resolveRetryConfig(s),i=yDt.resolveRegionConfig(o),a=Rp.resolveHostHeaderConfig(i),c=Ce.resolveEndpointConfig(a),l=DLe.resolveHttpAuthSchemeConfig(c),u=SDt(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(EDt.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(Rp.getUserAgentPlugin(this.config)),this.middlewareStack.use(QLe.getRetryPlugin(this.config)),this.middlewareStack.use(W6.getContentLengthPlugin(this.config)),this.middlewareStack.use(Rp.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Rp.getLoggerPlugin(this.config)),this.middlewareStack.use(Rp.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(bl.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:DLe.defaultECRHttpAuthSchemeParametersProvider,identityProviderConfigProvider:async d=>new bl.DefaultIdentityProviderConfig({"aws.auth#sigv4":d.credentials})})),this.middlewareStack.use(bl.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}},mk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchCheckLayerAvailability",{}).n("ECRClient","BatchCheckLayerAvailabilityCommand").sc(he.BatchCheckLayerAvailability$).build(){},fk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchDeleteImage",{}).n("ECRClient","BatchDeleteImageCommand").sc(he.BatchDeleteImage$).build(){},Ak=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchGetImage",{}).n("ECRClient","BatchGetImageCommand").sc(he.BatchGetImage$).build(){},hk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchGetRepositoryScanningConfiguration",{}).n("ECRClient","BatchGetRepositoryScanningConfigurationCommand").sc(he.BatchGetRepositoryScanningConfiguration$).build(){},gk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CompleteLayerUpload",{}).n("ECRClient","CompleteLayerUploadCommand").sc(he.CompleteLayerUpload$).build(){},yk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreatePullThroughCacheRule",{}).n("ECRClient","CreatePullThroughCacheRuleCommand").sc(he.CreatePullThroughCacheRule$).build(){},Ek=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreateRepository",{}).n("ECRClient","CreateRepositoryCommand").sc(he.CreateRepository$).build(){},Ck=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreateRepositoryCreationTemplate",{}).n("ECRClient","CreateRepositoryCreationTemplateCommand").sc(he.CreateRepositoryCreationTemplate$).build(){},Ik=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteLifecyclePolicy",{}).n("ECRClient","DeleteLifecyclePolicyCommand").sc(he.DeleteLifecyclePolicy$).build(){},xk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeletePullThroughCacheRule",{}).n("ECRClient","DeletePullThroughCacheRuleCommand").sc(he.DeletePullThroughCacheRule$).build(){},wk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRegistryPolicy",{}).n("ECRClient","DeleteRegistryPolicyCommand").sc(he.DeleteRegistryPolicy$).build(){},bk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepository",{}).n("ECRClient","DeleteRepositoryCommand").sc(he.DeleteRepository$).build(){},Sk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepositoryCreationTemplate",{}).n("ECRClient","DeleteRepositoryCreationTemplateCommand").sc(he.DeleteRepositoryCreationTemplate$).build(){},Bk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepositoryPolicy",{}).n("ECRClient","DeleteRepositoryPolicyCommand").sc(he.DeleteRepositoryPolicy$).build(){},Rk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteSigningConfiguration",{}).n("ECRClient","DeleteSigningConfigurationCommand").sc(he.DeleteSigningConfiguration$).build(){},Nk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeregisterPullTimeUpdateExclusion",{}).n("ECRClient","DeregisterPullTimeUpdateExclusionCommand").sc(he.DeregisterPullTimeUpdateExclusion$).build(){},Tk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageReplicationStatus",{}).n("ECRClient","DescribeImageReplicationStatusCommand").sc(he.DescribeImageReplicationStatus$).build(){},Fy=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageScanFindings",{}).n("ECRClient","DescribeImageScanFindingsCommand").sc(he.DescribeImageScanFindings$).build(){},d0=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImages",{}).n("ECRClient","DescribeImagesCommand").sc(he.DescribeImages$).build(){},Pk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageSigningStatus",{}).n("ECRClient","DescribeImageSigningStatusCommand").sc(he.DescribeImageSigningStatus$).build(){},p0=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribePullThroughCacheRules",{}).n("ECRClient","DescribePullThroughCacheRulesCommand").sc(he.DescribePullThroughCacheRules$).build(){},vk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRegistry",{}).n("ECRClient","DescribeRegistryCommand").sc(he.DescribeRegistry$).build(){},m0=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRepositories",{}).n("ECRClient","DescribeRepositoriesCommand").sc(he.DescribeRepositories$).build(){},f0=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRepositoryCreationTemplates",{}).n("ECRClient","DescribeRepositoryCreationTemplatesCommand").sc(he.DescribeRepositoryCreationTemplates$).build(){},_k=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetAccountSetting",{}).n("ECRClient","GetAccountSettingCommand").sc(he.GetAccountSetting$).build(){},Qk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetAuthorizationToken",{}).n("ECRClient","GetAuthorizationTokenCommand").sc(he.GetAuthorizationToken$).build(){},Dk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetDownloadUrlForLayer",{}).n("ECRClient","GetDownloadUrlForLayerCommand").sc(he.GetDownloadUrlForLayer$).build(){},kk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetLifecyclePolicy",{}).n("ECRClient","GetLifecyclePolicyCommand").sc(he.GetLifecyclePolicy$).build(){},Uy=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetLifecyclePolicyPreview",{}).n("ECRClient","GetLifecyclePolicyPreviewCommand").sc(he.GetLifecyclePolicyPreview$).build(){},Lk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRegistryPolicy",{}).n("ECRClient","GetRegistryPolicyCommand").sc(he.GetRegistryPolicy$).build(){},Ok=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRegistryScanningConfiguration",{}).n("ECRClient","GetRegistryScanningConfigurationCommand").sc(he.GetRegistryScanningConfiguration$).build(){},Mk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRepositoryPolicy",{}).n("ECRClient","GetRepositoryPolicyCommand").sc(he.GetRepositoryPolicy$).build(){},Fk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetSigningConfiguration",{}).n("ECRClient","GetSigningConfigurationCommand").sc(he.GetSigningConfiguration$).build(){},Uk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","InitiateLayerUpload",{}).n("ECRClient","InitiateLayerUploadCommand").sc(he.InitiateLayerUpload$).build(){},qk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListImageReferrers",{}).n("ECRClient","ListImageReferrersCommand").sc(he.ListImageReferrers$).build(){},A0=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListImages",{}).n("ECRClient","ListImagesCommand").sc(he.ListImages$).build(){},$k=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListPullTimeUpdateExclusions",{}).n("ECRClient","ListPullTimeUpdateExclusionsCommand").sc(he.ListPullTimeUpdateExclusions$).build(){},Gk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListTagsForResource",{}).n("ECRClient","ListTagsForResourceCommand").sc(he.ListTagsForResource$).build(){},Hk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutAccountSetting",{}).n("ECRClient","PutAccountSettingCommand").sc(he.PutAccountSetting$).build(){},zk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImage",{}).n("ECRClient","PutImageCommand").sc(he.PutImage$).build(){},Vk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImageScanningConfiguration",{}).n("ECRClient","PutImageScanningConfigurationCommand").sc(he.PutImageScanningConfiguration$).build(){},Yk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImageTagMutability",{}).n("ECRClient","PutImageTagMutabilityCommand").sc(he.PutImageTagMutability$).build(){},Wk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutLifecyclePolicy",{}).n("ECRClient","PutLifecyclePolicyCommand").sc(he.PutLifecyclePolicy$).build(){},jk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutRegistryPolicy",{}).n("ECRClient","PutRegistryPolicyCommand").sc(he.PutRegistryPolicy$).build(){},Jk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutRegistryScanningConfiguration",{}).n("ECRClient","PutRegistryScanningConfigurationCommand").sc(he.PutRegistryScanningConfiguration$).build(){},Kk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutReplicationConfiguration",{}).n("ECRClient","PutReplicationConfigurationCommand").sc(he.PutReplicationConfiguration$).build(){},Xk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutSigningConfiguration",{}).n("ECRClient","PutSigningConfigurationCommand").sc(he.PutSigningConfiguration$).build(){},Zk=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","RegisterPullTimeUpdateExclusion",{}).n("ECRClient","RegisterPullTimeUpdateExclusionCommand").sc(he.RegisterPullTimeUpdateExclusion$).build(){},eL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","SetRepositoryPolicy",{}).n("ECRClient","SetRepositoryPolicyCommand").sc(he.SetRepositoryPolicy$).build(){},tL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","StartImageScan",{}).n("ECRClient","StartImageScanCommand").sc(he.StartImageScan$).build(){},rL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","StartLifecyclePolicyPreview",{}).n("ECRClient","StartLifecyclePolicyPreviewCommand").sc(he.StartLifecyclePolicyPreview$).build(){},nL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","TagResource",{}).n("ECRClient","TagResourceCommand").sc(he.TagResource$).build(){},sL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UntagResource",{}).n("ECRClient","UntagResourceCommand").sc(he.UntagResource$).build(){},oL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdateImageStorageClass",{}).n("ECRClient","UpdateImageStorageClassCommand").sc(he.UpdateImageStorageClass$).build(){},iL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdatePullThroughCacheRule",{}).n("ECRClient","UpdatePullThroughCacheRuleCommand").sc(he.UpdatePullThroughCacheRule$).build(){},aL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdateRepositoryCreationTemplate",{}).n("ECRClient","UpdateRepositoryCreationTemplateCommand").sc(he.UpdateRepositoryCreationTemplate$).build(){},cL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UploadLayerPart",{}).n("ECRClient","UploadLayerPartCommand").sc(he.UploadLayerPart$).build(){},lL=class extends K.Command.classBuilder().ep(Ie).m(function(e,r,n,s){return[Ce.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ValidatePullThroughCacheRule",{}).n("ECRClient","ValidatePullThroughCacheRuleCommand").sc(he.ValidatePullThroughCacheRule$).build(){},kLe=bl.createPaginator(Ma,Fy,"nextToken","nextToken","maxResults"),LLe=bl.createPaginator(Ma,d0,"nextToken","nextToken","maxResults"),OLe=bl.createPaginator(Ma,p0,"nextToken","nextToken","maxResults"),MLe=bl.createPaginator(Ma,m0,"nextToken","nextToken","maxResults"),FLe=bl.createPaginator(Ma,f0,"nextToken","nextToken","maxResults"),ULe=bl.createPaginator(Ma,Uy,"nextToken","nextToken","maxResults"),qLe=bl.createPaginator(Ma,A0,"nextToken","nextToken","maxResults"),$Le=async(t,e)=>{let r;try{let n=await t.send(new Fy(e));r=n;try{if(n.imageScanStatus.status==="COMPLETE")return{state:K.WaiterState.SUCCESS,reason:r}}catch{}try{if(n.imageScanStatus.status==="FAILED")return{state:K.WaiterState.FAILURE,reason:r}}catch{}}catch(n){r=n}return{state:K.WaiterState.RETRY,reason:r}},BDt=async(t,e)=>{let r={minDelay:5,maxDelay:120};return K.createWaiter({...r,...t},e,$Le)},GLe=async(t,e)=>{let r={minDelay:5,maxDelay:120},n=await K.createWaiter({...r,...t},e,$Le);return K.checkExceptions(n)},HLe=async(t,e)=>{let r;try{let n=await t.send(new Uy(e));r=n;try{if(n.status==="COMPLETE")return{state:K.WaiterState.SUCCESS,reason:r}}catch{}try{if(n.status==="FAILED")return{state:K.WaiterState.FAILURE,reason:r}}catch{}}catch(n){r=n}return{state:K.WaiterState.RETRY,reason:r}},RDt=async(t,e)=>{let r={minDelay:5,maxDelay:120};return K.createWaiter({...r,...t},e,HLe)},zLe=async(t,e)=>{let r={minDelay:5,maxDelay:120},n=await K.createWaiter({...r,...t},e,HLe);return K.checkExceptions(n)},NDt={BatchCheckLayerAvailabilityCommand:mk,BatchDeleteImageCommand:fk,BatchGetImageCommand:Ak,BatchGetRepositoryScanningConfigurationCommand:hk,CompleteLayerUploadCommand:gk,CreatePullThroughCacheRuleCommand:yk,CreateRepositoryCommand:Ek,CreateRepositoryCreationTemplateCommand:Ck,DeleteLifecyclePolicyCommand:Ik,DeletePullThroughCacheRuleCommand:xk,DeleteRegistryPolicyCommand:wk,DeleteRepositoryCommand:bk,DeleteRepositoryCreationTemplateCommand:Sk,DeleteRepositoryPolicyCommand:Bk,DeleteSigningConfigurationCommand:Rk,DeregisterPullTimeUpdateExclusionCommand:Nk,DescribeImageReplicationStatusCommand:Tk,DescribeImagesCommand:d0,DescribeImageScanFindingsCommand:Fy,DescribeImageSigningStatusCommand:Pk,DescribePullThroughCacheRulesCommand:p0,DescribeRegistryCommand:vk,DescribeRepositoriesCommand:m0,DescribeRepositoryCreationTemplatesCommand:f0,GetAccountSettingCommand:_k,GetAuthorizationTokenCommand:Qk,GetDownloadUrlForLayerCommand:Dk,GetLifecyclePolicyCommand:kk,GetLifecyclePolicyPreviewCommand:Uy,GetRegistryPolicyCommand:Lk,GetRegistryScanningConfigurationCommand:Ok,GetRepositoryPolicyCommand:Mk,GetSigningConfigurationCommand:Fk,InitiateLayerUploadCommand:Uk,ListImageReferrersCommand:qk,ListImagesCommand:A0,ListPullTimeUpdateExclusionsCommand:$k,ListTagsForResourceCommand:Gk,PutAccountSettingCommand:Hk,PutImageCommand:zk,PutImageScanningConfigurationCommand:Vk,PutImageTagMutabilityCommand:Yk,PutLifecyclePolicyCommand:Wk,PutRegistryPolicyCommand:jk,PutRegistryScanningConfigurationCommand:Jk,PutReplicationConfigurationCommand:Kk,PutSigningConfigurationCommand:Xk,RegisterPullTimeUpdateExclusionCommand:Zk,SetRepositoryPolicyCommand:eL,StartImageScanCommand:tL,StartLifecyclePolicyPreviewCommand:rL,TagResourceCommand:nL,UntagResourceCommand:sL,UpdateImageStorageClassCommand:oL,UpdatePullThroughCacheRuleCommand:iL,UpdateRepositoryCreationTemplateCommand:aL,UploadLayerPartCommand:cL,ValidatePullThroughCacheRuleCommand:lL},TDt={paginateDescribeImages:LLe,paginateDescribeImageScanFindings:kLe,paginateDescribePullThroughCacheRules:OLe,paginateDescribeRepositories:MLe,paginateDescribeRepositoryCreationTemplates:FLe,paginateGetLifecyclePolicyPreview:ULe,paginateListImages:qLe},PDt={waitUntilImageScanComplete:GLe,waitUntilLifecyclePolicyPreviewComplete:zLe},uL=class extends Ma{};K.createAggregatedClient(NDt,uL,{paginators:TDt,waiters:PDt});var vDt={InvalidLayerDigest:"InvalidLayerDigest",MissingLayerDigest:"MissingLayerDigest"},_Dt={ARCHIVED:"ARCHIVED",AVAILABLE:"AVAILABLE",UNAVAILABLE:"UNAVAILABLE"},QDt={ImageInaccessible:"ImageInaccessible",ImageNotFound:"ImageNotFound",ImageReferencedByManifestList:"ImageReferencedByManifestList",ImageTagDoesNotMatchDigest:"ImageTagDoesNotMatchDigest",InvalidImageDigest:"InvalidImageDigest",InvalidImageTag:"InvalidImageTag",KmsError:"KmsError",MissingDigestAndTag:"MissingDigestAndTag",UpstreamAccessDenied:"UpstreamAccessDenied",UpstreamTooManyRequests:"UpstreamTooManyRequests",UpstreamUnavailable:"UpstreamUnavailable"},DDt={REPOSITORY_NOT_FOUND:"REPOSITORY_NOT_FOUND"},kDt={WILDCARD:"WILDCARD"},LDt={CONTINUOUS_SCAN:"CONTINUOUS_SCAN",MANUAL:"MANUAL",SCAN_ON_PUSH:"SCAN_ON_PUSH"},ODt={AzureContainerRegistry:"azure-container-registry",Chainguard:"chainguard",DockerHub:"docker-hub",Ecr:"ecr",EcrPublic:"ecr-public",GitHubContainerRegistry:"github-container-registry",GitLabContainerRegistry:"gitlab-container-registry",K8s:"k8s",Quay:"quay"},MDt={AES256:"AES256",KMS:"KMS",KMS_DSSE:"KMS_DSSE"},FDt={IMMUTABLE:"IMMUTABLE",IMMUTABLE_WITH_EXCLUSION:"IMMUTABLE_WITH_EXCLUSION",MUTABLE:"MUTABLE",MUTABLE_WITH_EXCLUSION:"MUTABLE_WITH_EXCLUSION"},UDt={WILDCARD:"WILDCARD"},qDt={CREATE_ON_PUSH:"CREATE_ON_PUSH",PULL_THROUGH_CACHE:"PULL_THROUGH_CACHE",REPLICATION:"REPLICATION"},$Dt={WILDCARD_MATCH:"WILDCARD_MATCH"},GDt={COMPLETE:"COMPLETE",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},HDt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ANY:"ANY",ARCHIVED:"ARCHIVED"},zDt={ANY:"ANY",TAGGED:"TAGGED",UNTAGGED:"UNTAGGED"},VDt={CRITICAL:"CRITICAL",HIGH:"HIGH",INFORMATIONAL:"INFORMATIONAL",LOW:"LOW",MEDIUM:"MEDIUM",UNDEFINED:"UNDEFINED"},YDt={ACTIVE:"ACTIVE",COMPLETE:"COMPLETE",FAILED:"FAILED",FINDINGS_UNAVAILABLE:"FINDINGS_UNAVAILABLE",IMAGE_ARCHIVED:"IMAGE_ARCHIVED",IN_PROGRESS:"IN_PROGRESS",LIMIT_EXCEEDED:"LIMIT_EXCEEDED",PENDING:"PENDING",SCAN_ELIGIBILITY_EXPIRED:"SCAN_ELIGIBILITY_EXPIRED",UNSUPPORTED_IMAGE:"UNSUPPORTED_IMAGE"},WDt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ARCHIVED:"ARCHIVED"},jDt={COMPLETE:"COMPLETE",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},JDt={PREFIX_MATCH:"PREFIX_MATCH"},KDt={ARCHIVE:"ARCHIVE"},XDt={EXPIRE:"EXPIRE",TRANSITION:"TRANSITION"},ZDt={ARCHIVE:"ARCHIVE",STANDARD:"STANDARD"},ekt={COMPLETE:"COMPLETE",EXPIRED:"EXPIRED",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},tkt={BASIC:"BASIC",ENHANCED:"ENHANCED"},rkt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ANY:"ANY",ARCHIVED:"ARCHIVED"},nkt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ARCHIVED:"ARCHIVED"},skt={ARCHIVE:"ARCHIVE",STANDARD:"STANDARD"};q.$Command=K.Command;q.__Client=K.Client;q.ECRServiceException=IDt.ECRServiceException;q.ArtifactStatus=nkt;q.ArtifactStatusFilter=rkt;q.BatchCheckLayerAvailabilityCommand=mk;q.BatchDeleteImageCommand=fk;q.BatchGetImageCommand=Ak;q.BatchGetRepositoryScanningConfigurationCommand=hk;q.CompleteLayerUploadCommand=gk;q.CreatePullThroughCacheRuleCommand=yk;q.CreateRepositoryCommand=Ek;q.CreateRepositoryCreationTemplateCommand=Ck;q.DeleteLifecyclePolicyCommand=Ik;q.DeletePullThroughCacheRuleCommand=xk;q.DeleteRegistryPolicyCommand=wk;q.DeleteRepositoryCommand=bk;q.DeleteRepositoryCreationTemplateCommand=Sk;q.DeleteRepositoryPolicyCommand=Bk;q.DeleteSigningConfigurationCommand=Rk;q.DeregisterPullTimeUpdateExclusionCommand=Nk;q.DescribeImageReplicationStatusCommand=Tk;q.DescribeImageScanFindingsCommand=Fy;q.DescribeImageSigningStatusCommand=Pk;q.DescribeImagesCommand=d0;q.DescribePullThroughCacheRulesCommand=p0;q.DescribeRegistryCommand=vk;q.DescribeRepositoriesCommand=m0;q.DescribeRepositoryCreationTemplatesCommand=f0;q.ECR=uL;q.ECRClient=Ma;q.EncryptionType=MDt;q.FindingSeverity=VDt;q.GetAccountSettingCommand=_k;q.GetAuthorizationTokenCommand=Qk;q.GetDownloadUrlForLayerCommand=Dk;q.GetLifecyclePolicyCommand=kk;q.GetLifecyclePolicyPreviewCommand=Uy;q.GetRegistryPolicyCommand=Lk;q.GetRegistryScanningConfigurationCommand=Ok;q.GetRepositoryPolicyCommand=Mk;q.GetSigningConfigurationCommand=Fk;q.ImageActionType=XDt;q.ImageFailureCode=QDt;q.ImageStatus=WDt;q.ImageStatusFilter=HDt;q.ImageTagMutability=FDt;q.ImageTagMutabilityExclusionFilterType=UDt;q.InitiateLayerUploadCommand=Uk;q.LayerAvailability=_Dt;q.LayerFailureCode=vDt;q.LifecyclePolicyPreviewStatus=ekt;q.LifecyclePolicyStorageClass=ZDt;q.LifecyclePolicyTargetStorageClass=KDt;q.ListImageReferrersCommand=qk;q.ListImagesCommand=A0;q.ListPullTimeUpdateExclusionsCommand=$k;q.ListTagsForResourceCommand=Gk;q.PutAccountSettingCommand=Hk;q.PutImageCommand=zk;q.PutImageScanningConfigurationCommand=Vk;q.PutImageTagMutabilityCommand=Yk;q.PutLifecyclePolicyCommand=Wk;q.PutRegistryPolicyCommand=jk;q.PutRegistryScanningConfigurationCommand=Jk;q.PutReplicationConfigurationCommand=Kk;q.PutSigningConfigurationCommand=Xk;q.RCTAppliedFor=qDt;q.RegisterPullTimeUpdateExclusionCommand=Zk;q.ReplicationStatus=GDt;q.RepositoryFilterType=JDt;q.ScanFrequency=LDt;q.ScanStatus=YDt;q.ScanType=tkt;q.ScanningConfigurationFailureCode=DDt;q.ScanningRepositoryFilterType=kDt;q.SetRepositoryPolicyCommand=eL;q.SigningRepositoryFilterType=$Dt;q.SigningStatus=jDt;q.StartImageScanCommand=tL;q.StartLifecyclePolicyPreviewCommand=rL;q.TagResourceCommand=nL;q.TagStatus=zDt;q.TargetStorageClass=skt;q.UntagResourceCommand=sL;q.UpdateImageStorageClassCommand=oL;q.UpdatePullThroughCacheRuleCommand=iL;q.UpdateRepositoryCreationTemplateCommand=aL;q.UploadLayerPartCommand=cL;q.UpstreamRegistry=ODt;q.ValidatePullThroughCacheRuleCommand=lL;q.paginateDescribeImageScanFindings=kLe;q.paginateDescribeImages=LLe;q.paginateDescribePullThroughCacheRules=OLe;q.paginateDescribeRepositories=MLe;q.paginateDescribeRepositoryCreationTemplates=FLe;q.paginateGetLifecyclePolicyPreview=ULe;q.paginateListImages=qLe;q.waitForImageScanComplete=BDt;q.waitForLifecyclePolicyPreviewComplete=RDt;q.waitUntilImageScanComplete=GLe;q.waitUntilLifecyclePolicyPreviewComplete=zLe;Object.prototype.hasOwnProperty.call(he,"__proto__")&&!Object.prototype.hasOwnProperty.call(q,"__proto__")&&Object.defineProperty(q,"__proto__",{enumerable:!0,value:he.__proto__});Object.keys(he).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(q,t)&&(q[t]=he[t])});Object.prototype.hasOwnProperty.call(pk,"__proto__")&&!Object.prototype.hasOwnProperty.call(q,"__proto__")&&Object.defineProperty(q,"__proto__",{enumerable:!0,value:pk.__proto__});Object.keys(pk).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(q,t)&&(q[t]=pk[t])})});var J6=w(Np=>{"use strict";Object.defineProperty(Np,"__esModule",{value:!0});Np.resolveHttpAuthSchemeConfig=Np.defaultECRPUBLICHttpAuthSchemeProvider=Np.defaultECRPUBLICHttpAuthSchemeParametersProvider=void 0;var okt=(Kr(),Y(lp)),j6=(Ee(),Y(Fi)),ikt=async(t,e,r)=>({operation:(0,j6.getSmithyContext)(e).operation,region:await(0,j6.normalizeProvider)(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()});Np.defaultECRPUBLICHttpAuthSchemeParametersProvider=ikt;function akt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr-public",region:t.region},propertiesExtractor:(e,r)=>({signingProperties:{config:e,context:r}})}}var ckt=t=>{let e=[];switch(t.operation){default:e.push(akt(t))}return e};Np.defaultECRPUBLICHttpAuthSchemeProvider=ckt;var lkt=t=>{let e=(0,okt.resolveAwsSdkSigV4Config)(t);return Object.assign(e,{authSchemePreference:(0,j6.normalizeProvider)(t.authSchemePreference??[])})};Np.resolveHttpAuthSchemeConfig=lkt});var YLe=w((ITr,ukt)=>{ukt.exports={name:"@aws-sdk/client-ecr-public",description:"AWS SDK for JavaScript Ecr Public Client for Node.js, Browser and React Native",version:"3.1052.0",scripts:{build:"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline client-ecr-public","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo ecr-public","test:index":"tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/credential-provider-node":"^3.972.44","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node20":"20.1.8","@types/node":"^20.14.8",concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},engines:{node:">=20.0.0"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ecr-public",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-ecr-public"}}});var ZLe=w(mL=>{"use strict";Object.defineProperty(mL,"__esModule",{value:!0});mL.bdd=void 0;var dkt=(It(),Y(uf)),h0="ref",Kf=-1,dL=!0,WLe="isSet",XLe="PartitionResult",pL="booleanEquals",K6="getAttr",jLe={[h0]:"Endpoint"},X6={[h0]:XLe},qy={},JLe=[{[h0]:"Region"}],KLe={conditions:[[WLe,[jLe]],[WLe,JLe],["aws.partition",JLe,XLe],[pL,[{[h0]:"UseFIPS"},dL]],[pL,[{[h0]:"UseDualStack"},dL]],[pL,[{fn:K6,argv:[X6,"supportsDualStack"]},dL]],[pL,[{fn:K6,argv:[X6,"supportsFIPS"]},dL]],["stringEquals",[{fn:K6,argv:[X6,"name"]},"aws"]]],results:[[Kf],[Kf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Kf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[jLe,qy],["https://api.ecr-public-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",qy],[Kf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://api.ecr-public-fips.{Region}.{PartitionResult#dnsSuffix}",qy],[Kf,"FIPS is enabled but this partition does not support FIPS"],["https://ecr-public.{Region}.api.aws",qy],["https://api.ecr-public.{Region}.{PartitionResult#dualStackDnsSuffix}",qy],[Kf,"DualStack is enabled but this partition does not support DualStack"],["https://api.ecr-public.{Region}.{PartitionResult#dnsSuffix}",qy],[Kf,"Invalid Configuration: Missing Region"]]},pkt=2,fo=1e8,mkt=new Int32Array([-1,1,-1,0,13,3,1,4,fo+12,2,5,fo+12,3,9,6,4,7,fo+11,5,8,fo+10,7,fo+8,fo+9,4,11,10,6,fo+6,fo+7,5,12,fo+5,6,fo+4,fo+5,3,fo+1,14,4,fo+2,fo+3]);mL.bdd=dkt.BinaryDecisionDiagram.from(mkt,pkt,KLe.conditions,KLe.results)});var eOe=w(fL=>{"use strict";Object.defineProperty(fL,"__esModule",{value:!0});fL.defaultEndpointResolver=void 0;var fkt=(xt(),Y(Qs)),Z6=(It(),Y(uf)),Akt=ZLe(),hkt=new Z6.EndpointCache({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),gkt=(t,e={})=>hkt.get(t,()=>(0,Z6.decideEndpoint)(Akt.bdd,{endpointParams:t,logger:e.logger}));fL.defaultEndpointResolver=gkt;Z6.customEndpointFunctions.aws=fkt.awsEndpointFunctions});var AL=w($y=>{"use strict";Object.defineProperty($y,"__esModule",{value:!0});$y.ECRPUBLICServiceException=$y.__ServiceException=void 0;var tOe=(Ee(),Y(Fi));Object.defineProperty($y,"__ServiceException",{enumerable:!0,get:function(){return tOe.ServiceException}});var e9=class t extends tOe.ServiceException{constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}};$y.ECRPUBLICServiceException=e9});var S9=w(Oe=>{"use strict";Object.defineProperty(Oe,"__esModule",{value:!0});Oe.ReferencedImagesNotFoundException=Oe.LayersNotFoundException=Oe.InvalidLayerPartException=Oe.ImageTagAlreadyExistsException=Oe.ImageDigestDoesNotMatchException=Oe.ImageAlreadyExistsException=Oe.RepositoryCatalogDataNotFoundException=Oe.ImageNotFoundException=Oe.RepositoryPolicyNotFoundException=Oe.RepositoryNotEmptyException=Oe.TooManyTagsException=Oe.RepositoryAlreadyExistsException=Oe.LimitExceededException=Oe.InvalidTagParameterException=Oe.UploadNotFoundException=Oe.LayerPartTooSmallException=Oe.LayerAlreadyExistsException=Oe.InvalidLayerException=Oe.EmptyUploadException=Oe.UnsupportedCommandException=Oe.ServerException=Oe.RepositoryNotFoundException=Oe.RegistryNotFoundException=Oe.InvalidParameterException=void 0;var ir=AL(),t9=class t extends ir.ECRPUBLICServiceException{name="InvalidParameterException";$fault="client";constructor(e){super({name:"InvalidParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.InvalidParameterException=t9;var r9=class t extends ir.ECRPUBLICServiceException{name="RegistryNotFoundException";$fault="client";constructor(e){super({name:"RegistryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RegistryNotFoundException=r9;var n9=class t extends ir.ECRPUBLICServiceException{name="RepositoryNotFoundException";$fault="client";constructor(e){super({name:"RepositoryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RepositoryNotFoundException=n9;var s9=class t extends ir.ECRPUBLICServiceException{name="ServerException";$fault="server";constructor(e){super({name:"ServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ServerException=s9;var o9=class t extends ir.ECRPUBLICServiceException{name="UnsupportedCommandException";$fault="client";constructor(e){super({name:"UnsupportedCommandException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.UnsupportedCommandException=o9;var i9=class t extends ir.ECRPUBLICServiceException{name="EmptyUploadException";$fault="client";constructor(e){super({name:"EmptyUploadException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.EmptyUploadException=i9;var a9=class t extends ir.ECRPUBLICServiceException{name="InvalidLayerException";$fault="client";constructor(e){super({name:"InvalidLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.InvalidLayerException=a9;var c9=class t extends ir.ECRPUBLICServiceException{name="LayerAlreadyExistsException";$fault="client";constructor(e){super({name:"LayerAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.LayerAlreadyExistsException=c9;var l9=class t extends ir.ECRPUBLICServiceException{name="LayerPartTooSmallException";$fault="client";constructor(e){super({name:"LayerPartTooSmallException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.LayerPartTooSmallException=l9;var u9=class t extends ir.ECRPUBLICServiceException{name="UploadNotFoundException";$fault="client";constructor(e){super({name:"UploadNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.UploadNotFoundException=u9;var d9=class t extends ir.ECRPUBLICServiceException{name="InvalidTagParameterException";$fault="client";constructor(e){super({name:"InvalidTagParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.InvalidTagParameterException=d9;var p9=class t extends ir.ECRPUBLICServiceException{name="LimitExceededException";$fault="client";constructor(e){super({name:"LimitExceededException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.LimitExceededException=p9;var m9=class t extends ir.ECRPUBLICServiceException{name="RepositoryAlreadyExistsException";$fault="client";constructor(e){super({name:"RepositoryAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RepositoryAlreadyExistsException=m9;var f9=class t extends ir.ECRPUBLICServiceException{name="TooManyTagsException";$fault="client";constructor(e){super({name:"TooManyTagsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.TooManyTagsException=f9;var A9=class t extends ir.ECRPUBLICServiceException{name="RepositoryNotEmptyException";$fault="client";constructor(e){super({name:"RepositoryNotEmptyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RepositoryNotEmptyException=A9;var h9=class t extends ir.ECRPUBLICServiceException{name="RepositoryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RepositoryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RepositoryPolicyNotFoundException=h9;var g9=class t extends ir.ECRPUBLICServiceException{name="ImageNotFoundException";$fault="client";constructor(e){super({name:"ImageNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ImageNotFoundException=g9;var y9=class t extends ir.ECRPUBLICServiceException{name="RepositoryCatalogDataNotFoundException";$fault="client";constructor(e){super({name:"RepositoryCatalogDataNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.RepositoryCatalogDataNotFoundException=y9;var E9=class t extends ir.ECRPUBLICServiceException{name="ImageAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ImageAlreadyExistsException=E9;var C9=class t extends ir.ECRPUBLICServiceException{name="ImageDigestDoesNotMatchException";$fault="client";constructor(e){super({name:"ImageDigestDoesNotMatchException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ImageDigestDoesNotMatchException=C9;var I9=class t extends ir.ECRPUBLICServiceException{name="ImageTagAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageTagAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ImageTagAlreadyExistsException=I9;var x9=class t extends ir.ECRPUBLICServiceException{name="InvalidLayerPartException";$fault="client";registryId;repositoryName;uploadId;lastValidByteReceived;constructor(e){super({name:"InvalidLayerPartException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.registryId=e.registryId,this.repositoryName=e.repositoryName,this.uploadId=e.uploadId,this.lastValidByteReceived=e.lastValidByteReceived}};Oe.InvalidLayerPartException=x9;var w9=class t extends ir.ECRPUBLICServiceException{name="LayersNotFoundException";$fault="client";constructor(e){super({name:"LayersNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.LayersNotFoundException=w9;var b9=class t extends ir.ECRPUBLICServiceException{name="ReferencedImagesNotFoundException";$fault="client";constructor(e){super({name:"ReferencedImagesNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Oe.ReferencedImagesNotFoundException=b9});var Q9=w(B=>{"use strict";Object.defineProperty(B,"__esModule",{value:!0});B.GetRegistryCatalogDataRequest$=B.GetAuthorizationTokenResponse$=B.GetAuthorizationTokenRequest$=B.DescribeRepositoriesResponse$=B.DescribeRepositoriesRequest$=B.DescribeRegistriesResponse$=B.DescribeRegistriesRequest$=B.DescribeImageTagsResponse$=B.DescribeImageTagsRequest$=B.DescribeImagesResponse$=B.DescribeImagesRequest$=B.DeleteRepositoryResponse$=B.DeleteRepositoryRequest$=B.DeleteRepositoryPolicyResponse$=B.DeleteRepositoryPolicyRequest$=B.CreateRepositoryResponse$=B.CreateRepositoryRequest$=B.CompleteLayerUploadResponse$=B.CompleteLayerUploadRequest$=B.BatchDeleteImageResponse$=B.BatchDeleteImageRequest$=B.BatchCheckLayerAvailabilityResponse$=B.BatchCheckLayerAvailabilityRequest$=B.AuthorizationData$=B.errorTypeRegistries=B.UploadNotFoundException$=B.UnsupportedCommandException$=B.TooManyTagsException$=B.ServerException$=B.RepositoryPolicyNotFoundException$=B.RepositoryNotFoundException$=B.RepositoryNotEmptyException$=B.RepositoryCatalogDataNotFoundException$=B.RepositoryAlreadyExistsException$=B.RegistryNotFoundException$=B.ReferencedImagesNotFoundException$=B.LimitExceededException$=B.LayersNotFoundException$=B.LayerPartTooSmallException$=B.LayerAlreadyExistsException$=B.InvalidTagParameterException$=B.InvalidParameterException$=B.InvalidLayerPartException$=B.InvalidLayerException$=B.ImageTagAlreadyExistsException$=B.ImageNotFoundException$=B.ImageDigestDoesNotMatchException$=B.ImageAlreadyExistsException$=B.EmptyUploadException$=B.ECRPUBLICServiceException$=void 0;B.GetRegistryCatalogData$=B.GetAuthorizationToken$=B.DescribeRepositories$=B.DescribeRegistries$=B.DescribeImageTags$=B.DescribeImages$=B.DeleteRepositoryPolicy$=B.DeleteRepository$=B.CreateRepository$=B.CompleteLayerUpload$=B.BatchDeleteImage$=B.BatchCheckLayerAvailability$=B.UploadLayerPartResponse$=B.UploadLayerPartRequest$=B.UntagResourceResponse$=B.UntagResourceRequest$=B.TagResourceResponse$=B.TagResourceRequest$=B.Tag$=B.SetRepositoryPolicyResponse$=B.SetRepositoryPolicyRequest$=B.RepositoryCatalogDataInput$=B.RepositoryCatalogData$=B.Repository$=B.RegistryCatalogData$=B.RegistryAlias$=B.Registry$=B.ReferencedImageDetail$=B.PutRepositoryCatalogDataResponse$=B.PutRepositoryCatalogDataRequest$=B.PutRegistryCatalogDataResponse$=B.PutRegistryCatalogDataRequest$=B.PutImageResponse$=B.PutImageRequest$=B.ListTagsForResourceResponse$=B.ListTagsForResourceRequest$=B.LayerFailure$=B.Layer$=B.InitiateLayerUploadResponse$=B.InitiateLayerUploadRequest$=B.ImageTagDetail$=B.ImageIdentifier$=B.ImageFailure$=B.ImageDetail$=B.Image$=B.GetRepositoryPolicyResponse$=B.GetRepositoryPolicyRequest$=B.GetRepositoryCatalogDataResponse$=B.GetRepositoryCatalogDataRequest$=B.GetRegistryCatalogDataResponse$=void 0;B.UploadLayerPart$=B.UntagResource$=B.TagResource$=B.SetRepositoryPolicy$=B.PutRepositoryCatalogData$=B.PutRegistryCatalogData$=B.PutImage$=B.ListTagsForResource$=B.InitiateLayerUpload$=B.GetRepositoryPolicy$=B.GetRepositoryCatalogData$=void 0;var ykt="AuthorizationData",Ekt="BatchCheckLayerAvailability",Ckt="BatchCheckLayerAvailabilityRequest",Ikt="BatchCheckLayerAvailabilityResponse",xkt="BatchDeleteImage",wkt="BatchDeleteImageRequest",bkt="BatchDeleteImageResponse",Skt="CompleteLayerUpload",Bkt="CompleteLayerUploadRequest",Rkt="CompleteLayerUploadResponse",Nkt="CreateRepository",Tkt="CreateRepositoryRequest",Pkt="CreateRepositoryResponse",vkt="DescribeImages",_kt="DescribeImagesRequest",Qkt="DescribeImagesResponse",Dkt="DescribeImageTags",kkt="DescribeImageTagsRequest",Lkt="DescribeImageTagsResponse",Okt="DeleteRepository",Mkt="DeleteRepositoryPolicy",Fkt="DeleteRepositoryPolicyRequest",Ukt="DeleteRepositoryPolicyResponse",qkt="DeleteRepositoryRequest",$kt="DeleteRepositoryResponse",Gkt="DescribeRegistriesRequest",Hkt="DescribeRegistriesResponse",zkt="DescribeRepositoriesRequest",Vkt="DescribeRepositoriesResponse",Ykt="DescribeRegistries",Wkt="DescribeRepositories",jkt="EmptyUploadException",Jkt="GetAuthorizationToken",Kkt="GetAuthorizationTokenRequest",Xkt="GetAuthorizationTokenResponse",Zkt="GetRegistryCatalogData",eLt="GetRegistryCatalogDataRequest",tLt="GetRegistryCatalogDataResponse",rLt="GetRepositoryCatalogDataRequest",nLt="GetRepositoryCatalogDataResponse",sLt="GetRepositoryCatalogData",oLt="GetRepositoryPolicy",iLt="GetRepositoryPolicyRequest",aLt="GetRepositoryPolicyResponse",cLt="Image",lLt="ImageAlreadyExistsException",uLt="ImageDetail",dLt="ImageDigestDoesNotMatchException",pLt="ImageDetailList",mLt="ImageFailure",fLt="ImageFailureList",ALt="ImageIdentifier",hLt="ImageIdentifierList",gLt="InvalidLayerException",yLt="InvalidLayerPartException",ELt="InitiateLayerUpload",CLt="InitiateLayerUploadRequest",ILt="InitiateLayerUploadResponse",xLt="ImageNotFoundException",wLt="InvalidParameterException",bLt="ImageTagAlreadyExistsException",SLt="ImageTagDetail",BLt="ImageTagDetailList",RLt="InvalidTagParameterException",NLt="Key",TLt="Layer",PLt="LayerAlreadyExistsException",vLt="LimitExceededException",_Lt="LayerFailure",QLt="LayerFailureList",DLt="LayerList",kLt="LayersNotFoundException",LLt="LayerPartTooSmallException",OLt="ListTagsForResource",MLt="ListTagsForResourceRequest",FLt="ListTagsForResourceResponse",ULt="PutImage",qLt="PutImageRequest",$Lt="PutImageResponse",GLt="PutRegistryCatalogData",HLt="PutRegistryCatalogDataRequest",zLt="PutRegistryCatalogDataResponse",VLt="PutRepositoryCatalogDataRequest",YLt="PutRepositoryCatalogDataResponse",WLt="PutRepositoryCatalogData",jLt="Registry",JLt="RegistryAlias",KLt="RepositoryAlreadyExistsException",XLt="RegistryAliasList",ZLt="RegistryCatalogData",eOt="RepositoryCatalogDataInput",tOt="RepositoryCatalogDataNotFoundException",rOt="RepositoryCatalogData",nOt="ReferencedImageDetail",sOt="ReferencedImagesNotFoundException",oOt="RegistryList",iOt="RepositoryList",aOt="RepositoryNotEmptyException",cOt="RegistryNotFoundException",lOt="RepositoryNotFoundException",uOt="RepositoryPolicyNotFoundException",dOt="Repository",pOt="ServerException",mOt="SetRepositoryPolicy",fOt="SetRepositoryPolicyRequest",AOt="SetRepositoryPolicyResponse",hOt="Tag",gOt="TagList",yOt="TooManyTagsException",EOt="TagResource",COt="TagResourceRequest",IOt="TagResourceResponse",xOt="UnsupportedCommandException",wOt="UploadLayerPart",bOt="UploadLayerPartRequest",SOt="UploadLayerPartResponse",BOt="UploadNotFoundException",ROt="UntagResource",NOt="UntagResourceRequest",TOt="UntagResourceResponse",POt="Value",vOt="aliases",_Ot="authorizationData",rOe="artifactMediaType",QOt="authorizationToken",nOe="aboutText",sOe="architectures",gr="client",oOe="createdAt",g0="catalogData",iOe="description",aOe="displayName",DOt="defaultRegistryAlias",ar="error",kOt="expiresAt",cOe="failures",lOe="failureCode",uOe="failureReason",dOe="force",LOt="image",OOt="imageDetails",hL="imageDigest",MOt="imageDetail",B9="imageIds",pOe="imageId",mOe="imageManifest",gL="imageManifestMediaType",fOe="imagePushedAt",AOe="imageSizeInBytes",FOt="imageTags",UOt="imageTagDetails",R9="imageTag",qOt="layers",$Ot="layerAvailability",GOt="lastByteReceived",hOe="layerDigests",N9="layerDigest",HOt="logoImageBlob",zOt="layerPartBlob",VOt="layerSize",YOt="logoUrl",WOt="lastValidByteReceived",cr="message",jOt="marketplaceCertified",yL="maxResults",JOt="mediaType",KOt="name",Tp="nextToken",gOe="operatingSystems",XOt="partFirstByte",ZOt="partLastByte",eMt="primaryRegistryAlias",tMt="partSize",EL="policyText",yOe="repository",T9="resourceArn",rMt="registryArn",nMt="repositoryArn",EOe="registryCatalogData",Jt="registryId",lr="repositoryName",sMt="repositoryNames",oMt="registryUri",iMt="repositoryUri",aMt="registries",cMt="repositories",COe="smithy.ts.sdk.synthetic.com.amazonaws.ecrpublic",lMt="server",uMt="status",P9="tags",dMt="tagKeys",Gy="uploadId",IOe="usageText",pMt="verified",M="com.amazonaws.ecrpublic",xOe=(Et(),Y(Ux)),mMt=AL(),ur=S9(),wOe=xOe.TypeRegistry.for(COe);B.ECRPUBLICServiceException$=[-3,COe,"ECRPUBLICServiceException",0,[],[]];wOe.registerError(B.ECRPUBLICServiceException$,mMt.ECRPUBLICServiceException);var Kt=xOe.TypeRegistry.for(M);B.EmptyUploadException$=[-3,M,jkt,{[ar]:gr},[cr],[0]];Kt.registerError(B.EmptyUploadException$,ur.EmptyUploadException);B.ImageAlreadyExistsException$=[-3,M,lLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.ImageAlreadyExistsException$,ur.ImageAlreadyExistsException);B.ImageDigestDoesNotMatchException$=[-3,M,dLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.ImageDigestDoesNotMatchException$,ur.ImageDigestDoesNotMatchException);B.ImageNotFoundException$=[-3,M,xLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.ImageNotFoundException$,ur.ImageNotFoundException);B.ImageTagAlreadyExistsException$=[-3,M,bLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.ImageTagAlreadyExistsException$,ur.ImageTagAlreadyExistsException);B.InvalidLayerException$=[-3,M,gLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.InvalidLayerException$,ur.InvalidLayerException);B.InvalidLayerPartException$=[-3,M,yLt,{[ar]:gr},[Jt,lr,Gy,WOt,cr],[0,0,0,1,0]];Kt.registerError(B.InvalidLayerPartException$,ur.InvalidLayerPartException);B.InvalidParameterException$=[-3,M,wLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.InvalidParameterException$,ur.InvalidParameterException);B.InvalidTagParameterException$=[-3,M,RLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.InvalidTagParameterException$,ur.InvalidTagParameterException);B.LayerAlreadyExistsException$=[-3,M,PLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.LayerAlreadyExistsException$,ur.LayerAlreadyExistsException);B.LayerPartTooSmallException$=[-3,M,LLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.LayerPartTooSmallException$,ur.LayerPartTooSmallException);B.LayersNotFoundException$=[-3,M,kLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.LayersNotFoundException$,ur.LayersNotFoundException);B.LimitExceededException$=[-3,M,vLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.LimitExceededException$,ur.LimitExceededException);B.ReferencedImagesNotFoundException$=[-3,M,sOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.ReferencedImagesNotFoundException$,ur.ReferencedImagesNotFoundException);B.RegistryNotFoundException$=[-3,M,cOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RegistryNotFoundException$,ur.RegistryNotFoundException);B.RepositoryAlreadyExistsException$=[-3,M,KLt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RepositoryAlreadyExistsException$,ur.RepositoryAlreadyExistsException);B.RepositoryCatalogDataNotFoundException$=[-3,M,tOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RepositoryCatalogDataNotFoundException$,ur.RepositoryCatalogDataNotFoundException);B.RepositoryNotEmptyException$=[-3,M,aOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RepositoryNotEmptyException$,ur.RepositoryNotEmptyException);B.RepositoryNotFoundException$=[-3,M,lOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RepositoryNotFoundException$,ur.RepositoryNotFoundException);B.RepositoryPolicyNotFoundException$=[-3,M,uOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.RepositoryPolicyNotFoundException$,ur.RepositoryPolicyNotFoundException);B.ServerException$=[-3,M,pOt,{[ar]:lMt},[cr],[0]];Kt.registerError(B.ServerException$,ur.ServerException);B.TooManyTagsException$=[-3,M,yOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.TooManyTagsException$,ur.TooManyTagsException);B.UnsupportedCommandException$=[-3,M,xOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.UnsupportedCommandException$,ur.UnsupportedCommandException);B.UploadNotFoundException$=[-3,M,BOt,{[ar]:gr},[cr],[0]];Kt.registerError(B.UploadNotFoundException$,ur.UploadNotFoundException);B.errorTypeRegistries=[wOe,Kt];B.AuthorizationData$=[3,M,ykt,0,[QOt,kOt],[0,4]];B.BatchCheckLayerAvailabilityRequest$=[3,M,Ckt,0,[lr,hOe,Jt],[0,64,0],2];B.BatchCheckLayerAvailabilityResponse$=[3,M,Ikt,0,[qOt,cOe],[()=>yMt,()=>gMt]];B.BatchDeleteImageRequest$=[3,M,wkt,0,[lr,B9,Jt],[0,()=>v9,0],2];B.BatchDeleteImageResponse$=[3,M,bkt,0,[B9,cOe],[()=>v9,()=>AMt]];B.CompleteLayerUploadRequest$=[3,M,Bkt,0,[lr,Gy,hOe,Jt],[0,0,64,0],3];B.CompleteLayerUploadResponse$=[3,M,Rkt,0,[Jt,lr,Gy,N9],[0,0,0,0]];B.CreateRepositoryRequest$=[3,M,Tkt,0,[lr,g0,P9],[0,()=>B.RepositoryCatalogDataInput$,()=>_9],1];B.CreateRepositoryResponse$=[3,M,Pkt,0,[yOe,g0],[()=>B.Repository$,()=>B.RepositoryCatalogData$]];B.DeleteRepositoryPolicyRequest$=[3,M,Fkt,0,[lr,Jt],[0,0],1];B.DeleteRepositoryPolicyResponse$=[3,M,Ukt,0,[Jt,lr,EL],[0,0,0]];B.DeleteRepositoryRequest$=[3,M,qkt,0,[lr,Jt,dOe],[0,0,2],1];B.DeleteRepositoryResponse$=[3,M,$kt,0,[yOe],[()=>B.Repository$]];B.DescribeImagesRequest$=[3,M,_kt,0,[lr,Jt,B9,Tp,yL],[0,0,()=>v9,0,1],1];B.DescribeImagesResponse$=[3,M,Qkt,0,[OOt,Tp],[()=>fMt,0]];B.DescribeImageTagsRequest$=[3,M,kkt,0,[lr,Jt,Tp,yL],[0,0,0,1],1];B.DescribeImageTagsResponse$=[3,M,Lkt,0,[UOt,Tp],[()=>hMt,0]];B.DescribeRegistriesRequest$=[3,M,Gkt,0,[Tp,yL],[0,1]];B.DescribeRegistriesResponse$=[3,M,Hkt,0,[aMt,Tp],[()=>CMt,0],1];B.DescribeRepositoriesRequest$=[3,M,zkt,0,[Jt,sMt,Tp,yL],[0,64,0,1]];B.DescribeRepositoriesResponse$=[3,M,Vkt,0,[cMt,Tp],[()=>IMt,0]];B.GetAuthorizationTokenRequest$=[3,M,Kkt,0,[],[]];B.GetAuthorizationTokenResponse$=[3,M,Xkt,0,[_Ot],[()=>B.AuthorizationData$]];B.GetRegistryCatalogDataRequest$=[3,M,eLt,0,[],[]];B.GetRegistryCatalogDataResponse$=[3,M,tLt,0,[EOe],[()=>B.RegistryCatalogData$],1];B.GetRepositoryCatalogDataRequest$=[3,M,rLt,0,[lr,Jt],[0,0],1];B.GetRepositoryCatalogDataResponse$=[3,M,nLt,0,[g0],[()=>B.RepositoryCatalogData$]];B.GetRepositoryPolicyRequest$=[3,M,iLt,0,[lr,Jt],[0,0],1];B.GetRepositoryPolicyResponse$=[3,M,aLt,0,[Jt,lr,EL],[0,0,0]];B.Image$=[3,M,cLt,0,[Jt,lr,pOe,mOe,gL],[0,0,()=>B.ImageIdentifier$,0,0]];B.ImageDetail$=[3,M,uLt,0,[Jt,lr,hL,FOt,AOe,fOe,gL,rOe],[0,0,0,64,1,4,0,0]];B.ImageFailure$=[3,M,mLt,0,[pOe,lOe,uOe],[()=>B.ImageIdentifier$,0,0]];B.ImageIdentifier$=[3,M,ALt,0,[hL,R9],[0,0]];B.ImageTagDetail$=[3,M,SLt,0,[R9,oOe,MOt],[0,4,()=>B.ReferencedImageDetail$]];B.InitiateLayerUploadRequest$=[3,M,CLt,0,[lr,Jt],[0,0],1];B.InitiateLayerUploadResponse$=[3,M,ILt,0,[Gy,tMt],[0,1]];B.Layer$=[3,M,TLt,0,[N9,$Ot,VOt,JOt],[0,0,1,0]];B.LayerFailure$=[3,M,_Lt,0,[N9,lOe,uOe],[0,0,0]];B.ListTagsForResourceRequest$=[3,M,MLt,0,[T9],[0],1];B.ListTagsForResourceResponse$=[3,M,FLt,0,[P9],[()=>_9]];B.PutImageRequest$=[3,M,qLt,0,[lr,mOe,Jt,gL,R9,hL],[0,0,0,0,0,0],2];B.PutImageResponse$=[3,M,$Lt,0,[LOt],[()=>B.Image$]];B.PutRegistryCatalogDataRequest$=[3,M,HLt,0,[aOe],[0]];B.PutRegistryCatalogDataResponse$=[3,M,zLt,0,[EOe],[()=>B.RegistryCatalogData$],1];B.PutRepositoryCatalogDataRequest$=[3,M,VLt,0,[lr,g0,Jt],[0,()=>B.RepositoryCatalogDataInput$,0],2];B.PutRepositoryCatalogDataResponse$=[3,M,YLt,0,[g0],[()=>B.RepositoryCatalogData$]];B.ReferencedImageDetail$=[3,M,nOt,0,[hL,AOe,fOe,gL,rOe],[0,1,4,0,0]];B.Registry$=[3,M,jLt,0,[Jt,rMt,oMt,pMt,vOt],[0,0,0,2,()=>EMt],5];B.RegistryAlias$=[3,M,JLt,0,[KOt,uMt,eMt,DOt],[0,0,2,2],4];B.RegistryCatalogData$=[3,M,ZLt,0,[aOe],[0]];B.Repository$=[3,M,dOt,0,[nMt,Jt,lr,iMt,oOe],[0,0,0,0,4]];B.RepositoryCatalogData$=[3,M,rOt,0,[iOe,sOe,gOe,YOt,nOe,IOe,jOt],[0,64,64,0,0,0,2]];B.RepositoryCatalogDataInput$=[3,M,eOt,0,[iOe,sOe,gOe,HOt,nOe,IOe],[0,64,64,21,0,0]];B.SetRepositoryPolicyRequest$=[3,M,fOt,0,[lr,EL,Jt,dOe],[0,0,0,2],2];B.SetRepositoryPolicyResponse$=[3,M,AOt,0,[Jt,lr,EL],[0,0,0]];B.Tag$=[3,M,hOt,0,[NLt,POt],[0,0]];B.TagResourceRequest$=[3,M,COt,0,[T9,P9],[0,()=>_9],2];B.TagResourceResponse$=[3,M,IOt,0,[],[]];B.UntagResourceRequest$=[3,M,NOt,0,[T9,dMt],[0,64],2];B.UntagResourceResponse$=[3,M,TOt,0,[],[]];B.UploadLayerPartRequest$=[3,M,bOt,0,[lr,Gy,XOt,ZOt,zOt,Jt],[0,0,1,1,21,0],5];B.UploadLayerPartResponse$=[3,M,SOt,0,[Jt,lr,Gy,GOt],[0,0,0,1]];var fMt=[1,M,pLt,0,()=>B.ImageDetail$],AMt=[1,M,fLt,0,()=>B.ImageFailure$],v9=[1,M,hLt,0,()=>B.ImageIdentifier$],hMt=[1,M,BLt,0,()=>B.ImageTagDetail$],gMt=[1,M,QLt,0,()=>B.LayerFailure$],yMt=[1,M,DLt,0,()=>B.Layer$],EMt=[1,M,XLt,0,()=>B.RegistryAlias$],CMt=[1,M,oOt,0,()=>B.Registry$],IMt=[1,M,iOt,0,()=>B.Repository$],_9=[1,M,gOt,0,()=>B.Tag$];B.BatchCheckLayerAvailability$=[9,M,Ekt,0,()=>B.BatchCheckLayerAvailabilityRequest$,()=>B.BatchCheckLayerAvailabilityResponse$];B.BatchDeleteImage$=[9,M,xkt,0,()=>B.BatchDeleteImageRequest$,()=>B.BatchDeleteImageResponse$];B.CompleteLayerUpload$=[9,M,Skt,0,()=>B.CompleteLayerUploadRequest$,()=>B.CompleteLayerUploadResponse$];B.CreateRepository$=[9,M,Nkt,0,()=>B.CreateRepositoryRequest$,()=>B.CreateRepositoryResponse$];B.DeleteRepository$=[9,M,Okt,0,()=>B.DeleteRepositoryRequest$,()=>B.DeleteRepositoryResponse$];B.DeleteRepositoryPolicy$=[9,M,Mkt,0,()=>B.DeleteRepositoryPolicyRequest$,()=>B.DeleteRepositoryPolicyResponse$];B.DescribeImages$=[9,M,vkt,0,()=>B.DescribeImagesRequest$,()=>B.DescribeImagesResponse$];B.DescribeImageTags$=[9,M,Dkt,0,()=>B.DescribeImageTagsRequest$,()=>B.DescribeImageTagsResponse$];B.DescribeRegistries$=[9,M,Ykt,0,()=>B.DescribeRegistriesRequest$,()=>B.DescribeRegistriesResponse$];B.DescribeRepositories$=[9,M,Wkt,0,()=>B.DescribeRepositoriesRequest$,()=>B.DescribeRepositoriesResponse$];B.GetAuthorizationToken$=[9,M,Jkt,0,()=>B.GetAuthorizationTokenRequest$,()=>B.GetAuthorizationTokenResponse$];B.GetRegistryCatalogData$=[9,M,Zkt,0,()=>B.GetRegistryCatalogDataRequest$,()=>B.GetRegistryCatalogDataResponse$];B.GetRepositoryCatalogData$=[9,M,sLt,0,()=>B.GetRepositoryCatalogDataRequest$,()=>B.GetRepositoryCatalogDataResponse$];B.GetRepositoryPolicy$=[9,M,oLt,0,()=>B.GetRepositoryPolicyRequest$,()=>B.GetRepositoryPolicyResponse$];B.InitiateLayerUpload$=[9,M,ELt,0,()=>B.InitiateLayerUploadRequest$,()=>B.InitiateLayerUploadResponse$];B.ListTagsForResource$=[9,M,OLt,0,()=>B.ListTagsForResourceRequest$,()=>B.ListTagsForResourceResponse$];B.PutImage$=[9,M,ULt,0,()=>B.PutImageRequest$,()=>B.PutImageResponse$];B.PutRegistryCatalogData$=[9,M,GLt,0,()=>B.PutRegistryCatalogDataRequest$,()=>B.PutRegistryCatalogDataResponse$];B.PutRepositoryCatalogData$=[9,M,WLt,0,()=>B.PutRepositoryCatalogDataRequest$,()=>B.PutRepositoryCatalogDataResponse$];B.SetRepositoryPolicy$=[9,M,mOt,0,()=>B.SetRepositoryPolicyRequest$,()=>B.SetRepositoryPolicyResponse$];B.TagResource$=[9,M,EOt,0,()=>B.TagResourceRequest$,()=>B.TagResourceResponse$];B.UntagResource$=[9,M,ROt,0,()=>B.UntagResourceRequest$,()=>B.UntagResourceResponse$];B.UploadLayerPart$=[9,M,wOt,0,()=>B.UploadLayerPartRequest$,()=>B.UploadLayerPartResponse$]});var bOe=w(IL=>{"use strict";Object.defineProperty(IL,"__esModule",{value:!0});IL.getRuntimeConfig=void 0;var xMt=(Kr(),Y(lp)),wMt=(vf(),Y(IJ)),bMt=(Ee(),Y(Fi)),SMt=(_e(),Y(tl)),CL=(nt(),Y(Xd)),BMt=J6(),RMt=eOe(),NMt=Q9(),TMt=t=>({apiVersion:"2020-10-30",base64Decoder:t?.base64Decoder??CL.fromBase64,base64Encoder:t?.base64Encoder??CL.toBase64,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??RMt.defaultEndpointResolver,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??BMt.defaultECRPUBLICHttpAuthSchemeProvider,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:e=>e.getIdentityProvider("aws.auth#sigv4"),signer:new xMt.AwsSdkSigV4Signer}],logger:t?.logger??new bMt.NoOpLogger,protocol:t?.protocol??wMt.AwsJson1_1Protocol,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ecrpublic",errorTypeRegistries:NMt.errorTypeRegistries,xmlNamespace:"http://ecr-public.amazonaws.com/doc/2020-12-02/",version:"2020-10-30",serviceTarget:"SpencerFrontendService"},serviceId:t?.serviceId??"ECR PUBLIC",urlParser:t?.urlParser??SMt.parseUrl,utf8Decoder:t?.utf8Decoder??CL.fromUtf8,utf8Encoder:t?.utf8Encoder??CL.toUtf8});IL.getRuntimeConfig=TMt});var NOe=w(xL=>{"use strict";Object.defineProperty(xL,"__esModule",{value:!0});xL.getRuntimeConfig=void 0;var PMt=(ey(),Y(Zg)),vMt=PMt.__importDefault(YLe()),D9=(xt(),Y(Qs)),_Mt=(Kr(),Y(lp)),QMt=P5(),SOe=(Ee(),Y(Fi)),Wi=(Nt(),Y(Dn)),k9=(vs(),Y(Yx)),BOe=(nt(),Y(Xd)),ROe=Pu(),DMt=bOe(),kMt=t=>{(0,SOe.emitWarningIfUnsupportedVersion)(process.version);let e=(0,Wi.resolveDefaultsModeConfig)(t),r=()=>e().then(SOe.loadConfigsForDefaultMode),n=(0,DMt.getRuntimeConfig)(t);(0,D9.emitWarningIfUnsupportedVersion)(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??(0,Wi.loadConfig)(_Mt.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,s),bodyLengthChecker:t?.bodyLengthChecker??BOe.calculateBodyLength,credentialDefaultProvider:t?.credentialDefaultProvider??QMt.defaultProvider,defaultUserAgentProvider:t?.defaultUserAgentProvider??(0,D9.createDefaultUserAgentProvider)({serviceId:n.serviceId,clientVersion:vMt.default.version}),maxAttempts:t?.maxAttempts??(0,Wi.loadConfig)(k9.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,t),region:t?.region??(0,Wi.loadConfig)(Wi.NODE_REGION_CONFIG_OPTIONS,{...Wi.NODE_REGION_CONFIG_FILE_OPTIONS,...s}),requestHandler:ROe.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??(0,Wi.loadConfig)({...k9.NODE_RETRY_MODE_CONFIG_OPTIONS,default:async()=>(await r()).retryMode||k9.DEFAULT_RETRY_MODE},t),sha256:t?.sha256??BOe.Hash.bind(null,"sha256"),streamCollector:t?.streamCollector??ROe.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??(0,Wi.loadConfig)(Wi.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,s),useFipsEndpoint:t?.useFipsEndpoint??(0,Wi.loadConfig)(Wi.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,s),userAgentAppId:t?.userAgentAppId??(0,Wi.loadConfig)(D9.NODE_APP_ID_CONFIG_OPTIONS,s)}};xL.getRuntimeConfig=kMt});var kOe=w(je=>{"use strict";var Pp=(xt(),Y(Qs)),Xf=(_s(),Y(_8)),Qt=(Ee(),Y(Fi)),LMt=(Nt(),Y(Dn)),dr=(It(),Y(uf)),L9=(_e(),Y(tl)),TOe=(vs(),Y(Yx)),OMt=(Et(),Y(Ux)),POe=J6(),MMt=NOe(),qt=Q9(),wL=S9(),FMt=AL(),UMt=t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr-public"}),yr={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},qMt=t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(i=>i.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},$Mt=t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),GMt=(t,e)=>{let r=Object.assign(Pp.getAwsRegionExtensionConfiguration(t),Qt.getDefaultExtensionConfiguration(t),L9.getHttpHandlerExtensionConfiguration(t),qMt(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Pp.resolveAwsRegionExtensionConfiguration(r),Qt.resolveDefaultRuntimeConfig(r),L9.resolveHttpHandlerRuntimeConfig(r),$Mt(r))},vp=class extends Qt.Client{config;constructor(...[e]){let r=MMt.getRuntimeConfig(e||{});super(r),this.initConfig=r;let n=UMt(r),s=Pp.resolveUserAgentConfig(n),o=TOe.resolveRetryConfig(s),i=LMt.resolveRegionConfig(o),a=Pp.resolveHostHeaderConfig(i),c=dr.resolveEndpointConfig(a),l=POe.resolveHttpAuthSchemeConfig(c),u=GMt(l,e?.extensions||[]);this.config=u,this.middlewareStack.use(OMt.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(Pp.getUserAgentPlugin(this.config)),this.middlewareStack.use(TOe.getRetryPlugin(this.config)),this.middlewareStack.use(L9.getContentLengthPlugin(this.config)),this.middlewareStack.use(Pp.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Pp.getLoggerPlugin(this.config)),this.middlewareStack.use(Pp.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(Xf.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:POe.defaultECRPUBLICHttpAuthSchemeParametersProvider,identityProviderConfigProvider:async d=>new Xf.DefaultIdentityProviderConfig({"aws.auth#sigv4":d.credentials})})),this.middlewareStack.use(Xf.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}},bL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","BatchCheckLayerAvailability",{}).n("ECRPUBLICClient","BatchCheckLayerAvailabilityCommand").sc(qt.BatchCheckLayerAvailability$).build(){},SL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","BatchDeleteImage",{}).n("ECRPUBLICClient","BatchDeleteImageCommand").sc(qt.BatchDeleteImage$).build(){},BL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","CompleteLayerUpload",{}).n("ECRPUBLICClient","CompleteLayerUploadCommand").sc(qt.CompleteLayerUpload$).build(){},RL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","CreateRepository",{}).n("ECRPUBLICClient","CreateRepositoryCommand").sc(qt.CreateRepository$).build(){},NL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DeleteRepository",{}).n("ECRPUBLICClient","DeleteRepositoryCommand").sc(qt.DeleteRepository$).build(){},TL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DeleteRepositoryPolicy",{}).n("ECRPUBLICClient","DeleteRepositoryPolicyCommand").sc(qt.DeleteRepositoryPolicy$).build(){},y0=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeImages",{}).n("ECRPUBLICClient","DescribeImagesCommand").sc(qt.DescribeImages$).build(){},E0=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeImageTags",{}).n("ECRPUBLICClient","DescribeImageTagsCommand").sc(qt.DescribeImageTags$).build(){},C0=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeRegistries",{}).n("ECRPUBLICClient","DescribeRegistriesCommand").sc(qt.DescribeRegistries$).build(){},I0=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeRepositories",{}).n("ECRPUBLICClient","DescribeRepositoriesCommand").sc(qt.DescribeRepositories$).build(){},PL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetAuthorizationToken",{}).n("ECRPUBLICClient","GetAuthorizationTokenCommand").sc(qt.GetAuthorizationToken$).build(){},vL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRegistryCatalogData",{}).n("ECRPUBLICClient","GetRegistryCatalogDataCommand").sc(qt.GetRegistryCatalogData$).build(){},_L=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRepositoryCatalogData",{}).n("ECRPUBLICClient","GetRepositoryCatalogDataCommand").sc(qt.GetRepositoryCatalogData$).build(){},QL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRepositoryPolicy",{}).n("ECRPUBLICClient","GetRepositoryPolicyCommand").sc(qt.GetRepositoryPolicy$).build(){},DL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","InitiateLayerUpload",{}).n("ECRPUBLICClient","InitiateLayerUploadCommand").sc(qt.InitiateLayerUpload$).build(){},kL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","ListTagsForResource",{}).n("ECRPUBLICClient","ListTagsForResourceCommand").sc(qt.ListTagsForResource$).build(){},LL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutImage",{}).n("ECRPUBLICClient","PutImageCommand").sc(qt.PutImage$).build(){},OL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutRegistryCatalogData",{}).n("ECRPUBLICClient","PutRegistryCatalogDataCommand").sc(qt.PutRegistryCatalogData$).build(){},ML=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutRepositoryCatalogData",{}).n("ECRPUBLICClient","PutRepositoryCatalogDataCommand").sc(qt.PutRepositoryCatalogData$).build(){},FL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","SetRepositoryPolicy",{}).n("ECRPUBLICClient","SetRepositoryPolicyCommand").sc(qt.SetRepositoryPolicy$).build(){},UL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","TagResource",{}).n("ECRPUBLICClient","TagResourceCommand").sc(qt.TagResource$).build(){},qL=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","UntagResource",{}).n("ECRPUBLICClient","UntagResourceCommand").sc(qt.UntagResource$).build(){},$L=class extends Qt.Command.classBuilder().ep(yr).m(function(e,r,n,s){return[dr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","UploadLayerPart",{}).n("ECRPUBLICClient","UploadLayerPartCommand").sc(qt.UploadLayerPart$).build(){},vOe=Xf.createPaginator(vp,y0,"nextToken","nextToken","maxResults"),_Oe=Xf.createPaginator(vp,E0,"nextToken","nextToken","maxResults"),QOe=Xf.createPaginator(vp,C0,"nextToken","nextToken","maxResults"),DOe=Xf.createPaginator(vp,I0,"nextToken","nextToken","maxResults"),HMt={BatchCheckLayerAvailabilityCommand:bL,BatchDeleteImageCommand:SL,CompleteLayerUploadCommand:BL,CreateRepositoryCommand:RL,DeleteRepositoryCommand:NL,DeleteRepositoryPolicyCommand:TL,DescribeImagesCommand:y0,DescribeImageTagsCommand:E0,DescribeRegistriesCommand:C0,DescribeRepositoriesCommand:I0,GetAuthorizationTokenCommand:PL,GetRegistryCatalogDataCommand:vL,GetRepositoryCatalogDataCommand:_L,GetRepositoryPolicyCommand:QL,InitiateLayerUploadCommand:DL,ListTagsForResourceCommand:kL,PutImageCommand:LL,PutRegistryCatalogDataCommand:OL,PutRepositoryCatalogDataCommand:ML,SetRepositoryPolicyCommand:FL,TagResourceCommand:UL,UntagResourceCommand:qL,UploadLayerPartCommand:$L},zMt={paginateDescribeImages:vOe,paginateDescribeImageTags:_Oe,paginateDescribeRegistries:QOe,paginateDescribeRepositories:DOe},GL=class extends vp{};Qt.createAggregatedClient(HMt,GL,{paginators:zMt});var VMt={InvalidLayerDigest:"InvalidLayerDigest",MissingLayerDigest:"MissingLayerDigest"},YMt={AVAILABLE:"AVAILABLE",UNAVAILABLE:"UNAVAILABLE"},WMt={ImageNotFound:"ImageNotFound",ImageReferencedByManifestList:"ImageReferencedByManifestList",ImageTagDoesNotMatchDigest:"ImageTagDoesNotMatchDigest",InvalidImageDigest:"InvalidImageDigest",InvalidImageTag:"InvalidImageTag",KmsError:"KmsError",MissingDigestAndTag:"MissingDigestAndTag"},jMt={ACTIVE:"ACTIVE",PENDING:"PENDING",REJECTED:"REJECTED"};je.$Command=Qt.Command;je.__Client=Qt.Client;je.ECRPUBLICServiceException=FMt.ECRPUBLICServiceException;je.BatchCheckLayerAvailabilityCommand=bL;je.BatchDeleteImageCommand=SL;je.CompleteLayerUploadCommand=BL;je.CreateRepositoryCommand=RL;je.DeleteRepositoryCommand=NL;je.DeleteRepositoryPolicyCommand=TL;je.DescribeImageTagsCommand=E0;je.DescribeImagesCommand=y0;je.DescribeRegistriesCommand=C0;je.DescribeRepositoriesCommand=I0;je.ECRPUBLIC=GL;je.ECRPUBLICClient=vp;je.GetAuthorizationTokenCommand=PL;je.GetRegistryCatalogDataCommand=vL;je.GetRepositoryCatalogDataCommand=_L;je.GetRepositoryPolicyCommand=QL;je.ImageFailureCode=WMt;je.InitiateLayerUploadCommand=DL;je.LayerAvailability=YMt;je.LayerFailureCode=VMt;je.ListTagsForResourceCommand=kL;je.PutImageCommand=LL;je.PutRegistryCatalogDataCommand=OL;je.PutRepositoryCatalogDataCommand=ML;je.RegistryAliasStatus=jMt;je.SetRepositoryPolicyCommand=FL;je.TagResourceCommand=UL;je.UntagResourceCommand=qL;je.UploadLayerPartCommand=$L;je.paginateDescribeImageTags=_Oe;je.paginateDescribeImages=vOe;je.paginateDescribeRegistries=QOe;je.paginateDescribeRepositories=DOe;Object.prototype.hasOwnProperty.call(qt,"__proto__")&&!Object.prototype.hasOwnProperty.call(je,"__proto__")&&Object.defineProperty(je,"__proto__",{enumerable:!0,value:qt.__proto__});Object.keys(qt).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(je,t)&&(je[t]=qt[t])});Object.prototype.hasOwnProperty.call(wL,"__proto__")&&!Object.prototype.hasOwnProperty.call(je,"__proto__")&&Object.defineProperty(je,"__proto__",{enumerable:!0,value:wL.__proto__});Object.keys(wL).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(je,t)&&(je[t]=wL[t])})});var aFt={};Zr(aFt,{main:()=>lMe});module.exports=Y(aFt);var tK=Q(require("os"),1);function $u(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}function nO(t){return Object.keys(t).length?{title:t.title,file:t.file,line:t.startLine,endLine:t.endLine,col:t.startColumn,endColumn:t.endColumn}:{}}function Dp(t,e,r){let n=new sO(t,e,r);process.stdout.write(n.toString()+tK.EOL)}function oO(t,e=""){Dp(t,{},e)}var eK="::",sO=class{constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=eK+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${ZMe(s)}`)}}return e+=`${eK}${XMe(this.message)}`,e}};function XMe(t){return $u(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function ZMe(t){return $u(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}var rK=Q(require("crypto"),1),N0=Q(require("fs"),1),R0=Q(require("os"),1);function nK(t,e){let r=process.env[`GITHUB_${t}`];if(!r)throw new Error(`Unable to find environment variable for file command ${t}`);if(!N0.existsSync(r))throw new Error(`Missing file at path: ${r}`);N0.appendFileSync(r,`${$u(e)}${R0.EOL}`,{encoding:"utf8"})}function sK(t,e){let r=`ghadelimiter_${rK.randomUUID()}`,n=$u(e);if(t.includes(r))throw new Error(`Unexpected input: name should not contain the delimiter "${r}"`);if(n.includes(r))throw new Error(`Unexpected input: value should not contain the delimiter "${r}"`);return`${t}<<${r}${R0.EOL}${n}${R0.EOL}${r}`}var Zse=Q(require("os"),1);var wS=Q(zy(),1),yWe=Q(ZA(),1);var Ja;(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"})(Ja||(Ja={}));var vse;(function(t){t.Accept="accept",t.ContentType="content-type"})(vse||(vse={}));var _se;(function(t){t.ApplicationJson="application/json"})(_se||(_se={}));var mUt=[Ja.MovedPermanently,Ja.ResourceMoved,Ja.SeeOther,Ja.TemporaryRedirect,Ja.PermanentRedirect],fUt=[Ja.BadGateway,Ja.ServiceUnavailable,Ja.GatewayTimeout];var kse=require("os"),zE=require("fs"),T1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},{access:CWe,appendFile:IWe,writeFile:xWe}=zE.promises,Dse="GITHUB_STEP_SUMMARY";var P1=class{constructor(){this._buffer=""}filePath(){return T1(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[Dse];if(!e)throw new Error(`Unable to find environment variable for $${Dse}. Check if your runtime environment supports job summaries.`);try{yield CWe(e,zE.constants.R_OK|zE.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,r,n={}){let s=Object.entries(n).map(([o,i])=>` ${o}="${i}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return T1(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?xWe:IWe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return T1(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(kse.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(i=>this.wrap("li",i)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(i=>{if(typeof i=="string")return this.wrap("td",i);let{header:a,data:c,colspan:l,rowspan:u}=i,d=a?"th":"td",p=Object.assign(Object.assign({},l&&{colspan:l}),u&&{rowspan:u});return this.wrap(d,c,p)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},i=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),a=this.wrap("img",null,Object.assign({src:e,alt:r},i));return this.addRaw(a).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},CUt=new P1;var U1=Q(require("os"),1);var F1=require("string_decoder");var YE=Q(require("os"),1),M1=Q(require("events"),1),Wse=Q(require("child_process"),1),jse=Q(require("path"),1);var Gse=require("assert"),Bo=Q(require("path"),1);var VE=Q(require("fs"),1),cd=Q(require("path"),1),v1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},{chmod:_1,copyFile:Ose,lstat:bS,mkdir:Mse,open:wUt,readdir:Q1,rename:wWe,rm:Fse,rmdir:bUt,stat:sm,symlink:Use,unlink:D1}=VE.promises,Ka=process.platform==="win32";function qse(t){return v1(this,void 0,void 0,function*(){let e=yield VE.promises.readlink(t);return Ka&&!e.endsWith("\\")?`${e}\\`:e})}var SUt=VE.constants.O_RDONLY;function eh(t){return v1(this,void 0,void 0,function*(){try{yield sm(t)}catch(e){if(e.code==="ENOENT")return!1;throw e}return!0})}function SS(t){if(t=bWe(t),!t)throw new Error('isRooted() parameter "p" cannot be empty');return Ka?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")}function k1(t,e){return v1(this,void 0,void 0,function*(){let r;try{r=yield sm(t)}catch(s){s.code!=="ENOENT"&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${s}`)}if(r&&r.isFile()){if(Ka){let s=cd.extname(t).toUpperCase();if(e.some(o=>o.toUpperCase()===s))return t}else if(Lse(r))return t}let n=t;for(let s of e){t=n+s,r=void 0;try{r=yield sm(t)}catch(o){o.code!=="ENOENT"&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${o}`)}if(r&&r.isFile()){if(Ka){try{let o=cd.dirname(t),i=cd.basename(t).toUpperCase();for(let a of yield Q1(o))if(i===a.toUpperCase()){t=cd.join(o,a);break}}catch(o){console.log(`Unexpected error attempting to determine the actual case of the file '${t}': ${o}`)}return t}else if(Lse(r))return t}}return""})}function bWe(t){return t=t||"",Ka?(t=t.replace(/\//g,"\\"),t.replace(/\\\\+/g,"\\")):t.replace(/\/\/+/g,"/")}function Lse(t){return(t.mode&1)>0||(t.mode&8)>0&&process.getgid!==void 0&&t.gid===process.getgid()||(t.mode&64)>0&&process.getuid!==void 0&&t.uid===process.getuid()}var om=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function Hse(t,e){return om(this,arguments,void 0,function*(r,n,s={}){let{force:o,recursive:i,copySourceDirectory:a}=BWe(s),c=(yield eh(n))?yield sm(n):null;if(c&&c.isFile()&&!o)return;let l=c&&c.isDirectory()&&a?Bo.join(n,Bo.basename(r)):n;if(!(yield eh(r)))throw new Error(`no such file or directory: ${r}`);if((yield sm(r)).isDirectory())if(i)yield zse(r,l,0,o);else throw new Error(`Failed to copy. ${r} is a directory, but tried to copy without recursive flag.`);else{if(Bo.relative(r,l)==="")throw new Error(`'${l}' and '${r}' are the same file`);yield Vse(r,l,o)}})}function L1(t){return om(this,void 0,void 0,function*(){if(Ka&&/[*"<>|]/.test(t))throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows');try{yield Fse(t,{force:!0,maxRetries:3,recursive:!0,retryDelay:300})}catch(e){throw new Error(`File was unable to be removed ${e}`)}})}function im(t){return om(this,void 0,void 0,function*(){(0,Gse.ok)(t,"a path argument must be provided"),yield Mse(t,{recursive:!0})})}function $s(t,e){return om(this,void 0,void 0,function*(){if(!t)throw new Error("parameter 'tool' is required");if(e){let n=yield $s(t,!1);if(!n)throw Ka?new Error(`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`):new Error(`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);return n}let r=yield SWe(t);return r&&r.length>0?r[0]:""})}function SWe(t){return om(this,void 0,void 0,function*(){if(!t)throw new Error("parameter 'tool' is required");let e=[];if(Ka&&process.env.PATHEXT)for(let s of process.env.PATHEXT.split(Bo.delimiter))s&&e.push(s);if(SS(t)){let s=yield k1(t,e);return s?[s]:[]}if(t.includes(Bo.sep))return[];let r=[];if(process.env.PATH)for(let s of process.env.PATH.split(Bo.delimiter))s&&r.push(s);let n=[];for(let s of r){let o=yield k1(Bo.join(s,t),e);o&&n.push(o)}return n})}function BWe(t){let e=t.force==null?!0:t.force,r=!!t.recursive,n=t.copySourceDirectory==null?!0:!!t.copySourceDirectory;return{force:e,recursive:r,copySourceDirectory:n}}function zse(t,e,r,n){return om(this,void 0,void 0,function*(){if(r>=255)return;r++,yield im(e);let s=yield Q1(t);for(let o of s){let i=`${t}/${o}`,a=`${e}/${o}`;(yield bS(i)).isDirectory()?yield zse(i,a,r,n):yield Vse(i,a,n)}yield _1(e,(yield sm(t)).mode)})}function Vse(t,e,r){return om(this,void 0,void 0,function*(){if((yield bS(t)).isSymbolicLink()){try{yield bS(e),yield D1(e)}catch(s){s.code==="EPERM"&&(yield _1(e,"0666"),yield D1(e))}let n=yield qse(t);yield Use(n,e,Ka?"junction":null)}else(!(yield eh(e))||r)&&(yield Ose(t,e))})}var Jse=require("timers"),Yse=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},BS=process.platform==="win32",RS=class extends M1.EventEmitter{constructor(e,r,n){if(super(),!e)throw new Error("Parameter 'toolPath' cannot be null or empty.");this.toolPath=e,this.args=r||[],this.options=n||{}}_debug(e){this.options.listeners&&this.options.listeners.debug&&this.options.listeners.debug(e)}_getCommandString(e,r){let n=this._getSpawnFileName(),s=this._getSpawnArgs(e),o=r?"":"[command]";if(BS)if(this._isCmdFile()){o+=n;for(let i of s)o+=` ${i}`}else if(e.windowsVerbatimArguments){o+=`"${n}"`;for(let i of s)o+=` ${i}`}else{o+=this._windowsQuoteCmdArg(n);for(let i of s)o+=` ${this._windowsQuoteCmdArg(i)}`}else{o+=n;for(let i of s)o+=` ${i}`}return o}_processLineBuffer(e,r,n){try{let s=r+e.toString(),o=s.indexOf(YE.EOL);for(;o>-1;){let i=s.substring(0,o);n(i),s=s.substring(o+YE.EOL.length),o=s.indexOf(YE.EOL)}return s}catch(s){return this._debug(`error processing line. Failed with error ${s}`),""}}_getSpawnFileName(){return BS&&this._isCmdFile()?process.env.COMSPEC||"cmd.exe":this.toolPath}_getSpawnArgs(e){if(BS&&this._isCmdFile()){let r=`/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;for(let n of this.args)r+=" ",r+=e.windowsVerbatimArguments?n:this._windowsQuoteCmdArg(n);return r+='"',[r]}return this.args}_endsWith(e,r){return e.endsWith(r)}_isCmdFile(){let e=this.toolPath.toUpperCase();return this._endsWith(e,".CMD")||this._endsWith(e,".BAT")}_windowsQuoteCmdArg(e){if(!this._isCmdFile())return this._uvQuoteCmdArg(e);if(!e)return'""';let r=[" "," ","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'],n=!1;for(let i of e)if(r.some(a=>a===i)){n=!0;break}if(!n)return e;let s='"',o=!0;for(let i=e.length;i>0;i--)s+=e[i-1],o&&e[i-1]==="\\"?s+="\\":e[i-1]==='"'?(o=!0,s+='"'):o=!1;return s+='"',s.split("").reverse().join("")}_uvQuoteCmdArg(e){if(!e)return'""';if(!e.includes(" ")&&!e.includes(" ")&&!e.includes('"'))return e;if(!e.includes('"')&&!e.includes("\\"))return`"${e}"`;let r='"',n=!0;for(let s=e.length;s>0;s--)r+=e[s-1],n&&e[s-1]==="\\"?r+="\\":e[s-1]==='"'?(n=!0,r+="\\"):n=!1;return r+='"',r.split("").reverse().join("")}_cloneExecOptions(e){e=e||{};let r={cwd:e.cwd||process.cwd(),env:e.env||process.env,silent:e.silent||!1,windowsVerbatimArguments:e.windowsVerbatimArguments||!1,failOnStdErr:e.failOnStdErr||!1,ignoreReturnCode:e.ignoreReturnCode||!1,delay:e.delay||1e4};return r.outStream=e.outStream||process.stdout,r.errStream=e.errStream||process.stderr,r}_getSpawnOptions(e,r){e=e||{};let n={};return n.cwd=e.cwd,n.env=e.env,n.windowsVerbatimArguments=e.windowsVerbatimArguments||this._isCmdFile(),e.windowsVerbatimArguments&&(n.argv0=`"${r}"`),n}exec(){return Yse(this,void 0,void 0,function*(){return!SS(this.toolPath)&&(this.toolPath.includes("/")||BS&&this.toolPath.includes("\\"))&&(this.toolPath=jse.resolve(process.cwd(),this.options.cwd||process.cwd(),this.toolPath)),this.toolPath=yield $s(this.toolPath,!0),new Promise((e,r)=>Yse(this,void 0,void 0,function*(){this._debug(`exec tool: ${this.toolPath}`),this._debug("arguments:");for(let l of this.args)this._debug(` ${l}`);let n=this._cloneExecOptions(this.options);!n.silent&&n.outStream&&n.outStream.write(this._getCommandString(n)+YE.EOL);let s=new O1(n,this.toolPath);if(s.on("debug",l=>{this._debug(l)}),this.options.cwd&&!(yield eh(this.options.cwd)))return r(new Error(`The cwd: ${this.options.cwd} does not exist!`));let o=this._getSpawnFileName(),i=Wse.spawn(o,this._getSpawnArgs(n),this._getSpawnOptions(this.options,o)),a="";i.stdout&&i.stdout.on("data",l=>{this.options.listeners&&this.options.listeners.stdout&&this.options.listeners.stdout(l),!n.silent&&n.outStream&&n.outStream.write(l),a=this._processLineBuffer(l,a,u=>{this.options.listeners&&this.options.listeners.stdline&&this.options.listeners.stdline(u)})});let c="";if(i.stderr&&i.stderr.on("data",l=>{s.processStderr=!0,this.options.listeners&&this.options.listeners.stderr&&this.options.listeners.stderr(l),!n.silent&&n.errStream&&n.outStream&&(n.failOnStdErr?n.errStream:n.outStream).write(l),c=this._processLineBuffer(l,c,u=>{this.options.listeners&&this.options.listeners.errline&&this.options.listeners.errline(u)})}),i.on("error",l=>{s.processError=l.message,s.processExited=!0,s.processClosed=!0,s.CheckComplete()}),i.on("exit",l=>{s.processExitCode=l,s.processExited=!0,this._debug(`Exit code ${l} received from tool '${this.toolPath}'`),s.CheckComplete()}),i.on("close",l=>{s.processExitCode=l,s.processExited=!0,s.processClosed=!0,this._debug(`STDIO streams have closed for tool '${this.toolPath}'`),s.CheckComplete()}),s.on("done",(l,u)=>{a.length>0&&this.emit("stdline",a),c.length>0&&this.emit("errline",c),i.removeAllListeners(),l?r(l):e(u)}),this.options.input){if(!i.stdin)throw new Error("child process missing stdin");i.stdin.end(this.options.input)}}))})}};function Kse(t){let e=[],r=!1,n=!1,s="";function o(i){n&&i!=='"'&&(s+="\\"),s+=i,n=!1}for(let i=0;i0&&(e.push(s),s="");continue}o(a)}return s.length>0&&e.push(s.trim()),e}var O1=class t extends M1.EventEmitter{constructor(e,r){if(super(),this.processClosed=!1,this.processError="",this.processExitCode=0,this.processExited=!1,this.processStderr=!1,this.delay=1e4,this.done=!1,this.timeout=null,!r)throw new Error("toolPath must not be empty");this.options=e,this.toolPath=r,e.delay&&(this.delay=e.delay)}CheckComplete(){this.done||(this.processClosed?this._setResult():this.processExited&&(this.timeout=(0,Jse.setTimeout)(t.HandleTimeout,this.delay,this)))}_debug(e){this.emit("debug",e)}_setResult(){let e;this.processExited&&(this.processError?e=new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`):this.processExitCode!==0&&!this.options.ignoreReturnCode?e=new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`):this.processStderr&&this.options.failOnStdErr&&(e=new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`))),this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.done=!0,this.emit("done",e,this.processExitCode)}static HandleTimeout(e){if(!e.done){if(!e.processClosed&&e.processExited){let r=`The STDIO streams did not close within ${e.delay/1e3} seconds of the exit event from process '${e.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;e._debug(r)}e._setResult()}}};var Xse=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function ld(t,e,r){return Xse(this,void 0,void 0,function*(){let n=Kse(t);if(n.length===0)throw new Error("Parameter 'commandLine' cannot be null or empty.");let s=n[0];return e=n.slice(1).concat(e||[]),new RS(s,e,r).exec()})}function WE(t,e,r){return Xse(this,void 0,void 0,function*(){var n,s;let o="",i="",a=new F1.StringDecoder("utf8"),c=new F1.StringDecoder("utf8"),l=(n=r?.listeners)===null||n===void 0?void 0:n.stdout,u=(s=r?.listeners)===null||s===void 0?void 0:s.stderr,d=y=>{i+=c.write(y),u&&u(y)},p=y=>{o+=a.write(y),l&&l(y)},m=Object.assign(Object.assign({},r?.listeners),{stdout:p,stderr:d}),h=yield ld(t,e,Object.assign(Object.assign({},r),{listeners:m}));return o+=a.end(),i+=c.end(),{exitCode:h,stdout:o,stderr:i}})}var RUt=U1.default.platform(),NUt=U1.default.arch();var TWe=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},q1;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(q1||(q1={}));function So(t){Dp("add-mask",{},t)}function oa(t,e){let r=process.env[`INPUT_${t.replace(/ /g,"_").toUpperCase()}`]||"";if(e&&e.required&&!r)throw new Error(`Input required and not supplied: ${t}`);return e&&e.trimWhitespace===!1?r:r.trim()}function eoe(t,e){let r=["true","True","TRUE"],n=["false","False","FALSE"],s=oa(t,e);if(r.includes(s))return!0;if(n.includes(s))return!1;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${t} -Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}function toe(t){process.exitCode=q1.Failure,rh(t)}function am(){return process.env.RUNNER_DEBUG==="1"}function $(t){Dp("debug",{},t)}function rh(t,e={}){Dp("error",nO(e),t instanceof Error?t.toString():t)}function _r(t,e={}){Dp("warning",nO(e),t instanceof Error?t.toString():t)}function Je(t){process.stdout.write(t+Zse.EOL)}function PWe(t){oO("group",t)}function vWe(){oO("endgroup")}function JE(t,e){return TWe(this,void 0,void 0,function*(){PWe(t);let r;try{r=yield e()}finally{vWe()}return r})}function cm(t,e){if(process.env.GITHUB_STATE||"")return nK("STATE",sK(t,e));Dp("save-state",{name:t},$u(e))}function roe(t){return process.env[`STATE_${t}`]||""}var NT=Q(require("fs"),1),$3=Q(require("os"),1),G3=Q(require("path"),1);var soe=Q(require("os"),1);function KE(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}function ooe(t,e,r){let n=new $1(t,e,r);process.stdout.write(n.toString()+soe.EOL)}var noe="::",$1=class{constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=noe+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${QWe(s)}`)}}return e+=`${noe}${_We(this.message)}`,e}};function _We(t){return KE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function QWe(t){return KE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}var aoe=require("os"),XE=require("fs"),G1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},{access:DWe,appendFile:kWe,writeFile:LWe}=XE.promises,ioe="GITHUB_STEP_SUMMARY";var H1=class{constructor(){this._buffer=""}filePath(){return G1(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[ioe];if(!e)throw new Error(`Unable to find environment variable for $${ioe}. Check if your runtime environment supports job summaries.`);try{yield DWe(e,XE.constants.R_OK|XE.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,r,n={}){let s=Object.entries(n).map(([o,i])=>` ${o}="${i}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return G1(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?LWe:kWe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return G1(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(aoe.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(i=>this.wrap("li",i)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(i=>{if(typeof i=="string")return this.wrap("td",i);let{header:a,data:c,colspan:l,rowspan:u}=i,d=a?"th":"td",p=Object.assign(Object.assign({},l&&{colspan:l}),u&&{rowspan:u});return this.wrap(d,c,p)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},i=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),a=this.wrap("img",null,Object.assign({src:e,alt:r},i));return this.addRaw(a).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},XUt=new H1;var z1=Q(require("os"),1);var t2t=z1.default.platform(),r2t=z1.default.arch();var coe;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(coe||(coe={}));function ps(t){ooe("debug",{},t)}var Gs=Q(require("fs"),1);var QJe=Q(dU(),1);var US=Q(require("os"),1),ud=Q(require("path"),1);var li=Q(dU(),1);var Zie=require("assert");var Xie=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};var yqt=process.platform==="win32",Eqt=process.platform==="darwin";function pU(t,e,r,n){return Xie(this,void 0,void 0,function*(){if(r=li.clean(r)||r,n=n||US.arch(),ps(`Caching tool ${e} ${r} ${n}`),ps(`source dir: ${t}`),!Gs.statSync(t).isDirectory())throw new Error("sourceDir is not a directory");let s=yield LJe(e,r,n);for(let o of Gs.readdirSync(t)){let i=ud.join(t,o);yield Hse(i,s,{recursive:!0})}return OJe(e,r,n),s})}function eae(t,e,r){if(!t)throw new Error("toolName parameter is required");if(!e)throw new Error("versionSpec parameter is required");if(r=r||US.arch(),!tae(e)){let s=kJe(t,r);e=MJe(s,e)}let n="";if(e){e=li.clean(e)||"";let s=ud.join(qS(),t,e,r);ps(`checking cache: ${s}`),Gs.existsSync(s)&&Gs.existsSync(`${s}.complete`)?(ps(`Found tool in cache ${t} ${e} ${r}`),n=s):ps("not found")}return n}function kJe(t,e){let r=[];e=e||US.arch();let n=ud.join(qS(),t);if(Gs.existsSync(n)){let s=Gs.readdirSync(n);for(let o of s)if(tae(o)){let i=ud.join(n,o,e||"");Gs.existsSync(i)&&Gs.existsSync(`${i}.complete`)&&r.push(o)}}return r}function LJe(t,e,r){return Xie(this,void 0,void 0,function*(){let n=ud.join(qS(),t,li.clean(e)||e,r||"");ps(`destination ${n}`);let s=`${n}.complete`;return yield L1(n),yield L1(s),yield im(n),n})}function OJe(t,e,r){let s=`${ud.join(qS(),t,li.clean(e)||e,r||"")}.complete`;Gs.writeFileSync(s,""),ps("finished caching tool")}function tae(t){let e=li.clean(t)||"";ps(`isExplicit: ${e}`);let r=li.valid(e)!=null;return ps(`explicit? ${r}`),r}function MJe(t,e){let r="";ps(`evaluating ${t.length} versions`),t=t.sort((n,s)=>li.gt(n,s)?1:-1);for(let n=t.length-1;n>=0;n--){let s=t[n];if(li.satisfies(s,e)){r=s;break}}return r?ps(`matched: ${r}`):ps("match not found"),r}function qS(){let t=process.env.RUNNER_TOOL_CACHE||"";return(0,Zie.ok)(t,"Expected RUNNER_TOOL_CACHE to be defined"),t}var UI=Q(require("path"),1);var nae=Q(require("os"),1);function iC(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}function sae(t,e,r){let n=new mU(t,e,r);process.stdout.write(n.toString()+nae.EOL)}var rae="::",mU=class{constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=rae+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${qJe(s)}`)}}return e+=`${rae}${UJe(this.message)}`,e}};function UJe(t){return iC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}function qJe(t){return iC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}var iae=require("os"),aC=require("fs"),fU=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},{access:$Je,appendFile:GJe,writeFile:HJe}=aC.promises,oae="GITHUB_STEP_SUMMARY";var AU=class{constructor(){this._buffer=""}filePath(){return fU(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[oae];if(!e)throw new Error(`Unable to find environment variable for $${oae}. Check if your runtime environment supports job summaries.`);try{yield $Je(e,aC.constants.R_OK|aC.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,r,n={}){let s=Object.entries(n).map(([o,i])=>` ${o}="${i}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return fU(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?HJe:GJe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return fU(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(iae.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(i=>this.wrap("li",i)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(i=>{if(typeof i=="string")return this.wrap("td",i);let{header:a,data:c,colspan:l,rowspan:u}=i,d=a?"th":"td",p=Object.assign(Object.assign({},l&&{colspan:l}),u&&{rowspan:u});return this.wrap(d,c,p)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},i=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),a=this.wrap("img",null,Object.assign({src:e,alt:r},i));return this.addRaw(a).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},Pqt=new AU;var hU=Q(require("os"),1);var Qqt=hU.default.platform(),Dqt=hU.default.arch();var aae;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(aae||(aae={}));function ui(t){sae("debug",{},t)}var ch=Q(require("fs"),1);function yU(t){let e={followSymbolicLinks:!0,implicitDescendants:!0,matchDirectories:!0,omitBrokenSymbolicLinks:!0,excludeHiddenFiles:!1};return t&&(typeof t.followSymbolicLinks=="boolean"&&(e.followSymbolicLinks=t.followSymbolicLinks,ui(`followSymbolicLinks '${e.followSymbolicLinks}'`)),typeof t.implicitDescendants=="boolean"&&(e.implicitDescendants=t.implicitDescendants,ui(`implicitDescendants '${e.implicitDescendants}'`)),typeof t.matchDirectories=="boolean"&&(e.matchDirectories=t.matchDirectories,ui(`matchDirectories '${e.matchDirectories}'`)),typeof t.omitBrokenSymbolicLinks=="boolean"&&(e.omitBrokenSymbolicLinks=t.omitBrokenSymbolicLinks,ui(`omitBrokenSymbolicLinks '${e.omitBrokenSymbolicLinks}'`)),typeof t.excludeHiddenFiles=="boolean"&&(e.excludeHiddenFiles=t.excludeHiddenFiles,ui(`excludeHiddenFiles '${e.excludeHiddenFiles}'`))),e}var VS=Q(require("path"),1);var sh=Q(require("path"),1),dd=Q(require("assert"),1),pd=process.platform==="win32";function Gl(t){if(t=$l(t),pd&&/^\\\\[^\\]+(\\[^\\]+)?$/.test(t))return t;let e=sh.dirname(t);return pd&&/^\\\\[^\\]+\\[^\\]+\\$/.test(e)&&(e=$l(e)),e}function $S(t,e){if((0,dd.default)(t,"ensureAbsoluteRoot parameter 'root' must not be empty"),(0,dd.default)(e,"ensureAbsoluteRoot parameter 'itemPath' must not be empty"),cC(e))return e;if(pd){if(e.match(/^[A-Z]:[^\\/]|^[A-Z]:$/i)){let r=process.cwd();return(0,dd.default)(r.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${r}'`),e[0].toUpperCase()===r[0].toUpperCase()?e.length===2?`${e[0]}:\\${r.substr(3)}`:(r.endsWith("\\")||(r+="\\"),`${e[0]}:\\${r.substr(3)}${e.substr(2)}`):`${e[0]}:\\${e.substr(2)}`}else if(ia(e).match(/^\\$|^\\[^\\]/)){let r=process.cwd();return(0,dd.default)(r.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${r}'`),`${r[0]}:\\${e.substr(1)}`}}return(0,dd.default)(cC(t),"ensureAbsoluteRoot parameter 'root' must have an absolute root"),t.endsWith("/")||pd&&t.endsWith("\\")||(t+=sh.sep),t+e}function cC(t){return(0,dd.default)(t,"hasAbsoluteRoot parameter 'itemPath' must not be empty"),t=ia(t),pd?t.startsWith("\\\\")||/^[A-Z]:\\/i.test(t):t.startsWith("/")}function lC(t){return(0,dd.default)(t,"isRooted parameter 'itemPath' must not be empty"),t=ia(t),pd?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")}function ia(t){return t=t||"",pd?(t=t.replace(/\//g,"\\"),(/^\\\\+[^\\]/.test(t)?"\\":"")+t.replace(/\\\\+/g,"\\")):t.replace(/\/\/+/g,"/")}function $l(t){return t?(t=ia(t),!t.endsWith(sh.sep)||t===sh.sep||pd&&/^[A-Z]:\\$/i.test(t)?t:t.substr(0,t.length-1)):""}var aa;(function(t){t[t.None=0]="None",t[t.Directory=1]="Directory",t[t.File=2]="File",t[t.All=3]="All"})(aa||(aa={}));var cae=process.platform==="win32";function CU(t){t=t.filter(n=>!n.negate);let e={};for(let n of t){let s=cae?n.searchPath.toUpperCase():n.searchPath;e[s]="candidate"}let r=[];for(let n of t){let s=cae?n.searchPath.toUpperCase():n.searchPath;if(e[s]==="included")continue;let o=!1,i=s,a=Gl(i);for(;a!==i;){if(e[a]){o=!0;break}i=a,a=Gl(i)}o||(r.push(n.searchPath),e[s]="included")}return r}function lae(t,e){let r=aa.None;for(let n of t)n.negate?r&=~n.match(e):r|=n.match(e);return r}function uae(t,e){return t.some(r=>!r.negate&&r.partialMatch(e))}var _ae=Q(require("os"),1),ah=Q(require("path"),1);var fd=Q(require("assert"),1),Qae=Q(vae(),1);var dm=Q(require("path"),1);var ih=Q(require("assert"),1),A5e=process.platform==="win32",pm=class{constructor(e){if(this.segments=[],typeof e=="string")if((0,ih.default)(e,"Parameter 'itemPath' must not be empty"),e=$l(e),!lC(e))this.segments=e.split(dm.sep);else{let r=e,n=Gl(r);for(;n!==r;){let s=dm.basename(r);this.segments.unshift(s),r=n,n=Gl(r)}this.segments.unshift(r)}else{(0,ih.default)(e.length>0,"Parameter 'itemPath' must not be an empty array");for(let r=0;rt.getLiteral(l)).filter(l=>!i&&!(i=l===""));this.searchPath=new pm(a).toString(),this.rootRegExp=new RegExp(t.regExpEscape(a[0]),Hl?"i":""),this.isImplicitPattern=r;let c={dot:!0,nobrace:!0,nocase:Hl,nocomment:!0,noext:!0,nonegate:!0};o=Hl?o.replace(/\\/g,"/"):o,this.minimatch=new h5e(o,c)}match(e){return this.segments[this.segments.length-1]==="**"?(e=ia(e),!e.endsWith(ah.sep)&&this.isImplicitPattern===!1&&(e=`${e}${ah.sep}`)):e=$l(e),this.minimatch.match(e)?this.trailingSeparator?aa.Directory:aa.All:aa.None}partialMatch(e){return e=$l(e),Gl(e)===e?this.rootRegExp.test(e):this.minimatch.matchOne(e.split(Hl?/\\+/:/\/+/),this.minimatch.set[0],!0)}static globEscape(e){return(Hl?e:e.replace(/\\/g,"\\\\")).replace(/(\[)(?=[^/]+\])/g,"[[]").replace(/\?/g,"[?]").replace(/\*/g,"[*]")}static fixupPattern(e,r){(0,fd.default)(e,"pattern cannot be empty");let n=new pm(e).segments.map(s=>t.getLiteral(s));if((0,fd.default)(n.every((s,o)=>(s!=="."||o===0)&&s!==".."),`Invalid pattern '${e}'. Relative pathing '.' and '..' is not allowed.`),(0,fd.default)(!lC(e)||n[0],`Invalid pattern '${e}'. Root segment must not contain globs.`),e=ia(e),e==="."||e.startsWith(`.${ah.sep}`))e=t.globEscape(process.cwd())+e.substr(1);else if(e==="~"||e.startsWith(`~${ah.sep}`))r=r||_ae.homedir(),(0,fd.default)(r,"Unable to determine HOME directory"),(0,fd.default)(cC(r),`Expected HOME directory to be a rooted path. Actual '${r}'`),e=t.globEscape(r)+e.substr(1);else if(Hl&&(e.match(/^[A-Z]:$/i)||e.match(/^[A-Z]:[^\\]/i))){let s=$S("C:\\dummy-root",e.substr(0,2));e.length>2&&!s.endsWith("\\")&&(s+="\\"),e=t.globEscape(s)+e.substr(2)}else if(Hl&&(e==="\\"||e.match(/^\\[^\\]/))){let s=$S("C:\\dummy-root","\\");s.endsWith("\\")||(s+="\\"),e=t.globEscape(s)+e.substr(1)}else e=$S(t.globEscape(process.cwd()),e);return ia(e)}static getLiteral(e){let r="";for(let n=0;n=0){if(o.length>1)return"";if(o){r+=o,n=i;continue}}}}r+=s}return r}static regExpEscape(e){return e.replace(/[[\\^$.|?*+()]/g,"\\$&")}};var pC=class{constructor(e,r){this.path=e,this.level=r}};var SU=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},g5e=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(i){return new Promise(function(a,c){i=t[o](i),s(a,c,i.done,i.value)})}}function s(o,i,a,c){Promise.resolve(c).then(function(l){o({value:l,done:a})},i)}},Ad=function(t){return this instanceof Ad?(this.v=t,this):new Ad(t)},y5e=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(t,e||[]),s,o=[];return s=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),a("next"),a("throw"),a("return",i),s[Symbol.asyncIterator]=function(){return this},s;function i(m){return function(h){return Promise.resolve(h).then(m,d)}}function a(m,h){n[m]&&(s[m]=function(y){return new Promise(function(I,x){o.push([m,y,I,x])>1||c(m,y)})},h&&(s[m]=h(s[m])))}function c(m,h){try{l(n[m](h))}catch(y){p(o[0][3],y)}}function l(m){m.value instanceof Ad?Promise.resolve(m.value.v).then(u,d):p(o[0][2],m)}function u(m){c("next",m)}function d(m){c("throw",m)}function p(m,h){m(h),o.shift(),o.length&&c(o[0][0],o[0][1])}},E5e=process.platform==="win32",zS=class t{constructor(e){this.patterns=[],this.searchPaths=[],this.options=yU(e)}getSearchPaths(){return this.searchPaths.slice()}glob(){return SU(this,void 0,void 0,function*(){var e,r,n,s;let o=[];try{for(var i=!0,a=g5e(this.globGenerator()),c;c=yield a.next(),e=c.done,!e;i=!0){s=c.value,i=!1;let l=s;o.push(l)}}catch(l){r={error:l}}finally{try{!i&&!e&&(n=a.return)&&(yield n.call(a))}finally{if(r)throw r.error}}return o})}globGenerator(){return y5e(this,arguments,function*(){let r=yU(this.options),n=[];for(let i of this.patterns)n.push(i),r.implicitDescendants&&(i.trailingSeparator||i.segments[i.segments.length-1]!=="**")&&n.push(new dC(i.negate,!0,i.segments.concat("**")));let s=[];for(let i of CU(n)){ui(`Search path '${i}'`);try{yield Ad(ch.promises.lstat(i))}catch(a){if(a.code==="ENOENT")continue;throw a}s.unshift(new pC(i,1))}let o=[];for(;s.length;){let i=s.pop(),a=lae(n,i.path),c=!!a||uae(n,i.path);if(!a&&!c)continue;let l=yield Ad(t.stat(i,r,o));if(l&&!(r.excludeHiddenFiles&&VS.basename(i.path).match(/^\./)))if(l.isDirectory()){if(a&aa.Directory&&r.matchDirectories)yield yield Ad(i.path);else if(!c)continue;let u=i.level+1,d=(yield Ad(ch.promises.readdir(i.path))).map(p=>new pC(VS.join(i.path,p),u));s.push(...d.reverse())}else a&aa.File&&(yield yield Ad(i.path))}})}static create(e,r){return SU(this,void 0,void 0,function*(){let n=new t(r);E5e&&(e=e.replace(/\r\n/g,` +`),$ke=!0)),new Ny.CredentialsProviderError("AWS_PROFILE is set, skipping fromEnv provider.",{logger:t.logger,tryNextLink:!0});return t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromEnv"),P5.fromEnv(t)()},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromSSO");let{ssoStartUrl:r,ssoAccountId:n,ssoRegion:s,ssoRoleName:o,ssoSession:a}=t;if(!r&&!n&&!s&&!o&&!a)throw new Ny.CredentialsProviderError("Skipping SSO provider in default chain (inputs do not include SSO fields).",{logger:t.logger});let{fromSSO:c}=await Promise.resolve().then(()=>D(GJ()));return c(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromIni");let{fromIni:r}=await Promise.resolve().then(()=>D(Uke()));return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromProcess");let{fromProcess:r}=await Promise.resolve().then(()=>D(B5()));return r(t)(e)},async e=>{t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::fromTokenFile");let{fromTokenFile:r}=await Promise.resolve().then(()=>D(N5()));return r(t)(e)},async()=>(t.logger?.debug("@aws-sdk/credential-provider-node - defaultProvider::remoteProvider"),(await RSt(t))()),async()=>{throw new Ny.CredentialsProviderError("Could not load credentials from any providers",{tryNextLink:!1,logger:t.logger})}],Gke),"defaultProvider"),vSt=i(t=>t?.expiration!==void 0,"credentialsWillNeedRefresh"),Gke=i(t=>t?.expiration!==void 0&&t.expiration.getTime()-Date.now()<3e5,"credentialsTreatedAsExpired");VD.credentialsTreatedAsExpired=Gke;VD.credentialsWillNeedRefresh=vSt;VD.defaultProvider=PSt});var jke=b(jD=>{"use strict";Object.defineProperty(jD,"__esModule",{value:!0});jD.bdd=void 0;var _St=(xt(),W(df)),Ty="ref",zf=-1,YD=!0,Hke="isSet",Q5="PartitionResult",bp="stringEquals",WD="booleanEquals",_5="getAttr",zke={[Ty]:"Endpoint"},Sp={fn:_5,argv:[{[Ty]:Q5},"name"]},Vke={[Ty]:Q5},Vf={},Yke=[{[Ty]:"Region"}],Wke={conditions:[[Hke,[zke]],[Hke,Yke],["aws.partition",Yke,Q5],[bp,[Sp,"aws-eusc"]],[bp,[Sp,"aws-iso-f"]],[bp,[Sp,"aws-iso-e"]],[bp,[Sp,"aws-iso-b"]],[bp,[Sp,"aws-iso"]],[bp,[Sp,"aws-cn"]],[bp,[Sp,"aws-us-gov"]],[bp,[Sp,"aws"]],[WD,[{[Ty]:"UseFIPS"},YD]],[WD,[{fn:_5,argv:[Vke,"supportsFIPS"]},YD]],[WD,[{[Ty]:"UseDualStack"},YD]],[WD,[{fn:_5,argv:[Vke,"supportsDualStack"]},YD]]],results:[[zf],[zf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[zf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[zke,Vf],["https://api.ecr.{Region}.{PartitionResult#dnsSuffix}",Vf],["https://ecr.{Region}.{PartitionResult#dualStackDnsSuffix}",Vf],["https://api.ecr-fips.{Region}.{PartitionResult#dnsSuffix}",Vf],["https://ecr-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",Vf],["https://api.ecr-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",Vf],[zf,"FIPS and DualStack are enabled, but this partition does not support one or both"],[zf,"FIPS is enabled but this partition does not support FIPS"],["https://api.ecr.{Region}.{PartitionResult#dualStackDnsSuffix}",Vf],[zf,"DualStack is enabled but this partition does not support DualStack"],[zf,"Invalid Configuration: Missing Region"]]},QSt=2,qn=1e8,DSt=new Int32Array([-1,1,-1,0,23,3,1,4,qn+13,2,5,qn+13,3,20,6,4,20,7,5,20,8,6,20,9,7,20,10,8,20,11,9,20,12,10,20,13,11,16,14,13,15,qn+4,14,qn+11,qn+12,12,18,17,13,qn+9,qn+10,13,19,qn+6,14,qn+8,qn+9,11,22,21,13,qn+5,qn+4,13,qn+7,qn+6,11,qn+1,24,13,qn+2,qn+3]);jD.bdd=_St.BinaryDecisionDiagram.from(DSt,QSt,Wke.conditions,Wke.results)});var Jke=b(JD=>{"use strict";Object.defineProperty(JD,"__esModule",{value:!0});JD.defaultEndpointResolver=void 0;var kSt=(wt(),W(Ds)),D5=(xt(),W(df)),LSt=jke(),OSt=new D5.EndpointCache({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),MSt=i((t,e={})=>OSt.get(t,()=>(0,D5.decideEndpoint)(LSt.bdd,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");JD.defaultEndpointResolver=MSt;D5.customEndpointFunctions.aws=kSt.awsEndpointFunctions});var KD=b(Py=>{"use strict";Object.defineProperty(Py,"__esModule",{value:!0});Py.ECRServiceException=Py.__ServiceException=void 0;var Kke=(Ce(),W(Ui));Object.defineProperty(Py,"__ServiceException",{enumerable:!0,get:i(function(){return Kke.ServiceException},"get")});var k5=class t extends Kke.ServiceException{static{i(this,"ECRServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}};Py.ECRServiceException=k5});var T6=b(z=>{"use strict";Object.defineProperty(z,"__esModule",{value:!0});z.InvalidLayerPartException=z.ImageStorageClassUpdateNotSupportedException=z.LifecyclePolicyPreviewInProgressException=z.UnsupportedImageTypeException=z.ImageArchivedException=z.ExclusionAlreadyExistsException=z.BlockedByOrganizationPolicyException=z.ReferencedImagesNotFoundException=z.ImageTagAlreadyExistsException=z.ImageDigestDoesNotMatchException=z.ImageAlreadyExistsException=z.UnableToListUpstreamImageReferrersException=z.LifecyclePolicyPreviewNotFoundException=z.UnableToGetUpstreamLayerException=z.LayersNotFoundException=z.LayerInaccessibleException=z.ScanNotFoundException=z.ImageNotFoundException=z.ExclusionNotFoundException=z.SigningConfigurationNotFoundException=z.RepositoryPolicyNotFoundException=z.TemplateNotFoundException=z.RepositoryNotEmptyException=z.RegistryPolicyNotFoundException=z.PullThroughCacheRuleNotFoundException=z.LifecyclePolicyNotFoundException=z.TemplateAlreadyExistsException=z.TooManyTagsException=z.RepositoryAlreadyExistsException=z.InvalidTagParameterException=z.UnsupportedUpstreamRegistryException=z.UnableToDecryptSecretValueException=z.UnableToAccessSecretException=z.SecretNotFoundException=z.PullThroughCacheRuleAlreadyExistsException=z.UploadNotFoundException=z.LayerPartTooSmallException=z.LayerAlreadyExistsException=z.KmsException=z.InvalidLayerException=z.EmptyUploadException=z.ValidationException=z.UnableToGetUpstreamImageException=z.LimitExceededException=z.ServerException=z.RepositoryNotFoundException=z.InvalidParameterException=void 0;var Ge=KD(),L5=class t extends Ge.ECRServiceException{static{i(this,"InvalidParameterException")}name="InvalidParameterException";$fault="client";constructor(e){super({name:"InvalidParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.InvalidParameterException=L5;var O5=class t extends Ge.ECRServiceException{static{i(this,"RepositoryNotFoundException")}name="RepositoryNotFoundException";$fault="client";constructor(e){super({name:"RepositoryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.RepositoryNotFoundException=O5;var M5=class t extends Ge.ECRServiceException{static{i(this,"ServerException")}name="ServerException";$fault="server";constructor(e){super({name:"ServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ServerException=M5;var F5=class t extends Ge.ECRServiceException{static{i(this,"LimitExceededException")}name="LimitExceededException";$fault="client";constructor(e){super({name:"LimitExceededException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LimitExceededException=F5;var U5=class t extends Ge.ECRServiceException{static{i(this,"UnableToGetUpstreamImageException")}name="UnableToGetUpstreamImageException";$fault="client";constructor(e){super({name:"UnableToGetUpstreamImageException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnableToGetUpstreamImageException=U5;var q5=class t extends Ge.ECRServiceException{static{i(this,"ValidationException")}name="ValidationException";$fault="client";constructor(e){super({name:"ValidationException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ValidationException=q5;var $5=class t extends Ge.ECRServiceException{static{i(this,"EmptyUploadException")}name="EmptyUploadException";$fault="client";constructor(e){super({name:"EmptyUploadException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.EmptyUploadException=$5;var G5=class t extends Ge.ECRServiceException{static{i(this,"InvalidLayerException")}name="InvalidLayerException";$fault="client";constructor(e){super({name:"InvalidLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.InvalidLayerException=G5;var H5=class t extends Ge.ECRServiceException{static{i(this,"KmsException")}name="KmsException";$fault="client";kmsError;constructor(e){super({name:"KmsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.kmsError=e.kmsError}};z.KmsException=H5;var z5=class t extends Ge.ECRServiceException{static{i(this,"LayerAlreadyExistsException")}name="LayerAlreadyExistsException";$fault="client";constructor(e){super({name:"LayerAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LayerAlreadyExistsException=z5;var V5=class t extends Ge.ECRServiceException{static{i(this,"LayerPartTooSmallException")}name="LayerPartTooSmallException";$fault="client";constructor(e){super({name:"LayerPartTooSmallException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LayerPartTooSmallException=V5;var Y5=class t extends Ge.ECRServiceException{static{i(this,"UploadNotFoundException")}name="UploadNotFoundException";$fault="client";constructor(e){super({name:"UploadNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UploadNotFoundException=Y5;var W5=class t extends Ge.ECRServiceException{static{i(this,"PullThroughCacheRuleAlreadyExistsException")}name="PullThroughCacheRuleAlreadyExistsException";$fault="client";constructor(e){super({name:"PullThroughCacheRuleAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.PullThroughCacheRuleAlreadyExistsException=W5;var j5=class t extends Ge.ECRServiceException{static{i(this,"SecretNotFoundException")}name="SecretNotFoundException";$fault="client";constructor(e){super({name:"SecretNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.SecretNotFoundException=j5;var J5=class t extends Ge.ECRServiceException{static{i(this,"UnableToAccessSecretException")}name="UnableToAccessSecretException";$fault="client";constructor(e){super({name:"UnableToAccessSecretException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnableToAccessSecretException=J5;var K5=class t extends Ge.ECRServiceException{static{i(this,"UnableToDecryptSecretValueException")}name="UnableToDecryptSecretValueException";$fault="client";constructor(e){super({name:"UnableToDecryptSecretValueException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnableToDecryptSecretValueException=K5;var X5=class t extends Ge.ECRServiceException{static{i(this,"UnsupportedUpstreamRegistryException")}name="UnsupportedUpstreamRegistryException";$fault="client";constructor(e){super({name:"UnsupportedUpstreamRegistryException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnsupportedUpstreamRegistryException=X5;var Z5=class t extends Ge.ECRServiceException{static{i(this,"InvalidTagParameterException")}name="InvalidTagParameterException";$fault="client";constructor(e){super({name:"InvalidTagParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.InvalidTagParameterException=Z5;var e6=class t extends Ge.ECRServiceException{static{i(this,"RepositoryAlreadyExistsException")}name="RepositoryAlreadyExistsException";$fault="client";constructor(e){super({name:"RepositoryAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.RepositoryAlreadyExistsException=e6;var t6=class t extends Ge.ECRServiceException{static{i(this,"TooManyTagsException")}name="TooManyTagsException";$fault="client";constructor(e){super({name:"TooManyTagsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.TooManyTagsException=t6;var r6=class t extends Ge.ECRServiceException{static{i(this,"TemplateAlreadyExistsException")}name="TemplateAlreadyExistsException";$fault="client";constructor(e){super({name:"TemplateAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.TemplateAlreadyExistsException=r6;var n6=class t extends Ge.ECRServiceException{static{i(this,"LifecyclePolicyNotFoundException")}name="LifecyclePolicyNotFoundException";$fault="client";constructor(e){super({name:"LifecyclePolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LifecyclePolicyNotFoundException=n6;var s6=class t extends Ge.ECRServiceException{static{i(this,"PullThroughCacheRuleNotFoundException")}name="PullThroughCacheRuleNotFoundException";$fault="client";constructor(e){super({name:"PullThroughCacheRuleNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.PullThroughCacheRuleNotFoundException=s6;var o6=class t extends Ge.ECRServiceException{static{i(this,"RegistryPolicyNotFoundException")}name="RegistryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RegistryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.RegistryPolicyNotFoundException=o6;var i6=class t extends Ge.ECRServiceException{static{i(this,"RepositoryNotEmptyException")}name="RepositoryNotEmptyException";$fault="client";constructor(e){super({name:"RepositoryNotEmptyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.RepositoryNotEmptyException=i6;var a6=class t extends Ge.ECRServiceException{static{i(this,"TemplateNotFoundException")}name="TemplateNotFoundException";$fault="client";constructor(e){super({name:"TemplateNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.TemplateNotFoundException=a6;var c6=class t extends Ge.ECRServiceException{static{i(this,"RepositoryPolicyNotFoundException")}name="RepositoryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RepositoryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.RepositoryPolicyNotFoundException=c6;var l6=class t extends Ge.ECRServiceException{static{i(this,"SigningConfigurationNotFoundException")}name="SigningConfigurationNotFoundException";$fault="client";constructor(e){super({name:"SigningConfigurationNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.SigningConfigurationNotFoundException=l6;var u6=class t extends Ge.ECRServiceException{static{i(this,"ExclusionNotFoundException")}name="ExclusionNotFoundException";$fault="client";constructor(e){super({name:"ExclusionNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ExclusionNotFoundException=u6;var d6=class t extends Ge.ECRServiceException{static{i(this,"ImageNotFoundException")}name="ImageNotFoundException";$fault="client";constructor(e){super({name:"ImageNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageNotFoundException=d6;var p6=class t extends Ge.ECRServiceException{static{i(this,"ScanNotFoundException")}name="ScanNotFoundException";$fault="client";constructor(e){super({name:"ScanNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ScanNotFoundException=p6;var m6=class t extends Ge.ECRServiceException{static{i(this,"LayerInaccessibleException")}name="LayerInaccessibleException";$fault="client";constructor(e){super({name:"LayerInaccessibleException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LayerInaccessibleException=m6;var f6=class t extends Ge.ECRServiceException{static{i(this,"LayersNotFoundException")}name="LayersNotFoundException";$fault="client";constructor(e){super({name:"LayersNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LayersNotFoundException=f6;var A6=class t extends Ge.ECRServiceException{static{i(this,"UnableToGetUpstreamLayerException")}name="UnableToGetUpstreamLayerException";$fault="client";constructor(e){super({name:"UnableToGetUpstreamLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnableToGetUpstreamLayerException=A6;var h6=class t extends Ge.ECRServiceException{static{i(this,"LifecyclePolicyPreviewNotFoundException")}name="LifecyclePolicyPreviewNotFoundException";$fault="client";constructor(e){super({name:"LifecyclePolicyPreviewNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LifecyclePolicyPreviewNotFoundException=h6;var g6=class t extends Ge.ECRServiceException{static{i(this,"UnableToListUpstreamImageReferrersException")}name="UnableToListUpstreamImageReferrersException";$fault="client";constructor(e){super({name:"UnableToListUpstreamImageReferrersException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnableToListUpstreamImageReferrersException=g6;var y6=class t extends Ge.ECRServiceException{static{i(this,"ImageAlreadyExistsException")}name="ImageAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageAlreadyExistsException=y6;var E6=class t extends Ge.ECRServiceException{static{i(this,"ImageDigestDoesNotMatchException")}name="ImageDigestDoesNotMatchException";$fault="client";constructor(e){super({name:"ImageDigestDoesNotMatchException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageDigestDoesNotMatchException=E6;var C6=class t extends Ge.ECRServiceException{static{i(this,"ImageTagAlreadyExistsException")}name="ImageTagAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageTagAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageTagAlreadyExistsException=C6;var I6=class t extends Ge.ECRServiceException{static{i(this,"ReferencedImagesNotFoundException")}name="ReferencedImagesNotFoundException";$fault="client";constructor(e){super({name:"ReferencedImagesNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ReferencedImagesNotFoundException=I6;var x6=class t extends Ge.ECRServiceException{static{i(this,"BlockedByOrganizationPolicyException")}name="BlockedByOrganizationPolicyException";$fault="client";constructor(e){super({name:"BlockedByOrganizationPolicyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.BlockedByOrganizationPolicyException=x6;var w6=class t extends Ge.ECRServiceException{static{i(this,"ExclusionAlreadyExistsException")}name="ExclusionAlreadyExistsException";$fault="client";constructor(e){super({name:"ExclusionAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ExclusionAlreadyExistsException=w6;var b6=class t extends Ge.ECRServiceException{static{i(this,"ImageArchivedException")}name="ImageArchivedException";$fault="client";constructor(e){super({name:"ImageArchivedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageArchivedException=b6;var S6=class t extends Ge.ECRServiceException{static{i(this,"UnsupportedImageTypeException")}name="UnsupportedImageTypeException";$fault="client";constructor(e){super({name:"UnsupportedImageTypeException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.UnsupportedImageTypeException=S6;var B6=class t extends Ge.ECRServiceException{static{i(this,"LifecyclePolicyPreviewInProgressException")}name="LifecyclePolicyPreviewInProgressException";$fault="client";constructor(e){super({name:"LifecyclePolicyPreviewInProgressException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.LifecyclePolicyPreviewInProgressException=B6;var R6=class t extends Ge.ECRServiceException{static{i(this,"ImageStorageClassUpdateNotSupportedException")}name="ImageStorageClassUpdateNotSupportedException";$fault="client";constructor(e){super({name:"ImageStorageClassUpdateNotSupportedException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};z.ImageStorageClassUpdateNotSupportedException=R6;var N6=class t extends Ge.ECRServiceException{static{i(this,"InvalidLayerPartException")}name="InvalidLayerPartException";$fault="client";registryId;repositoryName;uploadId;lastValidByteReceived;constructor(e){super({name:"InvalidLayerPartException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.registryId=e.registryId,this.repositoryName=e.repositoryName,this.uploadId=e.uploadId,this.lastValidByteReceived=e.lastValidByteReceived}};z.InvalidLayerPartException=N6});var V6=b(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0});A.Attribute$=A.errorTypeRegistries=A.ValidationException$=A.UploadNotFoundException$=A.UnsupportedUpstreamRegistryException$=A.UnsupportedImageTypeException$=A.UnableToListUpstreamImageReferrersException$=A.UnableToGetUpstreamLayerException$=A.UnableToGetUpstreamImageException$=A.UnableToDecryptSecretValueException$=A.UnableToAccessSecretException$=A.TooManyTagsException$=A.TemplateNotFoundException$=A.TemplateAlreadyExistsException$=A.SigningConfigurationNotFoundException$=A.ServerException$=A.SecretNotFoundException$=A.ScanNotFoundException$=A.RepositoryPolicyNotFoundException$=A.RepositoryNotFoundException$=A.RepositoryNotEmptyException$=A.RepositoryAlreadyExistsException$=A.RegistryPolicyNotFoundException$=A.ReferencedImagesNotFoundException$=A.PullThroughCacheRuleNotFoundException$=A.PullThroughCacheRuleAlreadyExistsException$=A.LimitExceededException$=A.LifecyclePolicyPreviewNotFoundException$=A.LifecyclePolicyPreviewInProgressException$=A.LifecyclePolicyNotFoundException$=A.LayersNotFoundException$=A.LayerPartTooSmallException$=A.LayerInaccessibleException$=A.LayerAlreadyExistsException$=A.KmsException$=A.InvalidTagParameterException$=A.InvalidParameterException$=A.InvalidLayerPartException$=A.InvalidLayerException$=A.ImageTagAlreadyExistsException$=A.ImageStorageClassUpdateNotSupportedException$=A.ImageNotFoundException$=A.ImageDigestDoesNotMatchException$=A.ImageArchivedException$=A.ImageAlreadyExistsException$=A.ExclusionNotFoundException$=A.ExclusionAlreadyExistsException$=A.EmptyUploadException$=A.BlockedByOrganizationPolicyException$=A.ECRServiceException$=void 0;A.DescribeRegistryResponse$=A.DescribeRegistryRequest$=A.DescribePullThroughCacheRulesResponse$=A.DescribePullThroughCacheRulesRequest$=A.DescribeImagesResponse$=A.DescribeImagesRequest$=A.DescribeImageSigningStatusResponse$=A.DescribeImageSigningStatusRequest$=A.DescribeImagesFilter$=A.DescribeImageScanFindingsResponse$=A.DescribeImageScanFindingsRequest$=A.DescribeImageReplicationStatusResponse$=A.DescribeImageReplicationStatusRequest$=A.DeregisterPullTimeUpdateExclusionResponse$=A.DeregisterPullTimeUpdateExclusionRequest$=A.DeleteSigningConfigurationResponse$=A.DeleteSigningConfigurationRequest$=A.DeleteRepositoryResponse$=A.DeleteRepositoryRequest$=A.DeleteRepositoryPolicyResponse$=A.DeleteRepositoryPolicyRequest$=A.DeleteRepositoryCreationTemplateResponse$=A.DeleteRepositoryCreationTemplateRequest$=A.DeleteRegistryPolicyResponse$=A.DeleteRegistryPolicyRequest$=A.DeletePullThroughCacheRuleResponse$=A.DeletePullThroughCacheRuleRequest$=A.DeleteLifecyclePolicyResponse$=A.DeleteLifecyclePolicyRequest$=A.CvssScoreDetails$=A.CvssScoreAdjustment$=A.CvssScore$=A.CreateRepositoryResponse$=A.CreateRepositoryRequest$=A.CreateRepositoryCreationTemplateResponse$=A.CreateRepositoryCreationTemplateRequest$=A.CreatePullThroughCacheRuleResponse$=A.CreatePullThroughCacheRuleRequest$=A.CompleteLayerUploadResponse$=A.CompleteLayerUploadRequest$=A.BatchGetRepositoryScanningConfigurationResponse$=A.BatchGetRepositoryScanningConfigurationRequest$=A.BatchGetImageResponse$=A.BatchGetImageRequest$=A.BatchDeleteImageResponse$=A.BatchDeleteImageRequest$=A.BatchCheckLayerAvailabilityResponse$=A.BatchCheckLayerAvailabilityRequest$=A.AwsEcrContainerImageDetails$=A.AuthorizationData$=void 0;A.ListImagesFilter$=A.ListImageReferrersResponse$=A.ListImageReferrersRequest$=A.ListImageReferrersFilter$=A.LifecyclePolicyRuleAction$=A.LifecyclePolicyPreviewSummary$=A.LifecyclePolicyPreviewResult$=A.LifecyclePolicyPreviewFilter$=A.LayerFailure$=A.Layer$=A.InitiateLayerUploadResponse$=A.InitiateLayerUploadRequest$=A.ImageTagMutabilityExclusionFilter$=A.ImageSigningStatus$=A.ImageScanStatus$=A.ImageScanningConfiguration$=A.ImageScanFindingsSummary$=A.ImageScanFindings$=A.ImageScanFinding$=A.ImageReplicationStatus$=A.ImageReferrer$=A.ImageIdentifier$=A.ImageFailure$=A.ImageDetail$=A.Image$=A.GetSigningConfigurationResponse$=A.GetSigningConfigurationRequest$=A.GetRepositoryPolicyResponse$=A.GetRepositoryPolicyRequest$=A.GetRegistryScanningConfigurationResponse$=A.GetRegistryScanningConfigurationRequest$=A.GetRegistryPolicyResponse$=A.GetRegistryPolicyRequest$=A.GetLifecyclePolicyResponse$=A.GetLifecyclePolicyRequest$=A.GetLifecyclePolicyPreviewResponse$=A.GetLifecyclePolicyPreviewRequest$=A.GetDownloadUrlForLayerResponse$=A.GetDownloadUrlForLayerRequest$=A.GetAuthorizationTokenResponse$=A.GetAuthorizationTokenRequest$=A.GetAccountSettingResponse$=A.GetAccountSettingRequest$=A.EnhancedImageScanFinding$=A.EncryptionConfigurationForRepositoryCreationTemplate$=A.EncryptionConfiguration$=A.DescribeRepositoryCreationTemplatesResponse$=A.DescribeRepositoryCreationTemplatesRequest$=A.DescribeRepositoriesResponse$=A.DescribeRepositoriesRequest$=void 0;A.StartImageScanRequest$=A.SigningRule$=A.SigningRepositoryFilter$=A.SigningConfiguration$=A.SetRepositoryPolicyResponse$=A.SetRepositoryPolicyRequest$=A.ScoreDetails$=A.ScanningRepositoryFilter$=A.ResourceDetails$=A.Resource$=A.RepositoryScanningConfigurationFailure$=A.RepositoryScanningConfiguration$=A.RepositoryFilter$=A.RepositoryCreationTemplate$=A.Repository$=A.ReplicationRule$=A.ReplicationDestination$=A.ReplicationConfiguration$=A.Remediation$=A.RegistryScanningRule$=A.RegistryScanningConfiguration$=A.RegisterPullTimeUpdateExclusionResponse$=A.RegisterPullTimeUpdateExclusionRequest$=A.Recommendation$=A.PutSigningConfigurationResponse$=A.PutSigningConfigurationRequest$=A.PutReplicationConfigurationResponse$=A.PutReplicationConfigurationRequest$=A.PutRegistryScanningConfigurationResponse$=A.PutRegistryScanningConfigurationRequest$=A.PutRegistryPolicyResponse$=A.PutRegistryPolicyRequest$=A.PutLifecyclePolicyResponse$=A.PutLifecyclePolicyRequest$=A.PutImageTagMutabilityResponse$=A.PutImageTagMutabilityRequest$=A.PutImageScanningConfigurationResponse$=A.PutImageScanningConfigurationRequest$=A.PutImageResponse$=A.PutImageRequest$=A.PutAccountSettingResponse$=A.PutAccountSettingRequest$=A.PullThroughCacheRule$=A.PackageVulnerabilityDetails$=A.ListTagsForResourceResponse$=A.ListTagsForResourceRequest$=A.ListPullTimeUpdateExclusionsResponse$=A.ListPullTimeUpdateExclusionsRequest$=A.ListImagesResponse$=A.ListImagesRequest$=void 0;A.GetLifecyclePolicyPreview$=A.GetLifecyclePolicy$=A.GetDownloadUrlForLayer$=A.GetAuthorizationToken$=A.GetAccountSetting$=A.DescribeRepositoryCreationTemplates$=A.DescribeRepositories$=A.DescribeRegistry$=A.DescribePullThroughCacheRules$=A.DescribeImageSigningStatus$=A.DescribeImageScanFindings$=A.DescribeImages$=A.DescribeImageReplicationStatus$=A.DeregisterPullTimeUpdateExclusion$=A.DeleteSigningConfiguration$=A.DeleteRepositoryPolicy$=A.DeleteRepositoryCreationTemplate$=A.DeleteRepository$=A.DeleteRegistryPolicy$=A.DeletePullThroughCacheRule$=A.DeleteLifecyclePolicy$=A.CreateRepositoryCreationTemplate$=A.CreateRepository$=A.CreatePullThroughCacheRule$=A.CompleteLayerUpload$=A.BatchGetRepositoryScanningConfiguration$=A.BatchGetImage$=A.BatchDeleteImage$=A.BatchCheckLayerAvailability$=A.VulnerablePackage$=A.ValidatePullThroughCacheRuleResponse$=A.ValidatePullThroughCacheRuleRequest$=A.UploadLayerPartResponse$=A.UploadLayerPartRequest$=A.UpdateRepositoryCreationTemplateResponse$=A.UpdateRepositoryCreationTemplateRequest$=A.UpdatePullThroughCacheRuleResponse$=A.UpdatePullThroughCacheRuleRequest$=A.UpdateImageStorageClassResponse$=A.UpdateImageStorageClassRequest$=A.UntagResourceResponse$=A.UntagResourceRequest$=A.TransitioningImageTotalCount$=A.TagResourceResponse$=A.TagResourceRequest$=A.Tag$=A.SubjectIdentifier$=A.StartLifecyclePolicyPreviewResponse$=A.StartLifecyclePolicyPreviewRequest$=A.StartImageScanResponse$=void 0;A.ValidatePullThroughCacheRule$=A.UploadLayerPart$=A.UpdateRepositoryCreationTemplate$=A.UpdatePullThroughCacheRule$=A.UpdateImageStorageClass$=A.UntagResource$=A.TagResource$=A.StartLifecyclePolicyPreview$=A.StartImageScan$=A.SetRepositoryPolicy$=A.RegisterPullTimeUpdateExclusion$=A.PutSigningConfiguration$=A.PutReplicationConfiguration$=A.PutRegistryScanningConfiguration$=A.PutRegistryPolicy$=A.PutLifecyclePolicy$=A.PutImageTagMutability$=A.PutImageScanningConfiguration$=A.PutImage$=A.PutAccountSetting$=A.ListTagsForResource$=A.ListPullTimeUpdateExclusions$=A.ListImages$=A.ListImageReferrers$=A.InitiateLayerUpload$=A.GetSigningConfiguration$=A.GetRepositoryPolicy$=A.GetRegistryScanningConfiguration$=A.GetRegistryPolicy$=void 0;var FSt="Attribute",USt="AuthorizationData",qSt="AuthorizationDataList",$St="AwsEcrContainerImageDetails",GSt="AttributeList",HSt="BlockedByOrganizationPolicyException",zSt="BatchCheckLayerAvailability",VSt="BatchCheckLayerAvailabilityRequest",YSt="BatchCheckLayerAvailabilityResponse",WSt="BatchDeleteImage",jSt="BatchDeleteImageRequest",JSt="BatchDeleteImageResponse",KSt="BatchGetImage",XSt="BatchGetImageRequest",ZSt="BatchGetImageResponse",eBt="BatchGetRepositoryScanningConfiguration",tBt="BatchGetRepositoryScanningConfigurationRequest",rBt="BatchGetRepositoryScanningConfigurationResponse",nBt="CompleteLayerUpload",sBt="CompleteLayerUploadRequest",oBt="CompleteLayerUploadResponse",iBt="CreatePullThroughCacheRule",aBt="CreatePullThroughCacheRuleRequest",cBt="CreatePullThroughCacheRuleResponse",lBt="CreateRepository",uBt="CreateRepositoryCreationTemplate",dBt="CreateRepositoryCreationTemplateRequest",pBt="CreateRepositoryCreationTemplateResponse",mBt="CreateRepositoryRequest",fBt="CreateRepositoryResponse",ABt="CvssScore",hBt="CvssScoreAdjustment",gBt="CvssScoreAdjustmentList",yBt="CvssScoreDetails",EBt="CvssScoreList",CBt="DescribeImages",IBt="DescribeImagesFilter",xBt="DescribeImagesRequest",wBt="DescribeImageReplicationStatus",bBt="DescribeImageReplicationStatusRequest",SBt="DescribeImageReplicationStatusResponse",BBt="DescribeImagesResponse",RBt="DescribeImageScanFindings",NBt="DescribeImageScanFindingsRequest",TBt="DescribeImageScanFindingsResponse",PBt="DescribeImageSigningStatus",vBt="DescribeImageSigningStatusRequest",_Bt="DescribeImageSigningStatusResponse",QBt="DeleteLifecyclePolicy",DBt="DeleteLifecyclePolicyRequest",kBt="DeleteLifecyclePolicyResponse",LBt="DeletePullThroughCacheRule",OBt="DeletePullThroughCacheRuleRequest",MBt="DeletePullThroughCacheRuleResponse",FBt="DescribePullThroughCacheRulesRequest",UBt="DescribePullThroughCacheRulesResponse",qBt="DescribePullThroughCacheRules",$Bt="DeregisterPullTimeUpdateExclusion",GBt="DeregisterPullTimeUpdateExclusionRequest",HBt="DeregisterPullTimeUpdateExclusionResponse",zBt="DeleteRepository",VBt="DeleteRepositoryCreationTemplate",YBt="DeleteRepositoryCreationTemplateRequest",WBt="DeleteRepositoryCreationTemplateResponse",jBt="DescribeRepositoryCreationTemplatesRequest",JBt="DescribeRepositoryCreationTemplatesResponse",KBt="DescribeRepositoryCreationTemplates",XBt="DeleteRegistryPolicy",ZBt="DeleteRegistryPolicyRequest",eRt="DeleteRegistryPolicyResponse",tRt="DeleteRepositoryPolicyRequest",rRt="DeleteRepositoryPolicyResponse",nRt="DeleteRepositoryPolicy",sRt="DeleteRepositoryRequest",oRt="DeleteRepositoryResponse",iRt="DescribeRegistryRequest",aRt="DescribeRegistryResponse",cRt="DescribeRepositoriesRequest",lRt="DescribeRepositoriesResponse",uRt="DescribeRegistry",dRt="DescribeRepositories",pRt="DeleteSigningConfiguration",mRt="DeleteSigningConfigurationRequest",fRt="DeleteSigningConfigurationResponse",ARt="ExclusionAlreadyExistsException",hRt="EncryptionConfiguration",gRt="EncryptionConfigurationForRepositoryCreationTemplate",yRt="EnhancedImageScanFinding",ERt="EnhancedImageScanFindingList",CRt="ExclusionNotFoundException",IRt="EmptyUploadException",xRt="GetAccountSetting",wRt="GetAccountSettingRequest",bRt="GetAccountSettingResponse",SRt="GetAuthorizationToken",BRt="GetAuthorizationTokenRequest",RRt="GetAuthorizationTokenResponse",NRt="GetDownloadUrlForLayer",TRt="GetDownloadUrlForLayerRequest",PRt="GetDownloadUrlForLayerResponse",vRt="GetLifecyclePolicy",_Rt="GetLifecyclePolicyPreview",QRt="GetLifecyclePolicyPreviewRequest",DRt="GetLifecyclePolicyPreviewResponse",kRt="GetLifecyclePolicyRequest",LRt="GetLifecyclePolicyResponse",ORt="GetRegistryPolicy",MRt="GetRegistryPolicyRequest",FRt="GetRegistryPolicyResponse",URt="GetRepositoryPolicyRequest",qRt="GetRepositoryPolicyResponse",$Rt="GetRepositoryPolicy",GRt="GetRegistryScanningConfiguration",HRt="GetRegistryScanningConfigurationRequest",zRt="GetRegistryScanningConfigurationResponse",VRt="GetSigningConfiguration",YRt="GetSigningConfigurationRequest",WRt="GetSigningConfigurationResponse",jRt="Image",JRt="ImageArchivedException",KRt="ImageAlreadyExistsException",XRt="ImageDetail",ZRt="ImageDigestDoesNotMatchException",eNt="ImageDetailList",tNt="ImageFailure",rNt="ImageFailureList",nNt="ImageIdentifier",sNt="ImageIdentifierList",oNt="ImageList",iNt="InvalidLayerException",aNt="InvalidLayerPartException",cNt="InitiateLayerUpload",lNt="InitiateLayerUploadRequest",uNt="InitiateLayerUploadResponse",dNt="ImageNotFoundException",pNt="InvalidParameterException",mNt="ImageReferrer",fNt="ImageReferrerList",ANt="ImageReplicationStatus",hNt="ImageReplicationStatusList",gNt="ImageScanningConfiguration",yNt="ImageStorageClassUpdateNotSupportedException",ENt="ImageScanFinding",CNt="ImageScanFindingList",INt="ImageScanFindingsSummary",xNt="ImageScanFindings",wNt="ImageScanStatus",bNt="ImageSigningStatusList",SNt="ImageSigningStatus",BNt="ImageTagAlreadyExistsException",RNt="ImageTagMutabilityExclusionFilter",NNt="ImageTagMutabilityExclusionFilters",TNt="InvalidTagParameterException",PNt="Key",vNt="KmsException",_Nt="Layer",QNt="LayerAlreadyExistsException",DNt="LimitExceededException",kNt="LayerFailure",LNt="LayerFailureList",ONt="ListImages",MNt="LayerInaccessibleException",FNt="ListImagesFilter",UNt="ListImagesRequest",qNt="ListImageReferrersFilter",$Nt="ListImageReferrersRequest",GNt="ListImageReferrersResponse",HNt="ListImagesResponse",zNt="ListImageReferrers",VNt="LayerList",YNt="LayersNotFoundException",WNt="LifecyclePolicyNotFoundException",jNt="LifecyclePolicyPreviewFilter",JNt="LifecyclePolicyPreviewInProgressException",KNt="LifecyclePolicyPreviewNotFoundException",XNt="LifecyclePolicyPreviewResult",ZNt="LifecyclePolicyPreviewResultList",eTt="LifecyclePolicyPreviewSummary",tTt="LifecyclePolicyRuleAction",rTt="LayerPartTooSmallException",nTt="ListPullTimeUpdateExclusions",sTt="ListPullTimeUpdateExclusionsRequest",oTt="ListPullTimeUpdateExclusionsResponse",iTt="ListTagsForResource",aTt="ListTagsForResourceRequest",cTt="ListTagsForResourceResponse",lTt="PutAccountSetting",uTt="PutAccountSettingRequest",dTt="PutAccountSettingResponse",pTt="PutImage",mTt="PutImageRequest",fTt="PutImageResponse",ATt="PutImageScanningConfiguration",hTt="PutImageScanningConfigurationRequest",gTt="PutImageScanningConfigurationResponse",yTt="PutImageTagMutability",ETt="PutImageTagMutabilityRequest",CTt="PutImageTagMutabilityResponse",ITt="PutLifecyclePolicy",xTt="PutLifecyclePolicyRequest",wTt="PutLifecyclePolicyResponse",bTt="PutReplicationConfiguration",STt="PutReplicationConfigurationRequest",BTt="PutReplicationConfigurationResponse",RTt="PutRegistryPolicy",NTt="PutRegistryPolicyRequest",TTt="PutRegistryPolicyResponse",PTt="PutRegistryScanningConfiguration",vTt="PutRegistryScanningConfigurationRequest",_Tt="PutRegistryScanningConfigurationResponse",QTt="PutSigningConfiguration",DTt="PutSigningConfigurationRequest",kTt="PutSigningConfigurationResponse",LTt="PullThroughCacheRule",OTt="PullThroughCacheRuleAlreadyExistsException",MTt="PullThroughCacheRuleList",FTt="PullThroughCacheRuleNotFoundException",UTt="PackageVulnerabilityDetails",qTt="Recommendation",$Tt="RepositoryAlreadyExistsException",GTt="ReplicationConfiguration",HTt="RepositoryCreationTemplate",zTt="RepositoryCreationTemplateList",VTt="ReplicationDestination",YTt="ReplicationDestinationList",WTt="ResourceDetails",jTt="RepositoryFilter",JTt="RepositoryFilterList",KTt="ReferencedImagesNotFoundException",XTt="RepositoryList",ZTt="ResourceList",ePt="RepositoryNotEmptyException",tPt="RepositoryNotFoundException",rPt="RegistryPolicyNotFoundException",nPt="RepositoryPolicyNotFoundException",sPt="RegisterPullTimeUpdateExclusion",oPt="RegisterPullTimeUpdateExclusionRequest",iPt="RegisterPullTimeUpdateExclusionResponse",aPt="ReplicationRule",cPt="ReplicationRuleList",lPt="RegistryScanningConfiguration",uPt="RepositoryScanningConfigurationFailure",dPt="RepositoryScanningConfigurationFailureList",pPt="RepositoryScanningConfigurationList",mPt="RepositoryScanningConfiguration",fPt="RegistryScanningRule",APt="RegistryScanningRuleList",hPt="Remediation",gPt="Repository",yPt="Resource",EPt="SigningConfiguration",CPt="SigningConfigurationNotFoundException",IPt="ScoreDetails",xPt="ServerException",wPt="SubjectIdentifier",bPt="StartImageScan",SPt="StartImageScanRequest",BPt="StartImageScanResponse",RPt="StartLifecyclePolicyPreview",NPt="StartLifecyclePolicyPreviewRequest",TPt="StartLifecyclePolicyPreviewResponse",PPt="ScanNotFoundException",vPt="SecretNotFoundException",_Pt="SigningRule",QPt="ScanningRepositoryFilter",DPt="ScanningRepositoryFilterList",kPt="SigningRepositoryFilterList",LPt="SigningRepositoryFilter",OPt="SigningRuleList",MPt="SetRepositoryPolicy",FPt="SetRepositoryPolicyRequest",UPt="SetRepositoryPolicyResponse",qPt="Tag",$Pt="TemplateAlreadyExistsException",GPt="TransitioningImageTotalCount",HPt="TransitioningImageTotalCounts",zPt="TagList",VPt="TooManyTagsException",YPt="TemplateNotFoundException",WPt="TagResource",jPt="TagResourceRequest",JPt="TagResourceResponse",KPt="UpdateImageStorageClass",XPt="UpdateImageStorageClassRequest",ZPt="UpdateImageStorageClassResponse",evt="UnsupportedImageTypeException",tvt="UploadLayerPart",rvt="UploadLayerPartRequest",nvt="UploadLayerPartResponse",svt="UploadNotFoundException",ovt="UpdatePullThroughCacheRule",ivt="UpdatePullThroughCacheRuleRequest",avt="UpdatePullThroughCacheRuleResponse",cvt="UntagResource",lvt="UpdateRepositoryCreationTemplate",uvt="UpdateRepositoryCreationTemplateRequest",dvt="UpdateRepositoryCreationTemplateResponse",pvt="UntagResourceRequest",mvt="UntagResourceResponse",fvt="UnableToAccessSecretException",Avt="UnableToDecryptSecretValueException",hvt="UnableToGetUpstreamImageException",gvt="UnableToGetUpstreamLayerException",yvt="UnableToListUpstreamImageReferrersException",Evt="UnsupportedUpstreamRegistryException",Cvt="Value",Ivt="ValidationException",xvt="VulnerablePackage",wvt="VulnerablePackagesList",bvt="ValidatePullThroughCacheRule",Svt="ValidatePullThroughCacheRuleRequest",Bvt="ValidatePullThroughCacheRuleResponse",Rvt="architecture",Nvt="awsAccountId",Tvt="authorizationData",Pvt="awsEcrContainerImage",P6="appliedFor",vvt="acceptedMediaTypes",_vt="artifactMediaType",Qvt="appliedRulePriority",Xke="artifactStatus",Dvt="appliedScanFilters",kvt="authorizationToken",Lvt="artifactType",Ovt="artifactTypes",Mvt="action",Fvt="adjustments",Uvt="annotations",qvt="arch",$vt="attributes",Gvt="author",Hvt="baseScore",We="client",Yf="credentialArn",vy="createdAt",bl="customRoleArn",Zke="cvss",_y="description",zvt="downloadUrl",Vvt="destinations",Yvt="details",Wvt="digest",He="error",jvt="expiresAt",Jvt="exploitAvailable",c0="encryptionConfiguration",Kvt="enhancedFindings",Xvt="expiringImageTotalCount",Uu="ecrRepositoryPrefix",Zvt="ecrRepositoryPrefixes",eLe="encryptionType",e_t="epoch",XD="failures",t_t="findingArn",r_t="fixAvailable",l0="failureCode",n_t="fixedInVersion",s_t="firstObservedAt",o_t="filePath",ZD="failureReason",tLe="findingSeverityCounts",ek="filterType",i_t="failure",Bp="filter",a_t="findings",rLe="force",c_t="httpError",l_t="images",u_t="imageDetails",u0="imageDigest",d_t="imageHash",Qy="imageIds",Yi="imageId",nLe="imageManifest",v6="imageManifestMediaType",sLe="imagePushedAt",tk="imageStatus",rk="imageScanningConfiguration",oLe="imageScanCompletedAt",p_t="imageScanFindings",m_t="imageScanFindingsSummary",f_t="imageSizeInBytes",_6="imageScanStatus",Q6="imageTags",A_t="imageTotalCount",Wf="imageTagMutability",jf="imageTagMutabilityExclusionFilters",iLe="imageTag",h_t="inUseCount",g_t="isValid",y_t="id",E_t="image",C_t="key",I_t="kmsError",aLe="kmsKey",x_t="layers",w_t="layerAvailability",b_t="lastArchivedAt",S_t="lastActivatedAt",B_t="lastByteReceived",cLe="layerDigests",d0="layerDigest",lLe="lastEvaluatedAt",R_t="lastInUseAt",N_t="lastObservedAt",D6="lifecyclePolicy",T_t="layerPartBlob",Jf="lifecyclePolicyText",P_t="lastRecordedPullTime",v_t="layerSize",__t="lastValidByteReceived",ze="message",qu="maxResults",uLe="mediaType",Q_t="metric",Dy="name",Sn="nextToken",D_t="platform",k_t="pushedAt",nk="principalArn",L_t="proxyEndpoint",O_t="partFirstByte",M_t="partLastByte",F_t="packageManager",U_t="previewResults",q_t="partSize",Rp="policyText",$_t="pullThroughCacheRules",G_t="pullTimeUpdateExclusions",H_t="packageVulnerabilityDetails",sk="prefix",z_t="prefixes",V_t="registry",k6="resourceArn",dLe="repositoryArn",L6="replicationConfiguration",O6="repositoryCreationTemplate",Y_t="repositoryCreationTemplates",M6="repositoryFilters",ne="registryId",W_t="registryIds",De="repositoryName",pLe="repositoryNames",F6="repositoryPolicy",j_t="replicationStatuses",J_t="registryScanningConfiguration",U6="resourceTags",K_t="referenceUrls",X_t="repositoryUri",Z_t="relatedVulnerabilities",mLe="repository",eQt="reason",tQt="recommendation",rQt="referrers",fLe="region",nQt="release",sQt="remediation",oQt="repositories",iQt="resources",ok="rules",ALe="smithy.ts.sdk.synthetic.com.amazonaws.ecr",aQt="scanningConfigurations",cQt="scanningConfiguration",ik="signingConfiguration",lQt="storageClass",uQt="scoreDetails",hLe="scanFrequency",dQt="subjectId",pQt="sourceLayerHash",mQt="subjectManifestDigest",gLe="scanOnPush",yLe="signingProfileArn",fQt="scoreSource",AQt="signingStatuses",ELe="scanType",hQt="sourceUrl",CLe="scoringVector",ILe="score",gQt="server",xLe="severity",yQt="size",wLe="source",ky="status",EQt="summary",ak="tags",CQt="transitioningImageTotalCounts",IQt="tagKeys",q6="tagStatus",$6="targetStorageClass",xQt="text",wQt="title",G6="type",bQt="uri",ck="updatedAt",Ly="uploadId",H6="upstreamRegistry",Oy="upstreamRepositoryPrefix",p0="upstreamRegistryUrl",SQt="url",lk="value",BQt="vendorCreatedAt",RQt="vulnerabilityId",NQt="vulnerablePackages",TQt="vendorSeverity",bLe="vulnerabilitySourceUpdatedAt",PQt="vendorUpdatedAt",z6="version",T="com.amazonaws.ecr",SLe=(Ct(),W($x)),vQt=KD(),Ve=T6(),BLe=SLe.TypeRegistry.for(ALe);A.ECRServiceException$=[-3,ALe,"ECRServiceException",0,[],[]];BLe.registerError(A.ECRServiceException$,vQt.ECRServiceException);var Ue=SLe.TypeRegistry.for(T);A.BlockedByOrganizationPolicyException$=[-3,T,HSt,{[He]:We},[ze],[0]];Ue.registerError(A.BlockedByOrganizationPolicyException$,Ve.BlockedByOrganizationPolicyException);A.EmptyUploadException$=[-3,T,IRt,{[He]:We},[ze],[0]];Ue.registerError(A.EmptyUploadException$,Ve.EmptyUploadException);A.ExclusionAlreadyExistsException$=[-3,T,ARt,{[He]:We},[ze],[0]];Ue.registerError(A.ExclusionAlreadyExistsException$,Ve.ExclusionAlreadyExistsException);A.ExclusionNotFoundException$=[-3,T,CRt,{[He]:We},[ze],[0]];Ue.registerError(A.ExclusionNotFoundException$,Ve.ExclusionNotFoundException);A.ImageAlreadyExistsException$=[-3,T,KRt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageAlreadyExistsException$,Ve.ImageAlreadyExistsException);A.ImageArchivedException$=[-3,T,JRt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageArchivedException$,Ve.ImageArchivedException);A.ImageDigestDoesNotMatchException$=[-3,T,ZRt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageDigestDoesNotMatchException$,Ve.ImageDigestDoesNotMatchException);A.ImageNotFoundException$=[-3,T,dNt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageNotFoundException$,Ve.ImageNotFoundException);A.ImageStorageClassUpdateNotSupportedException$=[-3,T,yNt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageStorageClassUpdateNotSupportedException$,Ve.ImageStorageClassUpdateNotSupportedException);A.ImageTagAlreadyExistsException$=[-3,T,BNt,{[He]:We},[ze],[0]];Ue.registerError(A.ImageTagAlreadyExistsException$,Ve.ImageTagAlreadyExistsException);A.InvalidLayerException$=[-3,T,iNt,{[He]:We},[ze],[0]];Ue.registerError(A.InvalidLayerException$,Ve.InvalidLayerException);A.InvalidLayerPartException$=[-3,T,aNt,{[He]:We},[ne,De,Ly,__t,ze],[0,0,0,1,0]];Ue.registerError(A.InvalidLayerPartException$,Ve.InvalidLayerPartException);A.InvalidParameterException$=[-3,T,pNt,{[He]:We},[ze],[0]];Ue.registerError(A.InvalidParameterException$,Ve.InvalidParameterException);A.InvalidTagParameterException$=[-3,T,TNt,{[He]:We},[ze],[0]];Ue.registerError(A.InvalidTagParameterException$,Ve.InvalidTagParameterException);A.KmsException$=[-3,T,vNt,{[He]:We},[ze,I_t],[0,0]];Ue.registerError(A.KmsException$,Ve.KmsException);A.LayerAlreadyExistsException$=[-3,T,QNt,{[He]:We},[ze],[0]];Ue.registerError(A.LayerAlreadyExistsException$,Ve.LayerAlreadyExistsException);A.LayerInaccessibleException$=[-3,T,MNt,{[He]:We},[ze],[0]];Ue.registerError(A.LayerInaccessibleException$,Ve.LayerInaccessibleException);A.LayerPartTooSmallException$=[-3,T,rTt,{[He]:We},[ze],[0]];Ue.registerError(A.LayerPartTooSmallException$,Ve.LayerPartTooSmallException);A.LayersNotFoundException$=[-3,T,YNt,{[He]:We},[ze],[0]];Ue.registerError(A.LayersNotFoundException$,Ve.LayersNotFoundException);A.LifecyclePolicyNotFoundException$=[-3,T,WNt,{[He]:We},[ze],[0]];Ue.registerError(A.LifecyclePolicyNotFoundException$,Ve.LifecyclePolicyNotFoundException);A.LifecyclePolicyPreviewInProgressException$=[-3,T,JNt,{[He]:We},[ze],[0]];Ue.registerError(A.LifecyclePolicyPreviewInProgressException$,Ve.LifecyclePolicyPreviewInProgressException);A.LifecyclePolicyPreviewNotFoundException$=[-3,T,KNt,{[He]:We},[ze],[0]];Ue.registerError(A.LifecyclePolicyPreviewNotFoundException$,Ve.LifecyclePolicyPreviewNotFoundException);A.LimitExceededException$=[-3,T,DNt,{[He]:We},[ze],[0]];Ue.registerError(A.LimitExceededException$,Ve.LimitExceededException);A.PullThroughCacheRuleAlreadyExistsException$=[-3,T,OTt,{[He]:We},[ze],[0]];Ue.registerError(A.PullThroughCacheRuleAlreadyExistsException$,Ve.PullThroughCacheRuleAlreadyExistsException);A.PullThroughCacheRuleNotFoundException$=[-3,T,FTt,{[He]:We},[ze],[0]];Ue.registerError(A.PullThroughCacheRuleNotFoundException$,Ve.PullThroughCacheRuleNotFoundException);A.ReferencedImagesNotFoundException$=[-3,T,KTt,{[He]:We},[ze],[0]];Ue.registerError(A.ReferencedImagesNotFoundException$,Ve.ReferencedImagesNotFoundException);A.RegistryPolicyNotFoundException$=[-3,T,rPt,{[He]:We},[ze],[0]];Ue.registerError(A.RegistryPolicyNotFoundException$,Ve.RegistryPolicyNotFoundException);A.RepositoryAlreadyExistsException$=[-3,T,$Tt,{[He]:We},[ze],[0]];Ue.registerError(A.RepositoryAlreadyExistsException$,Ve.RepositoryAlreadyExistsException);A.RepositoryNotEmptyException$=[-3,T,ePt,{[He]:We},[ze],[0]];Ue.registerError(A.RepositoryNotEmptyException$,Ve.RepositoryNotEmptyException);A.RepositoryNotFoundException$=[-3,T,tPt,{[He]:We},[ze],[0]];Ue.registerError(A.RepositoryNotFoundException$,Ve.RepositoryNotFoundException);A.RepositoryPolicyNotFoundException$=[-3,T,nPt,{[He]:We},[ze],[0]];Ue.registerError(A.RepositoryPolicyNotFoundException$,Ve.RepositoryPolicyNotFoundException);A.ScanNotFoundException$=[-3,T,PPt,{[He]:We},[ze],[0]];Ue.registerError(A.ScanNotFoundException$,Ve.ScanNotFoundException);A.SecretNotFoundException$=[-3,T,vPt,{[He]:We},[ze],[0]];Ue.registerError(A.SecretNotFoundException$,Ve.SecretNotFoundException);A.ServerException$=[-3,T,xPt,{[He]:gQt},[ze],[0]];Ue.registerError(A.ServerException$,Ve.ServerException);A.SigningConfigurationNotFoundException$=[-3,T,CPt,{[He]:We},[ze],[0]];Ue.registerError(A.SigningConfigurationNotFoundException$,Ve.SigningConfigurationNotFoundException);A.TemplateAlreadyExistsException$=[-3,T,$Pt,{[He]:We},[ze],[0]];Ue.registerError(A.TemplateAlreadyExistsException$,Ve.TemplateAlreadyExistsException);A.TemplateNotFoundException$=[-3,T,YPt,{[He]:We},[ze],[0]];Ue.registerError(A.TemplateNotFoundException$,Ve.TemplateNotFoundException);A.TooManyTagsException$=[-3,T,VPt,{[He]:We},[ze],[0]];Ue.registerError(A.TooManyTagsException$,Ve.TooManyTagsException);A.UnableToAccessSecretException$=[-3,T,fvt,{[He]:We},[ze],[0]];Ue.registerError(A.UnableToAccessSecretException$,Ve.UnableToAccessSecretException);A.UnableToDecryptSecretValueException$=[-3,T,Avt,{[He]:We},[ze],[0]];Ue.registerError(A.UnableToDecryptSecretValueException$,Ve.UnableToDecryptSecretValueException);A.UnableToGetUpstreamImageException$=[-3,T,hvt,{[He]:We},[ze],[0]];Ue.registerError(A.UnableToGetUpstreamImageException$,Ve.UnableToGetUpstreamImageException);A.UnableToGetUpstreamLayerException$=[-3,T,gvt,{[He]:We},[ze],[0]];Ue.registerError(A.UnableToGetUpstreamLayerException$,Ve.UnableToGetUpstreamLayerException);A.UnableToListUpstreamImageReferrersException$=[-3,T,yvt,{[He]:We},[ze],[0]];Ue.registerError(A.UnableToListUpstreamImageReferrersException$,Ve.UnableToListUpstreamImageReferrersException);A.UnsupportedImageTypeException$=[-3,T,evt,{[He]:We},[ze],[0]];Ue.registerError(A.UnsupportedImageTypeException$,Ve.UnsupportedImageTypeException);A.UnsupportedUpstreamRegistryException$=[-3,T,Evt,{[He]:We},[ze],[0]];Ue.registerError(A.UnsupportedUpstreamRegistryException$,Ve.UnsupportedUpstreamRegistryException);A.UploadNotFoundException$=[-3,T,svt,{[He]:We},[ze],[0]];Ue.registerError(A.UploadNotFoundException$,Ve.UploadNotFoundException);A.ValidationException$=[-3,T,Ivt,{[He]:We,[c_t]:400},[ze],[0]];Ue.registerError(A.ValidationException$,Ve.ValidationException);A.errorTypeRegistries=[BLe,Ue];A.Attribute$=[3,T,FSt,0,[C_t,lk],[0,0],1];A.AuthorizationData$=[3,T,USt,0,[kvt,jvt,L_t],[0,4,0]];A.AwsEcrContainerImageDetails$=[3,T,$St,0,[Rvt,Gvt,d_t,Q6,D_t,k_t,R_t,h_t,V_t,De],[0,0,0,64,0,4,4,1,0,0]];A.BatchCheckLayerAvailabilityRequest$=[3,T,VSt,0,[De,cLe,ne],[0,64,0],2];A.BatchCheckLayerAvailabilityResponse$=[3,T,YSt,0,[x_t,XD],[()=>HQt,()=>GQt]];A.BatchDeleteImageRequest$=[3,T,jSt,0,[De,Qy,ne],[0,()=>My,0],2];A.BatchDeleteImageResponse$=[3,T,JSt,0,[Qy,XD],[()=>My,()=>RLe]];A.BatchGetImageRequest$=[3,T,XSt,0,[De,Qy,ne,vvt],[0,()=>My,0,64],2];A.BatchGetImageResponse$=[3,T,ZSt,0,[l_t,XD],[()=>MQt,()=>RLe]];A.BatchGetRepositoryScanningConfigurationRequest$=[3,T,tBt,0,[pLe],[64],1];A.BatchGetRepositoryScanningConfigurationResponse$=[3,T,rBt,0,[aQt,XD],[()=>ZQt,()=>XQt]];A.CompleteLayerUploadRequest$=[3,T,sBt,0,[De,Ly,cLe,ne],[0,0,64,0],3];A.CompleteLayerUploadResponse$=[3,T,oBt,0,[ne,De,Ly,d0],[0,0,0,0]];A.CreatePullThroughCacheRuleRequest$=[3,T,aBt,0,[Uu,p0,ne,H6,Yf,bl,Oy],[0,0,0,0,0,0,0],2];A.CreatePullThroughCacheRuleResponse$=[3,T,cBt,0,[Uu,p0,vy,ne,H6,Yf,bl,Oy],[0,0,4,0,0,0,0,0]];A.CreateRepositoryCreationTemplateRequest$=[3,T,dBt,0,[sk,P6,_y,c0,U6,Wf,jf,F6,D6,bl],[0,64,0,()=>A.EncryptionConfigurationForRepositoryCreationTemplate$,()=>Fy,0,()=>Kf,0,0,0],2];A.CreateRepositoryCreationTemplateResponse$=[3,T,pBt,0,[ne,O6],[0,()=>A.RepositoryCreationTemplate$]];A.CreateRepositoryRequest$=[3,T,mBt,0,[De,ne,ak,Wf,jf,rk,c0],[0,0,()=>Fy,0,()=>Kf,()=>A.ImageScanningConfiguration$,()=>A.EncryptionConfiguration$],1];A.CreateRepositoryResponse$=[3,T,fBt,0,[mLe],[()=>A.Repository$]];A.CvssScore$=[3,T,ABt,0,[Hvt,CLe,wLe,z6],[1,0,0,0]];A.CvssScoreAdjustment$=[3,T,hBt,0,[Q_t,eQt],[0,0]];A.CvssScoreDetails$=[3,T,yBt,0,[Fvt,ILe,fQt,CLe,z6],[()=>DQt,1,0,0,0]];A.DeleteLifecyclePolicyRequest$=[3,T,DBt,0,[De,ne],[0,0],1];A.DeleteLifecyclePolicyResponse$=[3,T,kBt,0,[ne,De,Jf,lLe],[0,0,0,4]];A.DeletePullThroughCacheRuleRequest$=[3,T,OBt,0,[Uu,ne],[0,0],1];A.DeletePullThroughCacheRuleResponse$=[3,T,MBt,0,[Uu,p0,vy,ne,Yf,bl,Oy],[0,0,4,0,0,0,0]];A.DeleteRegistryPolicyRequest$=[3,T,ZBt,0,[],[]];A.DeleteRegistryPolicyResponse$=[3,T,eRt,0,[ne,Rp],[0,0]];A.DeleteRepositoryCreationTemplateRequest$=[3,T,YBt,0,[sk],[0],1];A.DeleteRepositoryCreationTemplateResponse$=[3,T,WBt,0,[ne,O6],[0,()=>A.RepositoryCreationTemplate$]];A.DeleteRepositoryPolicyRequest$=[3,T,tRt,0,[De,ne],[0,0],1];A.DeleteRepositoryPolicyResponse$=[3,T,rRt,0,[ne,De,Rp],[0,0,0]];A.DeleteRepositoryRequest$=[3,T,sRt,0,[De,ne,rLe],[0,0,2],1];A.DeleteRepositoryResponse$=[3,T,oRt,0,[mLe],[()=>A.Repository$]];A.DeleteSigningConfigurationRequest$=[3,T,mRt,0,[],[]];A.DeleteSigningConfigurationResponse$=[3,T,fRt,0,[ne,ik],[0,()=>A.SigningConfiguration$]];A.DeregisterPullTimeUpdateExclusionRequest$=[3,T,GBt,0,[nk],[0],1];A.DeregisterPullTimeUpdateExclusionResponse$=[3,T,HBt,0,[nk],[0]];A.DescribeImageReplicationStatusRequest$=[3,T,bBt,0,[De,Yi,ne],[0,()=>A.ImageIdentifier$,0],2];A.DescribeImageReplicationStatusResponse$=[3,T,SBt,0,[De,Yi,j_t],[0,()=>A.ImageIdentifier$,()=>UQt]];A.DescribeImageScanFindingsRequest$=[3,T,NBt,0,[De,Yi,ne,Sn,qu],[0,()=>A.ImageIdentifier$,0,0,1],2];A.DescribeImageScanFindingsResponse$=[3,T,TBt,0,[ne,De,Yi,_6,p_t,Sn],[0,0,()=>A.ImageIdentifier$,()=>A.ImageScanStatus$,()=>A.ImageScanFindings$,0]];A.DescribeImagesFilter$=[3,T,IBt,0,[q6,tk],[0,0]];A.DescribeImageSigningStatusRequest$=[3,T,vBt,0,[De,Yi,ne],[0,()=>A.ImageIdentifier$,0],2];A.DescribeImageSigningStatusResponse$=[3,T,_Bt,0,[De,Yi,ne,AQt],[0,()=>A.ImageIdentifier$,0,()=>$Qt]];A.DescribeImagesRequest$=[3,T,xBt,0,[De,ne,Qy,Sn,qu,Bp],[0,0,()=>My,0,1,()=>A.DescribeImagesFilter$],1];A.DescribeImagesResponse$=[3,T,BBt,0,[u_t,Sn],[()=>OQt,0]];A.DescribePullThroughCacheRulesRequest$=[3,T,FBt,0,[ne,Zvt,Sn,qu],[0,64,0,1]];A.DescribePullThroughCacheRulesResponse$=[3,T,UBt,0,[$_t,Sn],[()=>VQt,0]];A.DescribeRegistryRequest$=[3,T,iRt,0,[],[]];A.DescribeRegistryResponse$=[3,T,aRt,0,[ne,L6],[0,()=>A.ReplicationConfiguration$]];A.DescribeRepositoriesRequest$=[3,T,cRt,0,[ne,pLe,Sn,qu],[0,64,0,1]];A.DescribeRepositoriesResponse$=[3,T,lRt,0,[oQt,Sn],[()=>KQt,0]];A.DescribeRepositoryCreationTemplatesRequest$=[3,T,jBt,0,[z_t,Sn,qu],[64,0,1]];A.DescribeRepositoryCreationTemplatesResponse$=[3,T,JBt,0,[ne,Y_t,Sn],[0,()=>jQt,0]];A.EncryptionConfiguration$=[3,T,hRt,0,[eLe,aLe],[0,0],1];A.EncryptionConfigurationForRepositoryCreationTemplate$=[3,T,gRt,0,[eLe,aLe],[0,0],1];A.EnhancedImageScanFinding$=[3,T,yRt,0,[Nvt,_y,t_t,s_t,N_t,H_t,sQt,iQt,ILe,uQt,xLe,ky,wQt,G6,ck,r_t,Jvt],[0,0,0,4,4,()=>A.PackageVulnerabilityDetails$,()=>A.Remediation$,()=>eDt,1,()=>A.ScoreDetails$,0,0,0,0,4,0,0]];A.GetAccountSettingRequest$=[3,T,wRt,0,[Dy],[0],1];A.GetAccountSettingResponse$=[3,T,bRt,0,[Dy,lk],[0,0]];A.GetAuthorizationTokenRequest$=[3,T,BRt,0,[W_t],[64]];A.GetAuthorizationTokenResponse$=[3,T,RRt,0,[Tvt],[()=>QQt]];A.GetDownloadUrlForLayerRequest$=[3,T,TRt,0,[De,d0,ne],[0,0,0],2];A.GetDownloadUrlForLayerResponse$=[3,T,PRt,0,[zvt,d0],[0,0]];A.GetLifecyclePolicyPreviewRequest$=[3,T,QRt,0,[De,ne,Qy,Sn,qu,Bp],[0,0,()=>My,0,1,()=>A.LifecyclePolicyPreviewFilter$],1];A.GetLifecyclePolicyPreviewResponse$=[3,T,DRt,0,[ne,De,Jf,ky,Sn,U_t,EQt],[0,0,0,0,0,()=>zQt,()=>A.LifecyclePolicyPreviewSummary$]];A.GetLifecyclePolicyRequest$=[3,T,kRt,0,[De,ne],[0,0],1];A.GetLifecyclePolicyResponse$=[3,T,LRt,0,[ne,De,Jf,lLe],[0,0,0,4]];A.GetRegistryPolicyRequest$=[3,T,MRt,0,[],[]];A.GetRegistryPolicyResponse$=[3,T,FRt,0,[ne,Rp],[0,0]];A.GetRegistryScanningConfigurationRequest$=[3,T,HRt,0,[],[]];A.GetRegistryScanningConfigurationResponse$=[3,T,zRt,0,[ne,cQt],[0,()=>A.RegistryScanningConfiguration$]];A.GetRepositoryPolicyRequest$=[3,T,URt,0,[De,ne],[0,0],1];A.GetRepositoryPolicyResponse$=[3,T,qRt,0,[ne,De,Rp],[0,0,0]];A.GetSigningConfigurationRequest$=[3,T,YRt,0,[],[]];A.GetSigningConfigurationResponse$=[3,T,WRt,0,[ne,ik],[0,()=>A.SigningConfiguration$]];A.Image$=[3,T,jRt,0,[ne,De,Yi,nLe,v6],[0,0,()=>A.ImageIdentifier$,0,0]];A.ImageDetail$=[3,T,XRt,0,[ne,De,u0,Q6,f_t,sLe,_6,m_t,v6,_vt,P_t,mQt,tk,b_t,S_t],[0,0,0,64,1,4,()=>A.ImageScanStatus$,()=>A.ImageScanFindingsSummary$,0,0,4,0,0,4,4]];A.ImageFailure$=[3,T,tNt,0,[Yi,l0,ZD],[()=>A.ImageIdentifier$,0,0]];A.ImageIdentifier$=[3,T,nNt,0,[u0,iLe],[0,0]];A.ImageReferrer$=[3,T,mNt,0,[Wvt,uLe,yQt,Lvt,Uvt,Xke],[0,0,1,0,128,0],3];A.ImageReplicationStatus$=[3,T,ANt,0,[fLe,ne,ky,l0],[0,0,0,0]];A.ImageScanFinding$=[3,T,ENt,0,[Dy,_y,bQt,xLe,$vt],[0,0,0,0,()=>_Qt]];A.ImageScanFindings$=[3,T,xNt,0,[oLe,bLe,tLe,a_t,Kvt],[4,4,129,()=>qQt,()=>LQt]];A.ImageScanFindingsSummary$=[3,T,INt,0,[oLe,bLe,tLe],[4,4,129]];A.ImageScanningConfiguration$=[3,T,gNt,0,[gLe],[2]];A.ImageScanStatus$=[3,T,wNt,0,[ky,_y],[0,0]];A.ImageSigningStatus$=[3,T,SNt,0,[yLe,l0,ZD,ky],[0,0,0,0]];A.ImageTagMutabilityExclusionFilter$=[3,T,RNt,0,[ek,Bp],[0,0],2];A.InitiateLayerUploadRequest$=[3,T,lNt,0,[De,ne],[0,0],1];A.InitiateLayerUploadResponse$=[3,T,uNt,0,[Ly,q_t],[0,1]];A.Layer$=[3,T,_Nt,0,[d0,w_t,v_t,uLe],[0,0,1,0]];A.LayerFailure$=[3,T,kNt,0,[d0,l0,ZD],[0,0,0]];A.LifecyclePolicyPreviewFilter$=[3,T,jNt,0,[q6],[0]];A.LifecyclePolicyPreviewResult$=[3,T,XNt,0,[Q6,u0,sLe,Mvt,Qvt,lQt],[64,0,4,()=>A.LifecyclePolicyRuleAction$,1,0]];A.LifecyclePolicyPreviewSummary$=[3,T,eTt,0,[Xvt,CQt],[1,()=>nDt]];A.LifecyclePolicyRuleAction$=[3,T,tTt,0,[G6,$6],[0,0]];A.ListImageReferrersFilter$=[3,T,qNt,0,[Ovt,Xke],[64,0]];A.ListImageReferrersRequest$=[3,T,$Nt,0,[De,dQt,ne,Bp,Sn,qu],[0,()=>A.SubjectIdentifier$,0,()=>A.ListImageReferrersFilter$,0,1],2];A.ListImageReferrersResponse$=[3,T,GNt,0,[rQt,Sn],[()=>FQt,0]];A.ListImagesFilter$=[3,T,FNt,0,[q6,tk],[0,0]];A.ListImagesRequest$=[3,T,UNt,0,[De,ne,Sn,qu,Bp],[0,0,0,1,()=>A.ListImagesFilter$],1];A.ListImagesResponse$=[3,T,HNt,0,[Qy,Sn],[()=>My,0]];A.ListPullTimeUpdateExclusionsRequest$=[3,T,sTt,0,[qu,Sn],[1,0]];A.ListPullTimeUpdateExclusionsResponse$=[3,T,oTt,0,[G_t,Sn],[64,0]];A.ListTagsForResourceRequest$=[3,T,aTt,0,[k6],[0],1];A.ListTagsForResourceResponse$=[3,T,cTt,0,[ak],[()=>Fy]];A.PackageVulnerabilityDetails$=[3,T,UTt,0,[Zke,K_t,Z_t,wLe,hQt,BQt,TQt,PQt,RQt,NQt],[()=>kQt,64,64,0,0,4,0,4,0,()=>sDt]];A.PullThroughCacheRule$=[3,T,LTt,0,[Uu,p0,vy,ne,Yf,bl,Oy,H6,ck],[0,0,4,0,0,0,0,0,4]];A.PutAccountSettingRequest$=[3,T,uTt,0,[Dy,lk],[0,0],2];A.PutAccountSettingResponse$=[3,T,dTt,0,[Dy,lk],[0,0]];A.PutImageRequest$=[3,T,mTt,0,[De,nLe,ne,v6,iLe,u0],[0,0,0,0,0,0],2];A.PutImageResponse$=[3,T,fTt,0,[E_t],[()=>A.Image$]];A.PutImageScanningConfigurationRequest$=[3,T,hTt,0,[De,rk,ne],[0,()=>A.ImageScanningConfiguration$,0],2];A.PutImageScanningConfigurationResponse$=[3,T,gTt,0,[ne,De,rk],[0,0,()=>A.ImageScanningConfiguration$]];A.PutImageTagMutabilityRequest$=[3,T,ETt,0,[De,Wf,ne,jf],[0,0,0,()=>Kf],2];A.PutImageTagMutabilityResponse$=[3,T,CTt,0,[ne,De,Wf,jf],[0,0,0,()=>Kf]];A.PutLifecyclePolicyRequest$=[3,T,xTt,0,[De,Jf,ne],[0,0,0],2];A.PutLifecyclePolicyResponse$=[3,T,wTt,0,[ne,De,Jf],[0,0,0]];A.PutRegistryPolicyRequest$=[3,T,NTt,0,[Rp],[0],1];A.PutRegistryPolicyResponse$=[3,T,TTt,0,[ne,Rp],[0,0]];A.PutRegistryScanningConfigurationRequest$=[3,T,vTt,0,[ELe,ok],[0,()=>NLe]];A.PutRegistryScanningConfigurationResponse$=[3,T,_Tt,0,[J_t],[()=>A.RegistryScanningConfiguration$]];A.PutReplicationConfigurationRequest$=[3,T,STt,0,[L6],[()=>A.ReplicationConfiguration$],1];A.PutReplicationConfigurationResponse$=[3,T,BTt,0,[L6],[()=>A.ReplicationConfiguration$]];A.PutSigningConfigurationRequest$=[3,T,DTt,0,[ik],[()=>A.SigningConfiguration$],1];A.PutSigningConfigurationResponse$=[3,T,kTt,0,[ik],[()=>A.SigningConfiguration$]];A.Recommendation$=[3,T,qTt,0,[SQt,xQt],[0,0]];A.RegisterPullTimeUpdateExclusionRequest$=[3,T,oPt,0,[nk],[0],1];A.RegisterPullTimeUpdateExclusionResponse$=[3,T,iPt,0,[nk,vy],[0,4]];A.RegistryScanningConfiguration$=[3,T,lPt,0,[ELe,ok],[0,()=>NLe]];A.RegistryScanningRule$=[3,T,fPt,0,[hLe,M6],[0,()=>TLe],2];A.Remediation$=[3,T,hPt,0,[tQt],[()=>A.Recommendation$]];A.ReplicationConfiguration$=[3,T,GTt,0,[ok],[()=>WQt],1];A.ReplicationDestination$=[3,T,VTt,0,[fLe,ne],[0,0],2];A.ReplicationRule$=[3,T,aPt,0,[Vvt,M6],[()=>YQt,()=>JQt],1];A.Repository$=[3,T,gPt,0,[dLe,ne,De,X_t,vy,Wf,jf,rk,c0],[0,0,0,0,4,0,()=>Kf,()=>A.ImageScanningConfiguration$,()=>A.EncryptionConfiguration$]];A.RepositoryCreationTemplate$=[3,T,HTt,0,[sk,_y,c0,U6,Wf,jf,F6,D6,P6,bl,vy,ck],[0,0,()=>A.EncryptionConfigurationForRepositoryCreationTemplate$,()=>Fy,0,()=>Kf,0,0,64,0,4,4]];A.RepositoryFilter$=[3,T,jTt,0,[Bp,ek],[0,0],2];A.RepositoryScanningConfiguration$=[3,T,mPt,0,[dLe,De,gLe,hLe,Dvt],[0,0,2,0,()=>TLe]];A.RepositoryScanningConfigurationFailure$=[3,T,uPt,0,[De,l0,ZD],[0,0,0]];A.Resource$=[3,T,yPt,0,[Yvt,y_t,ak,G6],[()=>A.ResourceDetails$,0,128,0]];A.ResourceDetails$=[3,T,WTt,0,[Pvt],[()=>A.AwsEcrContainerImageDetails$]];A.ScanningRepositoryFilter$=[3,T,QPt,0,[Bp,ek],[0,0],2];A.ScoreDetails$=[3,T,IPt,0,[Zke],[()=>A.CvssScoreDetails$]];A.SetRepositoryPolicyRequest$=[3,T,FPt,0,[De,Rp,ne,rLe],[0,0,0,2],2];A.SetRepositoryPolicyResponse$=[3,T,UPt,0,[ne,De,Rp],[0,0,0]];A.SigningConfiguration$=[3,T,EPt,0,[ok],[()=>rDt],1];A.SigningRepositoryFilter$=[3,T,LPt,0,[Bp,ek],[0,0],2];A.SigningRule$=[3,T,_Pt,0,[yLe,M6],[0,()=>tDt],1];A.StartImageScanRequest$=[3,T,SPt,0,[De,Yi,ne],[0,()=>A.ImageIdentifier$,0],2];A.StartImageScanResponse$=[3,T,BPt,0,[ne,De,Yi,_6],[0,0,()=>A.ImageIdentifier$,()=>A.ImageScanStatus$]];A.StartLifecyclePolicyPreviewRequest$=[3,T,NPt,0,[De,ne,Jf],[0,0,0],1];A.StartLifecyclePolicyPreviewResponse$=[3,T,TPt,0,[ne,De,Jf,ky],[0,0,0,0]];A.SubjectIdentifier$=[3,T,wPt,0,[u0],[0],1];A.Tag$=[3,T,qPt,0,[PNt,Cvt],[0,0],2];A.TagResourceRequest$=[3,T,jPt,0,[k6,ak],[0,()=>Fy],2];A.TagResourceResponse$=[3,T,JPt,0,[],[]];A.TransitioningImageTotalCount$=[3,T,GPt,0,[$6,A_t],[0,1]];A.UntagResourceRequest$=[3,T,pvt,0,[k6,IQt],[0,64],2];A.UntagResourceResponse$=[3,T,mvt,0,[],[]];A.UpdateImageStorageClassRequest$=[3,T,XPt,0,[De,Yi,$6,ne],[0,()=>A.ImageIdentifier$,0,0],3];A.UpdateImageStorageClassResponse$=[3,T,ZPt,0,[ne,De,Yi,tk],[0,0,()=>A.ImageIdentifier$,0]];A.UpdatePullThroughCacheRuleRequest$=[3,T,ivt,0,[Uu,ne,Yf,bl],[0,0,0,0],1];A.UpdatePullThroughCacheRuleResponse$=[3,T,avt,0,[Uu,ne,ck,Yf,bl,Oy],[0,0,4,0,0,0]];A.UpdateRepositoryCreationTemplateRequest$=[3,T,uvt,0,[sk,_y,c0,U6,Wf,jf,F6,D6,P6,bl],[0,0,()=>A.EncryptionConfigurationForRepositoryCreationTemplate$,()=>Fy,0,()=>Kf,0,0,64,0],1];A.UpdateRepositoryCreationTemplateResponse$=[3,T,dvt,0,[ne,O6],[0,()=>A.RepositoryCreationTemplate$]];A.UploadLayerPartRequest$=[3,T,rvt,0,[De,Ly,O_t,M_t,T_t,ne],[0,0,1,1,21,0],5];A.UploadLayerPartResponse$=[3,T,nvt,0,[ne,De,Ly,B_t],[0,0,0,1]];A.ValidatePullThroughCacheRuleRequest$=[3,T,Svt,0,[Uu,ne],[0,0],1];A.ValidatePullThroughCacheRuleResponse$=[3,T,Bvt,0,[Uu,ne,p0,Yf,bl,Oy,g_t,i_t],[0,0,0,0,0,0,2,0]];A.VulnerablePackage$=[3,T,xvt,0,[qvt,e_t,o_t,Dy,F_t,nQt,pQt,z6,n_t],[0,1,0,0,0,0,0,0,0]];var _Qt=[1,T,GSt,0,()=>A.Attribute$],QQt=[1,T,qSt,0,()=>A.AuthorizationData$],DQt=[1,T,gBt,0,()=>A.CvssScoreAdjustment$],kQt=[1,T,EBt,0,()=>A.CvssScore$],LQt=[1,T,ERt,0,()=>A.EnhancedImageScanFinding$],OQt=[1,T,eNt,0,()=>A.ImageDetail$],RLe=[1,T,rNt,0,()=>A.ImageFailure$],My=[1,T,sNt,0,()=>A.ImageIdentifier$],MQt=[1,T,oNt,0,()=>A.Image$],FQt=[1,T,fNt,0,()=>A.ImageReferrer$],UQt=[1,T,hNt,0,()=>A.ImageReplicationStatus$],qQt=[1,T,CNt,0,()=>A.ImageScanFinding$],$Qt=[1,T,bNt,0,()=>A.ImageSigningStatus$],Kf=[1,T,NNt,0,()=>A.ImageTagMutabilityExclusionFilter$],GQt=[1,T,LNt,0,()=>A.LayerFailure$],HQt=[1,T,VNt,0,()=>A.Layer$],zQt=[1,T,ZNt,0,()=>A.LifecyclePolicyPreviewResult$],VQt=[1,T,MTt,0,()=>A.PullThroughCacheRule$],NLe=[1,T,APt,0,()=>A.RegistryScanningRule$],YQt=[1,T,YTt,0,()=>A.ReplicationDestination$],WQt=[1,T,cPt,0,()=>A.ReplicationRule$],jQt=[1,T,zTt,0,()=>A.RepositoryCreationTemplate$],JQt=[1,T,JTt,0,()=>A.RepositoryFilter$],KQt=[1,T,XTt,0,()=>A.Repository$],XQt=[1,T,dPt,0,()=>A.RepositoryScanningConfigurationFailure$],ZQt=[1,T,pPt,0,()=>A.RepositoryScanningConfiguration$],eDt=[1,T,ZTt,0,()=>A.Resource$],TLe=[1,T,DPt,0,()=>A.ScanningRepositoryFilter$],tDt=[1,T,kPt,0,()=>A.SigningRepositoryFilter$],rDt=[1,T,OPt,0,()=>A.SigningRule$],Fy=[1,T,zPt,0,()=>A.Tag$],nDt=[1,T,HPt,0,()=>A.TransitioningImageTotalCount$],sDt=[1,T,wvt,0,()=>A.VulnerablePackage$];A.BatchCheckLayerAvailability$=[9,T,zSt,0,()=>A.BatchCheckLayerAvailabilityRequest$,()=>A.BatchCheckLayerAvailabilityResponse$];A.BatchDeleteImage$=[9,T,WSt,0,()=>A.BatchDeleteImageRequest$,()=>A.BatchDeleteImageResponse$];A.BatchGetImage$=[9,T,KSt,0,()=>A.BatchGetImageRequest$,()=>A.BatchGetImageResponse$];A.BatchGetRepositoryScanningConfiguration$=[9,T,eBt,0,()=>A.BatchGetRepositoryScanningConfigurationRequest$,()=>A.BatchGetRepositoryScanningConfigurationResponse$];A.CompleteLayerUpload$=[9,T,nBt,0,()=>A.CompleteLayerUploadRequest$,()=>A.CompleteLayerUploadResponse$];A.CreatePullThroughCacheRule$=[9,T,iBt,0,()=>A.CreatePullThroughCacheRuleRequest$,()=>A.CreatePullThroughCacheRuleResponse$];A.CreateRepository$=[9,T,lBt,0,()=>A.CreateRepositoryRequest$,()=>A.CreateRepositoryResponse$];A.CreateRepositoryCreationTemplate$=[9,T,uBt,0,()=>A.CreateRepositoryCreationTemplateRequest$,()=>A.CreateRepositoryCreationTemplateResponse$];A.DeleteLifecyclePolicy$=[9,T,QBt,0,()=>A.DeleteLifecyclePolicyRequest$,()=>A.DeleteLifecyclePolicyResponse$];A.DeletePullThroughCacheRule$=[9,T,LBt,0,()=>A.DeletePullThroughCacheRuleRequest$,()=>A.DeletePullThroughCacheRuleResponse$];A.DeleteRegistryPolicy$=[9,T,XBt,0,()=>A.DeleteRegistryPolicyRequest$,()=>A.DeleteRegistryPolicyResponse$];A.DeleteRepository$=[9,T,zBt,0,()=>A.DeleteRepositoryRequest$,()=>A.DeleteRepositoryResponse$];A.DeleteRepositoryCreationTemplate$=[9,T,VBt,0,()=>A.DeleteRepositoryCreationTemplateRequest$,()=>A.DeleteRepositoryCreationTemplateResponse$];A.DeleteRepositoryPolicy$=[9,T,nRt,0,()=>A.DeleteRepositoryPolicyRequest$,()=>A.DeleteRepositoryPolicyResponse$];A.DeleteSigningConfiguration$=[9,T,pRt,0,()=>A.DeleteSigningConfigurationRequest$,()=>A.DeleteSigningConfigurationResponse$];A.DeregisterPullTimeUpdateExclusion$=[9,T,$Bt,0,()=>A.DeregisterPullTimeUpdateExclusionRequest$,()=>A.DeregisterPullTimeUpdateExclusionResponse$];A.DescribeImageReplicationStatus$=[9,T,wBt,0,()=>A.DescribeImageReplicationStatusRequest$,()=>A.DescribeImageReplicationStatusResponse$];A.DescribeImages$=[9,T,CBt,0,()=>A.DescribeImagesRequest$,()=>A.DescribeImagesResponse$];A.DescribeImageScanFindings$=[9,T,RBt,0,()=>A.DescribeImageScanFindingsRequest$,()=>A.DescribeImageScanFindingsResponse$];A.DescribeImageSigningStatus$=[9,T,PBt,0,()=>A.DescribeImageSigningStatusRequest$,()=>A.DescribeImageSigningStatusResponse$];A.DescribePullThroughCacheRules$=[9,T,qBt,0,()=>A.DescribePullThroughCacheRulesRequest$,()=>A.DescribePullThroughCacheRulesResponse$];A.DescribeRegistry$=[9,T,uRt,0,()=>A.DescribeRegistryRequest$,()=>A.DescribeRegistryResponse$];A.DescribeRepositories$=[9,T,dRt,0,()=>A.DescribeRepositoriesRequest$,()=>A.DescribeRepositoriesResponse$];A.DescribeRepositoryCreationTemplates$=[9,T,KBt,0,()=>A.DescribeRepositoryCreationTemplatesRequest$,()=>A.DescribeRepositoryCreationTemplatesResponse$];A.GetAccountSetting$=[9,T,xRt,0,()=>A.GetAccountSettingRequest$,()=>A.GetAccountSettingResponse$];A.GetAuthorizationToken$=[9,T,SRt,0,()=>A.GetAuthorizationTokenRequest$,()=>A.GetAuthorizationTokenResponse$];A.GetDownloadUrlForLayer$=[9,T,NRt,0,()=>A.GetDownloadUrlForLayerRequest$,()=>A.GetDownloadUrlForLayerResponse$];A.GetLifecyclePolicy$=[9,T,vRt,0,()=>A.GetLifecyclePolicyRequest$,()=>A.GetLifecyclePolicyResponse$];A.GetLifecyclePolicyPreview$=[9,T,_Rt,0,()=>A.GetLifecyclePolicyPreviewRequest$,()=>A.GetLifecyclePolicyPreviewResponse$];A.GetRegistryPolicy$=[9,T,ORt,0,()=>A.GetRegistryPolicyRequest$,()=>A.GetRegistryPolicyResponse$];A.GetRegistryScanningConfiguration$=[9,T,GRt,0,()=>A.GetRegistryScanningConfigurationRequest$,()=>A.GetRegistryScanningConfigurationResponse$];A.GetRepositoryPolicy$=[9,T,$Rt,0,()=>A.GetRepositoryPolicyRequest$,()=>A.GetRepositoryPolicyResponse$];A.GetSigningConfiguration$=[9,T,VRt,0,()=>A.GetSigningConfigurationRequest$,()=>A.GetSigningConfigurationResponse$];A.InitiateLayerUpload$=[9,T,cNt,0,()=>A.InitiateLayerUploadRequest$,()=>A.InitiateLayerUploadResponse$];A.ListImageReferrers$=[9,T,zNt,0,()=>A.ListImageReferrersRequest$,()=>A.ListImageReferrersResponse$];A.ListImages$=[9,T,ONt,0,()=>A.ListImagesRequest$,()=>A.ListImagesResponse$];A.ListPullTimeUpdateExclusions$=[9,T,nTt,0,()=>A.ListPullTimeUpdateExclusionsRequest$,()=>A.ListPullTimeUpdateExclusionsResponse$];A.ListTagsForResource$=[9,T,iTt,0,()=>A.ListTagsForResourceRequest$,()=>A.ListTagsForResourceResponse$];A.PutAccountSetting$=[9,T,lTt,0,()=>A.PutAccountSettingRequest$,()=>A.PutAccountSettingResponse$];A.PutImage$=[9,T,pTt,0,()=>A.PutImageRequest$,()=>A.PutImageResponse$];A.PutImageScanningConfiguration$=[9,T,ATt,0,()=>A.PutImageScanningConfigurationRequest$,()=>A.PutImageScanningConfigurationResponse$];A.PutImageTagMutability$=[9,T,yTt,0,()=>A.PutImageTagMutabilityRequest$,()=>A.PutImageTagMutabilityResponse$];A.PutLifecyclePolicy$=[9,T,ITt,0,()=>A.PutLifecyclePolicyRequest$,()=>A.PutLifecyclePolicyResponse$];A.PutRegistryPolicy$=[9,T,RTt,0,()=>A.PutRegistryPolicyRequest$,()=>A.PutRegistryPolicyResponse$];A.PutRegistryScanningConfiguration$=[9,T,PTt,0,()=>A.PutRegistryScanningConfigurationRequest$,()=>A.PutRegistryScanningConfigurationResponse$];A.PutReplicationConfiguration$=[9,T,bTt,0,()=>A.PutReplicationConfigurationRequest$,()=>A.PutReplicationConfigurationResponse$];A.PutSigningConfiguration$=[9,T,QTt,0,()=>A.PutSigningConfigurationRequest$,()=>A.PutSigningConfigurationResponse$];A.RegisterPullTimeUpdateExclusion$=[9,T,sPt,0,()=>A.RegisterPullTimeUpdateExclusionRequest$,()=>A.RegisterPullTimeUpdateExclusionResponse$];A.SetRepositoryPolicy$=[9,T,MPt,0,()=>A.SetRepositoryPolicyRequest$,()=>A.SetRepositoryPolicyResponse$];A.StartImageScan$=[9,T,bPt,0,()=>A.StartImageScanRequest$,()=>A.StartImageScanResponse$];A.StartLifecyclePolicyPreview$=[9,T,RPt,0,()=>A.StartLifecyclePolicyPreviewRequest$,()=>A.StartLifecyclePolicyPreviewResponse$];A.TagResource$=[9,T,WPt,0,()=>A.TagResourceRequest$,()=>A.TagResourceResponse$];A.UntagResource$=[9,T,cvt,0,()=>A.UntagResourceRequest$,()=>A.UntagResourceResponse$];A.UpdateImageStorageClass$=[9,T,KPt,0,()=>A.UpdateImageStorageClassRequest$,()=>A.UpdateImageStorageClassResponse$];A.UpdatePullThroughCacheRule$=[9,T,ovt,0,()=>A.UpdatePullThroughCacheRuleRequest$,()=>A.UpdatePullThroughCacheRuleResponse$];A.UpdateRepositoryCreationTemplate$=[9,T,lvt,0,()=>A.UpdateRepositoryCreationTemplateRequest$,()=>A.UpdateRepositoryCreationTemplateResponse$];A.UploadLayerPart$=[9,T,tvt,0,()=>A.UploadLayerPartRequest$,()=>A.UploadLayerPartResponse$];A.ValidatePullThroughCacheRule$=[9,T,bvt,0,()=>A.ValidatePullThroughCacheRuleRequest$,()=>A.ValidatePullThroughCacheRuleResponse$]});var PLe=b(dk=>{"use strict";Object.defineProperty(dk,"__esModule",{value:!0});dk.getRuntimeConfig=void 0;var oDt=(Xr(),W(up)),iDt=(_f(),W(xJ)),aDt=(Ce(),W(Ui)),cDt=(Qe(),W(rl)),uk=(st(),W(Zd)),lDt=wj(),uDt=Jke(),dDt=V6(),pDt=i(t=>({apiVersion:"2015-09-21",base64Decoder:t?.base64Decoder??uk.fromBase64,base64Encoder:t?.base64Encoder??uk.toBase64,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??uDt.defaultEndpointResolver,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??lDt.defaultECRHttpAuthSchemeProvider,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new oDt.AwsSdkSigV4Signer}],logger:t?.logger??new aDt.NoOpLogger,protocol:t?.protocol??iDt.AwsJson1_1Protocol,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ecr",errorTypeRegistries:dDt.errorTypeRegistries,xmlNamespace:"http://ecr.amazonaws.com/doc/2015-09-21/",version:"2015-09-21",serviceTarget:"AmazonEC2ContainerRegistry_V20150921"},serviceId:t?.serviceId??"ECR",urlParser:t?.urlParser??cDt.parseUrl,utf8Decoder:t?.utf8Decoder??uk.fromUtf8,utf8Encoder:t?.utf8Encoder??uk.toUtf8}),"getRuntimeConfig");dk.getRuntimeConfig=pDt});var DLe=b(pk=>{"use strict";Object.defineProperty(pk,"__esModule",{value:!0});pk.getRuntimeConfig=void 0;var mDt=(ty(),W(ey)),fDt=mDt.__importDefault(EPe()),Y6=(wt(),W(Ds)),ADt=(Xr(),W(up)),hDt=v5(),vLe=(Ce(),W(Ui)),Wi=(Tt(),W(kn)),W6=(_s(),W(jx)),_Le=(st(),W(Zd)),QLe=vu(),gDt=PLe(),yDt=i(t=>{(0,vLe.emitWarningIfUnsupportedVersion)(process.version);let e=(0,Wi.resolveDefaultsModeConfig)(t),r=i(()=>e().then(vLe.loadConfigsForDefaultMode),"defaultConfigProvider"),n=(0,gDt.getRuntimeConfig)(t);(0,Y6.emitWarningIfUnsupportedVersion)(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??(0,Wi.loadConfig)(ADt.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,s),bodyLengthChecker:t?.bodyLengthChecker??_Le.calculateBodyLength,credentialDefaultProvider:t?.credentialDefaultProvider??hDt.defaultProvider,defaultUserAgentProvider:t?.defaultUserAgentProvider??(0,Y6.createDefaultUserAgentProvider)({serviceId:n.serviceId,clientVersion:fDt.default.version}),maxAttempts:t?.maxAttempts??(0,Wi.loadConfig)(W6.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,t),region:t?.region??(0,Wi.loadConfig)(Wi.NODE_REGION_CONFIG_OPTIONS,{...Wi.NODE_REGION_CONFIG_FILE_OPTIONS,...s}),requestHandler:QLe.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??(0,Wi.loadConfig)({...W6.NODE_RETRY_MODE_CONFIG_OPTIONS,default:i(async()=>(await r()).retryMode||W6.DEFAULT_RETRY_MODE,"default")},t),sha256:t?.sha256??_Le.Hash.bind(null,"sha256"),streamCollector:t?.streamCollector??QLe.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??(0,Wi.loadConfig)(Wi.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,s),useFipsEndpoint:t?.useFipsEndpoint??(0,Wi.loadConfig)(Wi.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,s),userAgentAppId:t?.userAgentAppId??(0,Wi.loadConfig)(Y6.NODE_APP_ID_CONFIG_OPTIONS,s)}},"getRuntimeConfig");pk.getRuntimeConfig=yDt});var WLe=b($=>{"use strict";var Np=(wt(),W(Ds)),Sl=(Qs(),W(Q8)),X=(Ce(),W(Ui)),EDt=(Tt(),W(kn)),Ie=(xt(),W(df)),j6=(Qe(),W(rl)),kLe=(_s(),W(jx)),CDt=(Ct(),W($x)),LLe=wj(),IDt=DLe(),ge=V6(),mk=T6(),xDt=KD(),wDt=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr"}),"resolveClientEndpointParameters"),xe={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},bDt=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),SDt=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig"),BDt=i((t,e)=>{let r=Object.assign(Np.getAwsRegionExtensionConfiguration(t),X.getDefaultExtensionConfiguration(t),j6.getHttpHandlerExtensionConfiguration(t),bDt(t));return e.forEach(n=>n.configure(r)),Object.assign(t,Np.resolveAwsRegionExtensionConfiguration(r),X.resolveDefaultRuntimeConfig(r),j6.resolveHttpHandlerRuntimeConfig(r),SDt(r))},"resolveRuntimeExtensions"),Fa=class extends X.Client{static{i(this,"ECRClient")}config;constructor(...[e]){let r=IDt.getRuntimeConfig(e||{});super(r),this.initConfig=r;let n=wDt(r),s=Np.resolveUserAgentConfig(n),o=kLe.resolveRetryConfig(s),a=EDt.resolveRegionConfig(o),c=Np.resolveHostHeaderConfig(a),l=Ie.resolveEndpointConfig(c),u=LLe.resolveHttpAuthSchemeConfig(l),d=BDt(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(CDt.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(Np.getUserAgentPlugin(this.config)),this.middlewareStack.use(kLe.getRetryPlugin(this.config)),this.middlewareStack.use(j6.getContentLengthPlugin(this.config)),this.middlewareStack.use(Np.getHostHeaderPlugin(this.config)),this.middlewareStack.use(Np.getLoggerPlugin(this.config)),this.middlewareStack.use(Np.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(Sl.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:LLe.defaultECRHttpAuthSchemeParametersProvider,identityProviderConfigProvider:i(async p=>new Sl.DefaultIdentityProviderConfig({"aws.auth#sigv4":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Sl.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}},fk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchCheckLayerAvailability",{}).n("ECRClient","BatchCheckLayerAvailabilityCommand").sc(ge.BatchCheckLayerAvailability$).build(){static{i(this,"BatchCheckLayerAvailabilityCommand")}},Ak=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchDeleteImage",{}).n("ECRClient","BatchDeleteImageCommand").sc(ge.BatchDeleteImage$).build(){static{i(this,"BatchDeleteImageCommand")}},hk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchGetImage",{}).n("ECRClient","BatchGetImageCommand").sc(ge.BatchGetImage$).build(){static{i(this,"BatchGetImageCommand")}},gk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","BatchGetRepositoryScanningConfiguration",{}).n("ECRClient","BatchGetRepositoryScanningConfigurationCommand").sc(ge.BatchGetRepositoryScanningConfiguration$).build(){static{i(this,"BatchGetRepositoryScanningConfigurationCommand")}},yk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CompleteLayerUpload",{}).n("ECRClient","CompleteLayerUploadCommand").sc(ge.CompleteLayerUpload$).build(){static{i(this,"CompleteLayerUploadCommand")}},Ek=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreatePullThroughCacheRule",{}).n("ECRClient","CreatePullThroughCacheRuleCommand").sc(ge.CreatePullThroughCacheRule$).build(){static{i(this,"CreatePullThroughCacheRuleCommand")}},Ck=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreateRepository",{}).n("ECRClient","CreateRepositoryCommand").sc(ge.CreateRepository$).build(){static{i(this,"CreateRepositoryCommand")}},Ik=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","CreateRepositoryCreationTemplate",{}).n("ECRClient","CreateRepositoryCreationTemplateCommand").sc(ge.CreateRepositoryCreationTemplate$).build(){static{i(this,"CreateRepositoryCreationTemplateCommand")}},xk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteLifecyclePolicy",{}).n("ECRClient","DeleteLifecyclePolicyCommand").sc(ge.DeleteLifecyclePolicy$).build(){static{i(this,"DeleteLifecyclePolicyCommand")}},wk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeletePullThroughCacheRule",{}).n("ECRClient","DeletePullThroughCacheRuleCommand").sc(ge.DeletePullThroughCacheRule$).build(){static{i(this,"DeletePullThroughCacheRuleCommand")}},bk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRegistryPolicy",{}).n("ECRClient","DeleteRegistryPolicyCommand").sc(ge.DeleteRegistryPolicy$).build(){static{i(this,"DeleteRegistryPolicyCommand")}},Sk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepository",{}).n("ECRClient","DeleteRepositoryCommand").sc(ge.DeleteRepository$).build(){static{i(this,"DeleteRepositoryCommand")}},Bk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepositoryCreationTemplate",{}).n("ECRClient","DeleteRepositoryCreationTemplateCommand").sc(ge.DeleteRepositoryCreationTemplate$).build(){static{i(this,"DeleteRepositoryCreationTemplateCommand")}},Rk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteRepositoryPolicy",{}).n("ECRClient","DeleteRepositoryPolicyCommand").sc(ge.DeleteRepositoryPolicy$).build(){static{i(this,"DeleteRepositoryPolicyCommand")}},Nk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeleteSigningConfiguration",{}).n("ECRClient","DeleteSigningConfigurationCommand").sc(ge.DeleteSigningConfiguration$).build(){static{i(this,"DeleteSigningConfigurationCommand")}},Tk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DeregisterPullTimeUpdateExclusion",{}).n("ECRClient","DeregisterPullTimeUpdateExclusionCommand").sc(ge.DeregisterPullTimeUpdateExclusion$).build(){static{i(this,"DeregisterPullTimeUpdateExclusionCommand")}},Pk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageReplicationStatus",{}).n("ECRClient","DescribeImageReplicationStatusCommand").sc(ge.DescribeImageReplicationStatus$).build(){static{i(this,"DescribeImageReplicationStatusCommand")}},Uy=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageScanFindings",{}).n("ECRClient","DescribeImageScanFindingsCommand").sc(ge.DescribeImageScanFindings$).build(){static{i(this,"DescribeImageScanFindingsCommand")}},m0=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImages",{}).n("ECRClient","DescribeImagesCommand").sc(ge.DescribeImages$).build(){static{i(this,"DescribeImagesCommand")}},vk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeImageSigningStatus",{}).n("ECRClient","DescribeImageSigningStatusCommand").sc(ge.DescribeImageSigningStatus$).build(){static{i(this,"DescribeImageSigningStatusCommand")}},f0=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribePullThroughCacheRules",{}).n("ECRClient","DescribePullThroughCacheRulesCommand").sc(ge.DescribePullThroughCacheRules$).build(){static{i(this,"DescribePullThroughCacheRulesCommand")}},_k=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRegistry",{}).n("ECRClient","DescribeRegistryCommand").sc(ge.DescribeRegistry$).build(){static{i(this,"DescribeRegistryCommand")}},A0=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRepositories",{}).n("ECRClient","DescribeRepositoriesCommand").sc(ge.DescribeRepositories$).build(){static{i(this,"DescribeRepositoriesCommand")}},h0=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","DescribeRepositoryCreationTemplates",{}).n("ECRClient","DescribeRepositoryCreationTemplatesCommand").sc(ge.DescribeRepositoryCreationTemplates$).build(){static{i(this,"DescribeRepositoryCreationTemplatesCommand")}},Qk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetAccountSetting",{}).n("ECRClient","GetAccountSettingCommand").sc(ge.GetAccountSetting$).build(){static{i(this,"GetAccountSettingCommand")}},Dk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetAuthorizationToken",{}).n("ECRClient","GetAuthorizationTokenCommand").sc(ge.GetAuthorizationToken$).build(){static{i(this,"GetAuthorizationTokenCommand")}},kk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetDownloadUrlForLayer",{}).n("ECRClient","GetDownloadUrlForLayerCommand").sc(ge.GetDownloadUrlForLayer$).build(){static{i(this,"GetDownloadUrlForLayerCommand")}},Lk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetLifecyclePolicy",{}).n("ECRClient","GetLifecyclePolicyCommand").sc(ge.GetLifecyclePolicy$).build(){static{i(this,"GetLifecyclePolicyCommand")}},qy=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetLifecyclePolicyPreview",{}).n("ECRClient","GetLifecyclePolicyPreviewCommand").sc(ge.GetLifecyclePolicyPreview$).build(){static{i(this,"GetLifecyclePolicyPreviewCommand")}},Ok=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRegistryPolicy",{}).n("ECRClient","GetRegistryPolicyCommand").sc(ge.GetRegistryPolicy$).build(){static{i(this,"GetRegistryPolicyCommand")}},Mk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRegistryScanningConfiguration",{}).n("ECRClient","GetRegistryScanningConfigurationCommand").sc(ge.GetRegistryScanningConfiguration$).build(){static{i(this,"GetRegistryScanningConfigurationCommand")}},Fk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetRepositoryPolicy",{}).n("ECRClient","GetRepositoryPolicyCommand").sc(ge.GetRepositoryPolicy$).build(){static{i(this,"GetRepositoryPolicyCommand")}},Uk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","GetSigningConfiguration",{}).n("ECRClient","GetSigningConfigurationCommand").sc(ge.GetSigningConfiguration$).build(){static{i(this,"GetSigningConfigurationCommand")}},qk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","InitiateLayerUpload",{}).n("ECRClient","InitiateLayerUploadCommand").sc(ge.InitiateLayerUpload$).build(){static{i(this,"InitiateLayerUploadCommand")}},$k=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListImageReferrers",{}).n("ECRClient","ListImageReferrersCommand").sc(ge.ListImageReferrers$).build(){static{i(this,"ListImageReferrersCommand")}},g0=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListImages",{}).n("ECRClient","ListImagesCommand").sc(ge.ListImages$).build(){static{i(this,"ListImagesCommand")}},Gk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListPullTimeUpdateExclusions",{}).n("ECRClient","ListPullTimeUpdateExclusionsCommand").sc(ge.ListPullTimeUpdateExclusions$).build(){static{i(this,"ListPullTimeUpdateExclusionsCommand")}},Hk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ListTagsForResource",{}).n("ECRClient","ListTagsForResourceCommand").sc(ge.ListTagsForResource$).build(){static{i(this,"ListTagsForResourceCommand")}},zk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutAccountSetting",{}).n("ECRClient","PutAccountSettingCommand").sc(ge.PutAccountSetting$).build(){static{i(this,"PutAccountSettingCommand")}},Vk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImage",{}).n("ECRClient","PutImageCommand").sc(ge.PutImage$).build(){static{i(this,"PutImageCommand")}},Yk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImageScanningConfiguration",{}).n("ECRClient","PutImageScanningConfigurationCommand").sc(ge.PutImageScanningConfiguration$).build(){static{i(this,"PutImageScanningConfigurationCommand")}},Wk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutImageTagMutability",{}).n("ECRClient","PutImageTagMutabilityCommand").sc(ge.PutImageTagMutability$).build(){static{i(this,"PutImageTagMutabilityCommand")}},jk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutLifecyclePolicy",{}).n("ECRClient","PutLifecyclePolicyCommand").sc(ge.PutLifecyclePolicy$).build(){static{i(this,"PutLifecyclePolicyCommand")}},Jk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutRegistryPolicy",{}).n("ECRClient","PutRegistryPolicyCommand").sc(ge.PutRegistryPolicy$).build(){static{i(this,"PutRegistryPolicyCommand")}},Kk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutRegistryScanningConfiguration",{}).n("ECRClient","PutRegistryScanningConfigurationCommand").sc(ge.PutRegistryScanningConfiguration$).build(){static{i(this,"PutRegistryScanningConfigurationCommand")}},Xk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutReplicationConfiguration",{}).n("ECRClient","PutReplicationConfigurationCommand").sc(ge.PutReplicationConfiguration$).build(){static{i(this,"PutReplicationConfigurationCommand")}},Zk=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","PutSigningConfiguration",{}).n("ECRClient","PutSigningConfigurationCommand").sc(ge.PutSigningConfiguration$).build(){static{i(this,"PutSigningConfigurationCommand")}},eL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","RegisterPullTimeUpdateExclusion",{}).n("ECRClient","RegisterPullTimeUpdateExclusionCommand").sc(ge.RegisterPullTimeUpdateExclusion$).build(){static{i(this,"RegisterPullTimeUpdateExclusionCommand")}},tL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","SetRepositoryPolicy",{}).n("ECRClient","SetRepositoryPolicyCommand").sc(ge.SetRepositoryPolicy$).build(){static{i(this,"SetRepositoryPolicyCommand")}},rL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","StartImageScan",{}).n("ECRClient","StartImageScanCommand").sc(ge.StartImageScan$).build(){static{i(this,"StartImageScanCommand")}},nL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","StartLifecyclePolicyPreview",{}).n("ECRClient","StartLifecyclePolicyPreviewCommand").sc(ge.StartLifecyclePolicyPreview$).build(){static{i(this,"StartLifecyclePolicyPreviewCommand")}},sL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","TagResource",{}).n("ECRClient","TagResourceCommand").sc(ge.TagResource$).build(){static{i(this,"TagResourceCommand")}},oL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UntagResource",{}).n("ECRClient","UntagResourceCommand").sc(ge.UntagResource$).build(){static{i(this,"UntagResourceCommand")}},iL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdateImageStorageClass",{}).n("ECRClient","UpdateImageStorageClassCommand").sc(ge.UpdateImageStorageClass$).build(){static{i(this,"UpdateImageStorageClassCommand")}},aL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdatePullThroughCacheRule",{}).n("ECRClient","UpdatePullThroughCacheRuleCommand").sc(ge.UpdatePullThroughCacheRule$).build(){static{i(this,"UpdatePullThroughCacheRuleCommand")}},cL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UpdateRepositoryCreationTemplate",{}).n("ECRClient","UpdateRepositoryCreationTemplateCommand").sc(ge.UpdateRepositoryCreationTemplate$).build(){static{i(this,"UpdateRepositoryCreationTemplateCommand")}},lL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","UploadLayerPart",{}).n("ECRClient","UploadLayerPartCommand").sc(ge.UploadLayerPart$).build(){static{i(this,"UploadLayerPartCommand")}},uL=class extends X.Command.classBuilder().ep(xe).m(function(e,r,n,s){return[Ie.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("AmazonEC2ContainerRegistry_V20150921","ValidatePullThroughCacheRule",{}).n("ECRClient","ValidatePullThroughCacheRuleCommand").sc(ge.ValidatePullThroughCacheRule$).build(){static{i(this,"ValidatePullThroughCacheRuleCommand")}},OLe=Sl.createPaginator(Fa,Uy,"nextToken","nextToken","maxResults"),MLe=Sl.createPaginator(Fa,m0,"nextToken","nextToken","maxResults"),FLe=Sl.createPaginator(Fa,f0,"nextToken","nextToken","maxResults"),ULe=Sl.createPaginator(Fa,A0,"nextToken","nextToken","maxResults"),qLe=Sl.createPaginator(Fa,h0,"nextToken","nextToken","maxResults"),$Le=Sl.createPaginator(Fa,qy,"nextToken","nextToken","maxResults"),GLe=Sl.createPaginator(Fa,g0,"nextToken","nextToken","maxResults"),HLe=i(async(t,e)=>{let r;try{let n=await t.send(new Uy(e));r=n;try{if(i(()=>n.imageScanStatus.status,"returnComparator")()==="COMPLETE")return{state:X.WaiterState.SUCCESS,reason:r}}catch{}try{if(i(()=>n.imageScanStatus.status,"returnComparator")()==="FAILED")return{state:X.WaiterState.FAILURE,reason:r}}catch{}}catch(n){r=n}return{state:X.WaiterState.RETRY,reason:r}},"checkState$1"),RDt=i(async(t,e)=>{let r={minDelay:5,maxDelay:120};return X.createWaiter({...r,...t},e,HLe)},"waitForImageScanComplete"),zLe=i(async(t,e)=>{let r={minDelay:5,maxDelay:120},n=await X.createWaiter({...r,...t},e,HLe);return X.checkExceptions(n)},"waitUntilImageScanComplete"),VLe=i(async(t,e)=>{let r;try{let n=await t.send(new qy(e));r=n;try{if(i(()=>n.status,"returnComparator")()==="COMPLETE")return{state:X.WaiterState.SUCCESS,reason:r}}catch{}try{if(i(()=>n.status,"returnComparator")()==="FAILED")return{state:X.WaiterState.FAILURE,reason:r}}catch{}}catch(n){r=n}return{state:X.WaiterState.RETRY,reason:r}},"checkState"),NDt=i(async(t,e)=>{let r={minDelay:5,maxDelay:120};return X.createWaiter({...r,...t},e,VLe)},"waitForLifecyclePolicyPreviewComplete"),YLe=i(async(t,e)=>{let r={minDelay:5,maxDelay:120},n=await X.createWaiter({...r,...t},e,VLe);return X.checkExceptions(n)},"waitUntilLifecyclePolicyPreviewComplete"),TDt={BatchCheckLayerAvailabilityCommand:fk,BatchDeleteImageCommand:Ak,BatchGetImageCommand:hk,BatchGetRepositoryScanningConfigurationCommand:gk,CompleteLayerUploadCommand:yk,CreatePullThroughCacheRuleCommand:Ek,CreateRepositoryCommand:Ck,CreateRepositoryCreationTemplateCommand:Ik,DeleteLifecyclePolicyCommand:xk,DeletePullThroughCacheRuleCommand:wk,DeleteRegistryPolicyCommand:bk,DeleteRepositoryCommand:Sk,DeleteRepositoryCreationTemplateCommand:Bk,DeleteRepositoryPolicyCommand:Rk,DeleteSigningConfigurationCommand:Nk,DeregisterPullTimeUpdateExclusionCommand:Tk,DescribeImageReplicationStatusCommand:Pk,DescribeImagesCommand:m0,DescribeImageScanFindingsCommand:Uy,DescribeImageSigningStatusCommand:vk,DescribePullThroughCacheRulesCommand:f0,DescribeRegistryCommand:_k,DescribeRepositoriesCommand:A0,DescribeRepositoryCreationTemplatesCommand:h0,GetAccountSettingCommand:Qk,GetAuthorizationTokenCommand:Dk,GetDownloadUrlForLayerCommand:kk,GetLifecyclePolicyCommand:Lk,GetLifecyclePolicyPreviewCommand:qy,GetRegistryPolicyCommand:Ok,GetRegistryScanningConfigurationCommand:Mk,GetRepositoryPolicyCommand:Fk,GetSigningConfigurationCommand:Uk,InitiateLayerUploadCommand:qk,ListImageReferrersCommand:$k,ListImagesCommand:g0,ListPullTimeUpdateExclusionsCommand:Gk,ListTagsForResourceCommand:Hk,PutAccountSettingCommand:zk,PutImageCommand:Vk,PutImageScanningConfigurationCommand:Yk,PutImageTagMutabilityCommand:Wk,PutLifecyclePolicyCommand:jk,PutRegistryPolicyCommand:Jk,PutRegistryScanningConfigurationCommand:Kk,PutReplicationConfigurationCommand:Xk,PutSigningConfigurationCommand:Zk,RegisterPullTimeUpdateExclusionCommand:eL,SetRepositoryPolicyCommand:tL,StartImageScanCommand:rL,StartLifecyclePolicyPreviewCommand:nL,TagResourceCommand:sL,UntagResourceCommand:oL,UpdateImageStorageClassCommand:iL,UpdatePullThroughCacheRuleCommand:aL,UpdateRepositoryCreationTemplateCommand:cL,UploadLayerPartCommand:lL,ValidatePullThroughCacheRuleCommand:uL},PDt={paginateDescribeImages:MLe,paginateDescribeImageScanFindings:OLe,paginateDescribePullThroughCacheRules:FLe,paginateDescribeRepositories:ULe,paginateDescribeRepositoryCreationTemplates:qLe,paginateGetLifecyclePolicyPreview:$Le,paginateListImages:GLe},vDt={waitUntilImageScanComplete:zLe,waitUntilLifecyclePolicyPreviewComplete:YLe},dL=class extends Fa{static{i(this,"ECR")}};X.createAggregatedClient(TDt,dL,{paginators:PDt,waiters:vDt});var _Dt={InvalidLayerDigest:"InvalidLayerDigest",MissingLayerDigest:"MissingLayerDigest"},QDt={ARCHIVED:"ARCHIVED",AVAILABLE:"AVAILABLE",UNAVAILABLE:"UNAVAILABLE"},DDt={ImageInaccessible:"ImageInaccessible",ImageNotFound:"ImageNotFound",ImageReferencedByManifestList:"ImageReferencedByManifestList",ImageTagDoesNotMatchDigest:"ImageTagDoesNotMatchDigest",InvalidImageDigest:"InvalidImageDigest",InvalidImageTag:"InvalidImageTag",KmsError:"KmsError",MissingDigestAndTag:"MissingDigestAndTag",UpstreamAccessDenied:"UpstreamAccessDenied",UpstreamTooManyRequests:"UpstreamTooManyRequests",UpstreamUnavailable:"UpstreamUnavailable"},kDt={REPOSITORY_NOT_FOUND:"REPOSITORY_NOT_FOUND"},LDt={WILDCARD:"WILDCARD"},ODt={CONTINUOUS_SCAN:"CONTINUOUS_SCAN",MANUAL:"MANUAL",SCAN_ON_PUSH:"SCAN_ON_PUSH"},MDt={AzureContainerRegistry:"azure-container-registry",Chainguard:"chainguard",DockerHub:"docker-hub",Ecr:"ecr",EcrPublic:"ecr-public",GitHubContainerRegistry:"github-container-registry",GitLabContainerRegistry:"gitlab-container-registry",K8s:"k8s",Quay:"quay"},FDt={AES256:"AES256",KMS:"KMS",KMS_DSSE:"KMS_DSSE"},UDt={IMMUTABLE:"IMMUTABLE",IMMUTABLE_WITH_EXCLUSION:"IMMUTABLE_WITH_EXCLUSION",MUTABLE:"MUTABLE",MUTABLE_WITH_EXCLUSION:"MUTABLE_WITH_EXCLUSION"},qDt={WILDCARD:"WILDCARD"},$Dt={CREATE_ON_PUSH:"CREATE_ON_PUSH",PULL_THROUGH_CACHE:"PULL_THROUGH_CACHE",REPLICATION:"REPLICATION"},GDt={WILDCARD_MATCH:"WILDCARD_MATCH"},HDt={COMPLETE:"COMPLETE",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},zDt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ANY:"ANY",ARCHIVED:"ARCHIVED"},VDt={ANY:"ANY",TAGGED:"TAGGED",UNTAGGED:"UNTAGGED"},YDt={CRITICAL:"CRITICAL",HIGH:"HIGH",INFORMATIONAL:"INFORMATIONAL",LOW:"LOW",MEDIUM:"MEDIUM",UNDEFINED:"UNDEFINED"},WDt={ACTIVE:"ACTIVE",COMPLETE:"COMPLETE",FAILED:"FAILED",FINDINGS_UNAVAILABLE:"FINDINGS_UNAVAILABLE",IMAGE_ARCHIVED:"IMAGE_ARCHIVED",IN_PROGRESS:"IN_PROGRESS",LIMIT_EXCEEDED:"LIMIT_EXCEEDED",PENDING:"PENDING",SCAN_ELIGIBILITY_EXPIRED:"SCAN_ELIGIBILITY_EXPIRED",UNSUPPORTED_IMAGE:"UNSUPPORTED_IMAGE"},jDt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ARCHIVED:"ARCHIVED"},JDt={COMPLETE:"COMPLETE",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},KDt={PREFIX_MATCH:"PREFIX_MATCH"},XDt={ARCHIVE:"ARCHIVE"},ZDt={EXPIRE:"EXPIRE",TRANSITION:"TRANSITION"},ekt={ARCHIVE:"ARCHIVE",STANDARD:"STANDARD"},tkt={COMPLETE:"COMPLETE",EXPIRED:"EXPIRED",FAILED:"FAILED",IN_PROGRESS:"IN_PROGRESS"},rkt={BASIC:"BASIC",ENHANCED:"ENHANCED"},nkt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ANY:"ANY",ARCHIVED:"ARCHIVED"},skt={ACTIVATING:"ACTIVATING",ACTIVE:"ACTIVE",ARCHIVED:"ARCHIVED"},okt={ARCHIVE:"ARCHIVE",STANDARD:"STANDARD"};$.$Command=X.Command;$.__Client=X.Client;$.ECRServiceException=xDt.ECRServiceException;$.ArtifactStatus=skt;$.ArtifactStatusFilter=nkt;$.BatchCheckLayerAvailabilityCommand=fk;$.BatchDeleteImageCommand=Ak;$.BatchGetImageCommand=hk;$.BatchGetRepositoryScanningConfigurationCommand=gk;$.CompleteLayerUploadCommand=yk;$.CreatePullThroughCacheRuleCommand=Ek;$.CreateRepositoryCommand=Ck;$.CreateRepositoryCreationTemplateCommand=Ik;$.DeleteLifecyclePolicyCommand=xk;$.DeletePullThroughCacheRuleCommand=wk;$.DeleteRegistryPolicyCommand=bk;$.DeleteRepositoryCommand=Sk;$.DeleteRepositoryCreationTemplateCommand=Bk;$.DeleteRepositoryPolicyCommand=Rk;$.DeleteSigningConfigurationCommand=Nk;$.DeregisterPullTimeUpdateExclusionCommand=Tk;$.DescribeImageReplicationStatusCommand=Pk;$.DescribeImageScanFindingsCommand=Uy;$.DescribeImageSigningStatusCommand=vk;$.DescribeImagesCommand=m0;$.DescribePullThroughCacheRulesCommand=f0;$.DescribeRegistryCommand=_k;$.DescribeRepositoriesCommand=A0;$.DescribeRepositoryCreationTemplatesCommand=h0;$.ECR=dL;$.ECRClient=Fa;$.EncryptionType=FDt;$.FindingSeverity=YDt;$.GetAccountSettingCommand=Qk;$.GetAuthorizationTokenCommand=Dk;$.GetDownloadUrlForLayerCommand=kk;$.GetLifecyclePolicyCommand=Lk;$.GetLifecyclePolicyPreviewCommand=qy;$.GetRegistryPolicyCommand=Ok;$.GetRegistryScanningConfigurationCommand=Mk;$.GetRepositoryPolicyCommand=Fk;$.GetSigningConfigurationCommand=Uk;$.ImageActionType=ZDt;$.ImageFailureCode=DDt;$.ImageStatus=jDt;$.ImageStatusFilter=zDt;$.ImageTagMutability=UDt;$.ImageTagMutabilityExclusionFilterType=qDt;$.InitiateLayerUploadCommand=qk;$.LayerAvailability=QDt;$.LayerFailureCode=_Dt;$.LifecyclePolicyPreviewStatus=tkt;$.LifecyclePolicyStorageClass=ekt;$.LifecyclePolicyTargetStorageClass=XDt;$.ListImageReferrersCommand=$k;$.ListImagesCommand=g0;$.ListPullTimeUpdateExclusionsCommand=Gk;$.ListTagsForResourceCommand=Hk;$.PutAccountSettingCommand=zk;$.PutImageCommand=Vk;$.PutImageScanningConfigurationCommand=Yk;$.PutImageTagMutabilityCommand=Wk;$.PutLifecyclePolicyCommand=jk;$.PutRegistryPolicyCommand=Jk;$.PutRegistryScanningConfigurationCommand=Kk;$.PutReplicationConfigurationCommand=Xk;$.PutSigningConfigurationCommand=Zk;$.RCTAppliedFor=$Dt;$.RegisterPullTimeUpdateExclusionCommand=eL;$.ReplicationStatus=HDt;$.RepositoryFilterType=KDt;$.ScanFrequency=ODt;$.ScanStatus=WDt;$.ScanType=rkt;$.ScanningConfigurationFailureCode=kDt;$.ScanningRepositoryFilterType=LDt;$.SetRepositoryPolicyCommand=tL;$.SigningRepositoryFilterType=GDt;$.SigningStatus=JDt;$.StartImageScanCommand=rL;$.StartLifecyclePolicyPreviewCommand=nL;$.TagResourceCommand=sL;$.TagStatus=VDt;$.TargetStorageClass=okt;$.UntagResourceCommand=oL;$.UpdateImageStorageClassCommand=iL;$.UpdatePullThroughCacheRuleCommand=aL;$.UpdateRepositoryCreationTemplateCommand=cL;$.UploadLayerPartCommand=lL;$.UpstreamRegistry=MDt;$.ValidatePullThroughCacheRuleCommand=uL;$.paginateDescribeImageScanFindings=OLe;$.paginateDescribeImages=MLe;$.paginateDescribePullThroughCacheRules=FLe;$.paginateDescribeRepositories=ULe;$.paginateDescribeRepositoryCreationTemplates=qLe;$.paginateGetLifecyclePolicyPreview=$Le;$.paginateListImages=GLe;$.waitForImageScanComplete=RDt;$.waitForLifecyclePolicyPreviewComplete=NDt;$.waitUntilImageScanComplete=zLe;$.waitUntilLifecyclePolicyPreviewComplete=YLe;Object.prototype.hasOwnProperty.call(ge,"__proto__")&&!Object.prototype.hasOwnProperty.call($,"__proto__")&&Object.defineProperty($,"__proto__",{enumerable:!0,value:ge.__proto__});Object.keys(ge).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call($,t)&&($[t]=ge[t])});Object.prototype.hasOwnProperty.call(mk,"__proto__")&&!Object.prototype.hasOwnProperty.call($,"__proto__")&&Object.defineProperty($,"__proto__",{enumerable:!0,value:mk.__proto__});Object.keys(mk).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call($,t)&&($[t]=mk[t])})});var K6=b(Tp=>{"use strict";Object.defineProperty(Tp,"__esModule",{value:!0});Tp.resolveHttpAuthSchemeConfig=Tp.defaultECRPUBLICHttpAuthSchemeProvider=Tp.defaultECRPUBLICHttpAuthSchemeParametersProvider=void 0;var ikt=(Xr(),W(up)),J6=(Ce(),W(Ui)),akt=i(async(t,e,r)=>({operation:(0,J6.getSmithyContext)(e).operation,region:await(0,J6.normalizeProvider)(t.region)()||(()=>{throw new Error("expected `region` to be configured for `aws.auth#sigv4`")})()}),"defaultECRPUBLICHttpAuthSchemeParametersProvider");Tp.defaultECRPUBLICHttpAuthSchemeParametersProvider=akt;function ckt(t){return{schemeId:"aws.auth#sigv4",signingProperties:{name:"ecr-public",region:t.region},propertiesExtractor:i((e,r)=>({signingProperties:{config:e,context:r}}),"propertiesExtractor")}}i(ckt,"createAwsAuthSigv4HttpAuthOption");var lkt=i(t=>{let e=[];switch(t.operation){default:e.push(ckt(t))}return e},"defaultECRPUBLICHttpAuthSchemeProvider");Tp.defaultECRPUBLICHttpAuthSchemeProvider=lkt;var ukt=i(t=>{let e=(0,ikt.resolveAwsSdkSigV4Config)(t);return Object.assign(e,{authSchemePreference:(0,J6.normalizeProvider)(t.authSchemePreference??[])})},"resolveHttpAuthSchemeConfig");Tp.resolveHttpAuthSchemeConfig=ukt});var jLe=b((P3r,dkt)=>{dkt.exports={name:"@aws-sdk/client-ecr-public",description:"AWS SDK for JavaScript Ecr Public Client for Node.js, Browser and React Native",version:"3.1052.0",scripts:{build:"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs","build:cjs":"node ../../scripts/compilation/inline client-ecr-public","build:es":"tsc -p tsconfig.es.json","build:include:deps":'yarn g:turbo run build -F="$npm_package_name"',"build:types":"tsc -p tsconfig.types.json","build:types:downlevel":"downlevel-dts dist-types dist-types/ts3.4",clean:"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo","extract:docs":"api-extractor run --local","generate:client":"node ../../scripts/generate-clients/single-service --solo ecr-public","test:index":"tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs"},main:"./dist-cjs/index.js",types:"./dist-types/index.d.ts",module:"./dist-es/index.js",sideEffects:!1,dependencies:{"@aws-crypto/sha256-browser":"5.2.0","@aws-crypto/sha256-js":"5.2.0","@aws-sdk/core":"^3.974.13","@aws-sdk/credential-provider-node":"^3.972.44","@aws-sdk/types":"^3.973.9","@smithy/core":"^3.24.3","@smithy/fetch-http-handler":"^5.4.3","@smithy/node-http-handler":"^4.7.3","@smithy/types":"^4.14.2",tslib:"^2.6.2"},devDependencies:{"@tsconfig/node20":"20.1.8","@types/node":"^20.14.8",concurrently:"7.0.0","downlevel-dts":"0.10.1",premove:"4.0.0",typescript:"~5.8.3"},engines:{node:">=20.0.0"},typesVersions:{"<4.5":{"dist-types/*":["dist-types/ts3.4/*"]}},files:["dist-*/**"],author:{name:"AWS SDK for JavaScript Team",url:"https://aws.amazon.com/javascript/"},license:"Apache-2.0",browser:{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.browser"},"react-native":{"./dist-es/runtimeConfig":"./dist-es/runtimeConfig.native"},homepage:"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ecr-public",repository:{type:"git",url:"https://github.com/aws/aws-sdk-js-v3.git",directory:"clients/client-ecr-public"}}});var tOe=b(fL=>{"use strict";Object.defineProperty(fL,"__esModule",{value:!0});fL.bdd=void 0;var pkt=(xt(),W(df)),y0="ref",Xf=-1,pL=!0,JLe="isSet",eOe="PartitionResult",mL="booleanEquals",X6="getAttr",KLe={[y0]:"Endpoint"},Z6={[y0]:eOe},$y={},XLe=[{[y0]:"Region"}],ZLe={conditions:[[JLe,[KLe]],[JLe,XLe],["aws.partition",XLe,eOe],[mL,[{[y0]:"UseFIPS"},pL]],[mL,[{[y0]:"UseDualStack"},pL]],[mL,[{fn:X6,argv:[Z6,"supportsDualStack"]},pL]],[mL,[{fn:X6,argv:[Z6,"supportsFIPS"]},pL]],["stringEquals",[{fn:X6,argv:[Z6,"name"]},"aws"]]],results:[[Xf],[Xf,"Invalid Configuration: FIPS and custom endpoint are not supported"],[Xf,"Invalid Configuration: Dualstack and custom endpoint are not supported"],[KLe,$y],["https://api.ecr-public-fips.{Region}.{PartitionResult#dualStackDnsSuffix}",$y],[Xf,"FIPS and DualStack are enabled, but this partition does not support one or both"],["https://api.ecr-public-fips.{Region}.{PartitionResult#dnsSuffix}",$y],[Xf,"FIPS is enabled but this partition does not support FIPS"],["https://ecr-public.{Region}.api.aws",$y],["https://api.ecr-public.{Region}.{PartitionResult#dualStackDnsSuffix}",$y],[Xf,"DualStack is enabled but this partition does not support DualStack"],["https://api.ecr-public.{Region}.{PartitionResult#dnsSuffix}",$y],[Xf,"Invalid Configuration: Missing Region"]]},mkt=2,Ao=1e8,fkt=new Int32Array([-1,1,-1,0,13,3,1,4,Ao+12,2,5,Ao+12,3,9,6,4,7,Ao+11,5,8,Ao+10,7,Ao+8,Ao+9,4,11,10,6,Ao+6,Ao+7,5,12,Ao+5,6,Ao+4,Ao+5,3,Ao+1,14,4,Ao+2,Ao+3]);fL.bdd=pkt.BinaryDecisionDiagram.from(fkt,mkt,ZLe.conditions,ZLe.results)});var rOe=b(AL=>{"use strict";Object.defineProperty(AL,"__esModule",{value:!0});AL.defaultEndpointResolver=void 0;var Akt=(wt(),W(Ds)),e9=(xt(),W(df)),hkt=tOe(),gkt=new e9.EndpointCache({size:50,params:["Endpoint","Region","UseDualStack","UseFIPS"]}),ykt=i((t,e={})=>gkt.get(t,()=>(0,e9.decideEndpoint)(hkt.bdd,{endpointParams:t,logger:e.logger})),"defaultEndpointResolver");AL.defaultEndpointResolver=ykt;e9.customEndpointFunctions.aws=Akt.awsEndpointFunctions});var hL=b(Gy=>{"use strict";Object.defineProperty(Gy,"__esModule",{value:!0});Gy.ECRPUBLICServiceException=Gy.__ServiceException=void 0;var nOe=(Ce(),W(Ui));Object.defineProperty(Gy,"__ServiceException",{enumerable:!0,get:i(function(){return nOe.ServiceException},"get")});var t9=class t extends nOe.ServiceException{static{i(this,"ECRPUBLICServiceException")}constructor(e){super(e),Object.setPrototypeOf(this,t.prototype)}};Gy.ECRPUBLICServiceException=t9});var B9=b(Me=>{"use strict";Object.defineProperty(Me,"__esModule",{value:!0});Me.ReferencedImagesNotFoundException=Me.LayersNotFoundException=Me.InvalidLayerPartException=Me.ImageTagAlreadyExistsException=Me.ImageDigestDoesNotMatchException=Me.ImageAlreadyExistsException=Me.RepositoryCatalogDataNotFoundException=Me.ImageNotFoundException=Me.RepositoryPolicyNotFoundException=Me.RepositoryNotEmptyException=Me.TooManyTagsException=Me.RepositoryAlreadyExistsException=Me.LimitExceededException=Me.InvalidTagParameterException=Me.UploadNotFoundException=Me.LayerPartTooSmallException=Me.LayerAlreadyExistsException=Me.InvalidLayerException=Me.EmptyUploadException=Me.UnsupportedCommandException=Me.ServerException=Me.RepositoryNotFoundException=Me.RegistryNotFoundException=Me.InvalidParameterException=void 0;var ar=hL(),r9=class t extends ar.ECRPUBLICServiceException{static{i(this,"InvalidParameterException")}name="InvalidParameterException";$fault="client";constructor(e){super({name:"InvalidParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.InvalidParameterException=r9;var n9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RegistryNotFoundException")}name="RegistryNotFoundException";$fault="client";constructor(e){super({name:"RegistryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RegistryNotFoundException=n9;var s9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RepositoryNotFoundException")}name="RepositoryNotFoundException";$fault="client";constructor(e){super({name:"RepositoryNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RepositoryNotFoundException=s9;var o9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ServerException")}name="ServerException";$fault="server";constructor(e){super({name:"ServerException",$fault:"server",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ServerException=o9;var i9=class t extends ar.ECRPUBLICServiceException{static{i(this,"UnsupportedCommandException")}name="UnsupportedCommandException";$fault="client";constructor(e){super({name:"UnsupportedCommandException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.UnsupportedCommandException=i9;var a9=class t extends ar.ECRPUBLICServiceException{static{i(this,"EmptyUploadException")}name="EmptyUploadException";$fault="client";constructor(e){super({name:"EmptyUploadException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.EmptyUploadException=a9;var c9=class t extends ar.ECRPUBLICServiceException{static{i(this,"InvalidLayerException")}name="InvalidLayerException";$fault="client";constructor(e){super({name:"InvalidLayerException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.InvalidLayerException=c9;var l9=class t extends ar.ECRPUBLICServiceException{static{i(this,"LayerAlreadyExistsException")}name="LayerAlreadyExistsException";$fault="client";constructor(e){super({name:"LayerAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.LayerAlreadyExistsException=l9;var u9=class t extends ar.ECRPUBLICServiceException{static{i(this,"LayerPartTooSmallException")}name="LayerPartTooSmallException";$fault="client";constructor(e){super({name:"LayerPartTooSmallException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.LayerPartTooSmallException=u9;var d9=class t extends ar.ECRPUBLICServiceException{static{i(this,"UploadNotFoundException")}name="UploadNotFoundException";$fault="client";constructor(e){super({name:"UploadNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.UploadNotFoundException=d9;var p9=class t extends ar.ECRPUBLICServiceException{static{i(this,"InvalidTagParameterException")}name="InvalidTagParameterException";$fault="client";constructor(e){super({name:"InvalidTagParameterException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.InvalidTagParameterException=p9;var m9=class t extends ar.ECRPUBLICServiceException{static{i(this,"LimitExceededException")}name="LimitExceededException";$fault="client";constructor(e){super({name:"LimitExceededException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.LimitExceededException=m9;var f9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RepositoryAlreadyExistsException")}name="RepositoryAlreadyExistsException";$fault="client";constructor(e){super({name:"RepositoryAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RepositoryAlreadyExistsException=f9;var A9=class t extends ar.ECRPUBLICServiceException{static{i(this,"TooManyTagsException")}name="TooManyTagsException";$fault="client";constructor(e){super({name:"TooManyTagsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.TooManyTagsException=A9;var h9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RepositoryNotEmptyException")}name="RepositoryNotEmptyException";$fault="client";constructor(e){super({name:"RepositoryNotEmptyException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RepositoryNotEmptyException=h9;var g9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RepositoryPolicyNotFoundException")}name="RepositoryPolicyNotFoundException";$fault="client";constructor(e){super({name:"RepositoryPolicyNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RepositoryPolicyNotFoundException=g9;var y9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ImageNotFoundException")}name="ImageNotFoundException";$fault="client";constructor(e){super({name:"ImageNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ImageNotFoundException=y9;var E9=class t extends ar.ECRPUBLICServiceException{static{i(this,"RepositoryCatalogDataNotFoundException")}name="RepositoryCatalogDataNotFoundException";$fault="client";constructor(e){super({name:"RepositoryCatalogDataNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.RepositoryCatalogDataNotFoundException=E9;var C9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ImageAlreadyExistsException")}name="ImageAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ImageAlreadyExistsException=C9;var I9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ImageDigestDoesNotMatchException")}name="ImageDigestDoesNotMatchException";$fault="client";constructor(e){super({name:"ImageDigestDoesNotMatchException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ImageDigestDoesNotMatchException=I9;var x9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ImageTagAlreadyExistsException")}name="ImageTagAlreadyExistsException";$fault="client";constructor(e){super({name:"ImageTagAlreadyExistsException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ImageTagAlreadyExistsException=x9;var w9=class t extends ar.ECRPUBLICServiceException{static{i(this,"InvalidLayerPartException")}name="InvalidLayerPartException";$fault="client";registryId;repositoryName;uploadId;lastValidByteReceived;constructor(e){super({name:"InvalidLayerPartException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype),this.registryId=e.registryId,this.repositoryName=e.repositoryName,this.uploadId=e.uploadId,this.lastValidByteReceived=e.lastValidByteReceived}};Me.InvalidLayerPartException=w9;var b9=class t extends ar.ECRPUBLICServiceException{static{i(this,"LayersNotFoundException")}name="LayersNotFoundException";$fault="client";constructor(e){super({name:"LayersNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.LayersNotFoundException=b9;var S9=class t extends ar.ECRPUBLICServiceException{static{i(this,"ReferencedImagesNotFoundException")}name="ReferencedImagesNotFoundException";$fault="client";constructor(e){super({name:"ReferencedImagesNotFoundException",$fault:"client",...e}),Object.setPrototypeOf(this,t.prototype)}};Me.ReferencedImagesNotFoundException=S9});var D9=b(R=>{"use strict";Object.defineProperty(R,"__esModule",{value:!0});R.GetRegistryCatalogDataRequest$=R.GetAuthorizationTokenResponse$=R.GetAuthorizationTokenRequest$=R.DescribeRepositoriesResponse$=R.DescribeRepositoriesRequest$=R.DescribeRegistriesResponse$=R.DescribeRegistriesRequest$=R.DescribeImageTagsResponse$=R.DescribeImageTagsRequest$=R.DescribeImagesResponse$=R.DescribeImagesRequest$=R.DeleteRepositoryResponse$=R.DeleteRepositoryRequest$=R.DeleteRepositoryPolicyResponse$=R.DeleteRepositoryPolicyRequest$=R.CreateRepositoryResponse$=R.CreateRepositoryRequest$=R.CompleteLayerUploadResponse$=R.CompleteLayerUploadRequest$=R.BatchDeleteImageResponse$=R.BatchDeleteImageRequest$=R.BatchCheckLayerAvailabilityResponse$=R.BatchCheckLayerAvailabilityRequest$=R.AuthorizationData$=R.errorTypeRegistries=R.UploadNotFoundException$=R.UnsupportedCommandException$=R.TooManyTagsException$=R.ServerException$=R.RepositoryPolicyNotFoundException$=R.RepositoryNotFoundException$=R.RepositoryNotEmptyException$=R.RepositoryCatalogDataNotFoundException$=R.RepositoryAlreadyExistsException$=R.RegistryNotFoundException$=R.ReferencedImagesNotFoundException$=R.LimitExceededException$=R.LayersNotFoundException$=R.LayerPartTooSmallException$=R.LayerAlreadyExistsException$=R.InvalidTagParameterException$=R.InvalidParameterException$=R.InvalidLayerPartException$=R.InvalidLayerException$=R.ImageTagAlreadyExistsException$=R.ImageNotFoundException$=R.ImageDigestDoesNotMatchException$=R.ImageAlreadyExistsException$=R.EmptyUploadException$=R.ECRPUBLICServiceException$=void 0;R.GetRegistryCatalogData$=R.GetAuthorizationToken$=R.DescribeRepositories$=R.DescribeRegistries$=R.DescribeImageTags$=R.DescribeImages$=R.DeleteRepositoryPolicy$=R.DeleteRepository$=R.CreateRepository$=R.CompleteLayerUpload$=R.BatchDeleteImage$=R.BatchCheckLayerAvailability$=R.UploadLayerPartResponse$=R.UploadLayerPartRequest$=R.UntagResourceResponse$=R.UntagResourceRequest$=R.TagResourceResponse$=R.TagResourceRequest$=R.Tag$=R.SetRepositoryPolicyResponse$=R.SetRepositoryPolicyRequest$=R.RepositoryCatalogDataInput$=R.RepositoryCatalogData$=R.Repository$=R.RegistryCatalogData$=R.RegistryAlias$=R.Registry$=R.ReferencedImageDetail$=R.PutRepositoryCatalogDataResponse$=R.PutRepositoryCatalogDataRequest$=R.PutRegistryCatalogDataResponse$=R.PutRegistryCatalogDataRequest$=R.PutImageResponse$=R.PutImageRequest$=R.ListTagsForResourceResponse$=R.ListTagsForResourceRequest$=R.LayerFailure$=R.Layer$=R.InitiateLayerUploadResponse$=R.InitiateLayerUploadRequest$=R.ImageTagDetail$=R.ImageIdentifier$=R.ImageFailure$=R.ImageDetail$=R.Image$=R.GetRepositoryPolicyResponse$=R.GetRepositoryPolicyRequest$=R.GetRepositoryCatalogDataResponse$=R.GetRepositoryCatalogDataRequest$=R.GetRegistryCatalogDataResponse$=void 0;R.UploadLayerPart$=R.UntagResource$=R.TagResource$=R.SetRepositoryPolicy$=R.PutRepositoryCatalogData$=R.PutRegistryCatalogData$=R.PutImage$=R.ListTagsForResource$=R.InitiateLayerUpload$=R.GetRepositoryPolicy$=R.GetRepositoryCatalogData$=void 0;var Ekt="AuthorizationData",Ckt="BatchCheckLayerAvailability",Ikt="BatchCheckLayerAvailabilityRequest",xkt="BatchCheckLayerAvailabilityResponse",wkt="BatchDeleteImage",bkt="BatchDeleteImageRequest",Skt="BatchDeleteImageResponse",Bkt="CompleteLayerUpload",Rkt="CompleteLayerUploadRequest",Nkt="CompleteLayerUploadResponse",Tkt="CreateRepository",Pkt="CreateRepositoryRequest",vkt="CreateRepositoryResponse",_kt="DescribeImages",Qkt="DescribeImagesRequest",Dkt="DescribeImagesResponse",kkt="DescribeImageTags",Lkt="DescribeImageTagsRequest",Okt="DescribeImageTagsResponse",Mkt="DeleteRepository",Fkt="DeleteRepositoryPolicy",Ukt="DeleteRepositoryPolicyRequest",qkt="DeleteRepositoryPolicyResponse",$kt="DeleteRepositoryRequest",Gkt="DeleteRepositoryResponse",Hkt="DescribeRegistriesRequest",zkt="DescribeRegistriesResponse",Vkt="DescribeRepositoriesRequest",Ykt="DescribeRepositoriesResponse",Wkt="DescribeRegistries",jkt="DescribeRepositories",Jkt="EmptyUploadException",Kkt="GetAuthorizationToken",Xkt="GetAuthorizationTokenRequest",Zkt="GetAuthorizationTokenResponse",eLt="GetRegistryCatalogData",tLt="GetRegistryCatalogDataRequest",rLt="GetRegistryCatalogDataResponse",nLt="GetRepositoryCatalogDataRequest",sLt="GetRepositoryCatalogDataResponse",oLt="GetRepositoryCatalogData",iLt="GetRepositoryPolicy",aLt="GetRepositoryPolicyRequest",cLt="GetRepositoryPolicyResponse",lLt="Image",uLt="ImageAlreadyExistsException",dLt="ImageDetail",pLt="ImageDigestDoesNotMatchException",mLt="ImageDetailList",fLt="ImageFailure",ALt="ImageFailureList",hLt="ImageIdentifier",gLt="ImageIdentifierList",yLt="InvalidLayerException",ELt="InvalidLayerPartException",CLt="InitiateLayerUpload",ILt="InitiateLayerUploadRequest",xLt="InitiateLayerUploadResponse",wLt="ImageNotFoundException",bLt="InvalidParameterException",SLt="ImageTagAlreadyExistsException",BLt="ImageTagDetail",RLt="ImageTagDetailList",NLt="InvalidTagParameterException",TLt="Key",PLt="Layer",vLt="LayerAlreadyExistsException",_Lt="LimitExceededException",QLt="LayerFailure",DLt="LayerFailureList",kLt="LayerList",LLt="LayersNotFoundException",OLt="LayerPartTooSmallException",MLt="ListTagsForResource",FLt="ListTagsForResourceRequest",ULt="ListTagsForResourceResponse",qLt="PutImage",$Lt="PutImageRequest",GLt="PutImageResponse",HLt="PutRegistryCatalogData",zLt="PutRegistryCatalogDataRequest",VLt="PutRegistryCatalogDataResponse",YLt="PutRepositoryCatalogDataRequest",WLt="PutRepositoryCatalogDataResponse",jLt="PutRepositoryCatalogData",JLt="Registry",KLt="RegistryAlias",XLt="RepositoryAlreadyExistsException",ZLt="RegistryAliasList",eOt="RegistryCatalogData",tOt="RepositoryCatalogDataInput",rOt="RepositoryCatalogDataNotFoundException",nOt="RepositoryCatalogData",sOt="ReferencedImageDetail",oOt="ReferencedImagesNotFoundException",iOt="RegistryList",aOt="RepositoryList",cOt="RepositoryNotEmptyException",lOt="RegistryNotFoundException",uOt="RepositoryNotFoundException",dOt="RepositoryPolicyNotFoundException",pOt="Repository",mOt="ServerException",fOt="SetRepositoryPolicy",AOt="SetRepositoryPolicyRequest",hOt="SetRepositoryPolicyResponse",gOt="Tag",yOt="TagList",EOt="TooManyTagsException",COt="TagResource",IOt="TagResourceRequest",xOt="TagResourceResponse",wOt="UnsupportedCommandException",bOt="UploadLayerPart",SOt="UploadLayerPartRequest",BOt="UploadLayerPartResponse",ROt="UploadNotFoundException",NOt="UntagResource",TOt="UntagResourceRequest",POt="UntagResourceResponse",vOt="Value",_Ot="aliases",QOt="authorizationData",sOe="artifactMediaType",DOt="authorizationToken",oOe="aboutText",iOe="architectures",yr="client",aOe="createdAt",E0="catalogData",cOe="description",lOe="displayName",kOt="defaultRegistryAlias",cr="error",LOt="expiresAt",uOe="failures",dOe="failureCode",pOe="failureReason",mOe="force",OOt="image",MOt="imageDetails",gL="imageDigest",FOt="imageDetail",R9="imageIds",fOe="imageId",AOe="imageManifest",yL="imageManifestMediaType",hOe="imagePushedAt",gOe="imageSizeInBytes",UOt="imageTags",qOt="imageTagDetails",N9="imageTag",$Ot="layers",GOt="layerAvailability",HOt="lastByteReceived",yOe="layerDigests",T9="layerDigest",zOt="logoImageBlob",VOt="layerPartBlob",YOt="layerSize",WOt="logoUrl",jOt="lastValidByteReceived",lr="message",JOt="marketplaceCertified",EL="maxResults",KOt="mediaType",XOt="name",Pp="nextToken",EOe="operatingSystems",ZOt="partFirstByte",eMt="partLastByte",tMt="primaryRegistryAlias",rMt="partSize",CL="policyText",COe="repository",P9="resourceArn",nMt="registryArn",sMt="repositoryArn",IOe="registryCatalogData",Kt="registryId",ur="repositoryName",oMt="repositoryNames",iMt="registryUri",aMt="repositoryUri",cMt="registries",lMt="repositories",xOe="smithy.ts.sdk.synthetic.com.amazonaws.ecrpublic",uMt="server",dMt="status",v9="tags",pMt="tagKeys",Hy="uploadId",wOe="usageText",mMt="verified",F="com.amazonaws.ecrpublic",bOe=(Ct(),W($x)),fMt=hL(),dr=B9(),SOe=bOe.TypeRegistry.for(xOe);R.ECRPUBLICServiceException$=[-3,xOe,"ECRPUBLICServiceException",0,[],[]];SOe.registerError(R.ECRPUBLICServiceException$,fMt.ECRPUBLICServiceException);var Xt=bOe.TypeRegistry.for(F);R.EmptyUploadException$=[-3,F,Jkt,{[cr]:yr},[lr],[0]];Xt.registerError(R.EmptyUploadException$,dr.EmptyUploadException);R.ImageAlreadyExistsException$=[-3,F,uLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.ImageAlreadyExistsException$,dr.ImageAlreadyExistsException);R.ImageDigestDoesNotMatchException$=[-3,F,pLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.ImageDigestDoesNotMatchException$,dr.ImageDigestDoesNotMatchException);R.ImageNotFoundException$=[-3,F,wLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.ImageNotFoundException$,dr.ImageNotFoundException);R.ImageTagAlreadyExistsException$=[-3,F,SLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.ImageTagAlreadyExistsException$,dr.ImageTagAlreadyExistsException);R.InvalidLayerException$=[-3,F,yLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.InvalidLayerException$,dr.InvalidLayerException);R.InvalidLayerPartException$=[-3,F,ELt,{[cr]:yr},[Kt,ur,Hy,jOt,lr],[0,0,0,1,0]];Xt.registerError(R.InvalidLayerPartException$,dr.InvalidLayerPartException);R.InvalidParameterException$=[-3,F,bLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.InvalidParameterException$,dr.InvalidParameterException);R.InvalidTagParameterException$=[-3,F,NLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.InvalidTagParameterException$,dr.InvalidTagParameterException);R.LayerAlreadyExistsException$=[-3,F,vLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.LayerAlreadyExistsException$,dr.LayerAlreadyExistsException);R.LayerPartTooSmallException$=[-3,F,OLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.LayerPartTooSmallException$,dr.LayerPartTooSmallException);R.LayersNotFoundException$=[-3,F,LLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.LayersNotFoundException$,dr.LayersNotFoundException);R.LimitExceededException$=[-3,F,_Lt,{[cr]:yr},[lr],[0]];Xt.registerError(R.LimitExceededException$,dr.LimitExceededException);R.ReferencedImagesNotFoundException$=[-3,F,oOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.ReferencedImagesNotFoundException$,dr.ReferencedImagesNotFoundException);R.RegistryNotFoundException$=[-3,F,lOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RegistryNotFoundException$,dr.RegistryNotFoundException);R.RepositoryAlreadyExistsException$=[-3,F,XLt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RepositoryAlreadyExistsException$,dr.RepositoryAlreadyExistsException);R.RepositoryCatalogDataNotFoundException$=[-3,F,rOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RepositoryCatalogDataNotFoundException$,dr.RepositoryCatalogDataNotFoundException);R.RepositoryNotEmptyException$=[-3,F,cOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RepositoryNotEmptyException$,dr.RepositoryNotEmptyException);R.RepositoryNotFoundException$=[-3,F,uOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RepositoryNotFoundException$,dr.RepositoryNotFoundException);R.RepositoryPolicyNotFoundException$=[-3,F,dOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.RepositoryPolicyNotFoundException$,dr.RepositoryPolicyNotFoundException);R.ServerException$=[-3,F,mOt,{[cr]:uMt},[lr],[0]];Xt.registerError(R.ServerException$,dr.ServerException);R.TooManyTagsException$=[-3,F,EOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.TooManyTagsException$,dr.TooManyTagsException);R.UnsupportedCommandException$=[-3,F,wOt,{[cr]:yr},[lr],[0]];Xt.registerError(R.UnsupportedCommandException$,dr.UnsupportedCommandException);R.UploadNotFoundException$=[-3,F,ROt,{[cr]:yr},[lr],[0]];Xt.registerError(R.UploadNotFoundException$,dr.UploadNotFoundException);R.errorTypeRegistries=[SOe,Xt];R.AuthorizationData$=[3,F,Ekt,0,[DOt,LOt],[0,4]];R.BatchCheckLayerAvailabilityRequest$=[3,F,Ikt,0,[ur,yOe,Kt],[0,64,0],2];R.BatchCheckLayerAvailabilityResponse$=[3,F,xkt,0,[$Ot,uOe],[()=>EMt,()=>yMt]];R.BatchDeleteImageRequest$=[3,F,bkt,0,[ur,R9,Kt],[0,()=>_9,0],2];R.BatchDeleteImageResponse$=[3,F,Skt,0,[R9,uOe],[()=>_9,()=>hMt]];R.CompleteLayerUploadRequest$=[3,F,Rkt,0,[ur,Hy,yOe,Kt],[0,0,64,0],3];R.CompleteLayerUploadResponse$=[3,F,Nkt,0,[Kt,ur,Hy,T9],[0,0,0,0]];R.CreateRepositoryRequest$=[3,F,Pkt,0,[ur,E0,v9],[0,()=>R.RepositoryCatalogDataInput$,()=>Q9],1];R.CreateRepositoryResponse$=[3,F,vkt,0,[COe,E0],[()=>R.Repository$,()=>R.RepositoryCatalogData$]];R.DeleteRepositoryPolicyRequest$=[3,F,Ukt,0,[ur,Kt],[0,0],1];R.DeleteRepositoryPolicyResponse$=[3,F,qkt,0,[Kt,ur,CL],[0,0,0]];R.DeleteRepositoryRequest$=[3,F,$kt,0,[ur,Kt,mOe],[0,0,2],1];R.DeleteRepositoryResponse$=[3,F,Gkt,0,[COe],[()=>R.Repository$]];R.DescribeImagesRequest$=[3,F,Qkt,0,[ur,Kt,R9,Pp,EL],[0,0,()=>_9,0,1],1];R.DescribeImagesResponse$=[3,F,Dkt,0,[MOt,Pp],[()=>AMt,0]];R.DescribeImageTagsRequest$=[3,F,Lkt,0,[ur,Kt,Pp,EL],[0,0,0,1],1];R.DescribeImageTagsResponse$=[3,F,Okt,0,[qOt,Pp],[()=>gMt,0]];R.DescribeRegistriesRequest$=[3,F,Hkt,0,[Pp,EL],[0,1]];R.DescribeRegistriesResponse$=[3,F,zkt,0,[cMt,Pp],[()=>IMt,0],1];R.DescribeRepositoriesRequest$=[3,F,Vkt,0,[Kt,oMt,Pp,EL],[0,64,0,1]];R.DescribeRepositoriesResponse$=[3,F,Ykt,0,[lMt,Pp],[()=>xMt,0]];R.GetAuthorizationTokenRequest$=[3,F,Xkt,0,[],[]];R.GetAuthorizationTokenResponse$=[3,F,Zkt,0,[QOt],[()=>R.AuthorizationData$]];R.GetRegistryCatalogDataRequest$=[3,F,tLt,0,[],[]];R.GetRegistryCatalogDataResponse$=[3,F,rLt,0,[IOe],[()=>R.RegistryCatalogData$],1];R.GetRepositoryCatalogDataRequest$=[3,F,nLt,0,[ur,Kt],[0,0],1];R.GetRepositoryCatalogDataResponse$=[3,F,sLt,0,[E0],[()=>R.RepositoryCatalogData$]];R.GetRepositoryPolicyRequest$=[3,F,aLt,0,[ur,Kt],[0,0],1];R.GetRepositoryPolicyResponse$=[3,F,cLt,0,[Kt,ur,CL],[0,0,0]];R.Image$=[3,F,lLt,0,[Kt,ur,fOe,AOe,yL],[0,0,()=>R.ImageIdentifier$,0,0]];R.ImageDetail$=[3,F,dLt,0,[Kt,ur,gL,UOt,gOe,hOe,yL,sOe],[0,0,0,64,1,4,0,0]];R.ImageFailure$=[3,F,fLt,0,[fOe,dOe,pOe],[()=>R.ImageIdentifier$,0,0]];R.ImageIdentifier$=[3,F,hLt,0,[gL,N9],[0,0]];R.ImageTagDetail$=[3,F,BLt,0,[N9,aOe,FOt],[0,4,()=>R.ReferencedImageDetail$]];R.InitiateLayerUploadRequest$=[3,F,ILt,0,[ur,Kt],[0,0],1];R.InitiateLayerUploadResponse$=[3,F,xLt,0,[Hy,rMt],[0,1]];R.Layer$=[3,F,PLt,0,[T9,GOt,YOt,KOt],[0,0,1,0]];R.LayerFailure$=[3,F,QLt,0,[T9,dOe,pOe],[0,0,0]];R.ListTagsForResourceRequest$=[3,F,FLt,0,[P9],[0],1];R.ListTagsForResourceResponse$=[3,F,ULt,0,[v9],[()=>Q9]];R.PutImageRequest$=[3,F,$Lt,0,[ur,AOe,Kt,yL,N9,gL],[0,0,0,0,0,0],2];R.PutImageResponse$=[3,F,GLt,0,[OOt],[()=>R.Image$]];R.PutRegistryCatalogDataRequest$=[3,F,zLt,0,[lOe],[0]];R.PutRegistryCatalogDataResponse$=[3,F,VLt,0,[IOe],[()=>R.RegistryCatalogData$],1];R.PutRepositoryCatalogDataRequest$=[3,F,YLt,0,[ur,E0,Kt],[0,()=>R.RepositoryCatalogDataInput$,0],2];R.PutRepositoryCatalogDataResponse$=[3,F,WLt,0,[E0],[()=>R.RepositoryCatalogData$]];R.ReferencedImageDetail$=[3,F,sOt,0,[gL,gOe,hOe,yL,sOe],[0,1,4,0,0]];R.Registry$=[3,F,JLt,0,[Kt,nMt,iMt,mMt,_Ot],[0,0,0,2,()=>CMt],5];R.RegistryAlias$=[3,F,KLt,0,[XOt,dMt,tMt,kOt],[0,0,2,2],4];R.RegistryCatalogData$=[3,F,eOt,0,[lOe],[0]];R.Repository$=[3,F,pOt,0,[sMt,Kt,ur,aMt,aOe],[0,0,0,0,4]];R.RepositoryCatalogData$=[3,F,nOt,0,[cOe,iOe,EOe,WOt,oOe,wOe,JOt],[0,64,64,0,0,0,2]];R.RepositoryCatalogDataInput$=[3,F,tOt,0,[cOe,iOe,EOe,zOt,oOe,wOe],[0,64,64,21,0,0]];R.SetRepositoryPolicyRequest$=[3,F,AOt,0,[ur,CL,Kt,mOe],[0,0,0,2],2];R.SetRepositoryPolicyResponse$=[3,F,hOt,0,[Kt,ur,CL],[0,0,0]];R.Tag$=[3,F,gOt,0,[TLt,vOt],[0,0]];R.TagResourceRequest$=[3,F,IOt,0,[P9,v9],[0,()=>Q9],2];R.TagResourceResponse$=[3,F,xOt,0,[],[]];R.UntagResourceRequest$=[3,F,TOt,0,[P9,pMt],[0,64],2];R.UntagResourceResponse$=[3,F,POt,0,[],[]];R.UploadLayerPartRequest$=[3,F,SOt,0,[ur,Hy,ZOt,eMt,VOt,Kt],[0,0,1,1,21,0],5];R.UploadLayerPartResponse$=[3,F,BOt,0,[Kt,ur,Hy,HOt],[0,0,0,1]];var AMt=[1,F,mLt,0,()=>R.ImageDetail$],hMt=[1,F,ALt,0,()=>R.ImageFailure$],_9=[1,F,gLt,0,()=>R.ImageIdentifier$],gMt=[1,F,RLt,0,()=>R.ImageTagDetail$],yMt=[1,F,DLt,0,()=>R.LayerFailure$],EMt=[1,F,kLt,0,()=>R.Layer$],CMt=[1,F,ZLt,0,()=>R.RegistryAlias$],IMt=[1,F,iOt,0,()=>R.Registry$],xMt=[1,F,aOt,0,()=>R.Repository$],Q9=[1,F,yOt,0,()=>R.Tag$];R.BatchCheckLayerAvailability$=[9,F,Ckt,0,()=>R.BatchCheckLayerAvailabilityRequest$,()=>R.BatchCheckLayerAvailabilityResponse$];R.BatchDeleteImage$=[9,F,wkt,0,()=>R.BatchDeleteImageRequest$,()=>R.BatchDeleteImageResponse$];R.CompleteLayerUpload$=[9,F,Bkt,0,()=>R.CompleteLayerUploadRequest$,()=>R.CompleteLayerUploadResponse$];R.CreateRepository$=[9,F,Tkt,0,()=>R.CreateRepositoryRequest$,()=>R.CreateRepositoryResponse$];R.DeleteRepository$=[9,F,Mkt,0,()=>R.DeleteRepositoryRequest$,()=>R.DeleteRepositoryResponse$];R.DeleteRepositoryPolicy$=[9,F,Fkt,0,()=>R.DeleteRepositoryPolicyRequest$,()=>R.DeleteRepositoryPolicyResponse$];R.DescribeImages$=[9,F,_kt,0,()=>R.DescribeImagesRequest$,()=>R.DescribeImagesResponse$];R.DescribeImageTags$=[9,F,kkt,0,()=>R.DescribeImageTagsRequest$,()=>R.DescribeImageTagsResponse$];R.DescribeRegistries$=[9,F,Wkt,0,()=>R.DescribeRegistriesRequest$,()=>R.DescribeRegistriesResponse$];R.DescribeRepositories$=[9,F,jkt,0,()=>R.DescribeRepositoriesRequest$,()=>R.DescribeRepositoriesResponse$];R.GetAuthorizationToken$=[9,F,Kkt,0,()=>R.GetAuthorizationTokenRequest$,()=>R.GetAuthorizationTokenResponse$];R.GetRegistryCatalogData$=[9,F,eLt,0,()=>R.GetRegistryCatalogDataRequest$,()=>R.GetRegistryCatalogDataResponse$];R.GetRepositoryCatalogData$=[9,F,oLt,0,()=>R.GetRepositoryCatalogDataRequest$,()=>R.GetRepositoryCatalogDataResponse$];R.GetRepositoryPolicy$=[9,F,iLt,0,()=>R.GetRepositoryPolicyRequest$,()=>R.GetRepositoryPolicyResponse$];R.InitiateLayerUpload$=[9,F,CLt,0,()=>R.InitiateLayerUploadRequest$,()=>R.InitiateLayerUploadResponse$];R.ListTagsForResource$=[9,F,MLt,0,()=>R.ListTagsForResourceRequest$,()=>R.ListTagsForResourceResponse$];R.PutImage$=[9,F,qLt,0,()=>R.PutImageRequest$,()=>R.PutImageResponse$];R.PutRegistryCatalogData$=[9,F,HLt,0,()=>R.PutRegistryCatalogDataRequest$,()=>R.PutRegistryCatalogDataResponse$];R.PutRepositoryCatalogData$=[9,F,jLt,0,()=>R.PutRepositoryCatalogDataRequest$,()=>R.PutRepositoryCatalogDataResponse$];R.SetRepositoryPolicy$=[9,F,fOt,0,()=>R.SetRepositoryPolicyRequest$,()=>R.SetRepositoryPolicyResponse$];R.TagResource$=[9,F,COt,0,()=>R.TagResourceRequest$,()=>R.TagResourceResponse$];R.UntagResource$=[9,F,NOt,0,()=>R.UntagResourceRequest$,()=>R.UntagResourceResponse$];R.UploadLayerPart$=[9,F,bOt,0,()=>R.UploadLayerPartRequest$,()=>R.UploadLayerPartResponse$]});var BOe=b(xL=>{"use strict";Object.defineProperty(xL,"__esModule",{value:!0});xL.getRuntimeConfig=void 0;var wMt=(Xr(),W(up)),bMt=(_f(),W(xJ)),SMt=(Ce(),W(Ui)),BMt=(Qe(),W(rl)),IL=(st(),W(Zd)),RMt=K6(),NMt=rOe(),TMt=D9(),PMt=i(t=>({apiVersion:"2020-10-30",base64Decoder:t?.base64Decoder??IL.fromBase64,base64Encoder:t?.base64Encoder??IL.toBase64,disableHostPrefix:t?.disableHostPrefix??!1,endpointProvider:t?.endpointProvider??NMt.defaultEndpointResolver,extensions:t?.extensions??[],httpAuthSchemeProvider:t?.httpAuthSchemeProvider??RMt.defaultECRPUBLICHttpAuthSchemeProvider,httpAuthSchemes:t?.httpAuthSchemes??[{schemeId:"aws.auth#sigv4",identityProvider:i(e=>e.getIdentityProvider("aws.auth#sigv4"),"identityProvider"),signer:new wMt.AwsSdkSigV4Signer}],logger:t?.logger??new SMt.NoOpLogger,protocol:t?.protocol??bMt.AwsJson1_1Protocol,protocolSettings:t?.protocolSettings??{defaultNamespace:"com.amazonaws.ecrpublic",errorTypeRegistries:TMt.errorTypeRegistries,xmlNamespace:"http://ecr-public.amazonaws.com/doc/2020-12-02/",version:"2020-10-30",serviceTarget:"SpencerFrontendService"},serviceId:t?.serviceId??"ECR PUBLIC",urlParser:t?.urlParser??BMt.parseUrl,utf8Decoder:t?.utf8Decoder??IL.fromUtf8,utf8Encoder:t?.utf8Encoder??IL.toUtf8}),"getRuntimeConfig");xL.getRuntimeConfig=PMt});var POe=b(wL=>{"use strict";Object.defineProperty(wL,"__esModule",{value:!0});wL.getRuntimeConfig=void 0;var vMt=(ty(),W(ey)),_Mt=vMt.__importDefault(jLe()),k9=(wt(),W(Ds)),QMt=(Xr(),W(up)),DMt=v5(),ROe=(Ce(),W(Ui)),ji=(Tt(),W(kn)),L9=(_s(),W(jx)),NOe=(st(),W(Zd)),TOe=vu(),kMt=BOe(),LMt=i(t=>{(0,ROe.emitWarningIfUnsupportedVersion)(process.version);let e=(0,ji.resolveDefaultsModeConfig)(t),r=i(()=>e().then(ROe.loadConfigsForDefaultMode),"defaultConfigProvider"),n=(0,kMt.getRuntimeConfig)(t);(0,k9.emitWarningIfUnsupportedVersion)(process.version);let s={profile:t?.profile,logger:n.logger};return{...n,...t,runtime:"node",defaultsMode:e,authSchemePreference:t?.authSchemePreference??(0,ji.loadConfig)(QMt.NODE_AUTH_SCHEME_PREFERENCE_OPTIONS,s),bodyLengthChecker:t?.bodyLengthChecker??NOe.calculateBodyLength,credentialDefaultProvider:t?.credentialDefaultProvider??DMt.defaultProvider,defaultUserAgentProvider:t?.defaultUserAgentProvider??(0,k9.createDefaultUserAgentProvider)({serviceId:n.serviceId,clientVersion:_Mt.default.version}),maxAttempts:t?.maxAttempts??(0,ji.loadConfig)(L9.NODE_MAX_ATTEMPT_CONFIG_OPTIONS,t),region:t?.region??(0,ji.loadConfig)(ji.NODE_REGION_CONFIG_OPTIONS,{...ji.NODE_REGION_CONFIG_FILE_OPTIONS,...s}),requestHandler:TOe.NodeHttpHandler.create(t?.requestHandler??r),retryMode:t?.retryMode??(0,ji.loadConfig)({...L9.NODE_RETRY_MODE_CONFIG_OPTIONS,default:i(async()=>(await r()).retryMode||L9.DEFAULT_RETRY_MODE,"default")},t),sha256:t?.sha256??NOe.Hash.bind(null,"sha256"),streamCollector:t?.streamCollector??TOe.streamCollector,useDualstackEndpoint:t?.useDualstackEndpoint??(0,ji.loadConfig)(ji.NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS,s),useFipsEndpoint:t?.useFipsEndpoint??(0,ji.loadConfig)(ji.NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS,s),userAgentAppId:t?.userAgentAppId??(0,ji.loadConfig)(k9.NODE_APP_ID_CONFIG_OPTIONS,s)}},"getRuntimeConfig");wL.getRuntimeConfig=LMt});var OOe=b(Je=>{"use strict";var vp=(wt(),W(Ds)),Zf=(Qs(),W(Q8)),Dt=(Ce(),W(Ui)),OMt=(Tt(),W(kn)),pr=(xt(),W(df)),O9=(Qe(),W(rl)),vOe=(_s(),W(jx)),MMt=(Ct(),W($x)),_Oe=K6(),FMt=POe(),$t=D9(),bL=B9(),UMt=hL(),qMt=i(t=>Object.assign(t,{useDualstackEndpoint:t.useDualstackEndpoint??!1,useFipsEndpoint:t.useFipsEndpoint??!1,defaultSigningName:"ecr-public"}),"resolveClientEndpointParameters"),Er={UseFIPS:{type:"builtInParams",name:"useFipsEndpoint"},Endpoint:{type:"builtInParams",name:"endpoint"},Region:{type:"builtInParams",name:"region"},UseDualStack:{type:"builtInParams",name:"useDualstackEndpoint"}},$Mt=i(t=>{let e=t.httpAuthSchemes,r=t.httpAuthSchemeProvider,n=t.credentials;return{setHttpAuthScheme(s){let o=e.findIndex(a=>a.schemeId===s.schemeId);o===-1?e.push(s):e.splice(o,1,s)},httpAuthSchemes(){return e},setHttpAuthSchemeProvider(s){r=s},httpAuthSchemeProvider(){return r},setCredentials(s){n=s},credentials(){return n}}},"getHttpAuthExtensionConfiguration"),GMt=i(t=>({httpAuthSchemes:t.httpAuthSchemes(),httpAuthSchemeProvider:t.httpAuthSchemeProvider(),credentials:t.credentials()}),"resolveHttpAuthRuntimeConfig"),HMt=i((t,e)=>{let r=Object.assign(vp.getAwsRegionExtensionConfiguration(t),Dt.getDefaultExtensionConfiguration(t),O9.getHttpHandlerExtensionConfiguration(t),$Mt(t));return e.forEach(n=>n.configure(r)),Object.assign(t,vp.resolveAwsRegionExtensionConfiguration(r),Dt.resolveDefaultRuntimeConfig(r),O9.resolveHttpHandlerRuntimeConfig(r),GMt(r))},"resolveRuntimeExtensions"),_p=class extends Dt.Client{static{i(this,"ECRPUBLICClient")}config;constructor(...[e]){let r=FMt.getRuntimeConfig(e||{});super(r),this.initConfig=r;let n=qMt(r),s=vp.resolveUserAgentConfig(n),o=vOe.resolveRetryConfig(s),a=OMt.resolveRegionConfig(o),c=vp.resolveHostHeaderConfig(a),l=pr.resolveEndpointConfig(c),u=_Oe.resolveHttpAuthSchemeConfig(l),d=HMt(u,e?.extensions||[]);this.config=d,this.middlewareStack.use(MMt.getSchemaSerdePlugin(this.config)),this.middlewareStack.use(vp.getUserAgentPlugin(this.config)),this.middlewareStack.use(vOe.getRetryPlugin(this.config)),this.middlewareStack.use(O9.getContentLengthPlugin(this.config)),this.middlewareStack.use(vp.getHostHeaderPlugin(this.config)),this.middlewareStack.use(vp.getLoggerPlugin(this.config)),this.middlewareStack.use(vp.getRecursionDetectionPlugin(this.config)),this.middlewareStack.use(Zf.getHttpAuthSchemeEndpointRuleSetPlugin(this.config,{httpAuthSchemeParametersProvider:_Oe.defaultECRPUBLICHttpAuthSchemeParametersProvider,identityProviderConfigProvider:i(async p=>new Zf.DefaultIdentityProviderConfig({"aws.auth#sigv4":p.credentials}),"identityProviderConfigProvider")})),this.middlewareStack.use(Zf.getHttpSigningPlugin(this.config))}destroy(){super.destroy()}},SL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","BatchCheckLayerAvailability",{}).n("ECRPUBLICClient","BatchCheckLayerAvailabilityCommand").sc($t.BatchCheckLayerAvailability$).build(){static{i(this,"BatchCheckLayerAvailabilityCommand")}},BL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","BatchDeleteImage",{}).n("ECRPUBLICClient","BatchDeleteImageCommand").sc($t.BatchDeleteImage$).build(){static{i(this,"BatchDeleteImageCommand")}},RL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","CompleteLayerUpload",{}).n("ECRPUBLICClient","CompleteLayerUploadCommand").sc($t.CompleteLayerUpload$).build(){static{i(this,"CompleteLayerUploadCommand")}},NL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","CreateRepository",{}).n("ECRPUBLICClient","CreateRepositoryCommand").sc($t.CreateRepository$).build(){static{i(this,"CreateRepositoryCommand")}},TL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DeleteRepository",{}).n("ECRPUBLICClient","DeleteRepositoryCommand").sc($t.DeleteRepository$).build(){static{i(this,"DeleteRepositoryCommand")}},PL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DeleteRepositoryPolicy",{}).n("ECRPUBLICClient","DeleteRepositoryPolicyCommand").sc($t.DeleteRepositoryPolicy$).build(){static{i(this,"DeleteRepositoryPolicyCommand")}},C0=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeImages",{}).n("ECRPUBLICClient","DescribeImagesCommand").sc($t.DescribeImages$).build(){static{i(this,"DescribeImagesCommand")}},I0=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeImageTags",{}).n("ECRPUBLICClient","DescribeImageTagsCommand").sc($t.DescribeImageTags$).build(){static{i(this,"DescribeImageTagsCommand")}},x0=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeRegistries",{}).n("ECRPUBLICClient","DescribeRegistriesCommand").sc($t.DescribeRegistries$).build(){static{i(this,"DescribeRegistriesCommand")}},w0=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","DescribeRepositories",{}).n("ECRPUBLICClient","DescribeRepositoriesCommand").sc($t.DescribeRepositories$).build(){static{i(this,"DescribeRepositoriesCommand")}},vL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetAuthorizationToken",{}).n("ECRPUBLICClient","GetAuthorizationTokenCommand").sc($t.GetAuthorizationToken$).build(){static{i(this,"GetAuthorizationTokenCommand")}},_L=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRegistryCatalogData",{}).n("ECRPUBLICClient","GetRegistryCatalogDataCommand").sc($t.GetRegistryCatalogData$).build(){static{i(this,"GetRegistryCatalogDataCommand")}},QL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRepositoryCatalogData",{}).n("ECRPUBLICClient","GetRepositoryCatalogDataCommand").sc($t.GetRepositoryCatalogData$).build(){static{i(this,"GetRepositoryCatalogDataCommand")}},DL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","GetRepositoryPolicy",{}).n("ECRPUBLICClient","GetRepositoryPolicyCommand").sc($t.GetRepositoryPolicy$).build(){static{i(this,"GetRepositoryPolicyCommand")}},kL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","InitiateLayerUpload",{}).n("ECRPUBLICClient","InitiateLayerUploadCommand").sc($t.InitiateLayerUpload$).build(){static{i(this,"InitiateLayerUploadCommand")}},LL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","ListTagsForResource",{}).n("ECRPUBLICClient","ListTagsForResourceCommand").sc($t.ListTagsForResource$).build(){static{i(this,"ListTagsForResourceCommand")}},OL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutImage",{}).n("ECRPUBLICClient","PutImageCommand").sc($t.PutImage$).build(){static{i(this,"PutImageCommand")}},ML=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutRegistryCatalogData",{}).n("ECRPUBLICClient","PutRegistryCatalogDataCommand").sc($t.PutRegistryCatalogData$).build(){static{i(this,"PutRegistryCatalogDataCommand")}},FL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","PutRepositoryCatalogData",{}).n("ECRPUBLICClient","PutRepositoryCatalogDataCommand").sc($t.PutRepositoryCatalogData$).build(){static{i(this,"PutRepositoryCatalogDataCommand")}},UL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","SetRepositoryPolicy",{}).n("ECRPUBLICClient","SetRepositoryPolicyCommand").sc($t.SetRepositoryPolicy$).build(){static{i(this,"SetRepositoryPolicyCommand")}},qL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","TagResource",{}).n("ECRPUBLICClient","TagResourceCommand").sc($t.TagResource$).build(){static{i(this,"TagResourceCommand")}},$L=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","UntagResource",{}).n("ECRPUBLICClient","UntagResourceCommand").sc($t.UntagResource$).build(){static{i(this,"UntagResourceCommand")}},GL=class extends Dt.Command.classBuilder().ep(Er).m(function(e,r,n,s){return[pr.getEndpointPlugin(n,e.getEndpointParameterInstructions())]}).s("SpencerFrontendService","UploadLayerPart",{}).n("ECRPUBLICClient","UploadLayerPartCommand").sc($t.UploadLayerPart$).build(){static{i(this,"UploadLayerPartCommand")}},QOe=Zf.createPaginator(_p,C0,"nextToken","nextToken","maxResults"),DOe=Zf.createPaginator(_p,I0,"nextToken","nextToken","maxResults"),kOe=Zf.createPaginator(_p,x0,"nextToken","nextToken","maxResults"),LOe=Zf.createPaginator(_p,w0,"nextToken","nextToken","maxResults"),zMt={BatchCheckLayerAvailabilityCommand:SL,BatchDeleteImageCommand:BL,CompleteLayerUploadCommand:RL,CreateRepositoryCommand:NL,DeleteRepositoryCommand:TL,DeleteRepositoryPolicyCommand:PL,DescribeImagesCommand:C0,DescribeImageTagsCommand:I0,DescribeRegistriesCommand:x0,DescribeRepositoriesCommand:w0,GetAuthorizationTokenCommand:vL,GetRegistryCatalogDataCommand:_L,GetRepositoryCatalogDataCommand:QL,GetRepositoryPolicyCommand:DL,InitiateLayerUploadCommand:kL,ListTagsForResourceCommand:LL,PutImageCommand:OL,PutRegistryCatalogDataCommand:ML,PutRepositoryCatalogDataCommand:FL,SetRepositoryPolicyCommand:UL,TagResourceCommand:qL,UntagResourceCommand:$L,UploadLayerPartCommand:GL},VMt={paginateDescribeImages:QOe,paginateDescribeImageTags:DOe,paginateDescribeRegistries:kOe,paginateDescribeRepositories:LOe},HL=class extends _p{static{i(this,"ECRPUBLIC")}};Dt.createAggregatedClient(zMt,HL,{paginators:VMt});var YMt={InvalidLayerDigest:"InvalidLayerDigest",MissingLayerDigest:"MissingLayerDigest"},WMt={AVAILABLE:"AVAILABLE",UNAVAILABLE:"UNAVAILABLE"},jMt={ImageNotFound:"ImageNotFound",ImageReferencedByManifestList:"ImageReferencedByManifestList",ImageTagDoesNotMatchDigest:"ImageTagDoesNotMatchDigest",InvalidImageDigest:"InvalidImageDigest",InvalidImageTag:"InvalidImageTag",KmsError:"KmsError",MissingDigestAndTag:"MissingDigestAndTag"},JMt={ACTIVE:"ACTIVE",PENDING:"PENDING",REJECTED:"REJECTED"};Je.$Command=Dt.Command;Je.__Client=Dt.Client;Je.ECRPUBLICServiceException=UMt.ECRPUBLICServiceException;Je.BatchCheckLayerAvailabilityCommand=SL;Je.BatchDeleteImageCommand=BL;Je.CompleteLayerUploadCommand=RL;Je.CreateRepositoryCommand=NL;Je.DeleteRepositoryCommand=TL;Je.DeleteRepositoryPolicyCommand=PL;Je.DescribeImageTagsCommand=I0;Je.DescribeImagesCommand=C0;Je.DescribeRegistriesCommand=x0;Je.DescribeRepositoriesCommand=w0;Je.ECRPUBLIC=HL;Je.ECRPUBLICClient=_p;Je.GetAuthorizationTokenCommand=vL;Je.GetRegistryCatalogDataCommand=_L;Je.GetRepositoryCatalogDataCommand=QL;Je.GetRepositoryPolicyCommand=DL;Je.ImageFailureCode=jMt;Je.InitiateLayerUploadCommand=kL;Je.LayerAvailability=WMt;Je.LayerFailureCode=YMt;Je.ListTagsForResourceCommand=LL;Je.PutImageCommand=OL;Je.PutRegistryCatalogDataCommand=ML;Je.PutRepositoryCatalogDataCommand=FL;Je.RegistryAliasStatus=JMt;Je.SetRepositoryPolicyCommand=UL;Je.TagResourceCommand=qL;Je.UntagResourceCommand=$L;Je.UploadLayerPartCommand=GL;Je.paginateDescribeImageTags=DOe;Je.paginateDescribeImages=QOe;Je.paginateDescribeRegistries=kOe;Je.paginateDescribeRepositories=LOe;Object.prototype.hasOwnProperty.call($t,"__proto__")&&!Object.prototype.hasOwnProperty.call(Je,"__proto__")&&Object.defineProperty(Je,"__proto__",{enumerable:!0,value:$t.__proto__});Object.keys($t).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Je,t)&&(Je[t]=$t[t])});Object.prototype.hasOwnProperty.call(bL,"__proto__")&&!Object.prototype.hasOwnProperty.call(Je,"__proto__")&&Object.defineProperty(Je,"__proto__",{enumerable:!0,value:bL.__proto__});Object.keys(bL).forEach(function(t){t!=="default"&&!Object.prototype.hasOwnProperty.call(Je,t)&&(Je[t]=bL[t])})});var cFt={};en(cFt,{main:()=>dMe});module.exports=W(cFt);var rK=D(require("os"),1);function Gu(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}i(Gu,"toCommandValue");function sO(t){return Object.keys(t).length?{title:t.title,file:t.file,line:t.startLine,endLine:t.endLine,col:t.startColumn,endColumn:t.endColumn}:{}}i(sO,"toCommandProperties");function kp(t,e,r){let n=new oO(t,e,r);process.stdout.write(n.toString()+rK.EOL)}i(kp,"issueCommand");function iO(t,e=""){kp(t,{},e)}i(iO,"issue");var tK="::",oO=class{static{i(this,"Command")}constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=tK+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${tFe(s)}`)}}return e+=`${tK}${eFe(this.message)}`,e}};function eFe(t){return Gu(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}i(eFe,"escapeData");function tFe(t){return Gu(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}i(tFe,"escapeProperty");var nK=D(require("crypto"),1),T0=D(require("fs"),1),N0=D(require("os"),1);function sK(t,e){let r=process.env[`GITHUB_${t}`];if(!r)throw new Error(`Unable to find environment variable for file command ${t}`);if(!T0.existsSync(r))throw new Error(`Missing file at path: ${r}`);T0.appendFileSync(r,`${Gu(e)}${N0.EOL}`,{encoding:"utf8"})}i(sK,"issueFileCommand");function oK(t,e){let r=`ghadelimiter_${nK.randomUUID()}`,n=Gu(e);if(t.includes(r))throw new Error(`Unexpected input: name should not contain the delimiter "${r}"`);if(n.includes(r))throw new Error(`Unexpected input: value should not contain the delimiter "${r}"`);return`${t}<<${r}${N0.EOL}${n}${N0.EOL}${r}`}i(oK,"prepareKeyValueMessage");var eoe=D(require("os"),1);var bS=D(Yy(),1),CWe=D(eh(),1);var Ka;(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"})(Ka||(Ka={}));var _se;(function(t){t.Accept="accept",t.ContentType="content-type"})(_se||(_se={}));var Qse;(function(t){t.ApplicationJson="application/json"})(Qse||(Qse={}));var z2t=[Ka.MovedPermanently,Ka.ResourceMoved,Ka.SeeOther,Ka.TemporaryRedirect,Ka.PermanentRedirect],V2t=[Ka.BadGateway,Ka.ServiceUnavailable,Ka.GatewayTimeout];var Lse=require("os"),YE=require("fs");var P1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{access:xWe,appendFile:wWe,writeFile:bWe}=YE.promises,kse="GITHUB_STEP_SUMMARY";var v1=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return P1(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[kse];if(!e)throw new Error(`Unable to find environment variable for $${kse}. Check if your runtime environment supports job summaries.`);try{yield xWe(e,YE.constants.R_OK|YE.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,r,n={}){let s=Object.entries(n).map(([o,a])=>` ${o}="${a}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return P1(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?bWe:wWe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return P1(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(Lse.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(a=>this.wrap("li",a)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(a=>{if(typeof a=="string")return this.wrap("td",a);let{header:c,data:l,colspan:u,rowspan:d}=a,p=c?"th":"td",m=Object.assign(Object.assign({},u&&{colspan:u}),d&&{rowspan:d});return this.wrap(p,l,m)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},a=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),c=this.wrap("img",null,Object.assign({src:e,alt:r},a));return this.addRaw(c).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},tqt=new v1;var q1=D(require("os"),1);var U1=require("string_decoder");var jE=D(require("os"),1),F1=D(require("events"),1),jse=D(require("child_process"),1),Jse=D(require("path"),1);var Hse=require("assert"),Ro=D(require("path"),1);var WE=D(require("fs"),1),ld=D(require("path"),1);var _1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{chmod:Q1,copyFile:Mse,lstat:SS,mkdir:Fse,open:iqt,readdir:D1,rename:SWe,rm:Use,rmdir:aqt,stat:om,symlink:qse,unlink:k1}=WE.promises,Xa=process.platform==="win32";function $se(t){return _1(this,void 0,void 0,function*(){let e=yield WE.promises.readlink(t);return Xa&&!e.endsWith("\\")?`${e}\\`:e})}i($se,"readlink");var cqt=WE.constants.O_RDONLY;function th(t){return _1(this,void 0,void 0,function*(){try{yield om(t)}catch(e){if(e.code==="ENOENT")return!1;throw e}return!0})}i(th,"exists");function BS(t){if(t=BWe(t),!t)throw new Error('isRooted() parameter "p" cannot be empty');return Xa?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")}i(BS,"isRooted");function L1(t,e){return _1(this,void 0,void 0,function*(){let r;try{r=yield om(t)}catch(s){s.code!=="ENOENT"&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${s}`)}if(r&&r.isFile()){if(Xa){let s=ld.extname(t).toUpperCase();if(e.some(o=>o.toUpperCase()===s))return t}else if(Ose(r))return t}let n=t;for(let s of e){t=n+s,r=void 0;try{r=yield om(t)}catch(o){o.code!=="ENOENT"&&console.log(`Unexpected error attempting to determine if executable file exists '${t}': ${o}`)}if(r&&r.isFile()){if(Xa){try{let o=ld.dirname(t),a=ld.basename(t).toUpperCase();for(let c of yield D1(o))if(a===c.toUpperCase()){t=ld.join(o,c);break}}catch(o){console.log(`Unexpected error attempting to determine the actual case of the file '${t}': ${o}`)}return t}else if(Ose(r))return t}}return""})}i(L1,"tryGetExecutablePath");function BWe(t){return t=t||"",Xa?(t=t.replace(/\//g,"\\"),t.replace(/\\\\+/g,"\\")):t.replace(/\/\/+/g,"/")}i(BWe,"normalizeSeparators");function Ose(t){return(t.mode&1)>0||(t.mode&8)>0&&process.getgid!==void 0&&t.gid===process.getgid()||(t.mode&64)>0&&process.getuid!==void 0&&t.uid===process.getuid()}i(Ose,"isUnixExecutable");var im=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function zse(t,e){return im(this,arguments,void 0,function*(r,n,s={}){let{force:o,recursive:a,copySourceDirectory:c}=NWe(s),l=(yield th(n))?yield om(n):null;if(l&&l.isFile()&&!o)return;let u=l&&l.isDirectory()&&c?Ro.join(n,Ro.basename(r)):n;if(!(yield th(r)))throw new Error(`no such file or directory: ${r}`);if((yield om(r)).isDirectory())if(a)yield Vse(r,u,0,o);else throw new Error(`Failed to copy. ${r} is a directory, but tried to copy without recursive flag.`);else{if(Ro.relative(r,u)==="")throw new Error(`'${u}' and '${r}' are the same file`);yield Yse(r,u,o)}})}i(zse,"cp");function O1(t){return im(this,void 0,void 0,function*(){if(Xa&&/[*"<>|]/.test(t))throw new Error('File path must not contain `*`, `"`, `<`, `>` or `|` on Windows');try{yield Use(t,{force:!0,maxRetries:3,recursive:!0,retryDelay:300})}catch(e){throw new Error(`File was unable to be removed ${e}`)}})}i(O1,"rmRF");function am(t){return im(this,void 0,void 0,function*(){(0,Hse.ok)(t,"a path argument must be provided"),yield Fse(t,{recursive:!0})})}i(am,"mkdirP");function Gs(t,e){return im(this,void 0,void 0,function*(){if(!t)throw new Error("parameter 'tool' is required");if(e){let n=yield Gs(t,!1);if(!n)throw Xa?new Error(`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also verify the file has a valid extension for an executable file.`):new Error(`Unable to locate executable file: ${t}. Please verify either the file path exists or the file can be found within a directory specified by the PATH environment variable. Also check the file mode to verify the file is executable.`);return n}let r=yield RWe(t);return r&&r.length>0?r[0]:""})}i(Gs,"which");function RWe(t){return im(this,void 0,void 0,function*(){if(!t)throw new Error("parameter 'tool' is required");let e=[];if(Xa&&process.env.PATHEXT)for(let s of process.env.PATHEXT.split(Ro.delimiter))s&&e.push(s);if(BS(t)){let s=yield L1(t,e);return s?[s]:[]}if(t.includes(Ro.sep))return[];let r=[];if(process.env.PATH)for(let s of process.env.PATH.split(Ro.delimiter))s&&r.push(s);let n=[];for(let s of r){let o=yield L1(Ro.join(s,t),e);o&&n.push(o)}return n})}i(RWe,"findInPath");function NWe(t){let e=t.force==null?!0:t.force,r=!!t.recursive,n=t.copySourceDirectory==null?!0:!!t.copySourceDirectory;return{force:e,recursive:r,copySourceDirectory:n}}i(NWe,"readCopyOptions");function Vse(t,e,r,n){return im(this,void 0,void 0,function*(){if(r>=255)return;r++,yield am(e);let s=yield D1(t);for(let o of s){let a=`${t}/${o}`,c=`${e}/${o}`;(yield SS(a)).isDirectory()?yield Vse(a,c,r,n):yield Yse(a,c,n)}yield Q1(e,(yield om(t)).mode)})}i(Vse,"cpDirRecursive");function Yse(t,e,r){return im(this,void 0,void 0,function*(){if((yield SS(t)).isSymbolicLink()){try{yield SS(e),yield k1(e)}catch(s){s.code==="EPERM"&&(yield Q1(e,"0666"),yield k1(e))}let n=yield $se(t);yield qse(n,e,Xa?"junction":null)}else(!(yield th(e))||r)&&(yield Mse(t,e))})}i(Yse,"copyFile");var Kse=require("timers");var Wse=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},RS=process.platform==="win32",NS=class extends F1.EventEmitter{static{i(this,"ToolRunner")}constructor(e,r,n){if(super(),!e)throw new Error("Parameter 'toolPath' cannot be null or empty.");this.toolPath=e,this.args=r||[],this.options=n||{}}_debug(e){this.options.listeners&&this.options.listeners.debug&&this.options.listeners.debug(e)}_getCommandString(e,r){let n=this._getSpawnFileName(),s=this._getSpawnArgs(e),o=r?"":"[command]";if(RS)if(this._isCmdFile()){o+=n;for(let a of s)o+=` ${a}`}else if(e.windowsVerbatimArguments){o+=`"${n}"`;for(let a of s)o+=` ${a}`}else{o+=this._windowsQuoteCmdArg(n);for(let a of s)o+=` ${this._windowsQuoteCmdArg(a)}`}else{o+=n;for(let a of s)o+=` ${a}`}return o}_processLineBuffer(e,r,n){try{let s=r+e.toString(),o=s.indexOf(jE.EOL);for(;o>-1;){let a=s.substring(0,o);n(a),s=s.substring(o+jE.EOL.length),o=s.indexOf(jE.EOL)}return s}catch(s){return this._debug(`error processing line. Failed with error ${s}`),""}}_getSpawnFileName(){return RS&&this._isCmdFile()?process.env.COMSPEC||"cmd.exe":this.toolPath}_getSpawnArgs(e){if(RS&&this._isCmdFile()){let r=`/D /S /C "${this._windowsQuoteCmdArg(this.toolPath)}`;for(let n of this.args)r+=" ",r+=e.windowsVerbatimArguments?n:this._windowsQuoteCmdArg(n);return r+='"',[r]}return this.args}_endsWith(e,r){return e.endsWith(r)}_isCmdFile(){let e=this.toolPath.toUpperCase();return this._endsWith(e,".CMD")||this._endsWith(e,".BAT")}_windowsQuoteCmdArg(e){if(!this._isCmdFile())return this._uvQuoteCmdArg(e);if(!e)return'""';let r=[" "," ","&","(",")","[","]","{","}","^","=",";","!","'","+",",","`","~","|","<",">",'"'],n=!1;for(let a of e)if(r.some(c=>c===a)){n=!0;break}if(!n)return e;let s='"',o=!0;for(let a=e.length;a>0;a--)s+=e[a-1],o&&e[a-1]==="\\"?s+="\\":e[a-1]==='"'?(o=!0,s+='"'):o=!1;return s+='"',s.split("").reverse().join("")}_uvQuoteCmdArg(e){if(!e)return'""';if(!e.includes(" ")&&!e.includes(" ")&&!e.includes('"'))return e;if(!e.includes('"')&&!e.includes("\\"))return`"${e}"`;let r='"',n=!0;for(let s=e.length;s>0;s--)r+=e[s-1],n&&e[s-1]==="\\"?r+="\\":e[s-1]==='"'?(n=!0,r+="\\"):n=!1;return r+='"',r.split("").reverse().join("")}_cloneExecOptions(e){e=e||{};let r={cwd:e.cwd||process.cwd(),env:e.env||process.env,silent:e.silent||!1,windowsVerbatimArguments:e.windowsVerbatimArguments||!1,failOnStdErr:e.failOnStdErr||!1,ignoreReturnCode:e.ignoreReturnCode||!1,delay:e.delay||1e4};return r.outStream=e.outStream||process.stdout,r.errStream=e.errStream||process.stderr,r}_getSpawnOptions(e,r){e=e||{};let n={};return n.cwd=e.cwd,n.env=e.env,n.windowsVerbatimArguments=e.windowsVerbatimArguments||this._isCmdFile(),e.windowsVerbatimArguments&&(n.argv0=`"${r}"`),n}exec(){return Wse(this,void 0,void 0,function*(){return!BS(this.toolPath)&&(this.toolPath.includes("/")||RS&&this.toolPath.includes("\\"))&&(this.toolPath=Jse.resolve(process.cwd(),this.options.cwd||process.cwd(),this.toolPath)),this.toolPath=yield Gs(this.toolPath,!0),new Promise((e,r)=>Wse(this,void 0,void 0,function*(){this._debug(`exec tool: ${this.toolPath}`),this._debug("arguments:");for(let u of this.args)this._debug(` ${u}`);let n=this._cloneExecOptions(this.options);!n.silent&&n.outStream&&n.outStream.write(this._getCommandString(n)+jE.EOL);let s=new M1(n,this.toolPath);if(s.on("debug",u=>{this._debug(u)}),this.options.cwd&&!(yield th(this.options.cwd)))return r(new Error(`The cwd: ${this.options.cwd} does not exist!`));let o=this._getSpawnFileName(),a=jse.spawn(o,this._getSpawnArgs(n),this._getSpawnOptions(this.options,o)),c="";a.stdout&&a.stdout.on("data",u=>{this.options.listeners&&this.options.listeners.stdout&&this.options.listeners.stdout(u),!n.silent&&n.outStream&&n.outStream.write(u),c=this._processLineBuffer(u,c,d=>{this.options.listeners&&this.options.listeners.stdline&&this.options.listeners.stdline(d)})});let l="";if(a.stderr&&a.stderr.on("data",u=>{s.processStderr=!0,this.options.listeners&&this.options.listeners.stderr&&this.options.listeners.stderr(u),!n.silent&&n.errStream&&n.outStream&&(n.failOnStdErr?n.errStream:n.outStream).write(u),l=this._processLineBuffer(u,l,d=>{this.options.listeners&&this.options.listeners.errline&&this.options.listeners.errline(d)})}),a.on("error",u=>{s.processError=u.message,s.processExited=!0,s.processClosed=!0,s.CheckComplete()}),a.on("exit",u=>{s.processExitCode=u,s.processExited=!0,this._debug(`Exit code ${u} received from tool '${this.toolPath}'`),s.CheckComplete()}),a.on("close",u=>{s.processExitCode=u,s.processExited=!0,s.processClosed=!0,this._debug(`STDIO streams have closed for tool '${this.toolPath}'`),s.CheckComplete()}),s.on("done",(u,d)=>{c.length>0&&this.emit("stdline",c),l.length>0&&this.emit("errline",l),a.removeAllListeners(),u?r(u):e(d)}),this.options.input){if(!a.stdin)throw new Error("child process missing stdin");a.stdin.end(this.options.input)}}))})}};function Xse(t){let e=[],r=!1,n=!1,s="";function o(a){n&&a!=='"'&&(s+="\\"),s+=a,n=!1}i(o,"append");for(let a=0;a0&&(e.push(s),s="");continue}o(c)}return s.length>0&&e.push(s.trim()),e}i(Xse,"argStringToArray");var M1=class t extends F1.EventEmitter{static{i(this,"ExecState")}constructor(e,r){if(super(),this.processClosed=!1,this.processError="",this.processExitCode=0,this.processExited=!1,this.processStderr=!1,this.delay=1e4,this.done=!1,this.timeout=null,!r)throw new Error("toolPath must not be empty");this.options=e,this.toolPath=r,e.delay&&(this.delay=e.delay)}CheckComplete(){this.done||(this.processClosed?this._setResult():this.processExited&&(this.timeout=(0,Kse.setTimeout)(t.HandleTimeout,this.delay,this)))}_debug(e){this.emit("debug",e)}_setResult(){let e;this.processExited&&(this.processError?e=new Error(`There was an error when attempting to execute the process '${this.toolPath}'. This may indicate the process failed to start. Error: ${this.processError}`):this.processExitCode!==0&&!this.options.ignoreReturnCode?e=new Error(`The process '${this.toolPath}' failed with exit code ${this.processExitCode}`):this.processStderr&&this.options.failOnStdErr&&(e=new Error(`The process '${this.toolPath}' failed because one or more lines were written to the STDERR stream`))),this.timeout&&(clearTimeout(this.timeout),this.timeout=null),this.done=!0,this.emit("done",e,this.processExitCode)}static HandleTimeout(e){if(!e.done){if(!e.processClosed&&e.processExited){let r=`The STDIO streams did not close within ${e.delay/1e3} seconds of the exit event from process '${e.toolPath}'. This may indicate a child process inherited the STDIO streams and has not yet exited.`;e._debug(r)}e._setResult()}}};var Zse=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function ud(t,e,r){return Zse(this,void 0,void 0,function*(){let n=Xse(t);if(n.length===0)throw new Error("Parameter 'commandLine' cannot be null or empty.");let s=n[0];return e=n.slice(1).concat(e||[]),new NS(s,e,r).exec()})}i(ud,"exec");function JE(t,e,r){return Zse(this,void 0,void 0,function*(){var n,s;let o="",a="",c=new U1.StringDecoder("utf8"),l=new U1.StringDecoder("utf8"),u=(n=r?.listeners)===null||n===void 0?void 0:n.stdout,d=(s=r?.listeners)===null||s===void 0?void 0:s.stderr,p=i(E=>{a+=l.write(E),d&&d(E)},"stdErrListener"),m=i(E=>{o+=c.write(E),u&&u(E)},"stdOutListener"),f=Object.assign(Object.assign({},r?.listeners),{stdout:m,stderr:p}),g=yield ud(t,e,Object.assign(Object.assign({},r),{listeners:f}));return o+=c.end(),a+=l.end(),{exitCode:g,stdout:o,stderr:a}})}i(JE,"getExecOutput");var fqt=q1.default.platform(),Aqt=q1.default.arch();var vWe=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},$1;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})($1||($1={}));function Bo(t){kp("add-mask",{},t)}i(Bo,"setSecret");function ia(t,e){let r=process.env[`INPUT_${t.replace(/ /g,"_").toUpperCase()}`]||"";if(e&&e.required&&!r)throw new Error(`Input required and not supplied: ${t}`);return e&&e.trimWhitespace===!1?r:r.trim()}i(ia,"getInput");function toe(t,e){let r=["true","True","TRUE"],n=["false","False","FALSE"],s=ia(t,e);if(r.includes(s))return!0;if(n.includes(s))return!1;throw new TypeError(`Input does not meet YAML 1.2 "Core Schema" specification: ${t} +Support boolean input list: \`true | True | TRUE | false | False | FALSE\``)}i(toe,"getBooleanInput");function roe(t){process.exitCode=$1.Failure,nh(t)}i(roe,"setFailed");function cm(){return process.env.RUNNER_DEBUG==="1"}i(cm,"isDebug");function G(t){kp("debug",{},t)}i(G,"debug");function nh(t,e={}){kp("error",sO(e),t instanceof Error?t.toString():t)}i(nh,"error");function Qr(t,e={}){kp("warning",sO(e),t instanceof Error?t.toString():t)}i(Qr,"warning");function Ke(t){process.stdout.write(t+eoe.EOL)}i(Ke,"info");function _We(t){iO("group",t)}i(_We,"startGroup");function QWe(){iO("endgroup")}i(QWe,"endGroup");function XE(t,e){return vWe(this,void 0,void 0,function*(){_We(t);let r;try{r=yield e()}finally{QWe()}return r})}i(XE,"group");function lm(t,e){if(process.env.GITHUB_STATE||"")return sK("STATE",oK(t,e));kp("save-state",{name:t},Gu(e))}i(lm,"saveState");function noe(t){return process.env[`STATE_${t}`]||""}i(noe,"getState");var TT=D(require("fs"),1),G3=D(require("os"),1),H3=D(require("path"),1);var ooe=D(require("os"),1);function ZE(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}i(ZE,"toCommandValue");function ioe(t,e,r){let n=new G1(t,e,r);process.stdout.write(n.toString()+ooe.EOL)}i(ioe,"issueCommand");var soe="::",G1=class{static{i(this,"Command")}constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=soe+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${kWe(s)}`)}}return e+=`${soe}${DWe(this.message)}`,e}};function DWe(t){return ZE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}i(DWe,"escapeData");function kWe(t){return ZE(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}i(kWe,"escapeProperty");var coe=require("os"),eC=require("fs");var H1=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{access:LWe,appendFile:OWe,writeFile:MWe}=eC.promises,aoe="GITHUB_STEP_SUMMARY";var z1=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return H1(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[aoe];if(!e)throw new Error(`Unable to find environment variable for $${aoe}. Check if your runtime environment supports job summaries.`);try{yield LWe(e,eC.constants.R_OK|eC.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,r,n={}){let s=Object.entries(n).map(([o,a])=>` ${o}="${a}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return H1(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?MWe:OWe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return H1(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(coe.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(a=>this.wrap("li",a)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(a=>{if(typeof a=="string")return this.wrap("td",a);let{header:c,data:l,colspan:u,rowspan:d}=a,p=c?"th":"td",m=Object.assign(Object.assign({},u&&{colspan:u}),d&&{rowspan:d});return this.wrap(p,l,m)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},a=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),c=this.wrap("img",null,Object.assign({src:e,alt:r},a));return this.addRaw(c).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},zqt=new z1;var V1=D(require("os"),1);var Jqt=V1.default.platform(),Kqt=V1.default.arch();var loe;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(loe||(loe={}));function ms(t){ioe("debug",{},t)}i(ms,"debug");var Hs=D(require("fs"),1);var kJe=D(pU(),1);var qS=D(require("os"),1),dd=D(require("path"),1);var ui=D(pU(),1);var eae=require("assert");var Zie=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};var sHt=process.platform==="win32",oHt=process.platform==="darwin";function mU(t,e,r,n){return Zie(this,void 0,void 0,function*(){if(r=ui.clean(r)||r,n=n||qS.arch(),ms(`Caching tool ${e} ${r} ${n}`),ms(`source dir: ${t}`),!Hs.statSync(t).isDirectory())throw new Error("sourceDir is not a directory");let s=yield MJe(e,r,n);for(let o of Hs.readdirSync(t)){let a=dd.join(t,o);yield zse(a,s,{recursive:!0})}return FJe(e,r,n),s})}i(mU,"cacheDir");function tae(t,e,r){if(!t)throw new Error("toolName parameter is required");if(!e)throw new Error("versionSpec parameter is required");if(r=r||qS.arch(),!rae(e)){let s=OJe(t,r);e=UJe(s,e)}let n="";if(e){e=ui.clean(e)||"";let s=dd.join($S(),t,e,r);ms(`checking cache: ${s}`),Hs.existsSync(s)&&Hs.existsSync(`${s}.complete`)?(ms(`Found tool in cache ${t} ${e} ${r}`),n=s):ms("not found")}return n}i(tae,"find");function OJe(t,e){let r=[];e=e||qS.arch();let n=dd.join($S(),t);if(Hs.existsSync(n)){let s=Hs.readdirSync(n);for(let o of s)if(rae(o)){let a=dd.join(n,o,e||"");Hs.existsSync(a)&&Hs.existsSync(`${a}.complete`)&&r.push(o)}}return r}i(OJe,"findAllVersions");function MJe(t,e,r){return Zie(this,void 0,void 0,function*(){let n=dd.join($S(),t,ui.clean(e)||e,r||"");ms(`destination ${n}`);let s=`${n}.complete`;return yield O1(n),yield O1(s),yield am(n),n})}i(MJe,"_createToolPath");function FJe(t,e,r){let s=`${dd.join($S(),t,ui.clean(e)||e,r||"")}.complete`;Hs.writeFileSync(s,""),ms("finished caching tool")}i(FJe,"_completeToolPath");function rae(t){let e=ui.clean(t)||"";ms(`isExplicit: ${e}`);let r=ui.valid(e)!=null;return ms(`explicit? ${r}`),r}i(rae,"isExplicitVersion");function UJe(t,e){let r="";ms(`evaluating ${t.length} versions`),t=t.sort((n,s)=>ui.gt(n,s)?1:-1);for(let n=t.length-1;n>=0;n--){let s=t[n];if(ui.satisfies(s,e)){r=s;break}}return r?ms(`matched: ${r}`):ms("match not found"),r}i(UJe,"evaluateVersions");function $S(){let t=process.env.RUNNER_TOOL_CACHE||"";return(0,eae.ok)(t,"Expected RUNNER_TOOL_CACHE to be defined"),t}i($S,"_getCacheDirectory");var $I=D(require("path"),1);var sae=D(require("os"),1);function cC(t){return t==null?"":typeof t=="string"||t instanceof String?t:JSON.stringify(t)}i(cC,"toCommandValue");function oae(t,e,r){let n=new fU(t,e,r);process.stdout.write(n.toString()+sae.EOL)}i(oae,"issueCommand");var nae="::",fU=class{static{i(this,"Command")}constructor(e,r,n){e||(e="missing.command"),this.command=e,this.properties=r,this.message=n}toString(){let e=nae+this.command;if(this.properties&&Object.keys(this.properties).length>0){e+=" ";let r=!0;for(let n in this.properties)if(this.properties.hasOwnProperty(n)){let s=this.properties[n];s&&(r?r=!1:e+=",",e+=`${n}=${GJe(s)}`)}}return e+=`${nae}${$Je(this.message)}`,e}};function $Je(t){return cC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A")}i($Je,"escapeData");function GJe(t){return cC(t).replace(/%/g,"%25").replace(/\r/g,"%0D").replace(/\n/g,"%0A").replace(/:/g,"%3A").replace(/,/g,"%2C")}i(GJe,"escapeProperty");var aae=require("os"),lC=require("fs");var AU=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},{access:HJe,appendFile:zJe,writeFile:VJe}=lC.promises,iae="GITHUB_STEP_SUMMARY";var hU=class{static{i(this,"Summary")}constructor(){this._buffer=""}filePath(){return AU(this,void 0,void 0,function*(){if(this._filePath)return this._filePath;let e=process.env[iae];if(!e)throw new Error(`Unable to find environment variable for $${iae}. Check if your runtime environment supports job summaries.`);try{yield HJe(e,lC.constants.R_OK|lC.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,r,n={}){let s=Object.entries(n).map(([o,a])=>` ${o}="${a}"`).join("");return r?`<${e}${s}>${r}`:`<${e}${s}>`}write(e){return AU(this,void 0,void 0,function*(){let r=!!e?.overwrite,n=yield this.filePath();return yield(r?VJe:zJe)(n,this._buffer,{encoding:"utf8"}),this.emptyBuffer()})}clear(){return AU(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,r=!1){return this._buffer+=e,r?this.addEOL():this}addEOL(){return this.addRaw(aae.EOL)}addCodeBlock(e,r){let n=Object.assign({},r&&{lang:r}),s=this.wrap("pre",this.wrap("code",e),n);return this.addRaw(s).addEOL()}addList(e,r=!1){let n=r?"ol":"ul",s=e.map(a=>this.wrap("li",a)).join(""),o=this.wrap(n,s);return this.addRaw(o).addEOL()}addTable(e){let r=e.map(s=>{let o=s.map(a=>{if(typeof a=="string")return this.wrap("td",a);let{header:c,data:l,colspan:u,rowspan:d}=a,p=c?"th":"td",m=Object.assign(Object.assign({},u&&{colspan:u}),d&&{rowspan:d});return this.wrap(p,l,m)}).join("");return this.wrap("tr",o)}).join(""),n=this.wrap("table",r);return this.addRaw(n).addEOL()}addDetails(e,r){let n=this.wrap("details",this.wrap("summary",e)+r);return this.addRaw(n).addEOL()}addImage(e,r,n){let{width:s,height:o}=n||{},a=Object.assign(Object.assign({},s&&{width:s}),o&&{height:o}),c=this.wrap("img",null,Object.assign({src:e,alt:r},a));return this.addRaw(c).addEOL()}addHeading(e,r){let n=`h${r}`,s=["h1","h2","h3","h4","h5","h6"].includes(n)?n:"h1",o=this.wrap(s,e);return this.addRaw(o).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,r){let n=Object.assign({},r&&{cite:r}),s=this.wrap("blockquote",e,n);return this.addRaw(s).addEOL()}addLink(e,r){let n=this.wrap("a",e,{href:r});return this.addRaw(n).addEOL()}},IHt=new hU;var gU=D(require("os"),1);var BHt=gU.default.platform(),RHt=gU.default.arch();var cae;(function(t){t[t.Success=0]="Success",t[t.Failure=1]="Failure"})(cae||(cae={}));function di(t){oae("debug",{},t)}i(di,"debug");var lh=D(require("fs"),1);function EU(t){let e={followSymbolicLinks:!0,implicitDescendants:!0,matchDirectories:!0,omitBrokenSymbolicLinks:!0,excludeHiddenFiles:!1};return t&&(typeof t.followSymbolicLinks=="boolean"&&(e.followSymbolicLinks=t.followSymbolicLinks,di(`followSymbolicLinks '${e.followSymbolicLinks}'`)),typeof t.implicitDescendants=="boolean"&&(e.implicitDescendants=t.implicitDescendants,di(`implicitDescendants '${e.implicitDescendants}'`)),typeof t.matchDirectories=="boolean"&&(e.matchDirectories=t.matchDirectories,di(`matchDirectories '${e.matchDirectories}'`)),typeof t.omitBrokenSymbolicLinks=="boolean"&&(e.omitBrokenSymbolicLinks=t.omitBrokenSymbolicLinks,di(`omitBrokenSymbolicLinks '${e.omitBrokenSymbolicLinks}'`)),typeof t.excludeHiddenFiles=="boolean"&&(e.excludeHiddenFiles=t.excludeHiddenFiles,di(`excludeHiddenFiles '${e.excludeHiddenFiles}'`))),e}i(EU,"getOptions");var YS=D(require("path"),1);var oh=D(require("path"),1),pd=D(require("assert"),1);var md=process.platform==="win32";function Hl(t){if(t=Gl(t),md&&/^\\\\[^\\]+(\\[^\\]+)?$/.test(t))return t;let e=oh.dirname(t);return md&&/^\\\\[^\\]+\\[^\\]+\\$/.test(e)&&(e=Gl(e)),e}i(Hl,"dirname");function GS(t,e){if((0,pd.default)(t,"ensureAbsoluteRoot parameter 'root' must not be empty"),(0,pd.default)(e,"ensureAbsoluteRoot parameter 'itemPath' must not be empty"),uC(e))return e;if(md){if(e.match(/^[A-Z]:[^\\/]|^[A-Z]:$/i)){let r=process.cwd();return(0,pd.default)(r.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${r}'`),e[0].toUpperCase()===r[0].toUpperCase()?e.length===2?`${e[0]}:\\${r.substr(3)}`:(r.endsWith("\\")||(r+="\\"),`${e[0]}:\\${r.substr(3)}${e.substr(2)}`):`${e[0]}:\\${e.substr(2)}`}else if(aa(e).match(/^\\$|^\\[^\\]/)){let r=process.cwd();return(0,pd.default)(r.match(/^[A-Z]:\\/i),`Expected current directory to start with an absolute drive root. Actual '${r}'`),`${r[0]}:\\${e.substr(1)}`}}return(0,pd.default)(uC(t),"ensureAbsoluteRoot parameter 'root' must have an absolute root"),t.endsWith("/")||md&&t.endsWith("\\")||(t+=oh.sep),t+e}i(GS,"ensureAbsoluteRoot");function uC(t){return(0,pd.default)(t,"hasAbsoluteRoot parameter 'itemPath' must not be empty"),t=aa(t),md?t.startsWith("\\\\")||/^[A-Z]:\\/i.test(t):t.startsWith("/")}i(uC,"hasAbsoluteRoot");function dC(t){return(0,pd.default)(t,"isRooted parameter 'itemPath' must not be empty"),t=aa(t),md?t.startsWith("\\")||/^[A-Z]:/i.test(t):t.startsWith("/")}i(dC,"hasRoot");function aa(t){return t=t||"",md?(t=t.replace(/\//g,"\\"),(/^\\\\+[^\\]/.test(t)?"\\":"")+t.replace(/\\\\+/g,"\\")):t.replace(/\/\/+/g,"/")}i(aa,"normalizeSeparators");function Gl(t){return t?(t=aa(t),!t.endsWith(oh.sep)||t===oh.sep||md&&/^[A-Z]:\\$/i.test(t)?t:t.substr(0,t.length-1)):""}i(Gl,"safeTrimTrailingSeparator");var ca;(function(t){t[t.None=0]="None",t[t.Directory=1]="Directory",t[t.File=2]="File",t[t.All=3]="All"})(ca||(ca={}));var lae=process.platform==="win32";function IU(t){t=t.filter(n=>!n.negate);let e={};for(let n of t){let s=lae?n.searchPath.toUpperCase():n.searchPath;e[s]="candidate"}let r=[];for(let n of t){let s=lae?n.searchPath.toUpperCase():n.searchPath;if(e[s]==="included")continue;let o=!1,a=s,c=Hl(a);for(;c!==a;){if(e[c]){o=!0;break}a=c,c=Hl(a)}o||(r.push(n.searchPath),e[s]="included")}return r}i(IU,"getSearchPaths");function uae(t,e){let r=ca.None;for(let n of t)n.negate?r&=~n.match(e):r|=n.match(e);return r}i(uae,"match");function dae(t,e){return t.some(r=>!r.negate&&r.partialMatch(e))}i(dae,"partialMatch");var Qae=D(require("os"),1),ch=D(require("path"),1);var Ad=D(require("assert"),1),Dae=D(_ae(),1);var pm=D(require("path"),1);var ah=D(require("assert"),1);var g5e=process.platform==="win32",mm=class{static{i(this,"Path")}constructor(e){if(this.segments=[],typeof e=="string")if((0,ah.default)(e,"Parameter 'itemPath' must not be empty"),e=Gl(e),!dC(e))this.segments=e.split(pm.sep);else{let r=e,n=Hl(r);for(;n!==r;){let s=pm.basename(r);this.segments.unshift(s),r=n,n=Hl(r)}this.segments.unshift(r)}else{(0,ah.default)(e.length>0,"Parameter 'itemPath' must not be an empty array");for(let r=0;rt.getLiteral(u)).filter(u=>!a&&!(a=u===""));this.searchPath=new mm(c).toString(),this.rootRegExp=new RegExp(t.regExpEscape(c[0]),zl?"i":""),this.isImplicitPattern=r;let l={dot:!0,nobrace:!0,nocase:zl,nocomment:!0,noext:!0,nonegate:!0};o=zl?o.replace(/\\/g,"/"):o,this.minimatch=new y5e(o,l)}match(e){return this.segments[this.segments.length-1]==="**"?(e=aa(e),!e.endsWith(ch.sep)&&this.isImplicitPattern===!1&&(e=`${e}${ch.sep}`)):e=Gl(e),this.minimatch.match(e)?this.trailingSeparator?ca.Directory:ca.All:ca.None}partialMatch(e){return e=Gl(e),Hl(e)===e?this.rootRegExp.test(e):this.minimatch.matchOne(e.split(zl?/\\+/:/\/+/),this.minimatch.set[0],!0)}static globEscape(e){return(zl?e:e.replace(/\\/g,"\\\\")).replace(/(\[)(?=[^/]+\])/g,"[[]").replace(/\?/g,"[?]").replace(/\*/g,"[*]")}static fixupPattern(e,r){(0,Ad.default)(e,"pattern cannot be empty");let n=new mm(e).segments.map(s=>t.getLiteral(s));if((0,Ad.default)(n.every((s,o)=>(s!=="."||o===0)&&s!==".."),`Invalid pattern '${e}'. Relative pathing '.' and '..' is not allowed.`),(0,Ad.default)(!dC(e)||n[0],`Invalid pattern '${e}'. Root segment must not contain globs.`),e=aa(e),e==="."||e.startsWith(`.${ch.sep}`))e=t.globEscape(process.cwd())+e.substr(1);else if(e==="~"||e.startsWith(`~${ch.sep}`))r=r||Qae.homedir(),(0,Ad.default)(r,"Unable to determine HOME directory"),(0,Ad.default)(uC(r),`Expected HOME directory to be a rooted path. Actual '${r}'`),e=t.globEscape(r)+e.substr(1);else if(zl&&(e.match(/^[A-Z]:$/i)||e.match(/^[A-Z]:[^\\]/i))){let s=GS("C:\\dummy-root",e.substr(0,2));e.length>2&&!s.endsWith("\\")&&(s+="\\"),e=t.globEscape(s)+e.substr(2)}else if(zl&&(e==="\\"||e.match(/^\\[^\\]/))){let s=GS("C:\\dummy-root","\\");s.endsWith("\\")||(s+="\\"),e=t.globEscape(s)+e.substr(1)}else e=GS(t.globEscape(process.cwd()),e);return aa(e)}static getLiteral(e){let r="";for(let n=0;n=0){if(o.length>1)return"";if(o){r+=o,n=a;continue}}}}r+=s}return r}static regExpEscape(e){return e.replace(/[[\\^$.|?*+()]/g,"\\$&")}};var fC=class{static{i(this,"SearchState")}constructor(e,r){this.path=e,this.level=r}};var BU=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},E5e=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(a){return new Promise(function(c,l){a=t[o](a),s(c,l,a.done,a.value)})}}function s(o,a,c,l){Promise.resolve(l).then(function(u){o({value:u,done:c})},a)}},hd=function(t){return this instanceof hd?(this.v=t,this):new hd(t)},C5e=function(t,e,r){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var n=r.apply(t,e||[]),s,o=[];return s=Object.create((typeof AsyncIterator=="function"?AsyncIterator:Object).prototype),c("next"),c("throw"),c("return",a),s[Symbol.asyncIterator]=function(){return this},s;function a(f){return function(g){return Promise.resolve(g).then(f,p)}}function c(f,g){n[f]&&(s[f]=function(E){return new Promise(function(x,w){o.push([f,E,x,w])>1||l(f,E)})},g&&(s[f]=g(s[f])))}function l(f,g){try{u(n[f](g))}catch(E){m(o[0][3],E)}}function u(f){f.value instanceof hd?Promise.resolve(f.value.v).then(d,p):m(o[0][2],f)}function d(f){l("next",f)}function p(f){l("throw",f)}function m(f,g){f(g),o.shift(),o.length&&l(o[0][0],o[0][1])}},I5e=process.platform==="win32",VS=class t{static{i(this,"DefaultGlobber")}constructor(e){this.patterns=[],this.searchPaths=[],this.options=EU(e)}getSearchPaths(){return this.searchPaths.slice()}glob(){return BU(this,void 0,void 0,function*(){var e,r,n,s;let o=[];try{for(var a=!0,c=E5e(this.globGenerator()),l;l=yield c.next(),e=l.done,!e;a=!0){s=l.value,a=!1;let u=s;o.push(u)}}catch(u){r={error:u}}finally{try{!a&&!e&&(n=c.return)&&(yield n.call(c))}finally{if(r)throw r.error}}return o})}globGenerator(){return C5e(this,arguments,i(function*(){let r=EU(this.options),n=[];for(let a of this.patterns)n.push(a),r.implicitDescendants&&(a.trailingSeparator||a.segments[a.segments.length-1]!=="**")&&n.push(new mC(a.negate,!0,a.segments.concat("**")));let s=[];for(let a of IU(n)){di(`Search path '${a}'`);try{yield hd(lh.promises.lstat(a))}catch(c){if(c.code==="ENOENT")continue;throw c}s.unshift(new fC(a,1))}let o=[];for(;s.length;){let a=s.pop(),c=uae(n,a.path),l=!!c||dae(n,a.path);if(!c&&!l)continue;let u=yield hd(t.stat(a,r,o));if(u&&!(r.excludeHiddenFiles&&YS.basename(a.path).match(/^\./)))if(u.isDirectory()){if(c&ca.Directory&&r.matchDirectories)yield yield hd(a.path);else if(!l)continue;let d=a.level+1,p=(yield hd(lh.promises.readdir(a.path))).map(m=>new fC(YS.join(a.path,m),d));s.push(...p.reverse())}else c&ca.File&&(yield yield hd(a.path))}},"globGenerator_1"))}static create(e,r){return BU(this,void 0,void 0,function*(){let n=new t(r);I5e&&(e=e.replace(/\r\n/g,` `),e=e.replace(/\r/g,` `));let s=e.split(` -`).map(o=>o.trim());for(let o of s)!o||o.startsWith("#")||n.patterns.push(new dC(o));return n.searchPaths.push(...CU(n.patterns)),n})}static stat(e,r,n){return SU(this,void 0,void 0,function*(){let s;if(r.followSymbolicLinks)try{s=yield ch.promises.stat(e.path)}catch(o){if(o.code==="ENOENT"){if(r.omitBrokenSymbolicLinks){ui(`Broken symlink '${e.path}'`);return}throw new Error(`No information found for the path '${e.path}'. This may indicate a broken symbolic link.`)}throw o}else s=yield ch.promises.lstat(e.path);if(s.isDirectory()&&r.followSymbolicLinks){let o=yield ch.promises.realpath(e.path);for(;n.length>=e.level;)n.pop();if(n.some(i=>i===o)){ui(`Symlink cycle detected for path '${e.path}' and realpath '${o}'`);return}n.push(o)}return s})}};var C5e=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function Dae(t,e){return C5e(this,void 0,void 0,function*(){return yield zS.create(t,e)})}var aB=Q(require("crypto"),1),ph=Q(require("fs"),1),mm=Q(require("path"),1),Rle=Q(Sle(),1),Nle=Q(require("util"),1);var yC;(function(t){t.Gzip="cache.tgz",t.Zstd="cache.tzst"})(yC||(yC={}));var gs;(function(t){t.Gzip="gzip",t.ZstdWithoutLong="zstd-without-long",t.Zstd="zstd"})(gs||(gs={}));var No;(function(t){t.GNU="gnu",t.BSD="bsd"})(No||(No={}));var oB=2,iB=5e3,VU=5e3,YU=`${process.env.PROGRAMFILES}\\Git\\usr\\bin\\tar.exe`,Ble=`${process.env.SYSTEMDRIVE}\\Windows\\System32\\tar.exe`,EC="cache.tar",WU="manifest.txt",lGt=10*Math.pow(1024,3);var dh=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},RKe=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(i){return new Promise(function(a,c){i=t[o](i),s(a,c,i.done,i.value)})}}function s(o,i,a,c){Promise.resolve(c).then(function(l){o({value:l,done:a})},i)}},NKe="1.0";function CC(){return dh(this,void 0,void 0,function*(){let t=process.platform==="win32",e=process.env.RUNNER_TEMP||"";if(!e){let n;t?n=process.env.USERPROFILE||"C:\\":process.platform==="darwin"?n="/Users":n="/home",e=mm.join(n,"actions","temp")}let r=mm.join(e,aB.randomUUID());return yield im(r),r})}function ec(t){return ph.statSync(t).size}function jU(t){return dh(this,void 0,void 0,function*(){var e,r,n,s,o;let i=[],a=(o=process.env.GITHUB_WORKSPACE)!==null&&o!==void 0?o:process.cwd(),c=yield Dae(t.join(` -`),{implicitDescendants:!1});try{for(var l=!0,u=RKe(c.globGenerator()),d;d=yield u.next(),e=d.done,!e;l=!0){s=d.value,l=!1;let m=mm.relative(a,s).replace(new RegExp(`\\${mm.sep}`,"g"),"/");$(`Matched: ${m}`),m===""?i.push("."):i.push(`${m}`)}}catch(p){r={error:p}}finally{try{!l&&!e&&(n=u.return)&&(yield n.call(u))}finally{if(r)throw r.error}}return i})}function IC(t){return dh(this,void 0,void 0,function*(){return Nle.promisify(ph.unlink)(t)})}function Tle(t){return dh(this,arguments,void 0,function*(e,r=[]){let n="";r.push("--version"),$(`Checking ${e} ${r.join(" ")}`);try{yield ld(`${e}`,r,{ignoreReturnCode:!0,silent:!0,listeners:{stdout:s=>n+=s.toString(),stderr:s=>n+=s.toString()}})}catch(s){$(s.message)}return n=n.trim(),$(n),n})}function xC(){return dh(this,void 0,void 0,function*(){let t=yield Tle("zstd",["--quiet"]),e=Rle.clean(t);return $(`zstd version: ${e}`),t===""?gs.Gzip:gs.ZstdWithoutLong})}function gd(t){return t===gs.Gzip?yC.Gzip:yC.Zstd}function Ple(){return dh(this,void 0,void 0,function*(){return ph.existsSync(YU)?YU:(yield Tle("tar")).toLowerCase().includes("gnu tar")?$s("tar"):""})}function JU(t,e){if(e===void 0)throw Error(`Expected ${t} but value was undefiend`);return e}function mh(t,e,r=!1){let n=t.slice();return e&&n.push(e),process.platform==="win32"&&!r&&n.push("windows-only"),n.push(NKe),aB.createHash("sha256").update(n.join("|")).digest("hex")}function vle(){let t=process.env.ACTIONS_RUNTIME_TOKEN;if(!t)throw new Error("Unable to get the ACTIONS_RUNTIME_TOKEN env variable");return t}var bC=Q(require("http"),1),ZU=Q(require("https"),1);function KU(t){let e=t.protocol==="https:";if(TKe(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new lB(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new lB(`http://${r}`)}else return}function TKe(t){if(!t.hostname)return!1;let e=t.hostname;if(PKe(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(i=>i.trim().toUpperCase()).filter(i=>i))if(o==="*"||s.some(i=>i===o||i.endsWith(`.${o}`)||o.startsWith(".")&&i.endsWith(`${o}`)))return!0;return!1}function PKe(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}var lB=class extends URL{constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var yd=Q(zy(),1),_le=Q(ZA(),1),Qr=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},Cr;(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"})(Cr||(Cr={}));var ys;(function(t){t.Accept="accept",t.ContentType="content-type"})(ys||(ys={}));var zl;(function(t){t.ApplicationJson="application/json"})(zl||(zl={}));var _Ke=[Cr.MovedPermanently,Cr.ResourceMoved,Cr.SeeOther,Cr.TemporaryRedirect,Cr.PermanentRedirect],QKe=[Cr.BadGateway,Cr.ServiceUnavailable,Cr.GatewayTimeout],DKe=["OPTIONS","GET","DELETE","HEAD"],kKe=10,LKe=5,tc=class t extends Error{constructor(e,r){super(e),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,t.prototype)}},XU=class{constructor(e){this.message=e}readBody(){return Qr(this,void 0,void 0,function*(){return new Promise(e=>Qr(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return Qr(this,void 0,void 0,function*(){return new Promise(e=>Qr(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};var Vl=class{constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return Qr(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return Qr(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return Qr(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return Qr(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return Qr(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return Qr(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return Qr(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return Qr(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return Qr(this,arguments,void 0,function*(r,n={}){n[ys.Accept]=this._getExistingOrDefaultHeader(n,ys.Accept,zl.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return Qr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[ys.Accept]=this._getExistingOrDefaultHeader(o,ys.Accept,zl.ApplicationJson),o[ys.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,zl.ApplicationJson);let a=yield this.post(n,i,o);return this._processResponse(a,this.requestOptions)})}putJson(e,r){return Qr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[ys.Accept]=this._getExistingOrDefaultHeader(o,ys.Accept,zl.ApplicationJson),o[ys.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,zl.ApplicationJson);let a=yield this.put(n,i,o);return this._processResponse(a,this.requestOptions)})}patchJson(e,r){return Qr(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[ys.Accept]=this._getExistingOrDefaultHeader(o,ys.Accept,zl.ApplicationJson),o[ys.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,zl.ApplicationJson);let a=yield this.patch(n,i,o);return this._processResponse(a,this.requestOptions)})}request(e,r,n,s){return Qr(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),i=this._prepareRequest(e,o,s),a=this._allowRetries&&DKe.includes(e)?this._maxRetries+1:1,c=0,l;do{if(l=yield this.requestRaw(i,n),l&&l.message&&l.message.statusCode===Cr.Unauthorized){let d;for(let p of this.handlers)if(p.canHandleAuthentication(l)){d=p;break}return d?d.handleAuthentication(this,i,n):l}let u=this._maxRedirects;for(;l.message.statusCode&&_Ke.includes(l.message.statusCode)&&this._allowRedirects&&u>0;){let d=l.message.headers.location;if(!d)break;let p=new URL(d);if(o.protocol==="https:"&&o.protocol!==p.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 l.readBody(),p.hostname!==o.hostname)for(let m in s)m.toLowerCase()==="authorization"&&delete s[m];i=this._prepareRequest(e,p,s),l=yield this.requestRaw(i,n),u--}if(!l.message.statusCode||!QKe.includes(l.message.statusCode))return l;c+=1,c{function o(i,a){i?s(i):a?n(a):s(new Error("Unknown error"))}this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(c,l){s||(s=!0,n(c,l))}let i=e.httpModule.request(e.options,c=>{let l=new XU(c);o(void 0,l)}),a;i.on("socket",c=>{a=c}),i.setTimeout(this._socketTimeout||3*6e4,()=>{a&&a.end(),o(new Error(`Request timeout: ${e.options.path}`))}),i.on("error",function(c){o(c)}),r&&typeof r=="string"&&i.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){i.end()}),r.pipe(i)):i.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=KU(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?ZU:bC;let i=o?443:80;if(s.options={},s.options.host=s.parsedUrl.hostname,s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):i,s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||""),s.options.method=e,s.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(s.options.headers["user-agent"]=this.userAgent),s.options.agent=this._getAgent(s.parsedUrl),this.handlers)for(let a of this.handlers)a.prepareRequest(s.options);return s}_mergeHeaders(e){return this.requestOptions&&this.requestOptions.headers?Object.assign({},wC(this.requestOptions.headers),wC(e||{})):wC(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let i=wC(this.requestOptions.headers)[r];i&&(s=typeof i=="number"?i.toString():i)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=wC(this.requestOptions.headers)[ys.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[ys.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=KU(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",i=100;if(this.requestOptions&&(i=this.requestOptions.maxSockets||bC.globalAgent.maxSockets),n&&n.hostname){let a={maxSockets:i,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},c,l=n.protocol==="https:";o?c=l?yd.httpsOverHttps:yd.httpsOverHttp:c=l?yd.httpOverHttps:yd.httpOverHttp,r=c(a),this._proxyAgent=r}if(!r){let a={keepAlive:this._keepAlive,maxSockets:i};r=o?new ZU.Agent(a):new bC.Agent(a),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new _le.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return Qr(this,void 0,void 0,function*(){e=Math.min(kKe,e);let r=LKe*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return Qr(this,void 0,void 0,function*(){return new Promise((n,s)=>Qr(this,void 0,void 0,function*(){let o=e.message.statusCode||0,i={statusCode:o,result:null,headers:{}};o===Cr.NotFound&&n(i);function a(u,d){if(typeof d=="string"){let p=new Date(d);if(!isNaN(p.valueOf()))return p}return d}let c,l;try{l=yield e.readBody(),l&&l.length>0&&(r&&r.deserializeDates?c=JSON.parse(l,a):c=JSON.parse(l),i.result=c),i.headers=e.message.headers}catch{}if(o>299){let u;c&&c.message?u=c.message:l&&l.length>0?u=l:u=`Failed request: (${o})`;let d=new tc(u,o);d.result=i.result,s(d)}else n(i)}))})}},wC=t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{});var OKe=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};var fh=class{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 OKe(this,void 0,void 0,function*(){throw new Error("not implemented")})}};var Hh=Q(require("fs"),1),oAe=require("url");var rc=class extends Error{constructor(e){super(e),this.name="AbortError"}};var Qle=require("node:os"),Dle=Q(require("node:util"),1),kle=Q(require("node:process"),1);function Lle(t,...e){kle.default.stderr.write(`${Dle.default.format(t,...e)}${Qle.EOL}`)}var Ole=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,Fle,e2=[],t2=[],uB=[];Ole&&r2(Ole);var Ule=Object.assign(t=>qle(t),{enable:r2,enabled:n2,disable:MKe,log:Lle});function r2(t){Fle=t,e2=[],t2=[];let e=t.split(",").map(r=>r.trim());for(let r of e)r.startsWith("-")?t2.push(r.substring(1)):e2.push(r);for(let r of uB)r.enabled=n2(r.namespace)}function n2(t){if(t.endsWith("*"))return!0;for(let e of t2)if(Mle(t,e))return!1;for(let e of e2)if(Mle(t,e))return!0;return!1}function Mle(t,e){if(e.indexOf("*")===-1)return t===e;let r=e;if(e.indexOf("**")!==-1){let p=[],m="";for(let h of e)h==="*"&&m==="*"||(m=h,p.push(h));r=p.join("")}let n=0,s=0,o=r.length,i=t.length,a=-1,c=-1;for(;n=0){if(s=a+1,n=c+1,n===i)return!1;for(;t[n]!==r[s];)if(n++,n===i)return!1;c=n,n++,s++;continue}else return!1;let l=n===t.length,u=s===r.length,d=s===r.length-1&&r[s]==="*";return l&&(u||d)}function MKe(){let t=Fle||"";return r2(""),t}function qle(t){let e=Object.assign(r,{enabled:n2(t),destroy:FKe,log:Ule.log,namespace:t,extend:UKe});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return uB.push(e),e}function FKe(){let t=uB.indexOf(this);return t>=0?(uB.splice(t,1),!0):!1}function UKe(t){let e=qle(`${this.namespace}:${t}`);return e.log=this.log,e}var Ah=Ule;var s2=["verbose","info","warning","error"],$le={verbose:400,info:300,warning:200,error:100};function Gle(t,e){e.log=(...r)=>{t.log(...r)}}function Hle(t){return s2.includes(t)}function dB(t){let e=new Set,r=typeof process<"u"&&process.env&&process.env[t.logLevelEnvVarName]||void 0,n,s=Ah(t.namespace);s.log=(...u)=>{Ah.log(...u)};function o(u){if(u&&!Hle(u))throw new Error(`Unknown log level '${u}'. Acceptable values: ${s2.join(",")}`);n=u;let d=[];for(let p of e)i(p)&&d.push(p.namespace);Ah.enable(d.join(","))}r&&(Hle(r)?o(r):console.error(`${t.logLevelEnvVarName} set to unknown log level '${r}'; logging is not enabled. Acceptable values: ${s2.join(", ")}.`));function i(u){return!!(n&&$le[u.level]<=$le[n])}function a(u,d){let p=Object.assign(u.extend(d),{level:d});if(Gle(u,p),i(p)){let m=Ah.disable();Ah.enable(m+","+p.namespace)}return e.add(p),p}function c(){return n}function l(u){let d=s.extend(u);return Gle(s,d),{error:a(d,"error"),warning:a(d,"warning"),info:a(d,"info"),verbose:a(d,"verbose")}}return{setLogLevel:o,getLogLevel:c,createClientLogger:l,logger:s}}var zle=dB({logLevelEnvVarName:"TYPESPEC_RUNTIME_LOG_LEVEL",namespace:"typeSpecRuntime"}),qKe=zle.logger;function SC(t){return zle.createClientLogger(t)}function pB(t){return t.toLowerCase()}function*$Ke(t){for(let e of t.values())yield[e.name,e.value]}var o2=class{_headersMap;constructor(e){if(this._headersMap=new Map,e)for(let r of Object.keys(e))this.set(r,e[r])}set(e,r){this._headersMap.set(pB(e),{name:e,value:String(r).trim()})}get(e){return this._headersMap.get(pB(e))?.value}has(e){return this._headersMap.has(pB(e))}delete(e){this._headersMap.delete(pB(e))}toJSON(e={}){let r={};if(e.preserveCase)for(let n of this._headersMap.values())r[n.name]=n.value;else for(let[n,s]of this._headersMap)r[n]=s.value;return r}toString(){return JSON.stringify(this.toJSON({preserveCase:!0}))}[Symbol.iterator](){return $Ke(this._headersMap)}};function To(t){return new o2(t)}function fm(){return crypto.randomUUID()}var i2=class{url;method;headers;timeout;withCredentials;body;multipartBody;formData;streamResponseStatusCodes;enableBrowserStreams;proxySettings;disableKeepAlive;abortSignal;requestId;allowInsecureConnection;onUploadProgress;onDownloadProgress;requestOverrides;authSchemes;constructor(e){this.url=e.url,this.body=e.body,this.headers=e.headers??To(),this.method=e.method??"GET",this.timeout=e.timeout??0,this.multipartBody=e.multipartBody,this.formData=e.formData,this.disableKeepAlive=e.disableKeepAlive??!1,this.proxySettings=e.proxySettings,this.streamResponseStatusCodes=e.streamResponseStatusCodes,this.withCredentials=e.withCredentials??!1,this.abortSignal=e.abortSignal,this.onUploadProgress=e.onUploadProgress,this.onDownloadProgress=e.onDownloadProgress,this.requestId=e.requestId||fm(),this.allowInsecureConnection=e.allowInsecureConnection??!1,this.enableBrowserStreams=e.enableBrowserStreams??!1,this.requestOverrides=e.requestOverrides,this.authSchemes=e.authSchemes}};function mB(t){return new i2(t)}var Vle=new Set(["Deserialize","Serialize","Retry","Sign"]),a2=class t{_policies=[];_orderedPolicies;constructor(e){this._policies=e?.slice(0)??[],this._orderedPolicies=void 0}addPolicy(e,r={}){if(r.phase&&r.afterPhase)throw new Error("Policies inside a phase cannot specify afterPhase.");if(r.phase&&!Vle.has(r.phase))throw new Error(`Invalid phase name: ${r.phase}`);if(r.afterPhase&&!Vle.has(r.afterPhase))throw new Error(`Invalid afterPhase name: ${r.afterPhase}`);this._policies.push({policy:e,options:r}),this._orderedPolicies=void 0}removePolicy(e){let r=[];return this._policies=this._policies.filter(n=>e.name&&n.policy.name===e.name||e.phase&&n.options.phase===e.phase?(r.push(n.policy),!1):!0),this._orderedPolicies=void 0,r}sendRequest(e,r){return this.getOrderedPolicies().reduceRight((o,i)=>a=>i.sendRequest(a,o),o=>e.sendRequest(o))(r)}getOrderedPolicies(){return this._orderedPolicies||(this._orderedPolicies=this.orderPolicies()),this._orderedPolicies}clone(){return new t(this._policies)}static create(){return new t}orderPolicies(){let e=[],r=new Map;function n(h){return{name:h,policies:new Set,hasRun:!1,hasAfterPolicies:!1}}let s=n("Serialize"),o=n("None"),i=n("Deserialize"),a=n("Retry"),c=n("Sign"),l=[s,o,i,a,c];function u(h){return h==="Retry"?a:h==="Serialize"?s:h==="Deserialize"?i:h==="Sign"?c:o}for(let h of this._policies){let y=h.policy,I=h.options,x=y.name;if(r.has(x))throw new Error("Duplicate policy names not allowed in pipeline");let b={policy:y,dependsOn:new Set,dependants:new Set};I.afterPhase&&(b.afterPhase=u(I.afterPhase),b.afterPhase.hasAfterPolicies=!0),r.set(x,b),u(I.phase).policies.add(b)}for(let h of this._policies){let{policy:y,options:I}=h,x=y.name,b=r.get(x);if(!b)throw new Error(`Missing node for policy ${x}`);if(I.afterPolicies)for(let T of I.afterPolicies){let _=r.get(T);_&&(b.dependsOn.add(_),_.dependants.add(b))}if(I.beforePolicies)for(let T of I.beforePolicies){let _=r.get(T);_&&(_.dependsOn.add(b),b.dependants.add(_))}}function d(h){h.hasRun=!0;for(let y of h.policies)if(!(y.afterPhase&&(!y.afterPhase.hasRun||y.afterPhase.policies.size))&&y.dependsOn.size===0){e.push(y.policy);for(let I of y.dependants)I.dependsOn.delete(y);r.delete(y.policy.name),h.policies.delete(y)}}function p(){for(let h of l){if(d(h),h.policies.size>0&&h!==o){o.hasRun||d(o);return}h.hasAfterPolicies&&d(o)}}let m=0;for(;r.size>0;){m++;let h=e.length;if(p(),e.length<=h&&m>1)throw new Error("Cannot satisfy policy dependencies due to requirements cycle.")}return e}};function fB(){return a2.create()}function hh(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)&&!(t instanceof RegExp)&&!(t instanceof Date)}function Am(t){if(hh(t)){let e=typeof t.name=="string",r=typeof t.message=="string";return e&&r}return!1}var Yle=require("node:util"),Wle=Yle.inspect.custom;var c2="REDACTED",GKe=["x-ms-client-request-id","x-ms-return-client-request-id","x-ms-useragent","x-ms-correlation-request-id","x-ms-request-id","client-request-id","ms-cv","return-client-request-id","traceparent","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","Origin","Accept","Accept-Encoding","Cache-Control","Connection","Content-Length","Content-Type","Date","ETag","Expires","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","Last-Modified","Pragma","Request-Id","Retry-After","Server","Transfer-Encoding","User-Agent","WWW-Authenticate"],HKe=["api-version"],ca=class{allowedHeaderNames;allowedQueryParameters;constructor({additionalAllowedHeaderNames:e=[],additionalAllowedQueryParameters:r=[]}={}){e=GKe.concat(e),r=HKe.concat(r),this.allowedHeaderNames=new Set(e.map(n=>n.toLowerCase())),this.allowedQueryParameters=new Set(r.map(n=>n.toLowerCase()))}sanitize(e){let r=new Set;return JSON.stringify(e,(n,s)=>{if(s instanceof Error)return{...s,name:s.name,message:s.message};if(n==="headers")return this.sanitizeHeaders(s);if(n==="url")return this.sanitizeUrl(s);if(n==="query")return this.sanitizeQuery(s);if(n==="body")return;if(n==="response")return;if(n==="operationSpec")return;if(Array.isArray(s)||hh(s)){if(r.has(s))return"[Circular]";r.add(s)}return s},2)}sanitizeUrl(e){if(typeof e!="string"||e===null||e==="")return e;let r=new URL(e);if(!r.search)return e;for(let[n]of r.searchParams)this.allowedQueryParameters.has(n.toLowerCase())||r.searchParams.set(n,c2);return r.toString()}sanitizeHeaders(e){let r={};for(let n of Object.keys(e))this.allowedHeaderNames.has(n.toLowerCase())?r[n]=e[n]:r[n]=c2;return r}sanitizeQuery(e){if(typeof e!="object"||e===null)return e;let r={};for(let n of Object.keys(e))this.allowedQueryParameters.has(n.toLowerCase())?r[n]=e[n]:r[n]=c2;return r}};var zKe=new ca,Es=class t extends Error{static REQUEST_SEND_ERROR="REQUEST_SEND_ERROR";static PARSE_ERROR="PARSE_ERROR";code;statusCode;request;response;details;constructor(e,r={}){super(e),this.name="RestError",this.code=r.code,this.statusCode=r.statusCode,Object.defineProperty(this,"request",{value:r.request,enumerable:!1}),Object.defineProperty(this,"response",{value:r.response,enumerable:!1});let n=this.request?.agent?{maxFreeSockets:this.request.agent.maxFreeSockets,maxSockets:this.request.agent.maxSockets}:void 0;Object.defineProperty(this,Wle,{value:()=>`RestError: ${this.message} - ${zKe.sanitize({...this,request:{...this.request,agent:n},response:this.response})}`,enumerable:!1}),Object.setPrototypeOf(this,t.prototype)}};function AB(t){return t instanceof Es?!0:Am(t)&&t.name==="RestError"}function Hs(t,e){return Buffer.from(t,e)}var hB=Q(require("node:http"),1),gB=Q(require("node:https"),1),l2=Q(require("node:zlib"),1),Jle=require("node:stream");var mi=SC("ts-http-runtime");var VKe={};function BC(t){return t&&typeof t.pipe=="function"}function jle(t){return t.readable===!1?Promise.resolve():new Promise(e=>{let r=()=>{e(),t.removeListener("close",r),t.removeListener("end",r),t.removeListener("error",r)};t.on("close",r),t.on("end",r),t.on("error",r)})}function Kle(t){return t&&typeof t.byteLength=="number"}var yB=class extends Jle.Transform{loadedBytes=0;progressCallback;_transform(e,r,n){this.push(e),this.loadedBytes+=e.length;try{this.progressCallback({loadedBytes:this.loadedBytes}),n()}catch(s){n(s)}}constructor(e){super(),this.progressCallback=e}},u2=class{cachedHttpAgent;cachedHttpsAgents=new WeakMap;async sendRequest(e){let r=new AbortController,n;if(e.abortSignal){if(e.abortSignal.aborted)throw new rc("The operation was aborted. Request has already been canceled.");n=l=>{l.type==="abort"&&r.abort()},e.abortSignal.addEventListener("abort",n)}let s;e.timeout>0&&(s=setTimeout(()=>{let l=new ca;mi.info(`request to '${l.sanitizeUrl(e.url)}' timed out. canceling...`),r.abort()},e.timeout));let o=e.headers.get("Accept-Encoding"),i=o?.includes("gzip")||o?.includes("deflate"),a=typeof e.body=="function"?e.body():e.body;if(a&&!e.headers.has("Content-Length")){let l=JKe(a);l!==null&&e.headers.set("Content-Length",l)}let c;try{if(a&&e.onUploadProgress){let h=e.onUploadProgress,y=new yB(h);y.on("error",I=>{mi.error("Error in upload progress",I)}),BC(a)?a.pipe(y):y.end(a),a=y}let l=await this.makeRequest(e,r,a);s!==void 0&&clearTimeout(s);let u=YKe(l),p={status:l.statusCode??0,headers:u,request:e};if(e.method==="HEAD")return l.resume(),p;c=i?WKe(l,u):l;let m=e.onDownloadProgress;if(m){let h=new yB(m);h.on("error",y=>{mi.error("Error in download progress",y)}),c.pipe(h),c=h}return e.streamResponseStatusCodes?.has(Number.POSITIVE_INFINITY)||e.streamResponseStatusCodes?.has(p.status)?p.readableStreamBody=c:p.bodyAsText=await jKe(c),p}finally{if(e.abortSignal&&n){let l=Promise.resolve();BC(a)&&(l=jle(a));let u=Promise.resolve();BC(c)&&(u=jle(c)),Promise.all([l,u]).then(()=>{n&&e.abortSignal?.removeEventListener("abort",n)}).catch(d=>{mi.warning("Error when cleaning up abortListener on httpRequest",d)})}}}makeRequest(e,r,n){let s=new URL(e.url),o=s.protocol!=="https:";if(o&&!e.allowInsecureConnection)throw new Error(`Cannot connect to ${e.url} while allowInsecureConnection is false.`);let a={agent:e.agent??this.getOrCreateAgent(e,o),hostname:s.hostname,path:`${s.pathname}${s.search}`,port:s.port,method:e.method,headers:e.headers.toJSON({preserveCase:!0}),...e.requestOverrides};return new Promise((c,l)=>{let u=o?hB.default.request(a,c):gB.default.request(a,c);u.once("error",d=>{l(new Es(d.message,{code:d.code??Es.REQUEST_SEND_ERROR,request:e}))}),r.signal.addEventListener("abort",()=>{let d=new rc("The operation was aborted. Rejecting from abort signal callback while making request.");u.destroy(d),l(d)}),n&&BC(n)?n.pipe(u):n?typeof n=="string"||Buffer.isBuffer(n)?u.end(n):Kle(n)?u.end(ArrayBuffer.isView(n)?Buffer.from(n.buffer):Buffer.from(n)):(mi.error("Unrecognized body type",n),l(new Es("Unrecognized body type"))):u.end()})}getOrCreateAgent(e,r){let n=e.disableKeepAlive;if(r)return n?hB.default.globalAgent:(this.cachedHttpAgent||(this.cachedHttpAgent=new hB.default.Agent({keepAlive:!0})),this.cachedHttpAgent);{if(n&&!e.tlsSettings)return gB.default.globalAgent;let s=e.tlsSettings??VKe,o=this.cachedHttpsAgents.get(s);return o&&o.options.keepAlive===!n||(mi.info("No cached TLS Agent exist, creating a new Agent"),o=new gB.default.Agent({keepAlive:!n,...s}),this.cachedHttpsAgents.set(s,o)),o}}};function YKe(t){let e=To();for(let r of Object.keys(t.headers)){let n=t.headers[r];Array.isArray(n)?n.length>0&&e.set(r,n[0]):n&&e.set(r,n)}return e}function WKe(t,e){let r=e.get("Content-Encoding");if(r==="gzip"){let n=l2.default.createGunzip();return t.pipe(n),n}else if(r==="deflate"){let n=l2.default.createInflate();return t.pipe(n),n}return t}function jKe(t){return new Promise((e,r)=>{let n=[];t.on("data",s=>{Buffer.isBuffer(s)?n.push(s):n.push(Buffer.from(s))}),t.on("end",()=>{e(Buffer.concat(n).toString("utf8"))}),t.on("error",s=>{s&&s?.name==="AbortError"?r(s):r(new Es(`Error reading response as text: ${s.message}`,{code:Es.PARSE_ERROR}))})})}function JKe(t){return t?Buffer.isBuffer(t)?t.length:BC(t)?null:Kle(t)?t.byteLength:typeof t=="string"?Buffer.from(t).length:null:0}function Xle(){return new u2}function EB(){return Xle()}var d2="logPolicy";function CB(t={}){let e=t.logger??mi.info,r=new ca({additionalAllowedHeaderNames:t.additionalAllowedHeaderNames,additionalAllowedQueryParameters:t.additionalAllowedQueryParameters});return{name:d2,async sendRequest(n,s){if(!e.enabled)return s(n);e(`Request: ${r.sanitize(n)}`);let o=await s(n);return e(`Response status code: ${o.status}`),e(`Headers: ${r.sanitize(o.headers)}`),o}}}var IB="redirectPolicy",Zle=["GET","HEAD"];function xB(t={}){let{maxRetries:e=20}=t;return{name:IB,async sendRequest(r,n){let s=await n(r);return eue(n,s,e)}}}async function eue(t,e,r,n=0){let{request:s,status:o,headers:i}=e,a=i.get("location");if(a&&(o===300||o===301&&Zle.includes(s.method)||o===302&&Zle.includes(s.method)||o===303&&s.method==="POST"||o===307)&&n{let o,i,a=()=>s(new rc(r?.abortErrorMsg?r?.abortErrorMsg:KKe)),c=()=>{r?.abortSignal&&i&&r.abortSignal.removeEventListener("abort",i)};if(i=()=>(o&&clearTimeout(o),c(),a()),r?.abortSignal&&r.abortSignal.aborted)return a();o=setTimeout(()=>{c(),n(e)},t),r?.abortSignal&&r.abortSignal.addEventListener("abort",i)})}function sue(t,e){let r=t.headers.get(e);if(!r)return;let n=Number(r);if(!Number.isNaN(n))return n}var p2="Retry-After",XKe=["retry-after-ms","x-ms-retry-after-ms",p2];function oue(t){if(t&&[429,503].includes(t.status))try{for(let s of XKe){let o=sue(t,s);if(o===0||o)return o*(s===p2?1e3:1)}let e=t.headers.get(p2);if(!e)return;let n=Date.parse(e)-Date.now();return Number.isFinite(n)?Math.max(0,n):void 0}catch{return}}function iue(t){return Number.isFinite(oue(t))}function m2(){return{name:"throttlingRetryStrategy",retry({response:t}){let e=oue(t);return Number.isFinite(e)?{retryAfterInMs:e}:{skipStrategy:!0}}}}var ZKe=1e3,eXe=1e3*64;function BB(t={}){let e=t.retryDelayInMs??ZKe,r=t.maxRetryDelayInMs??eXe;return{name:"exponentialRetryStrategy",retry({retryCount:n,response:s,responseError:o}){let i=rXe(o),a=i&&t.ignoreSystemErrors,c=tXe(s),l=c&&t.ignoreHttpStatusCodes;return s&&(iue(s)||!c)||l||a?{skipStrategy:!0}:o&&!i&&!c?{errorToThrow:o}:SB(n,{retryDelayInMs:e,maxRetryDelayInMs:r})}}}function tXe(t){return!!(t&&t.status!==void 0&&(t.status>=500||t.status===408)&&t.status!==501&&t.status!==505)}function rXe(t){return t?t.code==="ETIMEDOUT"||t.code==="ESOCKETTIMEDOUT"||t.code==="ECONNREFUSED"||t.code==="ECONNRESET"||t.code==="ENOENT"||t.code==="ENOTFOUND":!1}var nXe=SC("ts-http-runtime retryPolicy"),sXe="retryPolicy";function gm(t,e={maxRetries:3}){let r=e.logger||nXe;return{name:sXe,async sendRequest(n,s){let o,i,a=-1;e:for(;;){a+=1,o=void 0,i=void 0;try{r.info(`Retry ${a}: Attempting to send request`,n.requestId),o=await s(n),r.info(`Retry ${a}: Received a response from request`,n.requestId)}catch(c){if(r.error(`Retry ${a}: Received an error from request`,n.requestId),i=c,!c||i.name!=="RestError")throw c;o=i.response}if(n.abortSignal?.aborted)throw r.error(`Retry ${a}: Request aborted.`),new rc;if(a>=(e.maxRetries??3)){if(r.info(`Retry ${a}: Maximum retries reached. Returning the last received response, or throwing the last received error.`),i)throw i;if(o)return o;throw new Error("Maximum retries reached with no response or error to throw")}r.info(`Retry ${a}: Processing ${t.length} retry strategies.`);t:for(let c of t){let l=c.logger||r;l.info(`Retry ${a}: Processing retry strategy ${c.name}.`);let u=c.retry({retryCount:a,response:o,responseError:i});if(u.skipStrategy){l.info(`Retry ${a}: Skipped.`);continue t}let{errorToThrow:d,retryAfterInMs:p,redirectTo:m}=u;if(d)throw l.error(`Retry ${a}: Retry strategy ${c.name} throws error:`,d),d;if(p||p===0){l.info(`Retry ${a}: Retry strategy ${c.name} retries after ${p}`),await nue(p,void 0,{abortSignal:n.abortSignal});continue e}if(m){l.info(`Retry ${a}: Retry strategy ${c.name} redirects to ${m}`),n.url=m;continue e}}if(i)throw r.info("None of the retry strategies could work with the received error. Throwing it."),i;if(o)return r.info("None of the retry strategies could work with the received response. Returning it."),o}}}}var f2="defaultRetryPolicy";function RB(t={}){return{name:f2,sendRequest:gm([m2(),BB(t)],{maxRetries:t.maxRetries??3}).sendRequest}}var aue=typeof window<"u"&&typeof window.document<"u",cue=typeof self=="object"&&typeof self?.importScripts=="function"&&(self.constructor?.name==="DedicatedWorkerGlobalScope"||self.constructor?.name==="ServiceWorkerGlobalScope"||self.constructor?.name==="SharedWorkerGlobalScope"),lue=typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u",uue=typeof Bun<"u"&&typeof Bun.version<"u",ym=typeof globalThis.process<"u"&&!!globalThis.process.version&&!!globalThis.process.versions?.node;var due=typeof navigator<"u"&&navigator?.product==="ReactNative";var A2="formDataPolicy";function oXe(t){let e={};for(let[r,n]of t.entries())e[r]??=[],e[r].push(n);return e}function NB(){return{name:A2,async sendRequest(t,e){if(ym&&typeof FormData<"u"&&t.body instanceof FormData&&(t.formData=oXe(t.body),t.body=void 0),t.formData){let r=t.headers.get("Content-Type");r&&r.indexOf("application/x-www-form-urlencoded")!==-1?t.body=iXe(t.formData):await aXe(t.formData,t),t.formData=void 0}return e(t)}}}function iXe(t){let e=new URLSearchParams;for(let[r,n]of Object.entries(t))if(Array.isArray(n))for(let s of n)e.append(r,s.toString());else e.append(r,n.toString());return e.toString()}async function aXe(t,e){let r=e.headers.get("Content-Type");if(r&&!r.startsWith("multipart/form-data"))return;e.headers.set("Content-Type",r??"multipart/form-data");let n=[];for(let[s,o]of Object.entries(t))for(let i of Array.isArray(o)?o:[o])if(typeof i=="string")n.push({headers:To({"Content-Disposition":`form-data; name="${s}"`}),body:Hs(i,"utf-8")});else{if(i==null||typeof i!="object")throw new Error(`Unexpected value for key ${s}: ${i}. Value should be serialized to string first.`);{let a=i.name||"blob",c=To();c.set("Content-Disposition",`form-data; name="${s}"; filename="${a}"`),c.set("Content-Type",i.type||"application/octet-stream"),n.push({headers:c,body:i})}}e.multipartBody={parts:n}}var jue=Q(Lue(),1),Jue=Q(zue(),1);var A7e="HTTPS_PROXY",h7e="HTTP_PROXY",g7e="ALL_PROXY",y7e="NO_PROXY",x2="proxyPolicy",Vue=[],Kue=!1,E7e=new Map;function OB(t){if(process.env[t])return process.env[t];if(process.env[t.toLowerCase()])return process.env[t.toLowerCase()]}function Xue(){if(!process)return;let t=OB(A7e),e=OB(g7e),r=OB(h7e);return t||e||r}function C7e(t,e,r){if(e.length===0)return!1;let n=new URL(t).hostname;if(r?.has(n))return r.get(n);let s=!1;for(let o of e)o[0]==="."?(n.endsWith(o)||n.length===o.length-1&&n===o.slice(1))&&(s=!0):n===o&&(s=!0);return r?.set(n,s),s}function I7e(){let t=OB(y7e);return Kue=!0,t?t.split(",").map(e=>e.trim()).filter(e=>e.length):[]}function w2(t){if(!t&&(t=Xue(),!t))return;let e=new URL(t);return{host:(e.protocol?e.protocol+"//":"")+e.hostname,port:Number.parseInt(e.port||"80"),username:e.username,password:e.password}}function x7e(){let t=Xue();return t?new URL(t):void 0}function Yue(t){let e;try{e=new URL(t.host)}catch{throw new Error(`Expecting a valid host string in proxy settings, but found "${t.host}".`)}return e.port=String(t.port),t.username&&(e.username=t.username),t.password&&(e.password=t.password),e}function Wue(t,e,r){if(t.agent)return;let s=new URL(t.url).protocol!=="https:";t.tlsSettings&&mi.warning("TLS settings are not supported in combination with custom Proxy, certificates provided to the client will be ignored.");let o=t.headers.toJSON();s?(e.httpProxyAgent||(e.httpProxyAgent=new Jue.HttpProxyAgent(r,{headers:o})),t.agent=e.httpProxyAgent):(e.httpsProxyAgent||(e.httpsProxyAgent=new jue.HttpsProxyAgent(r,{headers:o})),t.agent=e.httpsProxyAgent)}function MB(t,e){Kue||Vue.push(...I7e());let r=t?Yue(t):x7e(),n={};return{name:x2,async sendRequest(s,o){return!s.proxySettings&&r&&!C7e(s.url,e?.customNoProxyList??Vue,e?.customNoProxyList?void 0:E7e)?Wue(s,n,r):s.proxySettings&&Wue(s,n,Yue(s.proxySettings)),o(s)}}}var b2="agentPolicy";function FB(t){return{name:b2,sendRequest:async(e,r)=>(e.agent||(e.agent=t),r(e))}}var S2="tlsPolicy";function UB(t){return{name:S2,sendRequest:async(e,r)=>(e.tlsSettings||(e.tlsSettings=t),r(e))}}function qB(t){return typeof t.stream=="function"}var $B=require("stream");async function*Zue(){let t=this.getReader();try{for(;;){let{done:e,value:r}=await t.read();if(e)return;yield r}}finally{t.releaseLock()}}function w7e(t){t[Symbol.asyncIterator]||(t[Symbol.asyncIterator]=Zue.bind(t)),t.values||(t.values=Zue.bind(t))}function ede(t){return t instanceof ReadableStream?(w7e(t),$B.Readable.fromWeb(t)):t}function b7e(t){return t instanceof Uint8Array?$B.Readable.from(Buffer.from(t)):qB(t)?ede(t.stream()):ede(t)}async function tde(t){return function(){let e=t.map(r=>typeof r=="function"?r():r).map(b7e);return $B.Readable.from((async function*(){for(let r of e)for await(let n of r)yield n})())}}function S7e(){return`----AzSDKFormBoundary${fm()}`}function B7e(t){let e="";for(let[r,n]of t)e+=`${r}: ${n}\r -`;return e}function R7e(t){return t instanceof Uint8Array?t.byteLength:qB(t)?t.size===-1?void 0:t.size:void 0}function N7e(t){let e=0;for(let r of t){let n=R7e(r);if(n===void 0)return;e+=n}return e}async function T7e(t,e,r){let n=[Hs(`--${r}`,"utf-8"),...e.flatMap(o=>[Hs(`\r -`,"utf-8"),Hs(B7e(o.headers),"utf-8"),Hs(`\r -`,"utf-8"),o.body,Hs(`\r ---${r}`,"utf-8")]),Hs(`--\r +`).map(o=>o.trim());for(let o of s)!o||o.startsWith("#")||n.patterns.push(new mC(o));return n.searchPaths.push(...IU(n.patterns)),n})}static stat(e,r,n){return BU(this,void 0,void 0,function*(){let s;if(r.followSymbolicLinks)try{s=yield lh.promises.stat(e.path)}catch(o){if(o.code==="ENOENT"){if(r.omitBrokenSymbolicLinks){di(`Broken symlink '${e.path}'`);return}throw new Error(`No information found for the path '${e.path}'. This may indicate a broken symbolic link.`)}throw o}else s=yield lh.promises.lstat(e.path);if(s.isDirectory()&&r.followSymbolicLinks){let o=yield lh.promises.realpath(e.path);for(;n.length>=e.level;)n.pop();if(n.some(a=>a===o)){di(`Symlink cycle detected for path '${e.path}' and realpath '${o}'`);return}n.push(o)}return s})}};var x5e=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function kae(t,e){return x5e(this,void 0,void 0,function*(){return yield VS.create(t,e)})}i(kae,"create");var cB=D(require("crypto"),1),mh=D(require("fs"),1),fm=D(require("path"),1),Nle=D(Ble(),1),Tle=D(require("util"),1);var CC;(function(t){t.Gzip="cache.tgz",t.Zstd="cache.tzst"})(CC||(CC={}));var ys;(function(t){t.Gzip="gzip",t.ZstdWithoutLong="zstd-without-long",t.Zstd="zstd"})(ys||(ys={}));var To;(function(t){t.GNU="gnu",t.BSD="bsd"})(To||(To={}));var iB=2,aB=5e3,YU=5e3,WU=`${process.env.PROGRAMFILES}\\Git\\usr\\bin\\tar.exe`,Rle=`${process.env.SYSTEMDRIVE}\\Windows\\System32\\tar.exe`,IC="cache.tar",jU="manifest.txt",sVt=10*Math.pow(1024,3);var ph=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},TKe=function(t){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var e=t[Symbol.asyncIterator],r;return e?e.call(t):(t=typeof __values=="function"?__values(t):t[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(o){r[o]=t[o]&&function(a){return new Promise(function(c,l){a=t[o](a),s(c,l,a.done,a.value)})}}function s(o,a,c,l){Promise.resolve(l).then(function(u){o({value:u,done:c})},a)}},PKe="1.0";function xC(){return ph(this,void 0,void 0,function*(){let t=process.platform==="win32",e=process.env.RUNNER_TEMP||"";if(!e){let n;t?n=process.env.USERPROFILE||"C:\\":process.platform==="darwin"?n="/Users":n="/home",e=fm.join(n,"actions","temp")}let r=fm.join(e,cB.randomUUID());return yield am(r),r})}i(xC,"createTempDirectory");function tc(t){return mh.statSync(t).size}i(tc,"getArchiveFileSizeInBytes");function JU(t){return ph(this,void 0,void 0,function*(){var e,r,n,s,o;let a=[],c=(o=process.env.GITHUB_WORKSPACE)!==null&&o!==void 0?o:process.cwd(),l=yield kae(t.join(` +`),{implicitDescendants:!1});try{for(var u=!0,d=TKe(l.globGenerator()),p;p=yield d.next(),e=p.done,!e;u=!0){s=p.value,u=!1;let f=fm.relative(c,s).replace(new RegExp(`\\${fm.sep}`,"g"),"/");G(`Matched: ${f}`),f===""?a.push("."):a.push(`${f}`)}}catch(m){r={error:m}}finally{try{!u&&!e&&(n=d.return)&&(yield n.call(d))}finally{if(r)throw r.error}}return a})}i(JU,"resolvePaths");function wC(t){return ph(this,void 0,void 0,function*(){return Tle.promisify(mh.unlink)(t)})}i(wC,"unlinkFile");function Ple(t){return ph(this,arguments,void 0,function*(e,r=[]){let n="";r.push("--version"),G(`Checking ${e} ${r.join(" ")}`);try{yield ud(`${e}`,r,{ignoreReturnCode:!0,silent:!0,listeners:{stdout:i(s=>n+=s.toString(),"stdout"),stderr:i(s=>n+=s.toString(),"stderr")}})}catch(s){G(s.message)}return n=n.trim(),G(n),n})}i(Ple,"getVersion");function bC(){return ph(this,void 0,void 0,function*(){let t=yield Ple("zstd",["--quiet"]),e=Nle.clean(t);return G(`zstd version: ${e}`),t===""?ys.Gzip:ys.ZstdWithoutLong})}i(bC,"getCompressionMethod");function yd(t){return t===ys.Gzip?CC.Gzip:CC.Zstd}i(yd,"getCacheFileName");function vle(){return ph(this,void 0,void 0,function*(){return mh.existsSync(WU)?WU:(yield Ple("tar")).toLowerCase().includes("gnu tar")?Gs("tar"):""})}i(vle,"getGnuTarPathOnWindows");function KU(t,e){if(e===void 0)throw Error(`Expected ${t} but value was undefiend`);return e}i(KU,"assertDefined");function fh(t,e,r=!1){let n=t.slice();return e&&n.push(e),process.platform==="win32"&&!r&&n.push("windows-only"),n.push(PKe),cB.createHash("sha256").update(n.join("|")).digest("hex")}i(fh,"getCacheVersion");function _le(){let t=process.env.ACTIONS_RUNTIME_TOKEN;if(!t)throw new Error("Unable to get the ACTIONS_RUNTIME_TOKEN env variable");return t}i(_le,"getRuntimeToken");var BC=D(require("http"),1),e2=D(require("https"),1);function XU(t){let e=t.protocol==="https:";if(vKe(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new uB(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new uB(`http://${r}`)}else return}i(XU,"getProxyUrl");function vKe(t){if(!t.hostname)return!1;let e=t.hostname;if(_Ke(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(o==="*"||s.some(a=>a===o||a.endsWith(`.${o}`)||o.startsWith(".")&&a.endsWith(`${o}`)))return!0;return!1}i(vKe,"checkBypass");function _Ke(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}i(_Ke,"isLoopbackAddress");var uB=class extends URL{static{i(this,"DecodedURL")}constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var Ed=D(Yy(),1),Qle=D(eh(),1);var Dr=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},Ir;(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"})(Ir||(Ir={}));var Es;(function(t){t.Accept="accept",t.ContentType="content-type"})(Es||(Es={}));var Vl;(function(t){t.ApplicationJson="application/json"})(Vl||(Vl={}));var DKe=[Ir.MovedPermanently,Ir.ResourceMoved,Ir.SeeOther,Ir.TemporaryRedirect,Ir.PermanentRedirect],kKe=[Ir.BadGateway,Ir.ServiceUnavailable,Ir.GatewayTimeout],LKe=["OPTIONS","GET","DELETE","HEAD"],OKe=10,MKe=5,rc=class t extends Error{static{i(this,"HttpClientError")}constructor(e,r){super(e),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,t.prototype)}},ZU=class{static{i(this,"HttpClientResponse")}constructor(e){this.message=e}readBody(){return Dr(this,void 0,void 0,function*(){return new Promise(e=>Dr(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return Dr(this,void 0,void 0,function*(){return new Promise(e=>Dr(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};var Yl=class{static{i(this,"HttpClient")}constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return Dr(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return Dr(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return Dr(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return Dr(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return Dr(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return Dr(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return Dr(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return Dr(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return Dr(this,arguments,void 0,function*(r,n={}){n[Es.Accept]=this._getExistingOrDefaultHeader(n,Es.Accept,Vl.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return Dr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Es.Accept]=this._getExistingOrDefaultHeader(o,Es.Accept,Vl.ApplicationJson),o[Es.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Vl.ApplicationJson);let c=yield this.post(n,a,o);return this._processResponse(c,this.requestOptions)})}putJson(e,r){return Dr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Es.Accept]=this._getExistingOrDefaultHeader(o,Es.Accept,Vl.ApplicationJson),o[Es.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Vl.ApplicationJson);let c=yield this.put(n,a,o);return this._processResponse(c,this.requestOptions)})}patchJson(e,r){return Dr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Es.Accept]=this._getExistingOrDefaultHeader(o,Es.Accept,Vl.ApplicationJson),o[Es.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Vl.ApplicationJson);let c=yield this.patch(n,a,o);return this._processResponse(c,this.requestOptions)})}request(e,r,n,s){return Dr(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),a=this._prepareRequest(e,o,s),c=this._allowRetries&&LKe.includes(e)?this._maxRetries+1:1,l=0,u;do{if(u=yield this.requestRaw(a,n),u&&u.message&&u.message.statusCode===Ir.Unauthorized){let p;for(let m of this.handlers)if(m.canHandleAuthentication(u)){p=m;break}return p?p.handleAuthentication(this,a,n):u}let d=this._maxRedirects;for(;u.message.statusCode&&DKe.includes(u.message.statusCode)&&this._allowRedirects&&d>0;){let p=u.message.headers.location;if(!p)break;let m=new URL(p);if(o.protocol==="https:"&&o.protocol!==m.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 u.readBody(),m.hostname!==o.hostname)for(let f in s)f.toLowerCase()==="authorization"&&delete s[f];a=this._prepareRequest(e,m,s),u=yield this.requestRaw(a,n),d--}if(!u.message.statusCode||!kKe.includes(u.message.statusCode))return u;l+=1,l{function o(a,c){a?s(a):c?n(c):s(new Error("Unknown error"))}i(o,"callbackForResult"),this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(l,u){s||(s=!0,n(l,u))}i(o,"handleResult");let a=e.httpModule.request(e.options,l=>{let u=new ZU(l);o(void 0,u)}),c;a.on("socket",l=>{c=l}),a.setTimeout(this._socketTimeout||3*6e4,()=>{c&&c.end(),o(new Error(`Request timeout: ${e.options.path}`))}),a.on("error",function(l){o(l)}),r&&typeof r=="string"&&a.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){a.end()}),r.pipe(a)):a.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=XU(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?e2:BC;let a=o?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(n),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({},SC(this.requestOptions.headers),SC(e||{})):SC(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let a=SC(this.requestOptions.headers)[r];a&&(s=typeof a=="number"?a.toString():a)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=SC(this.requestOptions.headers)[Es.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[Es.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=XU(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||BC.globalAgent.maxSockets),n&&n.hostname){let c={maxSockets:a,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},l,u=n.protocol==="https:";o?l=u?Ed.httpsOverHttps:Ed.httpsOverHttp:l=u?Ed.httpOverHttps:Ed.httpOverHttp,r=l(c),this._proxyAgent=r}if(!r){let c={keepAlive:this._keepAlive,maxSockets:a};r=o?new e2.Agent(c):new BC.Agent(c),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new Qle.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return Dr(this,void 0,void 0,function*(){e=Math.min(OKe,e);let r=MKe*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return Dr(this,void 0,void 0,function*(){return new Promise((n,s)=>Dr(this,void 0,void 0,function*(){let o=e.message.statusCode||0,a={statusCode:o,result:null,headers:{}};o===Ir.NotFound&&n(a);function c(d,p){if(typeof p=="string"){let m=new Date(p);if(!isNaN(m.valueOf()))return m}return p}i(c,"dateTimeDeserializer");let l,u;try{u=yield e.readBody(),u&&u.length>0&&(r&&r.deserializeDates?l=JSON.parse(u,c):l=JSON.parse(u),a.result=l),a.headers=e.message.headers}catch{}if(o>299){let d;l&&l.message?d=l.message:u&&u.length>0?d=u:d=`Failed request: (${o})`;let p=new rc(d,o);p.result=a.result,s(p)}else n(a)}))})}},SC=i(t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{}),"lowercaseKeys");var FKe=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};var Ah=class{static{i(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 FKe(this,void 0,void 0,function*(){throw new Error("not implemented")})}};var zh=D(require("fs"),1),iAe=require("url");var nc=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}};var Dle=require("node:os"),kle=D(require("node:util"),1),Lle=D(require("node:process"),1);function Ole(t,...e){Lle.default.stderr.write(`${kle.default.format(t,...e)}${Dle.EOL}`)}i(Ole,"log");var Mle=typeof process<"u"&&process.env&&process.env.DEBUG||void 0,Ule,t2=[],r2=[],dB=[];Mle&&n2(Mle);var qle=Object.assign(t=>$le(t),{enable:n2,enabled:s2,disable:UKe,log:Ole});function n2(t){Ule=t,t2=[],r2=[];let e=t.split(",").map(r=>r.trim());for(let r of e)r.startsWith("-")?r2.push(r.substring(1)):t2.push(r);for(let r of dB)r.enabled=s2(r.namespace)}i(n2,"enable");function s2(t){if(t.endsWith("*"))return!0;for(let e of r2)if(Fle(t,e))return!1;for(let e of t2)if(Fle(t,e))return!0;return!1}i(s2,"enabled");function Fle(t,e){if(e.indexOf("*")===-1)return t===e;let r=e;if(e.indexOf("**")!==-1){let m=[],f="";for(let g of e)g==="*"&&f==="*"||(f=g,m.push(g));r=m.join("")}let n=0,s=0,o=r.length,a=t.length,c=-1,l=-1;for(;n=0){if(s=c+1,n=l+1,n===a)return!1;for(;t[n]!==r[s];)if(n++,n===a)return!1;l=n,n++,s++;continue}else return!1;let u=n===t.length,d=s===r.length,p=s===r.length-1&&r[s]==="*";return u&&(d||p)}i(Fle,"namespaceMatches");function UKe(){let t=Ule||"";return n2(""),t}i(UKe,"disable");function $le(t){let e=Object.assign(r,{enabled:s2(t),destroy:qKe,log:qle.log,namespace:t,extend:$Ke});function r(...n){e.enabled&&(n.length>0&&(n[0]=`${t} ${n[0]}`),e.log(...n))}return i(r,"debug"),dB.push(e),e}i($le,"createDebugger");function qKe(){let t=dB.indexOf(this);return t>=0?(dB.splice(t,1),!0):!1}i(qKe,"destroy");function $Ke(t){let e=$le(`${this.namespace}:${t}`);return e.log=this.log,e}i($Ke,"extend");var hh=qle;var o2=["verbose","info","warning","error"],Gle={verbose:400,info:300,warning:200,error:100};function Hle(t,e){e.log=(...r)=>{t.log(...r)}}i(Hle,"patchLogMethod");function zle(t){return o2.includes(t)}i(zle,"isTypeSpecRuntimeLogLevel");function pB(t){let e=new Set,r=typeof process<"u"&&process.env&&process.env[t.logLevelEnvVarName]||void 0,n,s=hh(t.namespace);s.log=(...d)=>{hh.log(...d)};function o(d){if(d&&!zle(d))throw new Error(`Unknown log level '${d}'. Acceptable values: ${o2.join(",")}`);n=d;let p=[];for(let m of e)a(m)&&p.push(m.namespace);hh.enable(p.join(","))}i(o,"contextSetLogLevel"),r&&(zle(r)?o(r):console.error(`${t.logLevelEnvVarName} set to unknown log level '${r}'; logging is not enabled. Acceptable values: ${o2.join(", ")}.`));function a(d){return!!(n&&Gle[d.level]<=Gle[n])}i(a,"shouldEnable");function c(d,p){let m=Object.assign(d.extend(p),{level:p});if(Hle(d,m),a(m)){let f=hh.disable();hh.enable(f+","+m.namespace)}return e.add(m),m}i(c,"createLogger");function l(){return n}i(l,"contextGetLogLevel");function u(d){let p=s.extend(d);return Hle(s,p),{error:c(p,"error"),warning:c(p,"warning"),info:c(p,"info"),verbose:c(p,"verbose")}}return i(u,"contextCreateClientLogger"),{setLogLevel:o,getLogLevel:l,createClientLogger:u,logger:s}}i(pB,"createLoggerContext");var Vle=pB({logLevelEnvVarName:"TYPESPEC_RUNTIME_LOG_LEVEL",namespace:"typeSpecRuntime"}),GKe=Vle.logger;function RC(t){return Vle.createClientLogger(t)}i(RC,"createClientLogger");function mB(t){return t.toLowerCase()}i(mB,"normalizeName");function*HKe(t){for(let e of t.values())yield[e.name,e.value]}i(HKe,"headerIterator");var i2=class{static{i(this,"HttpHeadersImpl")}_headersMap;constructor(e){if(this._headersMap=new Map,e)for(let r of Object.keys(e))this.set(r,e[r])}set(e,r){this._headersMap.set(mB(e),{name:e,value:String(r).trim()})}get(e){return this._headersMap.get(mB(e))?.value}has(e){return this._headersMap.has(mB(e))}delete(e){this._headersMap.delete(mB(e))}toJSON(e={}){let r={};if(e.preserveCase)for(let n of this._headersMap.values())r[n.name]=n.value;else for(let[n,s]of this._headersMap)r[n]=s.value;return r}toString(){return JSON.stringify(this.toJSON({preserveCase:!0}))}[Symbol.iterator](){return HKe(this._headersMap)}};function Po(t){return new i2(t)}i(Po,"createHttpHeaders");function Am(){return crypto.randomUUID()}i(Am,"randomUUID");var a2=class{static{i(this,"PipelineRequestImpl")}url;method;headers;timeout;withCredentials;body;multipartBody;formData;streamResponseStatusCodes;enableBrowserStreams;proxySettings;disableKeepAlive;abortSignal;requestId;allowInsecureConnection;onUploadProgress;onDownloadProgress;requestOverrides;authSchemes;constructor(e){this.url=e.url,this.body=e.body,this.headers=e.headers??Po(),this.method=e.method??"GET",this.timeout=e.timeout??0,this.multipartBody=e.multipartBody,this.formData=e.formData,this.disableKeepAlive=e.disableKeepAlive??!1,this.proxySettings=e.proxySettings,this.streamResponseStatusCodes=e.streamResponseStatusCodes,this.withCredentials=e.withCredentials??!1,this.abortSignal=e.abortSignal,this.onUploadProgress=e.onUploadProgress,this.onDownloadProgress=e.onDownloadProgress,this.requestId=e.requestId||Am(),this.allowInsecureConnection=e.allowInsecureConnection??!1,this.enableBrowserStreams=e.enableBrowserStreams??!1,this.requestOverrides=e.requestOverrides,this.authSchemes=e.authSchemes}};function fB(t){return new a2(t)}i(fB,"createPipelineRequest");var Yle=new Set(["Deserialize","Serialize","Retry","Sign"]),c2=class t{static{i(this,"HttpPipeline")}_policies=[];_orderedPolicies;constructor(e){this._policies=e?.slice(0)??[],this._orderedPolicies=void 0}addPolicy(e,r={}){if(r.phase&&r.afterPhase)throw new Error("Policies inside a phase cannot specify afterPhase.");if(r.phase&&!Yle.has(r.phase))throw new Error(`Invalid phase name: ${r.phase}`);if(r.afterPhase&&!Yle.has(r.afterPhase))throw new Error(`Invalid afterPhase name: ${r.afterPhase}`);this._policies.push({policy:e,options:r}),this._orderedPolicies=void 0}removePolicy(e){let r=[];return this._policies=this._policies.filter(n=>e.name&&n.policy.name===e.name||e.phase&&n.options.phase===e.phase?(r.push(n.policy),!1):!0),this._orderedPolicies=void 0,r}sendRequest(e,r){return this.getOrderedPolicies().reduceRight((o,a)=>c=>a.sendRequest(c,o),o=>e.sendRequest(o))(r)}getOrderedPolicies(){return this._orderedPolicies||(this._orderedPolicies=this.orderPolicies()),this._orderedPolicies}clone(){return new t(this._policies)}static create(){return new t}orderPolicies(){let e=[],r=new Map;function n(g){return{name:g,policies:new Set,hasRun:!1,hasAfterPolicies:!1}}i(n,"createPhase");let s=n("Serialize"),o=n("None"),a=n("Deserialize"),c=n("Retry"),l=n("Sign"),u=[s,o,a,c,l];function d(g){return g==="Retry"?c:g==="Serialize"?s:g==="Deserialize"?a:g==="Sign"?l:o}i(d,"getPhase");for(let g of this._policies){let E=g.policy,x=g.options,w=E.name;if(r.has(w))throw new Error("Duplicate policy names not allowed in pipeline");let S={policy:E,dependsOn:new Set,dependants:new Set};x.afterPhase&&(S.afterPhase=d(x.afterPhase),S.afterPhase.hasAfterPolicies=!0),r.set(w,S),d(x.phase).policies.add(S)}for(let g of this._policies){let{policy:E,options:x}=g,w=E.name,S=r.get(w);if(!S)throw new Error(`Missing node for policy ${w}`);if(x.afterPolicies)for(let P of x.afterPolicies){let Q=r.get(P);Q&&(S.dependsOn.add(Q),Q.dependants.add(S))}if(x.beforePolicies)for(let P of x.beforePolicies){let Q=r.get(P);Q&&(Q.dependsOn.add(S),S.dependants.add(Q))}}function p(g){g.hasRun=!0;for(let E of g.policies)if(!(E.afterPhase&&(!E.afterPhase.hasRun||E.afterPhase.policies.size))&&E.dependsOn.size===0){e.push(E.policy);for(let x of E.dependants)x.dependsOn.delete(E);r.delete(E.policy.name),g.policies.delete(E)}}i(p,"walkPhase");function m(){for(let g of u){if(p(g),g.policies.size>0&&g!==o){o.hasRun||p(o);return}g.hasAfterPolicies&&p(o)}}i(m,"walkPhases");let f=0;for(;r.size>0;){f++;let g=e.length;if(m(),e.length<=g&&f>1)throw new Error("Cannot satisfy policy dependencies due to requirements cycle.")}return e}};function AB(){return c2.create()}i(AB,"createEmptyPipeline");function gh(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)&&!(t instanceof RegExp)&&!(t instanceof Date)}i(gh,"isObject");function hm(t){if(gh(t)){let e=typeof t.name=="string",r=typeof t.message=="string";return e&&r}return!1}i(hm,"isError");var Wle=require("node:util"),jle=Wle.inspect.custom;var l2="REDACTED",zKe=["x-ms-client-request-id","x-ms-return-client-request-id","x-ms-useragent","x-ms-correlation-request-id","x-ms-request-id","client-request-id","ms-cv","return-client-request-id","traceparent","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","Origin","Accept","Accept-Encoding","Cache-Control","Connection","Content-Length","Content-Type","Date","ETag","Expires","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","Last-Modified","Pragma","Request-Id","Retry-After","Server","Transfer-Encoding","User-Agent","WWW-Authenticate"],VKe=["api-version"],la=class{static{i(this,"Sanitizer")}allowedHeaderNames;allowedQueryParameters;constructor({additionalAllowedHeaderNames:e=[],additionalAllowedQueryParameters:r=[]}={}){e=zKe.concat(e),r=VKe.concat(r),this.allowedHeaderNames=new Set(e.map(n=>n.toLowerCase())),this.allowedQueryParameters=new Set(r.map(n=>n.toLowerCase()))}sanitize(e){let r=new Set;return JSON.stringify(e,(n,s)=>{if(s instanceof Error)return{...s,name:s.name,message:s.message};if(n==="headers")return this.sanitizeHeaders(s);if(n==="url")return this.sanitizeUrl(s);if(n==="query")return this.sanitizeQuery(s);if(n==="body")return;if(n==="response")return;if(n==="operationSpec")return;if(Array.isArray(s)||gh(s)){if(r.has(s))return"[Circular]";r.add(s)}return s},2)}sanitizeUrl(e){if(typeof e!="string"||e===null||e==="")return e;let r=new URL(e);if(!r.search)return e;for(let[n]of r.searchParams)this.allowedQueryParameters.has(n.toLowerCase())||r.searchParams.set(n,l2);return r.toString()}sanitizeHeaders(e){let r={};for(let n of Object.keys(e))this.allowedHeaderNames.has(n.toLowerCase())?r[n]=e[n]:r[n]=l2;return r}sanitizeQuery(e){if(typeof e!="object"||e===null)return e;let r={};for(let n of Object.keys(e))this.allowedQueryParameters.has(n.toLowerCase())?r[n]=e[n]:r[n]=l2;return r}};var YKe=new la,Cs=class t extends Error{static{i(this,"RestError")}static REQUEST_SEND_ERROR="REQUEST_SEND_ERROR";static PARSE_ERROR="PARSE_ERROR";code;statusCode;request;response;details;constructor(e,r={}){super(e),this.name="RestError",this.code=r.code,this.statusCode=r.statusCode,Object.defineProperty(this,"request",{value:r.request,enumerable:!1}),Object.defineProperty(this,"response",{value:r.response,enumerable:!1});let n=this.request?.agent?{maxFreeSockets:this.request.agent.maxFreeSockets,maxSockets:this.request.agent.maxSockets}:void 0;Object.defineProperty(this,jle,{value:i(()=>`RestError: ${this.message} + ${YKe.sanitize({...this,request:{...this.request,agent:n},response:this.response})}`,"value"),enumerable:!1}),Object.setPrototypeOf(this,t.prototype)}};function hB(t){return t instanceof Cs?!0:hm(t)&&t.name==="RestError"}i(hB,"isRestError");function zs(t,e){return Buffer.from(t,e)}i(zs,"stringToUint8Array");var gB=D(require("node:http"),1),yB=D(require("node:https"),1),u2=D(require("node:zlib"),1),Kle=require("node:stream");var fi=RC("ts-http-runtime");var WKe={};function NC(t){return t&&typeof t.pipe=="function"}i(NC,"isReadableStream");function Jle(t){return t.readable===!1?Promise.resolve():new Promise(e=>{let r=i(()=>{e(),t.removeListener("close",r),t.removeListener("end",r),t.removeListener("error",r)},"handler");t.on("close",r),t.on("end",r),t.on("error",r)})}i(Jle,"isStreamComplete");function Xle(t){return t&&typeof t.byteLength=="number"}i(Xle,"isArrayBuffer");var EB=class extends Kle.Transform{static{i(this,"ReportTransform")}loadedBytes=0;progressCallback;_transform(e,r,n){this.push(e),this.loadedBytes+=e.length;try{this.progressCallback({loadedBytes:this.loadedBytes}),n()}catch(s){n(s)}}constructor(e){super(),this.progressCallback=e}},d2=class{static{i(this,"NodeHttpClient")}cachedHttpAgent;cachedHttpsAgents=new WeakMap;async sendRequest(e){let r=new AbortController,n;if(e.abortSignal){if(e.abortSignal.aborted)throw new nc("The operation was aborted. Request has already been canceled.");n=i(u=>{u.type==="abort"&&r.abort()},"abortListener"),e.abortSignal.addEventListener("abort",n)}let s;e.timeout>0&&(s=setTimeout(()=>{let u=new la;fi.info(`request to '${u.sanitizeUrl(e.url)}' timed out. canceling...`),r.abort()},e.timeout));let o=e.headers.get("Accept-Encoding"),a=o?.includes("gzip")||o?.includes("deflate"),c=typeof e.body=="function"?e.body():e.body;if(c&&!e.headers.has("Content-Length")){let u=XKe(c);u!==null&&e.headers.set("Content-Length",u)}let l;try{if(c&&e.onUploadProgress){let g=e.onUploadProgress,E=new EB(g);E.on("error",x=>{fi.error("Error in upload progress",x)}),NC(c)?c.pipe(E):E.end(c),c=E}let u=await this.makeRequest(e,r,c);s!==void 0&&clearTimeout(s);let d=jKe(u),m={status:u.statusCode??0,headers:d,request:e};if(e.method==="HEAD")return u.resume(),m;l=a?JKe(u,d):u;let f=e.onDownloadProgress;if(f){let g=new EB(f);g.on("error",E=>{fi.error("Error in download progress",E)}),l.pipe(g),l=g}return e.streamResponseStatusCodes?.has(Number.POSITIVE_INFINITY)||e.streamResponseStatusCodes?.has(m.status)?m.readableStreamBody=l:m.bodyAsText=await KKe(l),m}finally{if(e.abortSignal&&n){let u=Promise.resolve();NC(c)&&(u=Jle(c));let d=Promise.resolve();NC(l)&&(d=Jle(l)),Promise.all([u,d]).then(()=>{n&&e.abortSignal?.removeEventListener("abort",n)}).catch(p=>{fi.warning("Error when cleaning up abortListener on httpRequest",p)})}}}makeRequest(e,r,n){let s=new URL(e.url),o=s.protocol!=="https:";if(o&&!e.allowInsecureConnection)throw new Error(`Cannot connect to ${e.url} while allowInsecureConnection is false.`);let c={agent:e.agent??this.getOrCreateAgent(e,o),hostname:s.hostname,path:`${s.pathname}${s.search}`,port:s.port,method:e.method,headers:e.headers.toJSON({preserveCase:!0}),...e.requestOverrides};return new Promise((l,u)=>{let d=o?gB.default.request(c,l):yB.default.request(c,l);d.once("error",p=>{u(new Cs(p.message,{code:p.code??Cs.REQUEST_SEND_ERROR,request:e}))}),r.signal.addEventListener("abort",()=>{let p=new nc("The operation was aborted. Rejecting from abort signal callback while making request.");d.destroy(p),u(p)}),n&&NC(n)?n.pipe(d):n?typeof n=="string"||Buffer.isBuffer(n)?d.end(n):Xle(n)?d.end(ArrayBuffer.isView(n)?Buffer.from(n.buffer):Buffer.from(n)):(fi.error("Unrecognized body type",n),u(new Cs("Unrecognized body type"))):d.end()})}getOrCreateAgent(e,r){let n=e.disableKeepAlive;if(r)return n?gB.default.globalAgent:(this.cachedHttpAgent||(this.cachedHttpAgent=new gB.default.Agent({keepAlive:!0})),this.cachedHttpAgent);{if(n&&!e.tlsSettings)return yB.default.globalAgent;let s=e.tlsSettings??WKe,o=this.cachedHttpsAgents.get(s);return o&&o.options.keepAlive===!n||(fi.info("No cached TLS Agent exist, creating a new Agent"),o=new yB.default.Agent({keepAlive:!n,...s}),this.cachedHttpsAgents.set(s,o)),o}}};function jKe(t){let e=Po();for(let r of Object.keys(t.headers)){let n=t.headers[r];Array.isArray(n)?n.length>0&&e.set(r,n[0]):n&&e.set(r,n)}return e}i(jKe,"getResponseHeaders");function JKe(t,e){let r=e.get("Content-Encoding");if(r==="gzip"){let n=u2.default.createGunzip();return t.pipe(n),n}else if(r==="deflate"){let n=u2.default.createInflate();return t.pipe(n),n}return t}i(JKe,"getDecodedResponseStream");function KKe(t){return new Promise((e,r)=>{let n=[];t.on("data",s=>{Buffer.isBuffer(s)?n.push(s):n.push(Buffer.from(s))}),t.on("end",()=>{e(Buffer.concat(n).toString("utf8"))}),t.on("error",s=>{s&&s?.name==="AbortError"?r(s):r(new Cs(`Error reading response as text: ${s.message}`,{code:Cs.PARSE_ERROR}))})})}i(KKe,"streamToText");function XKe(t){return t?Buffer.isBuffer(t)?t.length:NC(t)?null:Xle(t)?t.byteLength:typeof t=="string"?Buffer.from(t).length:null:0}i(XKe,"getBodyLength");function Zle(){return new d2}i(Zle,"createNodeHttpClient");function CB(){return Zle()}i(CB,"createDefaultHttpClient");var p2="logPolicy";function IB(t={}){let e=t.logger??fi.info,r=new la({additionalAllowedHeaderNames:t.additionalAllowedHeaderNames,additionalAllowedQueryParameters:t.additionalAllowedQueryParameters});return{name:p2,async sendRequest(n,s){if(!e.enabled)return s(n);e(`Request: ${r.sanitize(n)}`);let o=await s(n);return e(`Response status code: ${o.status}`),e(`Headers: ${r.sanitize(o.headers)}`),o}}}i(IB,"logPolicy");var xB="redirectPolicy",eue=["GET","HEAD"];function wB(t={}){let{maxRetries:e=20}=t;return{name:xB,async sendRequest(r,n){let s=await n(r);return tue(n,s,e)}}}i(wB,"redirectPolicy");async function tue(t,e,r,n=0){let{request:s,status:o,headers:a}=e,c=a.get("location");if(c&&(o===300||o===301&&eue.includes(s.method)||o===302&&eue.includes(s.method)||o===303&&s.method==="POST"||o===307)&&n{let o,a,c=i(()=>s(new nc(r?.abortErrorMsg?r?.abortErrorMsg:ZKe)),"rejectOnAbort"),l=i(()=>{r?.abortSignal&&a&&r.abortSignal.removeEventListener("abort",a)},"removeListeners");if(a=i(()=>(o&&clearTimeout(o),l(),c()),"onAborted"),r?.abortSignal&&r.abortSignal.aborted)return c();o=setTimeout(()=>{l(),n(e)},t),r?.abortSignal&&r.abortSignal.addEventListener("abort",a)})}i(sue,"delay");function oue(t,e){let r=t.headers.get(e);if(!r)return;let n=Number(r);if(!Number.isNaN(n))return n}i(oue,"parseHeaderValueAsNumber");var m2="Retry-After",eXe=["retry-after-ms","x-ms-retry-after-ms",m2];function iue(t){if(t&&[429,503].includes(t.status))try{for(let s of eXe){let o=oue(t,s);if(o===0||o)return o*(s===m2?1e3:1)}let e=t.headers.get(m2);if(!e)return;let n=Date.parse(e)-Date.now();return Number.isFinite(n)?Math.max(0,n):void 0}catch{return}}i(iue,"getRetryAfterInMs");function aue(t){return Number.isFinite(iue(t))}i(aue,"isThrottlingRetryResponse");function f2(){return{name:"throttlingRetryStrategy",retry({response:t}){let e=iue(t);return Number.isFinite(e)?{retryAfterInMs:e}:{skipStrategy:!0}}}}i(f2,"throttlingRetryStrategy");var tXe=1e3,rXe=1e3*64;function RB(t={}){let e=t.retryDelayInMs??tXe,r=t.maxRetryDelayInMs??rXe;return{name:"exponentialRetryStrategy",retry({retryCount:n,response:s,responseError:o}){let a=sXe(o),c=a&&t.ignoreSystemErrors,l=nXe(s),u=l&&t.ignoreHttpStatusCodes;return s&&(aue(s)||!l)||u||c?{skipStrategy:!0}:o&&!a&&!l?{errorToThrow:o}:BB(n,{retryDelayInMs:e,maxRetryDelayInMs:r})}}}i(RB,"exponentialRetryStrategy");function nXe(t){return!!(t&&t.status!==void 0&&(t.status>=500||t.status===408)&&t.status!==501&&t.status!==505)}i(nXe,"isExponentialRetryResponse");function sXe(t){return t?t.code==="ETIMEDOUT"||t.code==="ESOCKETTIMEDOUT"||t.code==="ECONNREFUSED"||t.code==="ECONNRESET"||t.code==="ENOENT"||t.code==="ENOTFOUND":!1}i(sXe,"isSystemError");var oXe=RC("ts-http-runtime retryPolicy"),iXe="retryPolicy";function ym(t,e={maxRetries:3}){let r=e.logger||oXe;return{name:iXe,async sendRequest(n,s){let o,a,c=-1;e:for(;;){c+=1,o=void 0,a=void 0;try{r.info(`Retry ${c}: Attempting to send request`,n.requestId),o=await s(n),r.info(`Retry ${c}: Received a response from request`,n.requestId)}catch(l){if(r.error(`Retry ${c}: Received an error from request`,n.requestId),a=l,!l||a.name!=="RestError")throw l;o=a.response}if(n.abortSignal?.aborted)throw r.error(`Retry ${c}: Request aborted.`),new nc;if(c>=(e.maxRetries??3)){if(r.info(`Retry ${c}: Maximum retries reached. Returning the last received response, or throwing the last received error.`),a)throw a;if(o)return o;throw new Error("Maximum retries reached with no response or error to throw")}r.info(`Retry ${c}: Processing ${t.length} retry strategies.`);t:for(let l of t){let u=l.logger||r;u.info(`Retry ${c}: Processing retry strategy ${l.name}.`);let d=l.retry({retryCount:c,response:o,responseError:a});if(d.skipStrategy){u.info(`Retry ${c}: Skipped.`);continue t}let{errorToThrow:p,retryAfterInMs:m,redirectTo:f}=d;if(p)throw u.error(`Retry ${c}: Retry strategy ${l.name} throws error:`,p),p;if(m||m===0){u.info(`Retry ${c}: Retry strategy ${l.name} retries after ${m}`),await sue(m,void 0,{abortSignal:n.abortSignal});continue e}if(f){u.info(`Retry ${c}: Retry strategy ${l.name} redirects to ${f}`),n.url=f;continue e}}if(a)throw r.info("None of the retry strategies could work with the received error. Throwing it."),a;if(o)return r.info("None of the retry strategies could work with the received response. Returning it."),o}}}}i(ym,"retryPolicy");var A2="defaultRetryPolicy";function NB(t={}){return{name:A2,sendRequest:ym([f2(),RB(t)],{maxRetries:t.maxRetries??3}).sendRequest}}i(NB,"defaultRetryPolicy");var cue=typeof window<"u"&&typeof window.document<"u",lue=typeof self=="object"&&typeof self?.importScripts=="function"&&(self.constructor?.name==="DedicatedWorkerGlobalScope"||self.constructor?.name==="ServiceWorkerGlobalScope"||self.constructor?.name==="SharedWorkerGlobalScope"),uue=typeof Deno<"u"&&typeof Deno.version<"u"&&typeof Deno.version.deno<"u",due=typeof Bun<"u"&&typeof Bun.version<"u",Em=typeof globalThis.process<"u"&&!!globalThis.process.version&&!!globalThis.process.versions?.node;var pue=typeof navigator<"u"&&navigator?.product==="ReactNative";var h2="formDataPolicy";function aXe(t){let e={};for(let[r,n]of t.entries())e[r]??=[],e[r].push(n);return e}i(aXe,"formDataToFormDataMap");function TB(){return{name:h2,async sendRequest(t,e){if(Em&&typeof FormData<"u"&&t.body instanceof FormData&&(t.formData=aXe(t.body),t.body=void 0),t.formData){let r=t.headers.get("Content-Type");r&&r.indexOf("application/x-www-form-urlencoded")!==-1?t.body=cXe(t.formData):await lXe(t.formData,t),t.formData=void 0}return e(t)}}}i(TB,"formDataPolicy");function cXe(t){let e=new URLSearchParams;for(let[r,n]of Object.entries(t))if(Array.isArray(n))for(let s of n)e.append(r,s.toString());else e.append(r,n.toString());return e.toString()}i(cXe,"wwwFormUrlEncode");async function lXe(t,e){let r=e.headers.get("Content-Type");if(r&&!r.startsWith("multipart/form-data"))return;e.headers.set("Content-Type",r??"multipart/form-data");let n=[];for(let[s,o]of Object.entries(t))for(let a of Array.isArray(o)?o:[o])if(typeof a=="string")n.push({headers:Po({"Content-Disposition":`form-data; name="${s}"`}),body:zs(a,"utf-8")});else{if(a==null||typeof a!="object")throw new Error(`Unexpected value for key ${s}: ${a}. Value should be serialized to string first.`);{let c=a.name||"blob",l=Po();l.set("Content-Disposition",`form-data; name="${s}"; filename="${c}"`),l.set("Content-Type",a.type||"application/octet-stream"),n.push({headers:l,body:a})}}e.multipartBody={parts:n}}i(lXe,"prepareFormData");var Jue=D(Oue(),1),Kue=D(Vue(),1);var g7e="HTTPS_PROXY",y7e="HTTP_PROXY",E7e="ALL_PROXY",C7e="NO_PROXY",w2="proxyPolicy",Yue=[],Xue=!1,I7e=new Map;function MB(t){if(process.env[t])return process.env[t];if(process.env[t.toLowerCase()])return process.env[t.toLowerCase()]}i(MB,"getEnvironmentValue");function Zue(){if(!process)return;let t=MB(g7e),e=MB(E7e),r=MB(y7e);return t||e||r}i(Zue,"loadEnvironmentProxyValue");function x7e(t,e,r){if(e.length===0)return!1;let n=new URL(t).hostname;if(r?.has(n))return r.get(n);let s=!1;for(let o of e)o[0]==="."?(n.endsWith(o)||n.length===o.length-1&&n===o.slice(1))&&(s=!0):n===o&&(s=!0);return r?.set(n,s),s}i(x7e,"isBypassed");function w7e(){let t=MB(C7e);return Xue=!0,t?t.split(",").map(e=>e.trim()).filter(e=>e.length):[]}i(w7e,"loadNoProxy");function b2(t){if(!t&&(t=Zue(),!t))return;let e=new URL(t);return{host:(e.protocol?e.protocol+"//":"")+e.hostname,port:Number.parseInt(e.port||"80"),username:e.username,password:e.password}}i(b2,"getDefaultProxySettings");function b7e(){let t=Zue();return t?new URL(t):void 0}i(b7e,"getDefaultProxySettingsInternal");function Wue(t){let e;try{e=new URL(t.host)}catch{throw new Error(`Expecting a valid host string in proxy settings, but found "${t.host}".`)}return e.port=String(t.port),t.username&&(e.username=t.username),t.password&&(e.password=t.password),e}i(Wue,"getUrlFromProxySettings");function jue(t,e,r){if(t.agent)return;let s=new URL(t.url).protocol!=="https:";t.tlsSettings&&fi.warning("TLS settings are not supported in combination with custom Proxy, certificates provided to the client will be ignored.");let o=t.headers.toJSON();s?(e.httpProxyAgent||(e.httpProxyAgent=new Kue.HttpProxyAgent(r,{headers:o})),t.agent=e.httpProxyAgent):(e.httpsProxyAgent||(e.httpsProxyAgent=new Jue.HttpsProxyAgent(r,{headers:o})),t.agent=e.httpsProxyAgent)}i(jue,"setProxyAgentOnRequest");function FB(t,e){Xue||Yue.push(...w7e());let r=t?Wue(t):b7e(),n={};return{name:w2,async sendRequest(s,o){return!s.proxySettings&&r&&!x7e(s.url,e?.customNoProxyList??Yue,e?.customNoProxyList?void 0:I7e)?jue(s,n,r):s.proxySettings&&jue(s,n,Wue(s.proxySettings)),o(s)}}}i(FB,"proxyPolicy");var S2="agentPolicy";function UB(t){return{name:S2,sendRequest:i(async(e,r)=>(e.agent||(e.agent=t),r(e)),"sendRequest")}}i(UB,"agentPolicy");var B2="tlsPolicy";function qB(t){return{name:B2,sendRequest:i(async(e,r)=>(e.tlsSettings||(e.tlsSettings=t),r(e)),"sendRequest")}}i(qB,"tlsPolicy");function $B(t){return typeof t.stream=="function"}i($B,"isBlob");var GB=require("stream");async function*ede(){let t=this.getReader();try{for(;;){let{done:e,value:r}=await t.read();if(e)return;yield r}}finally{t.releaseLock()}}i(ede,"streamAsyncIterator");function S7e(t){t[Symbol.asyncIterator]||(t[Symbol.asyncIterator]=ede.bind(t)),t.values||(t.values=ede.bind(t))}i(S7e,"makeAsyncIterable");function tde(t){return t instanceof ReadableStream?(S7e(t),GB.Readable.fromWeb(t)):t}i(tde,"ensureNodeStream");function B7e(t){return t instanceof Uint8Array?GB.Readable.from(Buffer.from(t)):$B(t)?tde(t.stream()):tde(t)}i(B7e,"toStream");async function rde(t){return function(){let e=t.map(r=>typeof r=="function"?r():r).map(B7e);return GB.Readable.from((async function*(){for(let r of e)for await(let n of r)yield n})())}}i(rde,"concat");function R7e(){return`----AzSDKFormBoundary${Am()}`}i(R7e,"generateBoundary");function N7e(t){let e="";for(let[r,n]of t)e+=`${r}: ${n}\r +`;return e}i(N7e,"encodeHeaders");function T7e(t){return t instanceof Uint8Array?t.byteLength:$B(t)?t.size===-1?void 0:t.size:void 0}i(T7e,"getLength");function P7e(t){let e=0;for(let r of t){let n=T7e(r);if(n===void 0)return;e+=n}return e}i(P7e,"getTotalLength");async function v7e(t,e,r){let n=[zs(`--${r}`,"utf-8"),...e.flatMap(o=>[zs(`\r +`,"utf-8"),zs(N7e(o.headers),"utf-8"),zs(`\r +`,"utf-8"),o.body,zs(`\r +--${r}`,"utf-8")]),zs(`--\r \r -`,"utf-8")],s=N7e(n);s&&t.headers.set("Content-Length",s),t.body=await tde(n)}var TC="multipartPolicy",P7e=70,v7e=new Set("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'()+,-./:=?");function _7e(t){if(t.length>P7e)throw new Error(`Multipart boundary "${t}" exceeds maximum length of 70 characters`);if(Array.from(t).some(e=>!v7e.has(e)))throw new Error(`Multipart boundary "${t}" contains invalid characters`)}function GB(){return{name:TC,async sendRequest(t,e){if(!t.multipartBody)return e(t);if(t.body)throw new Error("multipartBody and regular body cannot be set at the same time");let r=t.multipartBody.boundary,n=t.headers.get("Content-Type")??"multipart/mixed",s=n.match(/^(multipart\/[^ ;]+)(?:; *boundary=(.+))?$/);if(!s)throw new Error(`Got multipart request body, but content-type header was not multipart: ${n}`);let[,o,i]=s;if(i&&r&&i!==r)throw new Error(`Multipart boundary was specified as ${i} in the header, but got ${r} in the request body`);return r??=i,r?_7e(r):r=S7e(),t.headers.set("Content-Type",`${o}; boundary=${r}`),await T7e(t,t.multipartBody.parts,r),t.multipartBody=void 0,e(t)}}}function HB(){return fB()}var rde=dB({logLevelEnvVarName:"AZURE_LOG_LEVEL",namespace:"azure"}),W3t=rde.logger;function oc(t){return rde.createClientLogger(t)}var ic=oc("core-rest-pipeline");function N2(t={}){return CB({logger:ic.info,...t})}var T2=IB;function P2(t={}){return xB(t)}var zB=Q(require("node:os"),1),VB=Q(require("node:process"),1);function nde(){return"User-Agent"}async function sde(t){if(VB.default&&VB.default.versions){let e=`${zB.default.type()} ${zB.default.release()}; ${zB.default.arch()}`,r=VB.default.versions;r.bun?t.set("Bun",`${r.bun} (${e})`):r.deno?t.set("Deno",`${r.deno} (${e})`):r.node&&t.set("Node",`${r.node} (${e})`)}}var YB="1.22.2";function U7e(t){let e=[];for(let[r,n]of t){let s=n?`${r}/${n}`:r;e.push(s)}return e.join(" ")}function ode(){return nde()}async function WB(t){let e=new Map;e.set("core-rest-pipeline",YB),await sde(e);let r=U7e(e);return t?`${t} ${r}`:r}var ide=ode(),ade="userAgentPolicy";function v2(t={}){let e=WB(t.userAgentPrefix);return{name:ade,async sendRequest(r,n){return r.headers.has(ide)||r.headers.set(ide,await e),n(r)}}}var Qo=class extends Error{constructor(e){super(e),this.name="AbortError"}};function _2(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,i)=>{function a(){i(new Qo(s??"The operation was aborted."))}function c(){n?.removeEventListener("abort",l)}function l(){r?.(),c(),a()}if(n?.aborted)return a();try{t(u=>{c(),o(u)},u=>{c(),i(u)})}catch(u){i(u)}n?.addEventListener("abort",l)})}var z7e="The delay was aborted.";function PC(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return _2(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:()=>clearTimeout(r),abortSignal:n,abortErrorMsg:s??z7e})}function Cd(t){if(Am(t))return t.message;{let e;try{typeof t=="object"&&t?e=JSON.stringify(t):e=String(t)}catch{e="[unable to stringify input]"}return`Unknown error ${e}`}}function cde(t){return Am(t)}function xh(){return fm()}var Bt=ym;var lde=Symbol("rawContent");function D2(t){return typeof t[lde]=="function"}function ude(t){return D2(t)?t[lde]():t}var jB=TC;function k2(){let t=GB();return{name:jB,sendRequest:async(e,r)=>{if(e.multipartBody)for(let n of e.multipartBody.parts)D2(n.body)&&(n.body=ude(n.body));return t.sendRequest(e,r)}}}var L2=wB;function O2(){return bB()}function M2(t={}){return RB(t)}function F2(){return NB()}function Id(t){return w2(t)}function U2(t,e){return MB(t,e)}var dde="setClientRequestIdPolicy";function q2(t="x-ms-client-request-id"){return{name:dde,async sendRequest(e,r){return e.headers.has(t)||e.headers.set(t,e.requestId),r(e)}}}function $2(t){return FB(t)}function G2(t){return UB(t)}var wh={span:Symbol.for("@azure/core-tracing span"),namespace:Symbol.for("@azure/core-tracing namespace")};function pde(t={}){let e=new H2(t.parentContext);return t.span&&(e=e.setValue(wh.span,t.span)),t.namespace&&(e=e.setValue(wh.namespace,t.namespace)),e}var H2=class t{_contextMap;constructor(e){this._contextMap=e instanceof t?new Map(e._contextMap):new Map}setValue(e,r){let n=new t(this);return n._contextMap.set(e,r),n}getValue(e){return this._contextMap.get(e)}deleteValue(e){let r=new t(this);return r._contextMap.delete(e),r}};var fde=Q(mde(),1),KB=fde.state;function V7e(){return{end:()=>{},isRecording:()=>!1,recordException:()=>{},setAttribute:()=>{},setStatus:()=>{},addEvent:()=>{}}}function Y7e(){return{createRequestHeaders:()=>({}),parseTraceparentHeader:()=>{},startSpan:(t,e)=>({span:V7e(),tracingContext:pde({parentContext:e.tracingContext})}),withContext(t,e,...r){return e(...r)}}}function vC(){return KB.instrumenterImplementation||(KB.instrumenterImplementation=Y7e()),KB.instrumenterImplementation}function _C(t){let{namespace:e,packageName:r,packageVersion:n}=t;function s(l,u,d){let p=vC().startSpan(l,{...d,packageName:r,packageVersion:n,tracingContext:u?.tracingOptions?.tracingContext}),m=p.tracingContext,h=p.span;m.getValue(wh.namespace)||(m=m.setValue(wh.namespace,e)),h.setAttribute("az.namespace",m.getValue(wh.namespace));let y=Object.assign({},u,{tracingOptions:{...u?.tracingOptions,tracingContext:m}});return{span:h,updatedOptions:y}}async function o(l,u,d,p){let{span:m,updatedOptions:h}=s(l,u,p);try{let y=await i(h.tracingOptions.tracingContext,()=>Promise.resolve(d(h,m)));return m.setStatus({status:"success"}),y}catch(y){throw m.setStatus({status:"error",error:y}),y}finally{m.end()}}function i(l,u,...d){return vC().withContext(l,u,...d)}function a(l){return vC().parseTraceparentHeader(l)}function c(l){return vC().createRequestHeaders(l)}return{startSpan:s,withSpan:o,withContext:i,parseTraceparentHeader:a,createRequestHeaders:c}}var Yl=Es;function Im(t){return AB(t)}var Ade="tracingPolicy";function z2(t={}){let e=WB(t.userAgentPrefix),r=new ca({additionalAllowedQueryParameters:t.additionalAllowedQueryParameters}),n=W7e();return{name:Ade,async sendRequest(s,o){if(!n)return o(s);let i=await e,a={"http.url":r.sanitizeUrl(s.url),"http.method":s.method,"http.user_agent":i,requestId:s.requestId};i&&(a["http.user_agent"]=i);let{span:c,tracingContext:l}=j7e(n,s,a)??{};if(!c||!l)return o(s);try{let u=await n.withContext(l,o,s);return K7e(c,u),u}catch(u){throw J7e(c,u),u}}}}function W7e(){try{return _C({namespace:"",packageName:"@azure/core-rest-pipeline",packageVersion:YB})}catch(t){ic.warning(`Error when creating the TracingClient: ${Cd(t)}`);return}}function j7e(t,e,r){try{let{span:n,updatedOptions:s}=t.startSpan(`HTTP ${e.method}`,{tracingOptions:e.tracingOptions},{spanKind:"client",spanAttributes:r});if(!n.isRecording()){n.end();return}let o=t.createRequestHeaders(s.tracingOptions.tracingContext);for(let[i,a]of Object.entries(o))e.headers.set(i,a);return{span:n,tracingContext:s.tracingOptions.tracingContext}}catch(n){ic.warning(`Skipping creating a tracing span due to an error: ${Cd(n)}`);return}}function J7e(t,e){try{t.setStatus({status:"error",error:cde(e)?e:void 0}),Im(e)&&e.statusCode&&t.setAttribute("http.status_code",e.statusCode),t.end()}catch(r){ic.warning(`Skipping tracing span processing due to an error: ${Cd(r)}`)}}function K7e(t,e){try{t.setAttribute("http.status_code",e.status);let r=e.headers.get("x-ms-request-id");r&&t.setAttribute("serviceRequestId",r),e.status>=400&&t.setStatus({status:"error"}),t.end()}catch(r){ic.warning(`Skipping tracing span processing due to an error: ${Cd(r)}`)}}function XB(t){if(t instanceof AbortSignal)return{abortSignal:t};if(t.aborted)return{abortSignal:AbortSignal.abort(t.reason)};let e=new AbortController,r=!0;function n(){r&&(t.removeEventListener("abort",s),r=!1)}function s(){e.abort(t.reason),n()}return t.addEventListener("abort",s),{abortSignal:e.signal,cleanup:n}}var X7e="wrapAbortSignalLikePolicy";function hde(){return{name:X7e,sendRequest:async(t,e)=>{if(!t.abortSignal)return e(t);let{abortSignal:r,cleanup:n}=XB(t.abortSignal);t.abortSignal=r;try{return await e(t)}finally{n?.()}}}}function V2(t){let e=HB();return Bt&&(t.agent&&e.addPolicy($2(t.agent)),t.tlsOptions&&e.addPolicy(G2(t.tlsOptions)),e.addPolicy(U2(t.proxyOptions)),e.addPolicy(O2())),e.addPolicy(hde()),e.addPolicy(F2(),{beforePolicies:[jB]}),e.addPolicy(v2(t.userAgentOptions)),e.addPolicy(q2(t.telemetryOptions?.clientRequestIdHeaderName)),e.addPolicy(k2(),{afterPhase:"Deserialize"}),e.addPolicy(M2(t.retryOptions),{phase:"Retry"}),e.addPolicy(z2({...t.userAgentOptions,...t.loggingOptions}),{afterPhase:"Retry"}),Bt&&e.addPolicy(P2(t.redirectOptions),{afterPhase:"Retry"}),e.addPolicy(N2(t.loggingOptions),{afterPhase:"Sign"}),e}function QC(){let t=EB();return{async sendRequest(e){let{abortSignal:r,cleanup:n}=e.abortSignal?XB(e.abortSignal):{};try{return e.abortSignal=r,await t.sendRequest(e)}finally{n?.()}}}}function Wl(t){return To(t)}function DC(t){return mB(t)}var MYt=oc("core-rest-pipeline retryPolicy");var Z7e={forcedRefreshWindowInMs:1e3,retryIntervalInMs:3e3,refreshWindowInMs:1e3*60*2};async function eZe(t,e,r){async function n(){if(Date.now()t.getToken(c,l),o.retryIntervalInMs,n?.expiresOnTimestamp??Date.now()).then(d=>(r=null,n=d,s=l.tenantId,n)).catch(d=>{throw r=null,n=null,s=void 0,d})),r}return async(c,l)=>{let u=!!l.claims,d=s!==l.tenantId;return u&&(n=null),d||u||i.mustRefresh?a(c,l):(i.shouldRefresh&&a(c,l),n)}}var Cde="bearerTokenAuthenticationPolicy";async function ZB(t,e){try{return[await e(t),void 0]}catch(r){if(Im(r)&&r.response)return[r.response,r];throw r}}async function tZe(t){let{scopes:e,getAccessToken:r,request:n}=t,s={abortSignal:n.abortSignal,tracingOptions:n.tracingOptions,enableCae:!0},o=await r(e,s);o&&t.request.headers.set("Authorization",`Bearer ${o.token}`)}function gde(t){return t.status===401&&t.headers.has("WWW-Authenticate")}async function yde(t,e){let{scopes:r}=t,n=await t.getAccessToken(r,{enableCae:!0,claims:e});return n?(t.request.headers.set("Authorization",`${n.tokenType??"Bearer"} ${n.token}`),!0):!1}function bh(t){let{credential:e,scopes:r,challengeCallbacks:n}=t,s=t.logger||ic,o={authorizeRequest:n?.authorizeRequest?.bind(n)??tZe,authorizeRequestOnChallenge:n?.authorizeRequestOnChallenge?.bind(n)},i=e?Y2(e):()=>Promise.resolve(null);return{name:Cde,async sendRequest(a,c){if(!a.url.toLowerCase().startsWith("https://"))throw new Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");await o.authorizeRequest({scopes:Array.isArray(r)?r:[r],request:a,getAccessToken:i,logger:s});let l,u,d;if([l,u]=await ZB(a,c),gde(l)){let p=Ede(l.headers.get("WWW-Authenticate"));if(p){let m;try{m=atob(p)}catch{return s.warning(`The WWW-Authenticate header contains "claims" that cannot be parsed. Unable to perform the Continuous Access Evaluation authentication flow. Unparsable claims: ${p}`),l}d=await yde({scopes:Array.isArray(r)?r:[r],response:l,request:a,getAccessToken:i,logger:s},m),d&&([l,u]=await ZB(a,c))}else if(o.authorizeRequestOnChallenge&&(d=await o.authorizeRequestOnChallenge({scopes:Array.isArray(r)?r:[r],request:a,response:l,getAccessToken:i,logger:s}),d&&([l,u]=await ZB(a,c)),gde(l)&&(p=Ede(l.headers.get("WWW-Authenticate")),p))){let m;try{m=atob(p)}catch{return s.warning(`The WWW-Authenticate header contains "claims" that cannot be parsed. Unable to perform the Continuous Access Evaluation authentication flow. Unparsable claims: ${p}`),l}d=await yde({scopes:Array.isArray(r)?r:[r],response:l,request:a,getAccessToken:i,logger:s},m),d&&([l,u]=await ZB(a,c))}}if(u)throw u;return l}}}function rZe(t){let e=/(\w+)\s+((?:\w+=(?:"[^"]*"|[^,]*),?\s*)+)/g,r=/(\w+)="([^"]*)"/g,n=[],s;for(;(s=e.exec(t))!==null;){let o=s[1],i=s[2],a={},c;for(;(c=r.exec(i))!==null;)a[c[1]]=c[2];n.push({scheme:o,params:a})}return n}function Ede(t){return t?rZe(t).find(r=>r.scheme==="Bearer"&&r.params.claims&&r.params.error==="insufficient_claims")?.params.claims:void 0}function Do(t){let e=t;return e&&typeof e.getToken=="function"&&(e.signRequest===void 0||e.getToken.length>0)}var W2="DisableKeepAlivePolicy";function Ide(){return{name:W2,async sendRequest(t,e){return t.disableKeepAlive=!0,e(t)}}}function xde(t){return t.getOrderedPolicies().some(e=>e.name===W2)}function j2(t){return(t instanceof Buffer?t:Buffer.from(t.buffer)).toString("base64")}function J2(t){return Buffer.from(t,"base64")}function sZe(t,e){return e!=="Composite"&&e!=="Dictionary"&&(typeof t=="string"||typeof t=="number"||typeof t=="boolean"||e?.match(/^(Date|DateTime|DateTimeRfc1123|UnixTime|ByteArray|Base64Url)$/i)!==null||t===void 0||t===null)}var oZe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function wde(t){return oZe.test(t)}var iZe=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/i;function bde(t){return iZe.test(t)}function aZe(t){let e={...t.headers,...t.body};return t.hasNullableType&&Object.getOwnPropertyNames(e).length===0?t.shouldWrapBody?{body:null}:null:t.shouldWrapBody?{...t.headers,body:t.body}:e}function K2(t,e){let r=t.parsedHeaders;if(t.request.method==="HEAD")return{...r,body:t.parsedBody};let n=e&&e.bodyMapper,s=!!n?.nullable,o=n?.type.name;if(o==="Stream")return{...r,blobBody:t.blobBody,readableStreamBody:t.readableStreamBody};let i=o==="Composite"&&n.type.modelProperties||{},a=Object.keys(i).some(c=>i[c].serializedName==="");if(o==="Sequence"||a){let c=t.parsedBody??[];for(let l of Object.keys(i))i[l].serializedName&&(c[l]=t.parsedBody?.[l]);if(r)for(let l of Object.keys(r))c[l]=r[l];return s&&!t.parsedBody&&!r&&Object.getOwnPropertyNames(i).length===0?null:c}return aZe({body:t.parsedBody,headers:r,hasNullableType:s,shouldWrapBody:sZe(t.parsedBody,o)})}var X2=class{modelMappers;isXML;constructor(e={},r=!1){this.modelMappers=e,this.isXML=r}validateConstraints(e,r,n){let s=(o,i)=>{throw new Error(`"${n}" with value "${r}" should satisfy the constraint "${o}": ${i}.`)};if(e.constraints&&r!==void 0&&r!==null){let{ExclusiveMaximum:o,ExclusiveMinimum:i,InclusiveMaximum:a,InclusiveMinimum:c,MaxItems:l,MaxLength:u,MinItems:d,MinLength:p,MultipleOf:m,Pattern:h,UniqueItems:y}=e.constraints;if(o!==void 0&&r>=o&&s("ExclusiveMaximum",o),i!==void 0&&r<=i&&s("ExclusiveMinimum",i),a!==void 0&&r>a&&s("InclusiveMaximum",a),c!==void 0&&rl&&s("MaxItems",l),u!==void 0&&r.length>u&&s("MaxLength",u),d!==void 0&&r.lengthb.indexOf(I)!==x)&&s("UniqueItems",y)}}serialize(e,r,n,s={xml:{}}){let o={xml:{rootName:s.xml.rootName??"",includeRoot:s.xml.includeRoot??!1,xmlCharKey:s.xml.xmlCharKey??"_"}},i={},a=e.type.name;n||(n=e.serializedName),a.match(/^Sequence$/i)!==null&&(i=[]),e.isConstant&&(r=e.defaultValue);let{required:c,nullable:l}=e;if(c&&l&&r===void 0)throw new Error(`${n} cannot be undefined.`);if(c&&!l&&r==null)throw new Error(`${n} cannot be null or undefined.`);if(!c&&l===!1&&r===null)throw new Error(`${n} cannot be null.`);return r==null||a.match(/^any$/i)!==null?i=r:a.match(/^(Number|String|Boolean|Object|Stream|Uuid)$/i)!==null?i=mZe(a,n,r):a.match(/^Enum$/i)!==null?i=fZe(n,e.type.allowedValues,r):a.match(/^(Date|DateTime|TimeSpan|DateTimeRfc1123|UnixTime)$/i)!==null?i=gZe(a,r,n):a.match(/^ByteArray$/i)!==null?i=AZe(n,r):a.match(/^Base64Url$/i)!==null?i=hZe(n,r):a.match(/^Sequence$/i)!==null?i=yZe(this,e,r,n,!!this.isXML,o):a.match(/^Dictionary$/i)!==null?i=EZe(this,e,r,n,!!this.isXML,o):a.match(/^Composite$/i)!==null&&(i=IZe(this,e,r,n,!!this.isXML,o)),i}deserialize(e,r,n,s={xml:{}}){let o={xml:{rootName:s.xml.rootName??"",includeRoot:s.xml.includeRoot??!1,xmlCharKey:s.xml.xmlCharKey??"_"},ignoreUnknownProperties:s.ignoreUnknownProperties??!1};if(r==null)return this.isXML&&e.type.name==="Sequence"&&!e.xmlIsWrapped&&(r=[]),e.defaultValue!==void 0&&(r=e.defaultValue),r;let i,a=e.type.name;if(n||(n=e.serializedName),a.match(/^Composite$/i)!==null)i=wZe(this,e,r,n,o);else{if(this.isXML){let c=o.xml.xmlCharKey;r["$"]!==void 0&&r[c]!==void 0&&(r=r[c])}a.match(/^Number$/i)!==null?(i=parseFloat(r),isNaN(i)&&(i=r)):a.match(/^Boolean$/i)!==null?r==="true"?i=!0:r==="false"?i=!1:i=r:a.match(/^(String|Enum|Object|Stream|Uuid|TimeSpan|any)$/i)!==null?i=r:a.match(/^(Date|DateTime|DateTimeRfc1123)$/i)!==null?i=new Date(r):a.match(/^UnixTime$/i)!==null?i=pZe(r):a.match(/^ByteArray$/i)!==null?i=J2(r):a.match(/^Base64Url$/i)!==null?i=uZe(r):a.match(/^Sequence$/i)!==null?i=SZe(this,e,r,n,o):a.match(/^Dictionary$/i)!==null&&(i=bZe(this,e,r,n,o))}return e.isConstant&&(i=e.defaultValue),i}};function ko(t={},e=!1){return new X2(t,e)}function cZe(t,e){let r=t.length;for(;r-1>=0&&t[r-1]===e;)--r;return t.substr(0,r)}function lZe(t){if(!t)return;if(!(t instanceof Uint8Array))throw new Error("Please provide an input of type Uint8Array for converting to Base64Url.");let e=j2(t);return cZe(e,"=").replace(/\+/g,"-").replace(/\//g,"_")}function uZe(t){if(t){if(t&&typeof t.valueOf()!="string")throw new Error("Please provide an input of type string for converting to Uint8Array");return t=t.replace(/-/g,"+").replace(/_/g,"/"),J2(t)}}function Z2(t){let e=[],r="";if(t){let n=t.split(".");for(let s of n)s.charAt(s.length-1)==="\\"?r+=s.substr(0,s.length-1)+".":(r+=s,e.push(r),r="")}return e}function dZe(t){if(t)return typeof t.valueOf()=="string"&&(t=new Date(t)),Math.floor(t.getTime()/1e3)}function pZe(t){if(t)return new Date(t*1e3)}function mZe(t,e,r){if(r!=null){if(t.match(/^Number$/i)!==null){if(typeof r!="number")throw new Error(`${e} with value ${r} must be of type number.`)}else if(t.match(/^String$/i)!==null){if(typeof r.valueOf()!="string")throw new Error(`${e} with value "${r}" must be of type string.`)}else if(t.match(/^Uuid$/i)!==null){if(!(typeof r.valueOf()=="string"&&bde(r)))throw new Error(`${e} with value "${r}" must be of type string and a valid uuid.`)}else if(t.match(/^Boolean$/i)!==null){if(typeof r!="boolean")throw new Error(`${e} with value ${r} must be of type boolean.`)}else if(t.match(/^Stream$/i)!==null){let n=typeof r;if(n!=="string"&&typeof r.pipe!="function"&&typeof r.tee!="function"&&!(r instanceof ArrayBuffer)&&!ArrayBuffer.isView(r)&&!((typeof Blob=="function"||typeof Blob=="object")&&r instanceof Blob)&&n!=="function")throw new Error(`${e} must be a string, Blob, ArrayBuffer, ArrayBufferView, ReadableStream, or () => ReadableStream.`)}}return r}function fZe(t,e,r){if(!e)throw new Error(`Please provide a set of allowedValues to validate ${t} as an Enum Type.`);if(!e.some(s=>typeof s.valueOf()=="string"?s.toLowerCase()===r.toLowerCase():s===r))throw new Error(`${r} is not a valid value for ${t}. The valid values are: ${JSON.stringify(e)}.`);return r}function AZe(t,e){if(e!=null){if(!(e instanceof Uint8Array))throw new Error(`${t} must be of type Uint8Array.`);e=j2(e)}return e}function hZe(t,e){if(e!=null){if(!(e instanceof Uint8Array))throw new Error(`${t} must be of type Uint8Array.`);e=lZe(e)}return e}function gZe(t,e,r){if(e!=null){if(t.match(/^Date$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in ISO8601 format.`);e=e instanceof Date?e.toISOString().substring(0,10):new Date(e).toISOString().substring(0,10)}else if(t.match(/^DateTime$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in ISO8601 format.`);e=e instanceof Date?e.toISOString():new Date(e).toISOString()}else if(t.match(/^DateTimeRfc1123$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in RFC-1123 format.`);e=e instanceof Date?e.toUTCString():new Date(e).toUTCString()}else if(t.match(/^UnixTime$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in RFC-1123/ISO8601 format for it to be serialized in UnixTime/Epoch format.`);e=dZe(e)}else if(t.match(/^TimeSpan$/i)!==null&&!wde(e))throw new Error(`${r} must be a string in ISO 8601 format. Instead was "${e}".`)}return e}function yZe(t,e,r,n,s,o){if(!Array.isArray(r))throw new Error(`${n} must be of type Array.`);let i=e.type.element;if(!i||typeof i!="object")throw new Error(`element" metadata for an Array must be defined in the mapper and it must of type "object" in ${n}.`);i.type.name==="Composite"&&i.type.className&&(i=t.modelMappers[i.type.className]??i);let a=[];for(let c=0;cp!==u)&&(i[u]=t.serialize(c,r[u],n+'["'+u+'"]',o))}return i}return r}function Nde(t,e,r,n){if(!r||!t.xmlNamespace)return e;let o={[t.xmlNamespacePrefix?`xmlns:${t.xmlNamespacePrefix}`:"xmlns"]:t.xmlNamespace};if(["Composite"].includes(t.type.name)){if(e["$"])return e;{let a={...e};return a["$"]=o,a}}let i={};return i[n.xml.xmlCharKey]=e,i["$"]=o,i}function xZe(t,e){return["$",e.xml.xmlCharKey].includes(t)}function wZe(t,e,r,n,s){let o=s.xml.xmlCharKey??"_";eR(t,e)&&(e=Tde(t,e,r,"serializedName"));let i=Rde(t,e,n),a={},c=[];for(let u of Object.keys(i)){let d=i[u],p=Z2(i[u].serializedName);c.push(p[0]);let{serializedName:m,xmlName:h,xmlElementName:y}=d,I=n;m!==""&&m!==void 0&&(I=n+"."+m);let x=d.headerCollectionPrefix;if(x){let b={};for(let T of Object.keys(r))T.startsWith(x)&&(b[T.substring(x.length)]=t.deserialize(d.type.value,r[T],I,s)),c.push(T);a[u]=b}else if(t.isXML)if(d.xmlIsAttribute&&r["$"])a[u]=t.deserialize(d,r["$"][h],I,s);else if(d.xmlIsMsText)r[o]!==void 0?a[u]=r[o]:typeof r=="string"&&(a[u]=r);else{let b=y||h||m;if(d.xmlIsWrapped){let _=r[h]?.[y]??[];a[u]=t.deserialize(d,_,I,s),c.push(h)}else{let T=r[b];a[u]=t.deserialize(d,T,I,s),c.push(b)}}else{let b,T=r,_=0;for(let z of p){if(!T)break;_++,T=T[z]}T===null&&_{for(let p in i)if(Z2(i[p].serializedName)[0]===d)return!1;return!0};for(let d in r)u(d)&&(a[d]=t.deserialize(l,r[d],n+'["'+d+'"]',s))}else if(r&&!s.ignoreUnknownProperties)for(let u of Object.keys(r))a[u]===void 0&&!c.includes(u)&&!xZe(u,s)&&(a[u]=r[u]);return a}function bZe(t,e,r,n,s){let o=e.type.value;if(!o||typeof o!="object")throw new Error(`"value" metadata for a Dictionary must be defined in the mapper and it must of type "object" in ${n}`);if(r){let i={};for(let a of Object.keys(r))i[a]=t.deserialize(o,r[a],n,s);return i}return r}function SZe(t,e,r,n,s){let o=e.type.element;if(!o||typeof o!="object")throw new Error(`element" metadata for an Array must be defined in the mapper and it must of type "object" in ${n}`);if(r){Array.isArray(r)||(r=[r]),o.type.name==="Composite"&&o.type.className&&(o=t.modelMappers[o.type.className]??o);let i=[];for(let a=0;a0)if(s.isConstant)o=s.defaultValue;else{let i=_de(t,n);!i.propertyFound&&r&&(i=_de(r,n));let a=!1;i.propertyFound||(a=s.required||n[0]==="options"&&n.length===2),o=a?s.defaultValue:i.propertyValue}}else{s.required&&(o={});for(let i in n){let a=s.type.modelProperties[i],c=n[i],l=wd(t,{parameterPath:c,mapper:a},r);l!==void 0&&(o||(o={}),o[i]=l)}}return o}function _de(t,e){let r={propertyFound:!1},n=0;for(;n=200&&r.status<300);c.headersMapper&&(o.parsedHeaders=a.serializer.deserialize(c.headersMapper,o.headers.toJSON(),"operationRes.parsedHeaders",{xml:{},ignoreUnknownProperties:!0}))}return o}function QZe(t){let e=Object.keys(t.responses);return e.length===0||e.length===1&&e[0]==="default"}function DZe(t,e,r,n){let s=200<=t.status&&t.status<300;if(QZe(e)?s:!!r)if(r){if(!r.isError)return{error:null,shouldReturnResponse:!1}}else return{error:null,shouldReturnResponse:!1};let i=r??e.responses.default,a=t.request.streamResponseStatusCodes?.has(t.status)?`Unexpected status code: ${t.status}`:t.bodyAsText,c=new Yl(a,{statusCode:t.status,request:t.request,response:t});if(!i&&!(t.parsedBody?.error?.code&&t.parsedBody?.error?.message))throw c;let l=i?.bodyMapper,u=i?.headersMapper;try{if(t.parsedBody){let d=t.parsedBody,p;if(l){let h=d;if(e.isXML&&l.type.name===ac.Sequence){h=[];let y=l.xmlElementName;typeof d=="object"&&y&&(h=d[y])}p=e.serializer.deserialize(l,h,"error.response.parsedBody",n)}let m=d.error||p||d;c.code=m.code,m.message&&(c.message=m.message),l&&(c.response.parsedBody=p)}t.headers&&u&&(c.response.parsedHeaders=e.serializer.deserialize(u,t.headers.toJSON(),"operationRes.parsedHeaders"))}catch(d){c.message=`Error "${d.message}" occurred in deserializing the responseBody - "${t.bodyAsText}" for the default response.`}return{error:c,shouldReturnResponse:!1}}async function kZe(t,e,r,n,s){if(!r.request.streamResponseStatusCodes?.has(r.status)&&r.bodyAsText){let o=r.bodyAsText,i=r.headers.get("Content-Type")||"",a=i?i.split(";").map(c=>c.toLowerCase()):[];try{if(a.length===0||a.some(c=>t.indexOf(c)!==-1))return r.parsedBody=JSON.parse(o),r;if(a.some(c=>e.indexOf(c)!==-1)){if(!s)throw new Error("Parsing XML not supported.");let c=await s(o,n.xml);return r.parsedBody=c,r}}catch(c){let l=`Error "${c}" occurred while parsing the response body - ${r.bodyAsText}.`,u=c.code||Yl.PARSE_ERROR;throw new Yl(l,{code:u,statusCode:r.status,request:r.request,response:r})}}return r}function kde(t){let e=new Set;for(let r in t.responses){let n=t.responses[r];n.bodyMapper&&n.bodyMapper.type.name===ac.Stream&&e.add(Number(r))}return e}function cc(t){let{parameterPath:e,mapper:r}=t,n;return typeof e=="string"?n=e:Array.isArray(e)?n=e.join("."):n=r.serializedName,n}var Lde="serializationPolicy";function rR(t={}){let e=t.stringifyXML;return{name:Lde,async sendRequest(r,n){let s=jl(r),o=s?.operationSpec,i=s?.operationArguments;return o&&i&&(LZe(r,i,o),OZe(r,i,o,e)),n(r)}}}function LZe(t,e,r){if(r.headerParameters)for(let s of r.headerParameters){let o=wd(e,s);if(o!=null||s.mapper.required){o=r.serializer.serialize(s.mapper,o,cc(s));let i=s.mapper.headerCollectionPrefix;if(i)for(let a of Object.keys(o))t.headers.set(i+a,o[a]);else t.headers.set(s.mapper.serializedName||cc(s),o)}}let n=e.options?.requestOptions?.customHeaders;if(n)for(let s of Object.keys(n))t.headers.set(s,n[s])}function OZe(t,e,r,n=function(){throw new Error("XML serialization unsupported!")}){let s=e.options?.serializerOptions,o={xml:{rootName:s?.xml.rootName??"",includeRoot:s?.xml.includeRoot??!1,xmlCharKey:s?.xml.xmlCharKey??"_"}},i=o.xml.xmlCharKey;if(r.requestBody&&r.requestBody.mapper){t.body=wd(e,r.requestBody);let a=r.requestBody.mapper,{required:c,serializedName:l,xmlName:u,xmlElementName:d,xmlNamespace:p,xmlNamespacePrefix:m,nullable:h}=a,y=a.type.name;try{if(t.body!==void 0&&t.body!==null||h&&t.body===null||c){let I=cc(r.requestBody);t.body=r.serializer.serialize(a,t.body,I,o);let x=y===ac.Stream;if(r.isXML){let b=m?`xmlns:${m}`:"xmlns",T=MZe(p,b,y,t.body,o);y===ac.Sequence?t.body=n(FZe(T,d||u||l,b,p),{rootName:u||l,xmlCharKey:i}):x||(t.body=n(T,{rootName:u||l,xmlCharKey:i}))}else{if(y===ac.String&&(r.contentType?.match("text/plain")||r.mediaType==="text"))return;x||(t.body=JSON.stringify(t.body))}}}catch(I){throw new Error(`Error "${I.message}" occurred in serializing the payload - ${JSON.stringify(l,void 0," ")}.`)}}else if(r.formDataParameters&&r.formDataParameters.length>0){t.formData={};for(let a of r.formDataParameters){let c=wd(e,a);if(c!=null){let l=a.mapper.serializedName||cc(a);t.formData[l]=r.serializer.serialize(a.mapper,c,cc(a),o)}}}}function MZe(t,e,r,n,s){if(t&&!["Composite","Sequence","Dictionary"].includes(r)){let o={};return o[s.xml.xmlCharKey]=n,o["$"]={[e]:t},o}return n}function FZe(t,e,r,n){if(Array.isArray(t)||(t=[t]),!r||!n)return{[e]:t};let s={[e]:t};return s["$"]={[r]:n},s}function kC(t={}){let e=V2(t??{});return t.credentialOptions&&e.addPolicy(bh({credential:t.credentialOptions.credential,scopes:t.credentialOptions.credentialScopes})),e.addPolicy(rR(t.serializationOptions),{phase:"Serialize"}),e.addPolicy(tq(t.deserializationOptions),{phase:"Deserialize"}),e}var rq;function Ode(){return rq||(rq=QC()),rq}var UZe={CSV:",",SSV:" ",Multi:"Multi",TSV:" ",Pipes:"|"};function Fde(t,e,r,n){let s=qZe(e,r,n),o=!1,i=Mde(t,s);if(e.path){let l=Mde(e.path,s);e.path==="/{nextLink}"&&l.startsWith("/")&&(l=l.substring(1)),$Ze(l)?(i=l,o=!0):i=GZe(i,l)}let{queryParams:a,sequenceParams:c}=HZe(e,r,n);return i=VZe(i,a,c,o),i}function Mde(t,e){let r=t;for(let[n,s]of e)r=r.split(n).join(s);return r}function qZe(t,e,r){let n=new Map;if(t.urlParameters?.length)for(let s of t.urlParameters){let o=wd(e,s,r),i=cc(s);o=t.serializer.serialize(s.mapper,o,i),s.skipEncoding||(o=encodeURIComponent(o)),n.set(`{${s.mapper.serializedName||i}}`,o)}return n}function $Ze(t){return t.includes("://")}function GZe(t,e){if(!e)return t;let r=new URL(t),n=r.pathname;n.endsWith("/")||(n=`${n}/`),e.startsWith("/")&&(e=e.substring(1));let s=e.indexOf("?");if(s!==-1){let o=e.substring(0,s),i=e.substring(s+1);n=n+o,i&&(r.search=r.search?`${r.search}&${i}`:i)}else n=n+e;return r.pathname=n,r.toString()}function HZe(t,e,r){let n=new Map,s=new Set;if(t.queryParameters?.length)for(let o of t.queryParameters){o.mapper.type.name==="Sequence"&&o.mapper.serializedName&&s.add(o.mapper.serializedName);let i=wd(e,o,r);if(i!=null||o.mapper.required){i=t.serializer.serialize(o.mapper,i,cc(o));let a=o.collectionFormat?UZe[o.collectionFormat]:"";if(Array.isArray(i)&&(i=i.map(c=>c??"")),o.collectionFormat==="Multi"&&i.length===0)continue;Array.isArray(i)&&(o.collectionFormat==="SSV"||o.collectionFormat==="TSV")&&(i=i.join(a)),o.skipEncoding||(Array.isArray(i)?i=i.map(c=>encodeURIComponent(c)):i=encodeURIComponent(i)),Array.isArray(i)&&(o.collectionFormat==="CSV"||o.collectionFormat==="Pipes")&&(i=i.join(a)),n.set(o.mapper.serializedName||cc(o),i)}}return{queryParams:n,sequenceParams:s}}function zZe(t){let e=new Map;if(!t||t[0]!=="?")return e;t=t.slice(1);let r=t.split("&");for(let n of r){let[s,o]=n.split("=",2),i=e.get(s);i?Array.isArray(i)?i.push(o):e.set(s,[i,o]):e.set(s,o)}return e}function VZe(t,e,r,n=!1){if(e.size===0)return t;let s=new URL(t),o=zZe(s.search);for(let[a,c]of e){let l=o.get(a);if(Array.isArray(l))if(Array.isArray(c)){l.push(...c);let u=new Set(l);o.set(a,Array.from(u))}else l.push(c);else l?(Array.isArray(c)?c.unshift(l):r.has(a)&&o.set(a,[l,c]),n||o.set(a,c)):o.set(a,c)}let i=[];for(let[a,c]of o)if(typeof c=="string")i.push(`${a}=${c}`);else if(Array.isArray(c))for(let l of c)i.push(`${a}=${l}`);else i.push(`${a}=${c}`);return s.search=i.length?`?${i.join("&")}`:"",s.toString()}var nq=oc("core-client");var LC=class{_endpoint;_requestContentType;_allowInsecureConnection;_httpClient;pipeline;constructor(e={}){if(this._requestContentType=e.requestContentType,this._endpoint=e.endpoint??e.baseUri,e.baseUri&&nq.warning("The baseUri option for SDK Clients has been deprecated, please use endpoint instead."),this._allowInsecureConnection=e.allowInsecureConnection,this._httpClient=e.httpClient||Ode(),this.pipeline=e.pipeline||YZe(e),e.additionalPolicies?.length)for(let{policy:r,position:n}of e.additionalPolicies){let s=n==="perRetry"?"Sign":void 0;this.pipeline.addPolicy(r,{afterPhase:s})}}async sendRequest(e){return this.pipeline.sendRequest(this._httpClient,e)}async sendOperationRequest(e,r){let n=r.baseUrl||this._endpoint;if(!n)throw new Error("If operationSpec.baseUrl is not specified, then the ServiceClient must have a endpoint string property that contains the base URL to use.");let s=Fde(n,r,e,this),o=DC({url:s});o.method=r.httpMethod;let i=jl(o);i.operationSpec=r,i.operationArguments=e;let a=r.contentType||this._requestContentType;a&&r.requestBody&&o.headers.set("Content-Type",a);let c=e.options;if(c){let l=c.requestOptions;l&&(l.timeout&&(o.timeout=l.timeout),l.onUploadProgress&&(o.onUploadProgress=l.onUploadProgress),l.onDownloadProgress&&(o.onDownloadProgress=l.onDownloadProgress),l.shouldDeserialize!==void 0&&(i.shouldDeserialize=l.shouldDeserialize),l.allowInsecureConnection&&(o.allowInsecureConnection=!0)),c.abortSignal&&(o.abortSignal=c.abortSignal),c.tracingOptions&&(o.tracingOptions=c.tracingOptions)}this._allowInsecureConnection&&(o.allowInsecureConnection=!0),o.streamResponseStatusCodes===void 0&&(o.streamResponseStatusCodes=kde(r));try{let l=await this.sendRequest(o),u=K2(l,r.responses[l.status]);return c?.onResponse&&c.onResponse(l,u),u}catch(l){if(typeof l=="object"&&l?.response){let u=l.response,d=K2(u,r.responses[l.statusCode]||r.responses.default);l.details=d,c?.onResponse&&c.onResponse(u,d,l)}throw l}}};function YZe(t){let e=WZe(t),r=t.credential&&e?{credentialScopes:e,credential:t.credential}:void 0;return kC({...t,credentialOptions:r})}function WZe(t){if(t.credentialScopes)return t.credentialScopes;if(t.endpoint)return`${t.endpoint}/.default`;if(t.baseUri)return`${t.baseUri}/.default`;if(t.credential&&!t.credentialScopes)throw new Error("When using credentials, the ServiceClientOptions must contain either a endpoint or a credentialScopes. Unable to create a bearerTokenAuthenticationPolicy")}var Ude={DefaultScope:"/.default",HeaderConstants:{AUTHORIZATION:"authorization"}};function jZe(t){return/^[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}$/.test(t)}var nR=async t=>{let e=eet(t.request),r=XZe(t.response);if(r){let n=ZZe(r),s=KZe(t,n),o=JZe(n);if(!o)return!1;let i=await t.getAccessToken(s,{...e,tenantId:o});return i?(t.request.headers.set(Ude.HeaderConstants.AUTHORIZATION,`${i.tokenType??"Bearer"} ${i.token}`),!0):!1}return!1};function JZe(t){let n=new URL(t.authorization_uri).pathname.split("/")[1];if(n&&jZe(n))return n}function KZe(t,e){if(!e.resource_id)return t.scopes;let r=new URL(e.resource_id);r.pathname=Ude.DefaultScope;let n=r.toString();return n==="https://disk.azure.com/.default"&&(n="https://disk.azure.com//.default"),[n]}function XZe(t){let e=t.headers.get("WWW-Authenticate");if(t.status===401&&e)return e}function ZZe(t){return`${t.slice(7).trim()} `.split(" ").filter(s=>s).map(s=>(([o,i])=>({[o]:i}))(s.trim().split("="))).reduce((s,o)=>({...s,...o}),{})}function eet(t){return{abortSignal:t.abortSignal,requestOptions:{timeout:t.timeout},tracingOptions:t.tracingOptions}}var qde=Symbol("Original PipelineRequest"),tet=Symbol.for("@azure/core-client original request");function MC(t,e={}){let n=t[qde],s=Wl(t.headers.toJson({preserveCase:!0}));if(n)return n.headers=s,n;{let o=DC({url:t.url,method:t.method,headers:s,withCredentials:t.withCredentials,timeout:t.timeout,requestId:t.requestId,abortSignal:t.abortSignal,body:t.body,formData:t.formData,disableKeepAlive:!!t.keepAlive,onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress,proxySettings:t.proxySettings,streamResponseStatusCodes:t.streamResponseStatusCodes,agent:t.agent,requestOverrides:t.requestOverrides});return e.originalRequest&&(o[tet]=e.originalRequest),o}}function xm(t,e){let r=e?.originalRequest??t,n={url:t.url,method:t.method,headers:FC(t.headers),withCredentials:t.withCredentials,timeout:t.timeout,requestId:t.headers.get("x-ms-client-request-id")||t.requestId,abortSignal:t.abortSignal,body:t.body,formData:t.formData,keepAlive:!!t.disableKeepAlive,onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress,proxySettings:t.proxySettings,streamResponseStatusCodes:t.streamResponseStatusCodes,agent:t.agent,requestOverrides:t.requestOverrides,clone(){throw new Error("Cannot clone a non-proxied WebResourceLike")},prepare(){throw new Error("WebResourceLike.prepare() is not supported by @azure/core-http-compat")},validateRequestProperties(){}};return e?.createProxy?new Proxy(n,{get(s,o,i){return o===qde?t:o==="clone"?()=>xm(MC(n,{originalRequest:r}),{createProxy:!0,originalRequest:r}):Reflect.get(s,o,i)},set(s,o,i,a){return o==="keepAlive"&&(t.disableKeepAlive=!i),typeof o=="string"&&["url","method","withCredentials","timeout","requestId","abortSignal","body","formData","onDownloadProgress","onUploadProgress","proxySettings","streamResponseStatusCodes","agent","requestOverrides"].includes(o)&&(t[o]=i),Reflect.set(s,o,i,a)}}):n}function FC(t){return new sq(t.toJSON({preserveCase:!0}))}function OC(t){return t.toLowerCase()}var sq=class t{_headersMap;constructor(e){if(this._headersMap={},e)for(let r in e)this.set(r,e[r])}set(e,r){this._headersMap[OC(e)]={name:e,value:r.toString()}}get(e){let r=this._headersMap[OC(e)];return r?r.value:void 0}contains(e){return!!this._headersMap[OC(e)]}remove(e){let r=this.contains(e);return delete this._headersMap[OC(e)],r}rawHeaders(){return this.toJson({preserveCase:!0})}headersArray(){let e=[];for(let r in this._headersMap)e.push(this._headersMap[r]);return e}headerNames(){let e=[],r=this.headersArray();for(let n=0;n{let r=await t.sendRequest(xm(e,{createProxy:!0}));return oR(r)}}}var Hde=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",set=Hde+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",oet="["+Hde+"]["+set+"]*",iet=new RegExp("^"+oet+"$");function iR(t,e){let r=[],n=e.exec(t);for(;n;){let s=[];s.startIndex=e.lastIndex-n[0].length;let o=n.length;for(let i=0;i"u")};function zde(t){return typeof t<"u"}var qC=["hasOwnProperty","toString","valueOf","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"],aR=["__proto__","constructor","prototype"];var aet={allowBooleanAttributes:!1,unpairedTags:[]};function cR(t,e){e=Object.assign({},aet,e);let r=[],n=!1,s=!1;t[0]==="\uFEFF"&&(t=t.substr(1));for(let o=0;o"&&t[o]!==" "&&t[o]!==" "&&t[o]!==` -`&&t[o]!=="\r";o++)c+=t[o];if(c=c.trim(),c[c.length-1]==="/"&&(c=c.substring(0,c.length-1),o--),!het(c)){let d;return c.trim().length===0?d="Invalid space after '<'.":d="Tag '"+c+"' is an invalid name.",Dr("InvalidTag",d,Cs(t,o))}let l=det(t,o);if(l===!1)return Dr("InvalidAttr","Attributes for '"+c+"' have open quote.",Cs(t,o));let u=l.value;if(o=l.index,u[u.length-1]==="/"){let d=o-u.length;u=u.substring(0,u.length-1);let p=jde(u,e);if(p===!0)n=!0;else return Dr(p.err.code,p.err.msg,Cs(t,d+p.err.line))}else if(a)if(l.tagClosed){if(u.trim().length>0)return Dr("InvalidTag","Closing tag '"+c+"' can't have attributes or invalid starting.",Cs(t,i));if(r.length===0)return Dr("InvalidTag","Closing tag '"+c+"' has not been opened.",Cs(t,i));{let d=r.pop();if(c!==d.tagName){let p=Cs(t,d.tagStartPos);return Dr("InvalidTag","Expected closing tag '"+d.tagName+"' (opened in line "+p.line+", col "+p.col+") instead of closing tag '"+c+"'.",Cs(t,i))}r.length==0&&(s=!0)}}else return Dr("InvalidTag","Closing tag '"+c+"' doesn't have proper closing.",Cs(t,o));else{let d=jde(u,e);if(d!==!0)return Dr(d.err.code,d.err.msg,Cs(t,o-u.length+d.err.line));if(s===!0)return Dr("InvalidXml","Multiple possible root nodes found.",Cs(t,o));e.unpairedTags.indexOf(c)!==-1||r.push({tagName:c,tagStartPos:i}),n=!0}for(o++;o0)return Dr("InvalidXml","Invalid '"+JSON.stringify(r.map(o=>o.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return Dr("InvalidXml","Start tag expected.",1);return!0}function Vde(t){return t===" "||t===" "||t===` -`||t==="\r"}function Yde(t,e){let r=e;for(;e5&&n==="xml")return Dr("InvalidXml","XML declaration allowed only at the start of the document.",Cs(t,e));if(t[e]=="?"&&t[e+1]==">"){e++;break}else continue}return e}function Wde(t,e){if(t.length>e+5&&t[e+1]==="-"&&t[e+2]==="-"){for(e+=3;e"){e+=2;break}}else if(t.length>e+8&&t[e+1]==="D"&&t[e+2]==="O"&&t[e+3]==="C"&&t[e+4]==="T"&&t[e+5]==="Y"&&t[e+6]==="P"&&t[e+7]==="E"){let r=1;for(e+=8;e"&&(r--,r===0))break}else if(t.length>e+9&&t[e+1]==="["&&t[e+2]==="C"&&t[e+3]==="D"&&t[e+4]==="A"&&t[e+5]==="T"&&t[e+6]==="A"&&t[e+7]==="["){for(e+=8;e"){e+=2;break}}return e}var cet='"',uet="'";function det(t,e){let r="",n="",s=!1;for(;e"&&n===""){s=!0;break}r+=t[e]}return n!==""?!1:{value:r,index:e,tagClosed:s}}var pet=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function jde(t,e){let r=iR(t,pet),n={};for(let s=0;s",GT:">",quot:'"',QUOT:'"',apos:"'",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",lsquor:"\u201A",rsquor:"\u2019",ldquor:"\u201E",bdquo:"\u201E",comma:",",period:".",colon:":",semi:";",excl:"!",quest:"?",num:"#",dollar:"$",percent:"%",amp:"&",ast:"*",commat:"@",lowbar:"_",verbar:"|",vert:"|",sol:"/",bsol:"\\",lbrace:"{",rbrace:"}",lbrack:"[",rbrack:"]",lpar:"(",rpar:")",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",COPY:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",REG:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",half:"\xBD",frac34:"\xBE",iquest:"\xBF",times:"\xD7",div:"\xF7",divide:"\xF7"},Kde={Agrave:"\xC0",agrave:"\xE0",Aacute:"\xC1",aacute:"\xE1",Acirc:"\xC2",acirc:"\xE2",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",Aring:"\xC5",aring:"\xE5",AElig:"\xC6",aelig:"\xE6",Ccedil:"\xC7",ccedil:"\xE7",Egrave:"\xC8",egrave:"\xE8",Eacute:"\xC9",eacute:"\xE9",Ecirc:"\xCA",ecirc:"\xEA",Euml:"\xCB",euml:"\xEB",Igrave:"\xCC",igrave:"\xEC",Iacute:"\xCD",iacute:"\xED",Icirc:"\xCE",icirc:"\xEE",Iuml:"\xCF",iuml:"\xEF",ETH:"\xD0",eth:"\xF0",Ntilde:"\xD1",ntilde:"\xF1",Ograve:"\xD2",ograve:"\xF2",Oacute:"\xD3",oacute:"\xF3",Ocirc:"\xD4",ocirc:"\xF4",Otilde:"\xD5",otilde:"\xF5",Ouml:"\xD6",ouml:"\xF6",Oslash:"\xD8",oslash:"\xF8",Ugrave:"\xD9",ugrave:"\xF9",Uacute:"\xDA",uacute:"\xFA",Ucirc:"\xDB",ucirc:"\xFB",Uuml:"\xDC",uuml:"\xFC",Yacute:"\xDD",yacute:"\xFD",THORN:"\xDE",thorn:"\xFE",szlig:"\xDF",yuml:"\xFF",Yuml:"\u0178"},Xde={Amacr:"\u0100",amacr:"\u0101",Abreve:"\u0102",abreve:"\u0103",Aogon:"\u0104",aogon:"\u0105",Cacute:"\u0106",cacute:"\u0107",Ccirc:"\u0108",ccirc:"\u0109",Cdot:"\u010A",cdot:"\u010B",Ccaron:"\u010C",ccaron:"\u010D",Dcaron:"\u010E",dcaron:"\u010F",Dstrok:"\u0110",dstrok:"\u0111",Emacr:"\u0112",emacr:"\u0113",Ecaron:"\u011A",ecaron:"\u011B",Edot:"\u0116",edot:"\u0117",Eogon:"\u0118",eogon:"\u0119",Gcirc:"\u011C",gcirc:"\u011D",Gbreve:"\u011E",gbreve:"\u011F",Gdot:"\u0120",gdot:"\u0121",Gcedil:"\u0122",Hcirc:"\u0124",hcirc:"\u0125",Hstrok:"\u0126",hstrok:"\u0127",Itilde:"\u0128",itilde:"\u0129",Imacr:"\u012A",imacr:"\u012B",Iogon:"\u012E",iogon:"\u012F",Idot:"\u0130",IJlig:"\u0132",ijlig:"\u0133",Jcirc:"\u0134",jcirc:"\u0135",Kcedil:"\u0136",kcedil:"\u0137",kgreen:"\u0138",Lacute:"\u0139",lacute:"\u013A",Lcedil:"\u013B",lcedil:"\u013C",Lcaron:"\u013D",lcaron:"\u013E",Lmidot:"\u013F",lmidot:"\u0140",Lstrok:"\u0141",lstrok:"\u0142",Nacute:"\u0143",nacute:"\u0144",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ENG:"\u014A",eng:"\u014B",Omacr:"\u014C",omacr:"\u014D",Odblac:"\u0150",odblac:"\u0151",OElig:"\u0152",oelig:"\u0153",Racute:"\u0154",racute:"\u0155",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",Sacute:"\u015A",sacute:"\u015B",Scirc:"\u015C",scirc:"\u015D",Scedil:"\u015E",scedil:"\u015F",Scaron:"\u0160",scaron:"\u0161",Tcedil:"\u0162",tcedil:"\u0163",Tcaron:"\u0164",tcaron:"\u0165",Tstrok:"\u0166",tstrok:"\u0167",Utilde:"\u0168",utilde:"\u0169",Umacr:"\u016A",umacr:"\u016B",Ubreve:"\u016C",ubreve:"\u016D",Uring:"\u016E",uring:"\u016F",Udblac:"\u0170",udblac:"\u0171",Uogon:"\u0172",uogon:"\u0173",Wcirc:"\u0174",wcirc:"\u0175",Ycirc:"\u0176",ycirc:"\u0177",Zacute:"\u0179",zacute:"\u017A",Zdot:"\u017B",zdot:"\u017C",Zcaron:"\u017D",zcaron:"\u017E"},Zde={Alpha:"\u0391",alpha:"\u03B1",Beta:"\u0392",beta:"\u03B2",Gamma:"\u0393",gamma:"\u03B3",Delta:"\u0394",delta:"\u03B4",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",varepsilon:"\u03F5",Zeta:"\u0396",zeta:"\u03B6",Eta:"\u0397",eta:"\u03B7",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",vartheta:"\u03D1",Iota:"\u0399",iota:"\u03B9",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",varkappa:"\u03F0",Lambda:"\u039B",lambda:"\u03BB",Mu:"\u039C",mu:"\u03BC",Nu:"\u039D",nu:"\u03BD",Xi:"\u039E",xi:"\u03BE",Omicron:"\u039F",omicron:"\u03BF",Pi:"\u03A0",pi:"\u03C0",piv:"\u03D6",varpi:"\u03D6",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",varrho:"\u03F1",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",varsigma:"\u03C2",Tau:"\u03A4",tau:"\u03C4",Upsilon:"\u03A5",upsilon:"\u03C5",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",varphi:"\u03D5",Chi:"\u03A7",chi:"\u03C7",Psi:"\u03A8",psi:"\u03C8",Omega:"\u03A9",omega:"\u03C9",ohm:"\u03A9",Gammad:"\u03DC",gammad:"\u03DD",digamma:"\u03DD"},epe={Afr:"\u{1D504}",afr:"\u{1D51E}",Acy:"\u0410",acy:"\u0430",Bcy:"\u0411",bcy:"\u0431",Vcy:"\u0412",vcy:"\u0432",Gcy:"\u0413",gcy:"\u0433",Dcy:"\u0414",dcy:"\u0434",IEcy:"\u0415",iecy:"\u0435",IOcy:"\u0401",iocy:"\u0451",ZHcy:"\u0416",zhcy:"\u0436",Zcy:"\u0417",zcy:"\u0437",Icy:"\u0418",icy:"\u0438",Jcy:"\u0419",jcy:"\u0439",Kcy:"\u041A",kcy:"\u043A",Lcy:"\u041B",lcy:"\u043B",Mcy:"\u041C",mcy:"\u043C",Ncy:"\u041D",ncy:"\u043D",Ocy:"\u041E",ocy:"\u043E",Pcy:"\u041F",pcy:"\u043F",Rcy:"\u0420",rcy:"\u0440",Scy:"\u0421",scy:"\u0441",Tcy:"\u0422",tcy:"\u0442",Ucy:"\u0423",ucy:"\u0443",Fcy:"\u0424",fcy:"\u0444",KHcy:"\u0425",khcy:"\u0445",TScy:"\u0426",tscy:"\u0446",CHcy:"\u0427",chcy:"\u0447",SHcy:"\u0428",shcy:"\u0448",SHCHcy:"\u0429",shchcy:"\u0449",HARDcy:"\u042A",hardcy:"\u044A",Ycy:"\u042B",ycy:"\u044B",SOFTcy:"\u042C",softcy:"\u044C",Ecy:"\u042D",ecy:"\u044D",YUcy:"\u042E",yucy:"\u044E",YAcy:"\u042F",yacy:"\u044F",DJcy:"\u0402",djcy:"\u0452",GJcy:"\u0403",gjcy:"\u0453",Jukcy:"\u0404",jukcy:"\u0454",DScy:"\u0405",dscy:"\u0455",Iukcy:"\u0406",iukcy:"\u0456",YIcy:"\u0407",yicy:"\u0457",Jsercy:"\u0408",jsercy:"\u0458",LJcy:"\u0409",ljcy:"\u0459",NJcy:"\u040A",njcy:"\u045A",TSHcy:"\u040B",tshcy:"\u045B",KJcy:"\u040C",kjcy:"\u045C",Ubrcy:"\u040E",ubrcy:"\u045E",DZcy:"\u040F",dzcy:"\u045F"},tpe={plus:"+",minus:"\u2212",mnplus:"\u2213",mp:"\u2213",pm:"\xB1",times:"\xD7",div:"\xF7",divide:"\xF7",sdot:"\u22C5",star:"\u2606",starf:"\u2605",bigstar:"\u2605",lowast:"\u2217",ast:"*",midast:"*",compfn:"\u2218",smallcircle:"\u2218",bullet:"\u2022",bull:"\u2022",nbsp:"\xA0",hellip:"\u2026",mldr:"\u2026",prime:"\u2032",Prime:"\u2033",tprime:"\u2034",bprime:"\u2035",backprime:"\u2035",minus:"\u2212",minusd:"\u2238",dotminus:"\u2238",plusdo:"\u2214",dotplus:"\u2214",plusmn:"\xB1",minusplus:"\u2213",mnplus:"\u2213",mp:"\u2213",setminus:"\u2216",smallsetminus:"\u2216",Backslash:"\u2216",setmn:"\u2216",ssetmn:"\u2216",lowbar:"_",verbar:"|",vert:"|",VerticalLine:"|",colon:":",Colon:"\u2237",Proportion:"\u2237",ratio:"\u2236",equals:"=",ne:"\u2260",nequiv:"\u2262",equiv:"\u2261",Congruent:"\u2261",sim:"\u223C",thicksim:"\u223C",thksim:"\u223C",sime:"\u2243",simeq:"\u2243",TildeEqual:"\u2243",asymp:"\u2248",approx:"\u2248",thickapprox:"\u2248",thkap:"\u2248",TildeTilde:"\u2248",ncong:"\u2247",cong:"\u2245",TildeFullEqual:"\u2245",asympeq:"\u224D",CupCap:"\u224D",bump:"\u224E",Bumpeq:"\u224E",HumpDownHump:"\u224E",bumpe:"\u224F",bumpeq:"\u224F",HumpEqual:"\u224F",dotminus:"\u2238",minusd:"\u2238",plusdo:"\u2214",dotplus:"\u2214",le:"\u2264",LessEqual:"\u2264",ge:"\u2265",GreaterEqual:"\u2265",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",greater:">",less:"<"},rpe={alefsym:"\u2135",aleph:"\u2135",beth:"\u2136",gimel:"\u2137",daleth:"\u2138",forall:"\u2200",ForAll:"\u2200",part:"\u2202",PartialD:"\u2202",exist:"\u2203",Exists:"\u2203",nexist:"\u2204",nexists:"\u2204",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",varnothing:"\u2205",nabla:"\u2207",Del:"\u2207",isin:"\u2208",isinv:"\u2208",in:"\u2208",Element:"\u2208",notin:"\u2209",notinva:"\u2209",ni:"\u220B",niv:"\u220B",SuchThat:"\u220B",ReverseElement:"\u220B",notni:"\u220C",notniva:"\u220C",prod:"\u220F",Product:"\u220F",coprod:"\u2210",Coproduct:"\u2210",sum:"\u2211",Sum:"\u2211",minus:"\u2212",mp:"\u2213",plusdo:"\u2214",dotplus:"\u2214",setminus:"\u2216",lowast:"\u2217",radic:"\u221A",Sqrt:"\u221A",prop:"\u221D",propto:"\u221D",Proportional:"\u221D",varpropto:"\u221D",infin:"\u221E",infintie:"\u29DD",ang:"\u2220",angle:"\u2220",angmsd:"\u2221",measuredangle:"\u2221",angsph:"\u2222",mid:"\u2223",VerticalBar:"\u2223",nmid:"\u2224",nsmid:"\u2224",npar:"\u2226",parallel:"\u2225",spar:"\u2225",nparallel:"\u2226",nspar:"\u2226",and:"\u2227",wedge:"\u2227",or:"\u2228",vee:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",Integral:"\u222B",conint:"\u222E",ContourIntegral:"\u222E",Conint:"\u222F",DoubleContourIntegral:"\u222F",Cconint:"\u2230",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",becaus:"\u2235",because:"\u2235",Because:"\u2235",ratio:"\u2236",Proportion:"\u2237",minusd:"\u2238",dotminus:"\u2238",mDDot:"\u223A",homtht:"\u223B",sim:"\u223C",bsimg:"\u223D",backsim:"\u223D",ac:"\u223E",mstpos:"\u223E",acd:"\u223F",VerticalTilde:"\u2240",wr:"\u2240",wreath:"\u2240",nsime:"\u2244",nsimeq:"\u2244",nsimeq:"\u2244",ncong:"\u2247",simne:"\u2246",ncongdot:"\u2A6D\u0338",ngsim:"\u2275",nsim:"\u2241",napprox:"\u2249",nap:"\u2249",ngeq:"\u2271",nge:"\u2271",nleq:"\u2270",nle:"\u2270",ngtr:"\u226F",ngt:"\u226F",nless:"\u226E",nlt:"\u226E",nprec:"\u2280",npr:"\u2280",nsucc:"\u2281",nsc:"\u2281"},npe={larr:"\u2190",leftarrow:"\u2190",LeftArrow:"\u2190",uarr:"\u2191",uparrow:"\u2191",UpArrow:"\u2191",rarr:"\u2192",rightarrow:"\u2192",RightArrow:"\u2192",darr:"\u2193",downarrow:"\u2193",DownArrow:"\u2193",harr:"\u2194",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",varr:"\u2195",updownarrow:"\u2195",UpDownArrow:"\u2195",nwarr:"\u2196",nwarrow:"\u2196",UpperLeftArrow:"\u2196",nearr:"\u2197",nearrow:"\u2197",UpperRightArrow:"\u2197",searr:"\u2198",searrow:"\u2198",LowerRightArrow:"\u2198",swarr:"\u2199",swarrow:"\u2199",LowerLeftArrow:"\u2199",lArr:"\u21D0",Leftarrow:"\u21D0",uArr:"\u21D1",Uparrow:"\u21D1",rArr:"\u21D2",Rightarrow:"\u21D2",dArr:"\u21D3",Downarrow:"\u21D3",hArr:"\u21D4",Leftrightarrow:"\u21D4",iff:"\u21D4",vArr:"\u21D5",Updownarrow:"\u21D5",lAarr:"\u21DA",Lleftarrow:"\u21DA",rAarr:"\u21DB",Rrightarrow:"\u21DB",lrarr:"\u21C6",leftrightarrows:"\u21C6",rlarr:"\u21C4",rightleftarrows:"\u21C4",lrhar:"\u21CB",leftrightharpoons:"\u21CB",ReverseEquilibrium:"\u21CB",rlhar:"\u21CC",rightleftharpoons:"\u21CC",Equilibrium:"\u21CC",udarr:"\u21C5",UpArrowDownArrow:"\u21C5",duarr:"\u21F5",DownArrowUpArrow:"\u21F5",llarr:"\u21C7",leftleftarrows:"\u21C7",rrarr:"\u21C9",rightrightarrows:"\u21C9",ddarr:"\u21CA",downdownarrows:"\u21CA",har:"\u21BD",lhard:"\u21BD",leftharpoondown:"\u21BD",lharu:"\u21BC",leftharpoonup:"\u21BC",rhard:"\u21C1",rightharpoondown:"\u21C1",rharu:"\u21C0",rightharpoonup:"\u21C0",lsh:"\u21B0",Lsh:"\u21B0",rsh:"\u21B1",Rsh:"\u21B1",ldsh:"\u21B2",rdsh:"\u21B3",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",mapstoleft:"\u21A4",mapstoup:"\u21A5",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",crarr:"\u21B5",nwarrow:"\u2196",nearrow:"\u2197",searrow:"\u2198",swarrow:"\u2199",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nrightarrow:"\u219B",nrarr:"\u219B",larrtl:"\u21A2",rarrtl:"\u21A3",leftarrowtail:"\u21A2",rightarrowtail:"\u21A3",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Larr:"\u219E",Rarr:"\u21A0",larrhk:"\u21A9",rarrhk:"\u21AA",larrlp:"\u21AB",looparrowleft:"\u21AB",rarrlp:"\u21AC",looparrowright:"\u21AC",harrw:"\u21AD",leftrightsquigarrow:"\u21AD",nrarrw:"\u219D\u0338",rarrw:"\u219D",rightsquigarrow:"\u219D",larrbfs:"\u291F",rarrbfs:"\u2920",nvHarr:"\u2904",nvlArr:"\u2902",nvrArr:"\u2903",larrfs:"\u291D",rarrfs:"\u291E",Map:"\u2905",larrsim:"\u2973",rarrsim:"\u2974",harrcir:"\u2948",Uarrocir:"\u2949",lurdshar:"\u294A",ldrdhar:"\u2967",ldrushar:"\u294B",rdldhar:"\u2969",lrhard:"\u296D",rlhar:"\u21CC",uharr:"\u21BE",uharl:"\u21BF",dharr:"\u21C2",dharl:"\u21C3",Uarr:"\u219F",Darr:"\u21A1",zigrarr:"\u21DD",nwArr:"\u21D6",neArr:"\u21D7",seArr:"\u21D8",swArr:"\u21D9",nharr:"\u21AE",nhArr:"\u21CE",nlarr:"\u219A",nlArr:"\u21CD",nrarr:"\u219B",nrArr:"\u21CF",larrb:"\u21E4",LeftArrowBar:"\u21E4",rarrb:"\u21E5",RightArrowBar:"\u21E5"},spe={square:"\u25A1",Square:"\u25A1",squ:"\u25A1",squf:"\u25AA",squarf:"\u25AA",blacksquar:"\u25AA",blacksquare:"\u25AA",FilledVerySmallSquare:"\u25AA",blk34:"\u2593",blk12:"\u2592",blk14:"\u2591",block:"\u2588",srect:"\u25AD",rect:"\u25AD",sdot:"\u22C5",sdotb:"\u22A1",dotsquare:"\u22A1",triangle:"\u25B5",tri:"\u25B5",trine:"\u25B5",utri:"\u25B5",triangledown:"\u25BF",dtri:"\u25BF",tridown:"\u25BF",triangleleft:"\u25C3",ltri:"\u25C3",triangleright:"\u25B9",rtri:"\u25B9",blacktriangle:"\u25B4",utrif:"\u25B4",blacktriangledown:"\u25BE",dtrif:"\u25BE",blacktriangleleft:"\u25C2",ltrif:"\u25C2",blacktriangleright:"\u25B8",rtrif:"\u25B8",loz:"\u25CA",lozenge:"\u25CA",blacklozenge:"\u29EB",lozf:"\u29EB",bigcirc:"\u25EF",xcirc:"\u25EF",circ:"\u02C6",Circle:"\u25CB",cir:"\u25CB",o:"\u25CB",bullet:"\u2022",bull:"\u2022",hellip:"\u2026",mldr:"\u2026",nldr:"\u2025",boxh:"\u2500",HorizontalLine:"\u2500",boxv:"\u2502",boxdr:"\u250C",boxdl:"\u2510",boxur:"\u2514",boxul:"\u2518",boxvr:"\u251C",boxvl:"\u2524",boxhd:"\u252C",boxhu:"\u2534",boxvh:"\u253C",boxH:"\u2550",boxV:"\u2551",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxDl:"\u2555",boxdL:"\u2556",boxDL:"\u2557",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxUl:"\u255C",boxuL:"\u255B",boxUL:"\u255D",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",boxVl:"\u2562",boxvL:"\u2561",boxVL:"\u2563",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C"},ope={excl:"!",iexcl:"\xA1",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",nbsp:"\xA0",comma:",",period:".",colon:":",semi:";",vert:"|",Verbar:"\u2016",verbar:"|",dblac:"\u02DD",circ:"\u02C6",caron:"\u02C7",breve:"\u02D8",dot:"\u02D9",ring:"\u02DA",ogon:"\u02DB",tilde:"\u02DC",DiacriticalGrave:"`",DiacriticalAcute:"\xB4",DiacriticalTilde:"\u02DC",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",grave:"`",acute:"\xB4"},lR={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",euro:"\u20AC",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"},ipe={frac12:"\xBD",half:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044"},ape={trade:"\u2122",TRADE:"\u2122",telrec:"\u2315",target:"\u2316",ulcorn:"\u231C",ulcorner:"\u231C",urcorn:"\u231D",urcorner:"\u231D",dlcorn:"\u231E",llcorner:"\u231E",drcorn:"\u231F",lrcorner:"\u231F",intercal:"\u22BA",intcal:"\u22BA",oplus:"\u2295",CirclePlus:"\u2295",ominus:"\u2296",CircleMinus:"\u2296",otimes:"\u2297",CircleTimes:"\u2297",osol:"\u2298",odot:"\u2299",CircleDot:"\u2299",oast:"\u229B",circledast:"\u229B",odash:"\u229D",circleddash:"\u229D",ocirc:"\u229A",circledcirc:"\u229A",boxplus:"\u229E",plusb:"\u229E",boxminus:"\u229F",minusb:"\u229F",boxtimes:"\u22A0",timesb:"\u22A0",boxdot:"\u22A1",sdotb:"\u22A1",veebar:"\u22BB",vee:"\u2228",barvee:"\u22BD",and:"\u2227",wedge:"\u2227",Cap:"\u22D2",Cup:"\u22D3",Fork:"\u22D4",pitchfork:"\u22D4",epar:"\u22D5",ltlarr:"\u2976",nvap:"\u224D\u20D2",nvsim:"\u223C\u20D2",nvge:"\u2265\u20D2",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvgt:">\u20D2",nvltrie:"\u22B4\u20D2",nvrtrie:"\u22B5\u20D2",Vdash:"\u22A9",dashv:"\u22A3",vDash:"\u22A8",Vdash:"\u22A9",Vvdash:"\u22AA",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF"},get={...Jde,...Kde,...Xde,...Zde,...epe,...tpe,...rpe,...npe,...spe,...ope,...lR,...ipe,...ape},GC={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'},lq={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};var yet=new Set("!?\\\\/[]$%{}^&*()<>|+");function cpe(t){if(t[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${t}"`);for(let e of t)if(yet.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${t}"`);return t}function uq(...t){let e=Object.create(null);for(let r of t)if(r)for(let n of Object.keys(r)){let s=r[n];if(typeof s=="string")e[n]=s;else if(s&&typeof s=="object"&&s.val!==void 0){let o=s.val;typeof o=="string"&&(e[n]=o)}}return e}var wm="external",uR="base",dq="all";function Eet(t){return!t||t===wm?new Set([wm]):t===dq?new Set([dq]):t===uR?new Set([uR]):Array.isArray(t)?new Set(t):new Set([wm])}var Ys=Object.freeze({allow:0,leave:1,remove:2,throw:3}),Cet=new Set([9,10,13]);function Iet(t){if(!t)return{xmlVersion:1,onLevel:Ys.allow,nullLevel:Ys.remove};let e=t.xmlVersion===1.1?1.1:1,r=Ys[t.onNCR]??Ys.allow,n=Ys[t.nullNCR]??Ys.remove,s=Math.max(n,Ys.remove);return{xmlVersion:e,onLevel:r,nullLevel:s}}var Bh=class{constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:n=>n,this._limitTiers=Eet(this._limit.applyLimitsTo??wm),this._numericAllowed=e.numericAllowed??!0,this._baseMap=uq(GC,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let r=Iet(e.ncr);this._ncrXmlVersion=r.xmlVersion,this._ncrOnLevel=r.onLevel,this._ncrNullLevel=r.nullLevel}setExternalEntities(e){if(e)for(let r of Object.keys(e))cpe(r);this._externalMap=uq(e)}addExternalEntity(e,r){cpe(e),typeof r=="string"&&r.indexOf("&")===-1&&(this._externalMap[e]=r)}addInputEntities(e){this._totalExpansions=0,this._expandedLength=0,this._inputMap=uq(e)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0)return e;let r=e,n=[],s=e.length,o=0,i=0,a=this._maxTotalExpansions>0,c=this._maxExpandedLength>0,l=a||c;for(;i=s||e.charCodeAt(d)!==59){i++;continue}let p=e.slice(i+1,d);if(p.length===0){i++;continue}let m,h;if(this._removeSet.has(p))m="",h===void 0&&(h=wm);else if(this._leaveSet.has(p)){i++;continue}else if(p.charCodeAt(0)===35){let y=this._resolveNCR(p);if(y===void 0){i++;continue}m=y,h=uR}else{let y=this._resolveName(p);m=y?.value,h=y?.tier}if(m===void 0){i++;continue}if(i>o&&n.push(e.slice(o,i)),n.push(m),o=d+1,i=o,l&&this._tierCounts(h)){if(a&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(c){let y=m.length-(p.length+2);if(y>0&&(this._expandedLength+=y,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}o=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!Cet.has(e)?Ys.remove:-1}_applyNCRAction(e,r,n){switch(e){case Ys.allow:return String.fromCodePoint(n);case Ys.remove:return"";case Ys.leave:return;case Ys.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${r}; (U+${n.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(n)}}_resolveNCR(e){let r=e.charCodeAt(1),n;if(r===120||r===88?n=parseInt(e.slice(2),16):n=parseInt(e.slice(1),10),Number.isNaN(n)||n<0||n>1114111)return;let s=this._classifyNCR(n);if(!this._numericAllowed&&sqC.includes(t)?"__"+t:t,xet={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},stopNodes:[],alwaysCreateTextNode:!1,isArray:()=>!1,commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:function(t,e,r){return t},captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:lpe};function wet(t,e){if(typeof t!="string")return;let r=t.toLowerCase();if(qC.some(n=>r===n.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);if(aR.some(n=>r===n.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`)}function upe(t,e){return typeof t=="boolean"?{enabled:t,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof t=="object"&&t!==null?{enabled:t.enabled!==!1,maxEntitySize:Math.max(1,t.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,t.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,t.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,t.maxExpandedLength??1e5),maxEntityCount:Math.max(1,t.maxEntityCount??1e3),allowedTags:t.allowedTags??null,tagFilter:t.tagFilter??null,appliesTo:t.appliesTo??"all"}:upe(!0)}var dpe=function(t){let e=Object.assign({},xet,t),r=[{value:e.attributeNamePrefix,name:"attributeNamePrefix"},{value:e.attributesGroupName,name:"attributesGroupName"},{value:e.textNodeName,name:"textNodeName"},{value:e.cdataPropName,name:"cdataPropName"},{value:e.commentPropName,name:"commentPropName"}];for(let{value:n,name:s}of r)n&&wet(n,s);return e.onDangerousProperty===null&&(e.onDangerousProperty=lpe),e.processEntities=upe(e.processEntities,e.htmlEntities),e.unpairedTagsSet=new Set(e.unpairedTags),e.stopNodes&&Array.isArray(e.stopNodes)&&(e.stopNodes=e.stopNodes.map(n=>typeof n=="string"&&n.startsWith("*.")?".."+n.substring(2):n)),e};var dR;typeof Symbol!="function"?dR="@@xmlMetadata":dR=Symbol("XML Node Metadata");var Ws=class{constructor(e){this.tagname=e,this.child=[],this[":@"]=Object.create(null)}add(e,r){e==="__proto__"&&(e="#__proto__"),this.child.push({[e]:r})}addChild(e,r){e.tagname==="__proto__"&&(e.tagname="#__proto__"),e[":@"]&&Object.keys(e[":@"]).length>0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child}),r!==void 0&&(this.child[this.child.length-1][dR]={startIndex:r})}static getMetaDataSymbol(){return dR}};var ppe=":A-Za-z_\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",bet=ppe+"\\-\\.\\d\xB7\u0300-\u036F\u203F-\u2040",mpe=":A-Za-z_\xC0-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}",Bet=mpe+"\\-\\.\\d\xB7\u0300-\u036F\u0487\u203F-\u2040",fpe=(t,e,r="")=>{let n=t.replace(":",""),s=e.replace(":",""),o=`[${n}][${s}]*`;return{name:new RegExp(`^[${t}][${e}]*$`,r),ncName:new RegExp(`^${o}$`,r),qName:new RegExp(`^${o}(?::${o})?$`,r),nmToken:new RegExp(`^[${e}]+$`,r),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,r)}},Ret=fpe(ppe,bet),Net=fpe(mpe,Bet,"u"),Tet=(t="1.0")=>t==="1.1"?Net:Ret;var bm=(t,{xmlVersion:e="1.0"}={})=>Tet(e).qName.test(t);var zC=class{constructor(e,r){this.suppressValidationErr=!e,this.options=e,this.xmlVersion=r||1}setXmlVersion(e=1){this.xmlVersion=e}readDocType(e,r){let n=Object.create(null),s=0;if(e[r+3]==="O"&&e[r+4]==="C"&&e[r+5]==="T"&&e[r+6]==="Y"&&e[r+7]==="P"&&e[r+8]==="E"){r=r+9;let o=1,i=!1,a=!1,c="";for(;r=this.options.maxEntityCount)throw new Error(`Entity count (${s+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);n[l]=u,s++}}else if(i&&Sm(e,"!ELEMENT",r)){r+=8;let{index:l}=this.readElementExp(e,r+1);r=l}else if(i&&Sm(e,"!ATTLIST",r))r+=8;else if(i&&Sm(e,"!NOTATION",r)){r+=9;let{index:l}=this.readNotationExp(e,r+1,this.suppressValidationErr);r=l}else if(Sm(e,"!--",r))a=!0;else throw new Error("Invalid DOCTYPE");o++,c=""}else if(e[r]===">"){if(a?e[r-1]==="-"&&e[r-2]==="-"&&(a=!1,o--):o--,o===0)break}else e[r]==="["?i=!0:c+=e[r];if(o!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:n,i:r}}readEntityExp(e,r){r=js(e,r);let n=r;for(;rthis.options.maxEntitySize)throw new Error(`Entity "${s}" size (${o.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return r--,[s,o,r]}readNotationExp(e,r){r=js(e,r);let n=r;for(;r{for(;e1||o.length===1&&!a))return t;{let c=Number(r),l=String(c);if(c===0)return c;if(l.search(/[eE]/)!==-1)return e.eNotation?c:t;if(r.indexOf(".")!==-1)return l==="0"||l===i||l===`${s}${i}`?c:t;let u=o?i:r;return o?u===l||s+u===l?c:t:u===l||u===s+l?c:t}}else return t}}else return Met(t,Number(r),e)}var ket=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function Let(t,e,r){if(!r.eNotation)return t;let n=e.match(ket);if(n){let s=n[1]||"",o=n[3].indexOf("e")===-1?"E":"e",i=n[2],a=s?t[i.length+1]===o:t[i.length]===o;return i.length>1&&a?t:i.length===1&&(n[3].startsWith(`.${o}`)||n[3][0]===o)?Number(e):i.length>0?r.leadingZeros&&!a?(e=(n[1]||"")+n[3],Number(e)):t:Number(e)}else return t}function Oet(t){return t&&t.indexOf(".")!==-1&&(t=t.replace(/0+$/,""),t==="."?t="0":t[0]==="."?t="0"+t:t[t.length-1]==="."&&(t=t.substring(0,t.length-1))),t}function pq(t,e){let r=t.trim();if((e===2||e===8)&&(t=r.substring(2)),parseInt)return parseInt(t,e);if(Number.parseInt)return Number.parseInt(t,e);if(window&&window.parseInt)return window.parseInt(t,e);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}function Met(t,e,r){let n=e===1/0;switch(r.infinity.toLowerCase()){case"null":return null;case"infinity":return e;case"string":return n?"Infinity":"-Infinity";default:return t}}function fq(t){return typeof t=="function"?t:Array.isArray(t)?e=>{for(let r of t)if(typeof r=="string"&&e===r||r instanceof RegExp&&r.test(e))return!0}:()=>!1}var Lo=class{constructor(e,r={},n){this.pattern=e,this.separator=r.separator||".",this.segments=this._parse(e),this.data=n,this._hasDeepWildcard=this.segments.some(s=>s.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(s=>s.attrName!==void 0),this._hasPositionSelector=this.segments.some(s=>s.position!==void 0)}_parse(e){let r=[],n=0,s="";for(;n0?e[e.length-1].tag:void 0}getCurrentNamespace(){let e=this._matcher.path;return e.length>0?e[e.length-1].namespace:void 0}getAttrValue(e){let r=this._matcher.path;if(r.length!==0)return r[r.length-1].values?.[e]}hasAttr(e){let r=this._matcher.path;if(r.length===0)return!1;let n=r[r.length-1];return n.values!==void 0&&e in n.values}getPosition(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].position??0}getCounter(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(e,r=!0){return this._matcher.toString(e,r)}toArray(){return this._matcher.path.map(e=>e.tag)}matches(e){return this._matcher.matches(e)}matchesAny(e){return e.matchesAny(this._matcher)}},lc=class{constructor(e={}){this.separator=e.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new Aq(this)}push(e,r=null,n=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let s=this.path.length;this.siblingStacks[s]||(this.siblingStacks[s]=new Map);let o=this.siblingStacks[s],i=n?`${n}:${e}`:e,a=o.get(i)||0,c=0;for(let u of o.values())c+=u;o.set(i,a+1);let l={tag:e,position:c,counter:a};n!=null&&(l.namespace=n),r!=null&&(l.values=r),this.path.push(l)}pop(){if(this.path.length===0)return;this._pathStringCache=null;let e=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),e}updateCurrent(e){if(this.path.length>0){let r=this.path[this.path.length-1];e!=null&&(r.values=e)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(e){if(this.path.length!==0)return this.path[this.path.length-1].values?.[e]}hasAttr(e){if(this.path.length===0)return!1;let r=this.path[this.path.length-1];return r.values!==void 0&&e in r.values}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(e,r=!0){let n=e||this.separator;if(n===this.separator&&r===!0){if(this._pathStringCache!==null)return this._pathStringCache;let o=this.path.map(i=>i.namespace?`${i.namespace}:${i.tag}`:i.tag).join(n);return this._pathStringCache=o,o}return this.path.map(o=>r&&o.namespace?`${o.namespace}:${o.tag}`:o.tag).join(n)}toArray(){return this.path.map(e=>e.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(e){let r=e.segments;return r.length===0?!1:e.hasDeepWildcard()?this._matchWithDeepWildcard(r):this._matchSimple(r)}_matchSimple(e){if(this.path.length!==e.length)return!1;for(let r=0;r=0&&r>=0;){let s=e[n];if(s.type==="deep-wildcard"){if(n--,n<0)return!0;let o=e[n],i=!1;for(let a=r;a>=0;a--)if(this._matchSegment(o,this.path[a],a===this.path.length-1)){r=a-1,n--,i=!0;break}if(!i)return!1}else{if(!this._matchSegment(s,this.path[r],r===this.path.length-1))return!1;r--,n--}}return n<0}_matchSegment(e,r,n){if(e.tag!=="*"&&e.tag!==r.tag||e.namespace!==void 0&&e.namespace!=="*"&&e.namespace!==r.namespace||e.attrName!==void 0&&(!n||!r.values||!(e.attrName in r.values)||e.attrValue!==void 0&&String(r.values[e.attrName])!==String(e.attrValue)))return!1;if(e.position!==void 0){if(!n)return!1;let s=r.counter??0;if(e.position==="first"&&s!==0)return!1;if(e.position==="odd"&&s%2!==1)return!1;if(e.position==="even"&&s%2!==0)return!1;if(e.position==="nth"&&s!==e.positionValue)return!1}return!0}matchesAny(e){return e.matchesAny(this)}snapshot(){return{path:this.path.map(e=>({...e})),siblingStacks:this.siblingStacks.map(e=>new Map(e))}}restore(e){this._pathStringCache=null,this.path=e.path.map(r=>({...r})),this.siblingStacks=e.siblingStacks.map(r=>new Map(r))}readOnly(){return this._view}};function Fet(t,e){if(!t)return{};let r=e.attributesGroupName?t[e.attributesGroupName]:t;if(!r)return{};let n={};for(let s in r)if(s.startsWith(e.attributeNamePrefix)){let o=s.substring(e.attributeNamePrefix.length);n[o]=r[s]}else n[s]=r[s];return n}function Uet(t){if(!t||typeof t!="string")return;let e=t.indexOf(":");if(e!==-1&&e>0){let r=t.substring(0,e);if(r!=="xmlns")return r}}var VC=class{constructor(e,r){this.options=e,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=zet,this.parseTextData=qet,this.resolveNameSpace=$et,this.buildAttributesMap=Het,this.isItStopNode=jet,this.replaceEntitiesValue=Yet,this.readStopNodeData=Xet,this.saveTextToParentTag=Wet,this.addChild=Vet,this.ignoreAttributesFn=fq(this.options.ignoreAttributes),this.entityExpansionCount=0,this.currentExpandedLength=0;let n={...GC};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?n=this.options.htmlEntities:this.options.htmlEntities===!0&&(n={...lq,...lR}),this.entityDecoder=new Bh({namedEntities:{...n,...r},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo}})),this.matcher=new lc,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new Rh;let s=this.options.stopNodes;if(s&&s.length>0){for(let o=0;o0)){i||(t=this.replaceEntitiesValue(t,e,r));let c=a.jPath?r.toString():r,l=a.tagValueProcessor(e,t,c,s,o);return l==null?t:typeof l!=typeof t||l!==t?l:a.trimValues||t.trim()===t?yq(t,a.parseTagValue,a.numberParseOptions):t}}function $et(t){if(this.options.removeNSPrefix){let e=t.split(":"),r=t.charAt(0)==="/"?"/":"";if(e[0]==="xmlns")return"";e.length===2&&(t=r+e[1])}return t}var Get=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function Het(t,e,r,n=!1){let s=this.options;if(n===!0||s.ignoreAttributes!==!0&&typeof t=="string"){let o=iR(t,Get),i=o.length,a={},c=new Array(i),l=!1,u={};for(let m=0;m",a,"Closing Tag is not closed."),d=t.substring(a+2,u).trim();if(s.removeNSPrefix){let m=d.indexOf(":");m!==-1&&(d=d.substr(m+1))}d=hq(s.transformTagName,d,"",s).tagName,r&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher));let p=this.matcher.getCurrentTag();if(d&&s.unpairedTagsSet.has(d))throw new Error(`Unpaired tag can not be used as closing tag: `);p&&s.unpairedTagsSet.has(p)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,r=this.tagsNodeStack.pop(),n="",a=u}else if(l===63){let u=gq(t,a,!1,"?>");if(!u)throw new Error("Pi Tag is not closed.");n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let d=this.buildAttributesMap(u.tagExp,this.matcher,u.tagName,!0);if(d){let p=d[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(p)||1),o.setXmlVersion(Number(p)||1)}if(!(s.ignoreDeclaration&&u.tagName==="?xml"||s.ignorePiTags)){let p=new Ws(u.tagName);p.add(s.textNodeName,""),u.tagName!==u.tagExp&&u.attrExpPresent&&s.ignoreAttributes!==!0&&(p[":@"]=d),this.addChild(r,p,this.readonlyMatcher,a)}a=u.closeIndex+1}else if(l===33&&t.charCodeAt(a+2)===45&&t.charCodeAt(a+3)===45){let u=Nh(t,"-->",a+4,"Comment is not closed.");if(s.commentPropName){let d=t.substring(a+4,u-2);n=this.saveTextToParentTag(n,r,this.readonlyMatcher),r.add(s.commentPropName,[{[s.textNodeName]:d}])}a=u}else if(l===33&&t.charCodeAt(a+2)===68){let u=o.readDocType(t,a);this.entityDecoder.addInputEntities(u.entities),a=u.i}else if(l===33&&t.charCodeAt(a+2)===91){let u=Nh(t,"]]>",a,"CDATA is not closed.")-2,d=t.substring(a+9,u);n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let p=this.parseTextData(d,r.tagname,this.readonlyMatcher,!0,!1,!0,!0);p==null&&(p=""),s.cdataPropName?r.add(s.cdataPropName,[{[s.textNodeName]:d}]):r.add(s.textNodeName,p),a=u+2}else{let u=gq(t,a,s.removeNSPrefix);if(!u){let O=t.substring(Math.max(0,a-50),Math.min(i,a+50));throw new Error(`readTagExp returned undefined at position ${a}. Context: "${O}"`)}let d=u.tagName,p=u.rawTagName,m=u.tagExp,h=u.attrExpPresent,y=u.closeIndex;if({tagName:d,tagExp:m}=hq(s.transformTagName,d,m,s),s.strictReservedNames&&(d===s.commentPropName||d===s.cdataPropName||d===s.textNodeName||d===s.attributesGroupName))throw new Error(`Invalid tag name: ${d}`);r&&n&&r.tagname!=="!xml"&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher,!1));let I=r;I&&s.unpairedTagsSet.has(I.tagname)&&(r=this.tagsNodeStack.pop(),this.matcher.pop());let x=!1;m.length>0&&m.lastIndexOf("/")===m.length-1&&(x=!0,d[d.length-1]==="/"?(d=d.substr(0,d.length-1),m=d):m=m.substr(0,m.length-1),h=d!==m);let b=null,T={},_;_=Uet(p),d!==e.tagname&&this.matcher.push(d,{},_),d!==m&&h&&(b=this.buildAttributesMap(m,this.matcher,d),b&&(T=Fet(b,s))),d!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let U=a;if(this.isCurrentNodeStopNode){let O="";if(x)a=u.closeIndex;else if(s.unpairedTagsSet.has(d))a=u.closeIndex;else{let de=this.readStopNodeData(t,p,y+1);if(!de)throw new Error(`Unexpected end of ${p}`);a=de.i,O=de.tagContent}let z=new Ws(d);b&&(z[":@"]=b),z.add(s.textNodeName,O),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(r,z,this.readonlyMatcher,U)}else{if(x){({tagName:d,tagExp:m}=hq(s.transformTagName,d,m,s));let O=new Ws(d);b&&(O[":@"]=b),this.addChild(r,O,this.readonlyMatcher,U),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(s.unpairedTagsSet.has(d)){let O=new Ws(d);b&&(O[":@"]=b),this.addChild(r,O,this.readonlyMatcher,U),this.matcher.pop(),this.isCurrentNodeStopNode=!1,a=u.closeIndex;continue}else{let O=new Ws(d);if(this.tagsNodeStack.length>s.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(r),b&&(O[":@"]=b),this.addChild(r,O,this.readonlyMatcher,U),r=O}n="",a=y}}}else n+=t[a];return e.child};function Vet(t,e,r,n){this.options.captureMetaData||(n=void 0);let s=this.options.jPath?r.toString():r,o=this.options.updateTag(e.tagname,s,e[":@"]);o===!1||(typeof o=="string"&&(e.tagname=o),t.addChild(e,n))}function Yet(t,e,r){let n=this.options.processEntities;if(!n||!n.enabled)return t;if(n.allowedTags){let s=this.options.jPath?r.toString():r;if(!(Array.isArray(n.allowedTags)?n.allowedTags.includes(e):n.allowedTags(e,s)))return t}if(n.tagFilter){let s=this.options.jPath?r.toString():r;if(!n.tagFilter(e,s))return t}return this.entityDecoder.decode(t)}function Wet(t,e,r,n){return t&&(n===void 0&&(n=e.child.length===0),t=this.parseTextData(t,e.tagname,r,!1,e[":@"]?Object.keys(e[":@"]).length!==0:!1,n),t!==void 0&&t!==""&&e.add(this.options.textNodeName,t),t=""),t}function jet(){return this.stopNodeExpressionsSet.size===0?!1:this.matcher.matchesAny(this.stopNodeExpressionsSet)}function Jet(t,e,r=">"){let n=0,s=t.length,o=r.charCodeAt(0),i=r.length>1?r.charCodeAt(1):-1,a="",c=e;for(let l=e;l",r,`${e} is not closed`);if(t.substring(r+2,a).trim()===e&&(s--,s===0))return{tagContent:t.substring(n,r),i:a};r=a}else if(i===63)r=Nh(t,"?>",r+1,"StopNode is not closed.");else if(i===33&&t.charCodeAt(r+2)===45&&t.charCodeAt(r+3)===45)r=Nh(t,"-->",r+3,"StopNode is not closed.");else if(i===33&&t.charCodeAt(r+2)===91)r=Nh(t,"]]>",r,"StopNode is not closed.")-2;else{let a=gq(t,r,!1);a&&((a&&a.tagName)===e&&a.tagExp[a.tagExp.length-1]!=="/"&&s++,r=a.closeIndex)}}}function yq(t,e,r){if(e&&typeof t=="string"){let n=t.trim();return n==="true"?!0:n==="false"?!1:mq(t,r)}else return zde(t)?t:""}function hq(t,e,r,n){if(t){let s=t(e);r===e&&(r=s),e=s}return e=Ape(e,n),{tagName:e,tagExp:r}}function Ape(t,e){if(aR.includes(t))throw new Error(`[SECURITY] Invalid name: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);return qC.includes(t)?e.onDangerousProperty(t):t}var Eq=Ws.getMetaDataSymbol();function Zet(t,e){if(!t||typeof t!="object")return{};if(!e)return t;let r={};for(let n in t)if(n.startsWith(e)){let s=n.substring(e.length);r[s]=t[n]}else r[n]=t[n];return r}function Cq(t,e,r,n){return hpe(t,e,r,n)}function hpe(t,e,r,n){let s,o={};for(let i=0;i0&&(o[e.textNodeName]=s):s!==void 0&&(o[e.textNodeName]=s),o}function ett(t){let e=Object.keys(t);for(let r=0;r/g,"]]]]>")}function bd(t){return String(t).replace(/"/g,""").replace(/'/g,"'")}var ntt=` -`;function stt(t,e){if(!Array.isArray(t)||t.length===0)return"1.0";let r=t[0];if(wq(r)==="?xml"){let s=r[":@"];if(s){let o=e.attributeNamePrefix+"version";if(s[o])return s[o]}}return"1.0"}function ype(t,e,r,n,s){return!r.sanitizeName||bm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}function xq(t,e){let r="";e.format&&(r=ntt);let n=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let i=0;ie.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(t!=null){let c=t.toString();return c=Iq(c,e),c}return""}for(let c=0;c`,a=!1,n.pop();continue}else if(p===e.commentPropName){let T=l[u][0][e.textNodeName],_=pR(T);i+=r+``,a=!0,n.pop();continue}else if(p[0]==="?"){let T=gpe(l[":@"],e,h,n,o);i+=(p==="?xml"?"":r)+`<${p}${T}?>`,a=!0,n.pop();continue}let y=r;y!==""&&(y+=e.indentBy);let I=gpe(l[":@"],e,h,n,o),x=r+`<${p}${I}`,b;h?b=Cpe(l[u],e):b=Epe(l[u],e,y,n,s,o),e.unpairedTags.indexOf(p)!==-1?e.suppressUnpairedNode?i+=x+">":i+=x+"/>":(!b||b.length===0)&&e.suppressEmptyNode?i+=x+"/>":b&&b.endsWith(">")?i+=x+`>${b}${r}`:(i+=x+">",b&&r!==""&&(b.includes("/>")||b.includes("`),a=!0,n.pop()}return i}function ott(t,e){if(!t||e.ignoreAttributes)return null;let r={},n=!1;for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let o=s.startsWith(e.attributeNamePrefix)?s.substr(e.attributeNamePrefix.length):s;r[o]=bd(t[s]),n=!0}return n?r:null}function Cpe(t,e){if(!Array.isArray(t))return t!=null?t.toString():"";let r="";for(let n=0;n`:r+=`<${o}${i}>${a}`}}}return r}function itt(t,e){let r="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let s=t[n];s===!0&&e.suppressBooleanAttributes?r+=` ${n.substr(e.attributeNamePrefix.length)}`:r+=` ${n.substr(e.attributeNamePrefix.length)}="${bd(s)}"`}return r}function wq(t){let e=Object.keys(t);for(let r=0;r0&&e.processEntities)for(let r=0;r{for(let r of t)if(typeof r=="string"&&e===r||r instanceof RegExp&&r.test(e))return!0}:()=>!1}var ctt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:function(t,e){return e},attributeValueProcessor:function(t,e){return e},preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0,sanitizeName:!1};function Js(t){if(this.options=Object.assign({},ctt,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(e=>typeof e=="string"&&e.startsWith("*.")?".."+e.substring(2):e)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let e=0;e +`,"utf-8")],s=P7e(n);s&&t.headers.set("Content-Length",s),t.body=await rde(n)}i(v7e,"buildRequestBody");var vC="multipartPolicy",_7e=70,Q7e=new Set("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'()+,-./:=?");function D7e(t){if(t.length>_7e)throw new Error(`Multipart boundary "${t}" exceeds maximum length of 70 characters`);if(Array.from(t).some(e=>!Q7e.has(e)))throw new Error(`Multipart boundary "${t}" contains invalid characters`)}i(D7e,"assertValidBoundary");function HB(){return{name:vC,async sendRequest(t,e){if(!t.multipartBody)return e(t);if(t.body)throw new Error("multipartBody and regular body cannot be set at the same time");let r=t.multipartBody.boundary,n=t.headers.get("Content-Type")??"multipart/mixed",s=n.match(/^(multipart\/[^ ;]+)(?:; *boundary=(.+))?$/);if(!s)throw new Error(`Got multipart request body, but content-type header was not multipart: ${n}`);let[,o,a]=s;if(a&&r&&a!==r)throw new Error(`Multipart boundary was specified as ${a} in the header, but got ${r} in the request body`);return r??=a,r?D7e(r):r=R7e(),t.headers.set("Content-Type",`${o}; boundary=${r}`),await v7e(t,t.multipartBody.parts,r),t.multipartBody=void 0,e(t)}}}i(HB,"multipartPolicy");function zB(){return AB()}i(zB,"createEmptyPipeline");var nde=pB({logLevelEnvVarName:"AZURE_LOG_LEVEL",namespace:"azure"}),rjt=nde.logger;function ic(t){return nde.createClientLogger(t)}i(ic,"createClientLogger");var ac=ic("core-rest-pipeline");function T2(t={}){return IB({logger:ac.info,...t})}i(T2,"logPolicy");var P2=xB;function v2(t={}){return wB(t)}i(v2,"redirectPolicy");var VB=D(require("node:os"),1),YB=D(require("node:process"),1);function sde(){return"User-Agent"}i(sde,"getHeaderName");async function ode(t){if(YB.default&&YB.default.versions){let e=`${VB.default.type()} ${VB.default.release()}; ${VB.default.arch()}`,r=YB.default.versions;r.bun?t.set("Bun",`${r.bun} (${e})`):r.deno?t.set("Deno",`${r.deno} (${e})`):r.node&&t.set("Node",`${r.node} (${e})`)}}i(ode,"setPlatformSpecificData");var WB="1.22.2";function $7e(t){let e=[];for(let[r,n]of t){let s=n?`${r}/${n}`:r;e.push(s)}return e.join(" ")}i($7e,"getUserAgentString");function ide(){return sde()}i(ide,"getUserAgentHeaderName");async function jB(t){let e=new Map;e.set("core-rest-pipeline",WB),await ode(e);let r=$7e(e);return t?`${t} ${r}`:r}i(jB,"getUserAgentValue");var ade=ide(),cde="userAgentPolicy";function _2(t={}){let e=jB(t.userAgentPrefix);return{name:cde,async sendRequest(r,n){return r.headers.has(ade)||r.headers.set(ade,await e),n(r)}}}i(_2,"userAgentPolicy");var Do=class extends Error{static{i(this,"AbortError")}constructor(e){super(e),this.name="AbortError"}};function Q2(t,e){let{cleanupBeforeAbort:r,abortSignal:n,abortErrorMsg:s}=e??{};return new Promise((o,a)=>{function c(){a(new Do(s??"The operation was aborted."))}i(c,"rejectOnAbort");function l(){n?.removeEventListener("abort",u)}i(l,"removeListeners");function u(){r?.(),l(),c()}if(i(u,"onAbort"),n?.aborted)return c();try{t(d=>{l(),o(d)},d=>{l(),a(d)})}catch(d){a(d)}n?.addEventListener("abort",u)})}i(Q2,"createAbortablePromise");var Y7e="The delay was aborted.";function _C(t,e){let r,{abortSignal:n,abortErrorMsg:s}=e??{};return Q2(o=>{r=setTimeout(o,t)},{cleanupBeforeAbort:i(()=>clearTimeout(r),"cleanupBeforeAbort"),abortSignal:n,abortErrorMsg:s??Y7e})}i(_C,"delay");function Id(t){if(hm(t))return t.message;{let e;try{typeof t=="object"&&t?e=JSON.stringify(t):e=String(t)}catch{e="[unable to stringify input]"}return`Unknown error ${e}`}}i(Id,"getErrorMessage");function lde(t){return hm(t)}i(lde,"isError");function wh(){return Am()}i(wh,"randomUUID");var Rt=Em;var ude=Symbol("rawContent");function k2(t){return typeof t[ude]=="function"}i(k2,"hasRawContent");function dde(t){return k2(t)?t[ude]():t}i(dde,"getRawContent");var JB=vC;function L2(){let t=HB();return{name:JB,sendRequest:i(async(e,r)=>{if(e.multipartBody)for(let n of e.multipartBody.parts)k2(n.body)&&(n.body=dde(n.body));return t.sendRequest(e,r)},"sendRequest")}}i(L2,"multipartPolicy");var O2=bB;function M2(){return SB()}i(M2,"decompressResponsePolicy");function F2(t={}){return NB(t)}i(F2,"defaultRetryPolicy");function U2(){return TB()}i(U2,"formDataPolicy");function xd(t){return b2(t)}i(xd,"getDefaultProxySettings");function q2(t,e){return FB(t,e)}i(q2,"proxyPolicy");var pde="setClientRequestIdPolicy";function $2(t="x-ms-client-request-id"){return{name:pde,async sendRequest(e,r){return e.headers.has(t)||e.headers.set(t,e.requestId),r(e)}}}i($2,"setClientRequestIdPolicy");function G2(t){return UB(t)}i(G2,"agentPolicy");function H2(t){return qB(t)}i(H2,"tlsPolicy");var bh={span:Symbol.for("@azure/core-tracing span"),namespace:Symbol.for("@azure/core-tracing namespace")};function mde(t={}){let e=new z2(t.parentContext);return t.span&&(e=e.setValue(bh.span,t.span)),t.namespace&&(e=e.setValue(bh.namespace,t.namespace)),e}i(mde,"createTracingContext");var z2=class t{static{i(this,"TracingContextImpl")}_contextMap;constructor(e){this._contextMap=e instanceof t?new Map(e._contextMap):new Map}setValue(e,r){let n=new t(this);return n._contextMap.set(e,r),n}getValue(e){return this._contextMap.get(e)}deleteValue(e){let r=new t(this);return r._contextMap.delete(e),r}};var Ade=D(fde(),1),XB=Ade.state;function W7e(){return{end:i(()=>{},"end"),isRecording:i(()=>!1,"isRecording"),recordException:i(()=>{},"recordException"),setAttribute:i(()=>{},"setAttribute"),setStatus:i(()=>{},"setStatus"),addEvent:i(()=>{},"addEvent")}}i(W7e,"createDefaultTracingSpan");function j7e(){return{createRequestHeaders:i(()=>({}),"createRequestHeaders"),parseTraceparentHeader:i(()=>{},"parseTraceparentHeader"),startSpan:i((t,e)=>({span:W7e(),tracingContext:mde({parentContext:e.tracingContext})}),"startSpan"),withContext(t,e,...r){return e(...r)}}}i(j7e,"createDefaultInstrumenter");function QC(){return XB.instrumenterImplementation||(XB.instrumenterImplementation=j7e()),XB.instrumenterImplementation}i(QC,"getInstrumenter");function DC(t){let{namespace:e,packageName:r,packageVersion:n}=t;function s(u,d,p){let m=QC().startSpan(u,{...p,packageName:r,packageVersion:n,tracingContext:d?.tracingOptions?.tracingContext}),f=m.tracingContext,g=m.span;f.getValue(bh.namespace)||(f=f.setValue(bh.namespace,e)),g.setAttribute("az.namespace",f.getValue(bh.namespace));let E=Object.assign({},d,{tracingOptions:{...d?.tracingOptions,tracingContext:f}});return{span:g,updatedOptions:E}}i(s,"startSpan");async function o(u,d,p,m){let{span:f,updatedOptions:g}=s(u,d,m);try{let E=await a(g.tracingOptions.tracingContext,()=>Promise.resolve(p(g,f)));return f.setStatus({status:"success"}),E}catch(E){throw f.setStatus({status:"error",error:E}),E}finally{f.end()}}i(o,"withSpan");function a(u,d,...p){return QC().withContext(u,d,...p)}i(a,"withContext");function c(u){return QC().parseTraceparentHeader(u)}i(c,"parseTraceparentHeader");function l(u){return QC().createRequestHeaders(u)}return i(l,"createRequestHeaders"),{startSpan:s,withSpan:o,withContext:a,parseTraceparentHeader:c,createRequestHeaders:l}}i(DC,"createTracingClient");var Wl=Cs;function xm(t){return hB(t)}i(xm,"isRestError");var hde="tracingPolicy";function V2(t={}){let e=jB(t.userAgentPrefix),r=new la({additionalAllowedQueryParameters:t.additionalAllowedQueryParameters}),n=J7e();return{name:hde,async sendRequest(s,o){if(!n)return o(s);let a=await e,c={"http.url":r.sanitizeUrl(s.url),"http.method":s.method,"http.user_agent":a,requestId:s.requestId};a&&(c["http.user_agent"]=a);let{span:l,tracingContext:u}=K7e(n,s,c)??{};if(!l||!u)return o(s);try{let d=await n.withContext(u,o,s);return Z7e(l,d),d}catch(d){throw X7e(l,d),d}}}}i(V2,"tracingPolicy");function J7e(){try{return DC({namespace:"",packageName:"@azure/core-rest-pipeline",packageVersion:WB})}catch(t){ac.warning(`Error when creating the TracingClient: ${Id(t)}`);return}}i(J7e,"tryCreateTracingClient");function K7e(t,e,r){try{let{span:n,updatedOptions:s}=t.startSpan(`HTTP ${e.method}`,{tracingOptions:e.tracingOptions},{spanKind:"client",spanAttributes:r});if(!n.isRecording()){n.end();return}let o=t.createRequestHeaders(s.tracingOptions.tracingContext);for(let[a,c]of Object.entries(o))e.headers.set(a,c);return{span:n,tracingContext:s.tracingOptions.tracingContext}}catch(n){ac.warning(`Skipping creating a tracing span due to an error: ${Id(n)}`);return}}i(K7e,"tryCreateSpan");function X7e(t,e){try{t.setStatus({status:"error",error:lde(e)?e:void 0}),xm(e)&&e.statusCode&&t.setAttribute("http.status_code",e.statusCode),t.end()}catch(r){ac.warning(`Skipping tracing span processing due to an error: ${Id(r)}`)}}i(X7e,"tryProcessError");function Z7e(t,e){try{t.setAttribute("http.status_code",e.status);let r=e.headers.get("x-ms-request-id");r&&t.setAttribute("serviceRequestId",r),e.status>=400&&t.setStatus({status:"error"}),t.end()}catch(r){ac.warning(`Skipping tracing span processing due to an error: ${Id(r)}`)}}i(Z7e,"tryProcessResponse");function ZB(t){if(t instanceof AbortSignal)return{abortSignal:t};if(t.aborted)return{abortSignal:AbortSignal.abort(t.reason)};let e=new AbortController,r=!0;function n(){r&&(t.removeEventListener("abort",s),r=!1)}i(n,"cleanup");function s(){e.abort(t.reason),n()}return i(s,"listener"),t.addEventListener("abort",s),{abortSignal:e.signal,cleanup:n}}i(ZB,"wrapAbortSignalLike");var eZe="wrapAbortSignalLikePolicy";function gde(){return{name:eZe,sendRequest:i(async(t,e)=>{if(!t.abortSignal)return e(t);let{abortSignal:r,cleanup:n}=ZB(t.abortSignal);t.abortSignal=r;try{return await e(t)}finally{n?.()}},"sendRequest")}}i(gde,"wrapAbortSignalLikePolicy");function Y2(t){let e=zB();return Rt&&(t.agent&&e.addPolicy(G2(t.agent)),t.tlsOptions&&e.addPolicy(H2(t.tlsOptions)),e.addPolicy(q2(t.proxyOptions)),e.addPolicy(M2())),e.addPolicy(gde()),e.addPolicy(U2(),{beforePolicies:[JB]}),e.addPolicy(_2(t.userAgentOptions)),e.addPolicy($2(t.telemetryOptions?.clientRequestIdHeaderName)),e.addPolicy(L2(),{afterPhase:"Deserialize"}),e.addPolicy(F2(t.retryOptions),{phase:"Retry"}),e.addPolicy(V2({...t.userAgentOptions,...t.loggingOptions}),{afterPhase:"Retry"}),Rt&&e.addPolicy(v2(t.redirectOptions),{afterPhase:"Retry"}),e.addPolicy(T2(t.loggingOptions),{afterPhase:"Sign"}),e}i(Y2,"createPipelineFromOptions");function kC(){let t=CB();return{async sendRequest(e){let{abortSignal:r,cleanup:n}=e.abortSignal?ZB(e.abortSignal):{};try{return e.abortSignal=r,await t.sendRequest(e)}finally{n?.()}}}}i(kC,"createDefaultHttpClient");function jl(t){return Po(t)}i(jl,"createHttpHeaders");function LC(t){return fB(t)}i(LC,"createPipelineRequest");var _6t=ic("core-rest-pipeline retryPolicy");var tZe={forcedRefreshWindowInMs:1e3,retryIntervalInMs:3e3,refreshWindowInMs:1e3*60*2};async function rZe(t,e,r){async function n(){if(Date.now()t.getToken(l,u),"tryGetAccessToken"),o.retryIntervalInMs,n?.expiresOnTimestamp??Date.now()).then(p=>(r=null,n=p,s=u.tenantId,n)).catch(p=>{throw r=null,n=null,s=void 0,p})),r}return i(c,"refresh"),async(l,u)=>{let d=!!u.claims,p=s!==u.tenantId;return d&&(n=null),p||d||a.mustRefresh?c(l,u):(a.shouldRefresh&&c(l,u),n)}}i(W2,"createTokenCycler");var Ide="bearerTokenAuthenticationPolicy";async function eR(t,e){try{return[await e(t),void 0]}catch(r){if(xm(r)&&r.response)return[r.response,r];throw r}}i(eR,"trySendRequest");async function nZe(t){let{scopes:e,getAccessToken:r,request:n}=t,s={abortSignal:n.abortSignal,tracingOptions:n.tracingOptions,enableCae:!0},o=await r(e,s);o&&t.request.headers.set("Authorization",`Bearer ${o.token}`)}i(nZe,"defaultAuthorizeRequest");function yde(t){return t.status===401&&t.headers.has("WWW-Authenticate")}i(yde,"isChallengeResponse");async function Ede(t,e){let{scopes:r}=t,n=await t.getAccessToken(r,{enableCae:!0,claims:e});return n?(t.request.headers.set("Authorization",`${n.tokenType??"Bearer"} ${n.token}`),!0):!1}i(Ede,"authorizeRequestOnCaeChallenge");function Sh(t){let{credential:e,scopes:r,challengeCallbacks:n}=t,s=t.logger||ac,o={authorizeRequest:n?.authorizeRequest?.bind(n)??nZe,authorizeRequestOnChallenge:n?.authorizeRequestOnChallenge?.bind(n)},a=e?W2(e):()=>Promise.resolve(null);return{name:Ide,async sendRequest(c,l){if(!c.url.toLowerCase().startsWith("https://"))throw new Error("Bearer token authentication is not permitted for non-TLS protected (non-https) URLs.");await o.authorizeRequest({scopes:Array.isArray(r)?r:[r],request:c,getAccessToken:a,logger:s});let u,d,p;if([u,d]=await eR(c,l),yde(u)){let m=Cde(u.headers.get("WWW-Authenticate"));if(m){let f;try{f=atob(m)}catch{return s.warning(`The WWW-Authenticate header contains "claims" that cannot be parsed. Unable to perform the Continuous Access Evaluation authentication flow. Unparsable claims: ${m}`),u}p=await Ede({scopes:Array.isArray(r)?r:[r],response:u,request:c,getAccessToken:a,logger:s},f),p&&([u,d]=await eR(c,l))}else if(o.authorizeRequestOnChallenge&&(p=await o.authorizeRequestOnChallenge({scopes:Array.isArray(r)?r:[r],request:c,response:u,getAccessToken:a,logger:s}),p&&([u,d]=await eR(c,l)),yde(u)&&(m=Cde(u.headers.get("WWW-Authenticate")),m))){let f;try{f=atob(m)}catch{return s.warning(`The WWW-Authenticate header contains "claims" that cannot be parsed. Unable to perform the Continuous Access Evaluation authentication flow. Unparsable claims: ${m}`),u}p=await Ede({scopes:Array.isArray(r)?r:[r],response:u,request:c,getAccessToken:a,logger:s},f),p&&([u,d]=await eR(c,l))}}if(d)throw d;return u}}}i(Sh,"bearerTokenAuthenticationPolicy");function sZe(t){let e=/(\w+)\s+((?:\w+=(?:"[^"]*"|[^,]*),?\s*)+)/g,r=/(\w+)="([^"]*)"/g,n=[],s;for(;(s=e.exec(t))!==null;){let o=s[1],a=s[2],c={},l;for(;(l=r.exec(a))!==null;)c[l[1]]=l[2];n.push({scheme:o,params:c})}return n}i(sZe,"parseChallenges");function Cde(t){return t?sZe(t).find(r=>r.scheme==="Bearer"&&r.params.claims&&r.params.error==="insufficient_claims")?.params.claims:void 0}i(Cde,"getCaeChallengeClaims");function ko(t){let e=t;return e&&typeof e.getToken=="function"&&(e.signRequest===void 0||e.getToken.length>0)}i(ko,"isTokenCredential");var j2="DisableKeepAlivePolicy";function xde(){return{name:j2,async sendRequest(t,e){return t.disableKeepAlive=!0,e(t)}}}i(xde,"createDisableKeepAlivePolicy");function wde(t){return t.getOrderedPolicies().some(e=>e.name===j2)}i(wde,"pipelineContainsDisableKeepAlivePolicy");function J2(t){return(t instanceof Buffer?t:Buffer.from(t.buffer)).toString("base64")}i(J2,"encodeByteArray");function K2(t){return Buffer.from(t,"base64")}i(K2,"decodeString");function iZe(t,e){return e!=="Composite"&&e!=="Dictionary"&&(typeof t=="string"||typeof t=="number"||typeof t=="boolean"||e?.match(/^(Date|DateTime|DateTimeRfc1123|UnixTime|ByteArray|Base64Url)$/i)!==null||t===void 0||t===null)}i(iZe,"isPrimitiveBody");var aZe=/^(-|\+)?P(?:([-+]?[0-9,.]*)Y)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)W)?(?:([-+]?[0-9,.]*)D)?(?:T(?:([-+]?[0-9,.]*)H)?(?:([-+]?[0-9,.]*)M)?(?:([-+]?[0-9,.]*)S)?)?$/;function bde(t){return aZe.test(t)}i(bde,"isDuration");var cZe=/^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$/i;function Sde(t){return cZe.test(t)}i(Sde,"isValidUuid");function lZe(t){let e={...t.headers,...t.body};return t.hasNullableType&&Object.getOwnPropertyNames(e).length===0?t.shouldWrapBody?{body:null}:null:t.shouldWrapBody?{...t.headers,body:t.body}:e}i(lZe,"handleNullableResponseAndWrappableBody");function X2(t,e){let r=t.parsedHeaders;if(t.request.method==="HEAD")return{...r,body:t.parsedBody};let n=e&&e.bodyMapper,s=!!n?.nullable,o=n?.type.name;if(o==="Stream")return{...r,blobBody:t.blobBody,readableStreamBody:t.readableStreamBody};let a=o==="Composite"&&n.type.modelProperties||{},c=Object.keys(a).some(l=>a[l].serializedName==="");if(o==="Sequence"||c){let l=t.parsedBody??[];for(let u of Object.keys(a))a[u].serializedName&&(l[u]=t.parsedBody?.[u]);if(r)for(let u of Object.keys(r))l[u]=r[u];return s&&!t.parsedBody&&!r&&Object.getOwnPropertyNames(a).length===0?null:l}return lZe({body:t.parsedBody,headers:r,hasNullableType:s,shouldWrapBody:iZe(t.parsedBody,o)})}i(X2,"flattenResponse");var Z2=class{static{i(this,"SerializerImpl")}modelMappers;isXML;constructor(e={},r=!1){this.modelMappers=e,this.isXML=r}validateConstraints(e,r,n){let s=i((o,a)=>{throw new Error(`"${n}" with value "${r}" should satisfy the constraint "${o}": ${a}.`)},"failValidation");if(e.constraints&&r!==void 0&&r!==null){let{ExclusiveMaximum:o,ExclusiveMinimum:a,InclusiveMaximum:c,InclusiveMinimum:l,MaxItems:u,MaxLength:d,MinItems:p,MinLength:m,MultipleOf:f,Pattern:g,UniqueItems:E}=e.constraints;if(o!==void 0&&r>=o&&s("ExclusiveMaximum",o),a!==void 0&&r<=a&&s("ExclusiveMinimum",a),c!==void 0&&r>c&&s("InclusiveMaximum",c),l!==void 0&&ru&&s("MaxItems",u),d!==void 0&&r.length>d&&s("MaxLength",d),p!==void 0&&r.lengthS.indexOf(x)!==w)&&s("UniqueItems",E)}}serialize(e,r,n,s={xml:{}}){let o={xml:{rootName:s.xml.rootName??"",includeRoot:s.xml.includeRoot??!1,xmlCharKey:s.xml.xmlCharKey??"_"}},a={},c=e.type.name;n||(n=e.serializedName),c.match(/^Sequence$/i)!==null&&(a=[]),e.isConstant&&(r=e.defaultValue);let{required:l,nullable:u}=e;if(l&&u&&r===void 0)throw new Error(`${n} cannot be undefined.`);if(l&&!u&&r==null)throw new Error(`${n} cannot be null or undefined.`);if(!l&&u===!1&&r===null)throw new Error(`${n} cannot be null.`);return r==null||c.match(/^any$/i)!==null?a=r:c.match(/^(Number|String|Boolean|Object|Stream|Uuid)$/i)!==null?a=AZe(c,n,r):c.match(/^Enum$/i)!==null?a=hZe(n,e.type.allowedValues,r):c.match(/^(Date|DateTime|TimeSpan|DateTimeRfc1123|UnixTime)$/i)!==null?a=EZe(c,r,n):c.match(/^ByteArray$/i)!==null?a=gZe(n,r):c.match(/^Base64Url$/i)!==null?a=yZe(n,r):c.match(/^Sequence$/i)!==null?a=CZe(this,e,r,n,!!this.isXML,o):c.match(/^Dictionary$/i)!==null?a=IZe(this,e,r,n,!!this.isXML,o):c.match(/^Composite$/i)!==null&&(a=wZe(this,e,r,n,!!this.isXML,o)),a}deserialize(e,r,n,s={xml:{}}){let o={xml:{rootName:s.xml.rootName??"",includeRoot:s.xml.includeRoot??!1,xmlCharKey:s.xml.xmlCharKey??"_"},ignoreUnknownProperties:s.ignoreUnknownProperties??!1};if(r==null)return this.isXML&&e.type.name==="Sequence"&&!e.xmlIsWrapped&&(r=[]),e.defaultValue!==void 0&&(r=e.defaultValue),r;let a,c=e.type.name;if(n||(n=e.serializedName),c.match(/^Composite$/i)!==null)a=SZe(this,e,r,n,o);else{if(this.isXML){let l=o.xml.xmlCharKey;r["$"]!==void 0&&r[l]!==void 0&&(r=r[l])}c.match(/^Number$/i)!==null?(a=parseFloat(r),isNaN(a)&&(a=r)):c.match(/^Boolean$/i)!==null?r==="true"?a=!0:r==="false"?a=!1:a=r:c.match(/^(String|Enum|Object|Stream|Uuid|TimeSpan|any)$/i)!==null?a=r:c.match(/^(Date|DateTime|DateTimeRfc1123)$/i)!==null?a=new Date(r):c.match(/^UnixTime$/i)!==null?a=fZe(r):c.match(/^ByteArray$/i)!==null?a=K2(r):c.match(/^Base64Url$/i)!==null?a=pZe(r):c.match(/^Sequence$/i)!==null?a=RZe(this,e,r,n,o):c.match(/^Dictionary$/i)!==null&&(a=BZe(this,e,r,n,o))}return e.isConstant&&(a=e.defaultValue),a}};function Lo(t={},e=!1){return new Z2(t,e)}i(Lo,"createSerializer");function uZe(t,e){let r=t.length;for(;r-1>=0&&t[r-1]===e;)--r;return t.substr(0,r)}i(uZe,"trimEnd");function dZe(t){if(!t)return;if(!(t instanceof Uint8Array))throw new Error("Please provide an input of type Uint8Array for converting to Base64Url.");let e=J2(t);return uZe(e,"=").replace(/\+/g,"-").replace(/\//g,"_")}i(dZe,"bufferToBase64Url");function pZe(t){if(t){if(t&&typeof t.valueOf()!="string")throw new Error("Please provide an input of type string for converting to Uint8Array");return t=t.replace(/-/g,"+").replace(/_/g,"/"),K2(t)}}i(pZe,"base64UrlToByteArray");function eq(t){let e=[],r="";if(t){let n=t.split(".");for(let s of n)s.charAt(s.length-1)==="\\"?r+=s.substr(0,s.length-1)+".":(r+=s,e.push(r),r="")}return e}i(eq,"splitSerializeName");function mZe(t){if(t)return typeof t.valueOf()=="string"&&(t=new Date(t)),Math.floor(t.getTime()/1e3)}i(mZe,"dateToUnixTime");function fZe(t){if(t)return new Date(t*1e3)}i(fZe,"unixTimeToDate");function AZe(t,e,r){if(r!=null){if(t.match(/^Number$/i)!==null){if(typeof r!="number")throw new Error(`${e} with value ${r} must be of type number.`)}else if(t.match(/^String$/i)!==null){if(typeof r.valueOf()!="string")throw new Error(`${e} with value "${r}" must be of type string.`)}else if(t.match(/^Uuid$/i)!==null){if(!(typeof r.valueOf()=="string"&&Sde(r)))throw new Error(`${e} with value "${r}" must be of type string and a valid uuid.`)}else if(t.match(/^Boolean$/i)!==null){if(typeof r!="boolean")throw new Error(`${e} with value ${r} must be of type boolean.`)}else if(t.match(/^Stream$/i)!==null){let n=typeof r;if(n!=="string"&&typeof r.pipe!="function"&&typeof r.tee!="function"&&!(r instanceof ArrayBuffer)&&!ArrayBuffer.isView(r)&&!((typeof Blob=="function"||typeof Blob=="object")&&r instanceof Blob)&&n!=="function")throw new Error(`${e} must be a string, Blob, ArrayBuffer, ArrayBufferView, ReadableStream, or () => ReadableStream.`)}}return r}i(AZe,"serializeBasicTypes");function hZe(t,e,r){if(!e)throw new Error(`Please provide a set of allowedValues to validate ${t} as an Enum Type.`);if(!e.some(s=>typeof s.valueOf()=="string"?s.toLowerCase()===r.toLowerCase():s===r))throw new Error(`${r} is not a valid value for ${t}. The valid values are: ${JSON.stringify(e)}.`);return r}i(hZe,"serializeEnumType");function gZe(t,e){if(e!=null){if(!(e instanceof Uint8Array))throw new Error(`${t} must be of type Uint8Array.`);e=J2(e)}return e}i(gZe,"serializeByteArrayType");function yZe(t,e){if(e!=null){if(!(e instanceof Uint8Array))throw new Error(`${t} must be of type Uint8Array.`);e=dZe(e)}return e}i(yZe,"serializeBase64UrlType");function EZe(t,e,r){if(e!=null){if(t.match(/^Date$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in ISO8601 format.`);e=e instanceof Date?e.toISOString().substring(0,10):new Date(e).toISOString().substring(0,10)}else if(t.match(/^DateTime$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in ISO8601 format.`);e=e instanceof Date?e.toISOString():new Date(e).toISOString()}else if(t.match(/^DateTimeRfc1123$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in RFC-1123 format.`);e=e instanceof Date?e.toUTCString():new Date(e).toUTCString()}else if(t.match(/^UnixTime$/i)!==null){if(!(e instanceof Date||typeof e.valueOf()=="string"&&!isNaN(Date.parse(e))))throw new Error(`${r} must be an instanceof Date or a string in RFC-1123/ISO8601 format for it to be serialized in UnixTime/Epoch format.`);e=mZe(e)}else if(t.match(/^TimeSpan$/i)!==null&&!bde(e))throw new Error(`${r} must be a string in ISO 8601 format. Instead was "${e}".`)}return e}i(EZe,"serializeDateTypes");function CZe(t,e,r,n,s,o){if(!Array.isArray(r))throw new Error(`${n} must be of type Array.`);let a=e.type.element;if(!a||typeof a!="object")throw new Error(`element" metadata for an Array must be defined in the mapper and it must of type "object" in ${n}.`);a.type.name==="Composite"&&a.type.className&&(a=t.modelMappers[a.type.className]??a);let c=[];for(let l=0;lm!==d)&&(a[d]=t.serialize(l,r[d],n+'["'+d+'"]',o))}return a}return r}i(wZe,"serializeCompositeType");function Tde(t,e,r,n){if(!r||!t.xmlNamespace)return e;let o={[t.xmlNamespacePrefix?`xmlns:${t.xmlNamespacePrefix}`:"xmlns"]:t.xmlNamespace};if(["Composite"].includes(t.type.name)){if(e["$"])return e;{let c={...e};return c["$"]=o,c}}let a={};return a[n.xml.xmlCharKey]=e,a["$"]=o,a}i(Tde,"getXmlObjectValue");function bZe(t,e){return["$",e.xml.xmlCharKey].includes(t)}i(bZe,"isSpecialXmlProperty");function SZe(t,e,r,n,s){let o=s.xml.xmlCharKey??"_";tR(t,e)&&(e=Pde(t,e,r,"serializedName"));let a=Nde(t,e,n),c={},l=[];for(let d of Object.keys(a)){let p=a[d],m=eq(a[d].serializedName);l.push(m[0]);let{serializedName:f,xmlName:g,xmlElementName:E}=p,x=n;f!==""&&f!==void 0&&(x=n+"."+f);let w=p.headerCollectionPrefix;if(w){let S={};for(let P of Object.keys(r))P.startsWith(w)&&(S[P.substring(w.length)]=t.deserialize(p.type.value,r[P],x,s)),l.push(P);c[d]=S}else if(t.isXML)if(p.xmlIsAttribute&&r["$"])c[d]=t.deserialize(p,r["$"][g],x,s);else if(p.xmlIsMsText)r[o]!==void 0?c[d]=r[o]:typeof r=="string"&&(c[d]=r);else{let S=E||g||f;if(p.xmlIsWrapped){let Q=r[g]?.[E]??[];c[d]=t.deserialize(p,Q,x,s),l.push(g)}else{let P=r[S];c[d]=t.deserialize(p,P,x,s),l.push(S)}}else{let S,P=r,Q=0;for(let V of m){if(!P)break;Q++,P=P[V]}P===null&&Q{for(let m in a)if(eq(a[m].serializedName)[0]===p)return!1;return!0},"isAdditionalProperty");for(let p in r)d(p)&&(c[p]=t.deserialize(u,r[p],n+'["'+p+'"]',s))}else if(r&&!s.ignoreUnknownProperties)for(let d of Object.keys(r))c[d]===void 0&&!l.includes(d)&&!bZe(d,s)&&(c[d]=r[d]);return c}i(SZe,"deserializeCompositeType");function BZe(t,e,r,n,s){let o=e.type.value;if(!o||typeof o!="object")throw new Error(`"value" metadata for a Dictionary must be defined in the mapper and it must of type "object" in ${n}`);if(r){let a={};for(let c of Object.keys(r))a[c]=t.deserialize(o,r[c],n,s);return a}return r}i(BZe,"deserializeDictionaryType");function RZe(t,e,r,n,s){let o=e.type.element;if(!o||typeof o!="object")throw new Error(`element" metadata for an Array must be defined in the mapper and it must of type "object" in ${n}`);if(r){Array.isArray(r)||(r=[r]),o.type.name==="Composite"&&o.type.className&&(o=t.modelMappers[o.type.className]??o);let a=[];for(let c=0;c0)if(s.isConstant)o=s.defaultValue;else{let a=Qde(t,n);!a.propertyFound&&r&&(a=Qde(r,n));let c=!1;a.propertyFound||(c=s.required||n[0]==="options"&&n.length===2),o=c?s.defaultValue:a.propertyValue}}else{s.required&&(o={});for(let a in n){let c=s.type.modelProperties[a],l=n[a],u=bd(t,{parameterPath:l,mapper:c},r);u!==void 0&&(o||(o={}),o[a]=u)}}return o}i(bd,"getOperationArgumentValueFromParameter");function Qde(t,e){let r={propertyFound:!1},n=0;for(;n=200&&r.status<300);l.headersMapper&&(o.parsedHeaders=c.serializer.deserialize(l.headersMapper,o.headers.toJSON(),"operationRes.parsedHeaders",{xml:{},ignoreUnknownProperties:!0}))}return o}i(DZe,"deserializeResponseBody");function kZe(t){let e=Object.keys(t.responses);return e.length===0||e.length===1&&e[0]==="default"}i(kZe,"isOperationSpecEmpty");function LZe(t,e,r,n){let s=200<=t.status&&t.status<300;if(kZe(e)?s:!!r)if(r){if(!r.isError)return{error:null,shouldReturnResponse:!1}}else return{error:null,shouldReturnResponse:!1};let a=r??e.responses.default,c=t.request.streamResponseStatusCodes?.has(t.status)?`Unexpected status code: ${t.status}`:t.bodyAsText,l=new Wl(c,{statusCode:t.status,request:t.request,response:t});if(!a&&!(t.parsedBody?.error?.code&&t.parsedBody?.error?.message))throw l;let u=a?.bodyMapper,d=a?.headersMapper;try{if(t.parsedBody){let p=t.parsedBody,m;if(u){let g=p;if(e.isXML&&u.type.name===cc.Sequence){g=[];let E=u.xmlElementName;typeof p=="object"&&E&&(g=p[E])}m=e.serializer.deserialize(u,g,"error.response.parsedBody",n)}let f=p.error||m||p;l.code=f.code,f.message&&(l.message=f.message),u&&(l.response.parsedBody=m)}t.headers&&d&&(l.response.parsedHeaders=e.serializer.deserialize(d,t.headers.toJSON(),"operationRes.parsedHeaders"))}catch(p){l.message=`Error "${p.message}" occurred in deserializing the responseBody - "${t.bodyAsText}" for the default response.`}return{error:l,shouldReturnResponse:!1}}i(LZe,"handleErrorResponse");async function OZe(t,e,r,n,s){if(!r.request.streamResponseStatusCodes?.has(r.status)&&r.bodyAsText){let o=r.bodyAsText,a=r.headers.get("Content-Type")||"",c=a?a.split(";").map(l=>l.toLowerCase()):[];try{if(c.length===0||c.some(l=>t.indexOf(l)!==-1))return r.parsedBody=JSON.parse(o),r;if(c.some(l=>e.indexOf(l)!==-1)){if(!s)throw new Error("Parsing XML not supported.");let l=await s(o,n.xml);return r.parsedBody=l,r}}catch(l){let u=`Error "${l}" occurred while parsing the response body - ${r.bodyAsText}.`,d=l.code||Wl.PARSE_ERROR;throw new Wl(u,{code:d,statusCode:r.status,request:r.request,response:r})}}return r}i(OZe,"parse");function Lde(t){let e=new Set;for(let r in t.responses){let n=t.responses[r];n.bodyMapper&&n.bodyMapper.type.name===cc.Stream&&e.add(Number(r))}return e}i(Lde,"getStreamingResponseStatusCodes");function lc(t){let{parameterPath:e,mapper:r}=t,n;return typeof e=="string"?n=e:Array.isArray(e)?n=e.join("."):n=r.serializedName,n}i(lc,"getPathStringFromParameter");var Ode="serializationPolicy";function nR(t={}){let e=t.stringifyXML;return{name:Ode,async sendRequest(r,n){let s=Jl(r),o=s?.operationSpec,a=s?.operationArguments;return o&&a&&(MZe(r,a,o),FZe(r,a,o,e)),n(r)}}}i(nR,"serializationPolicy");function MZe(t,e,r){if(r.headerParameters)for(let s of r.headerParameters){let o=bd(e,s);if(o!=null||s.mapper.required){o=r.serializer.serialize(s.mapper,o,lc(s));let a=s.mapper.headerCollectionPrefix;if(a)for(let c of Object.keys(o))t.headers.set(a+c,o[c]);else t.headers.set(s.mapper.serializedName||lc(s),o)}}let n=e.options?.requestOptions?.customHeaders;if(n)for(let s of Object.keys(n))t.headers.set(s,n[s])}i(MZe,"serializeHeaders");function FZe(t,e,r,n=function(){throw new Error("XML serialization unsupported!")}){let s=e.options?.serializerOptions,o={xml:{rootName:s?.xml.rootName??"",includeRoot:s?.xml.includeRoot??!1,xmlCharKey:s?.xml.xmlCharKey??"_"}},a=o.xml.xmlCharKey;if(r.requestBody&&r.requestBody.mapper){t.body=bd(e,r.requestBody);let c=r.requestBody.mapper,{required:l,serializedName:u,xmlName:d,xmlElementName:p,xmlNamespace:m,xmlNamespacePrefix:f,nullable:g}=c,E=c.type.name;try{if(t.body!==void 0&&t.body!==null||g&&t.body===null||l){let x=lc(r.requestBody);t.body=r.serializer.serialize(c,t.body,x,o);let w=E===cc.Stream;if(r.isXML){let S=f?`xmlns:${f}`:"xmlns",P=UZe(m,S,E,t.body,o);E===cc.Sequence?t.body=n(qZe(P,p||d||u,S,m),{rootName:d||u,xmlCharKey:a}):w||(t.body=n(P,{rootName:d||u,xmlCharKey:a}))}else{if(E===cc.String&&(r.contentType?.match("text/plain")||r.mediaType==="text"))return;w||(t.body=JSON.stringify(t.body))}}}catch(x){throw new Error(`Error "${x.message}" occurred in serializing the payload - ${JSON.stringify(u,void 0," ")}.`)}}else if(r.formDataParameters&&r.formDataParameters.length>0){t.formData={};for(let c of r.formDataParameters){let l=bd(e,c);if(l!=null){let u=c.mapper.serializedName||lc(c);t.formData[u]=r.serializer.serialize(c.mapper,l,lc(c),o)}}}}i(FZe,"serializeRequestBody");function UZe(t,e,r,n,s){if(t&&!["Composite","Sequence","Dictionary"].includes(r)){let o={};return o[s.xml.xmlCharKey]=n,o["$"]={[e]:t},o}return n}i(UZe,"getXmlValueWithNamespace");function qZe(t,e,r,n){if(Array.isArray(t)||(t=[t]),!r||!n)return{[e]:t};let s={[e]:t};return s["$"]={[r]:n},s}i(qZe,"prepareXMLRootList");function OC(t={}){let e=Y2(t??{});return t.credentialOptions&&e.addPolicy(Sh({credential:t.credentialOptions.credential,scopes:t.credentialOptions.credentialScopes})),e.addPolicy(nR(t.serializationOptions),{phase:"Serialize"}),e.addPolicy(rq(t.deserializationOptions),{phase:"Deserialize"}),e}i(OC,"createClientPipeline");var nq;function Mde(){return nq||(nq=kC()),nq}i(Mde,"getCachedDefaultHttpClient");var $Ze={CSV:",",SSV:" ",Multi:"Multi",TSV:" ",Pipes:"|"};function Ude(t,e,r,n){let s=GZe(e,r,n),o=!1,a=Fde(t,s);if(e.path){let u=Fde(e.path,s);e.path==="/{nextLink}"&&u.startsWith("/")&&(u=u.substring(1)),HZe(u)?(a=u,o=!0):a=zZe(a,u)}let{queryParams:c,sequenceParams:l}=VZe(e,r,n);return a=WZe(a,c,l,o),a}i(Ude,"getRequestUrl");function Fde(t,e){let r=t;for(let[n,s]of e)r=r.split(n).join(s);return r}i(Fde,"replaceAll");function GZe(t,e,r){let n=new Map;if(t.urlParameters?.length)for(let s of t.urlParameters){let o=bd(e,s,r),a=lc(s);o=t.serializer.serialize(s.mapper,o,a),s.skipEncoding||(o=encodeURIComponent(o)),n.set(`{${s.mapper.serializedName||a}}`,o)}return n}i(GZe,"calculateUrlReplacements");function HZe(t){return t.includes("://")}i(HZe,"isAbsoluteUrl");function zZe(t,e){if(!e)return t;let r=new URL(t),n=r.pathname;n.endsWith("/")||(n=`${n}/`),e.startsWith("/")&&(e=e.substring(1));let s=e.indexOf("?");if(s!==-1){let o=e.substring(0,s),a=e.substring(s+1);n=n+o,a&&(r.search=r.search?`${r.search}&${a}`:a)}else n=n+e;return r.pathname=n,r.toString()}i(zZe,"appendPath");function VZe(t,e,r){let n=new Map,s=new Set;if(t.queryParameters?.length)for(let o of t.queryParameters){o.mapper.type.name==="Sequence"&&o.mapper.serializedName&&s.add(o.mapper.serializedName);let a=bd(e,o,r);if(a!=null||o.mapper.required){a=t.serializer.serialize(o.mapper,a,lc(o));let c=o.collectionFormat?$Ze[o.collectionFormat]:"";if(Array.isArray(a)&&(a=a.map(l=>l??"")),o.collectionFormat==="Multi"&&a.length===0)continue;Array.isArray(a)&&(o.collectionFormat==="SSV"||o.collectionFormat==="TSV")&&(a=a.join(c)),o.skipEncoding||(Array.isArray(a)?a=a.map(l=>encodeURIComponent(l)):a=encodeURIComponent(a)),Array.isArray(a)&&(o.collectionFormat==="CSV"||o.collectionFormat==="Pipes")&&(a=a.join(c)),n.set(o.mapper.serializedName||lc(o),a)}}return{queryParams:n,sequenceParams:s}}i(VZe,"calculateQueryParameters");function YZe(t){let e=new Map;if(!t||t[0]!=="?")return e;t=t.slice(1);let r=t.split("&");for(let n of r){let[s,o]=n.split("=",2),a=e.get(s);a?Array.isArray(a)?a.push(o):e.set(s,[a,o]):e.set(s,o)}return e}i(YZe,"simpleParseQueryParams");function WZe(t,e,r,n=!1){if(e.size===0)return t;let s=new URL(t),o=YZe(s.search);for(let[c,l]of e){let u=o.get(c);if(Array.isArray(u))if(Array.isArray(l)){u.push(...l);let d=new Set(u);o.set(c,Array.from(d))}else u.push(l);else u?(Array.isArray(l)?l.unshift(u):r.has(c)&&o.set(c,[u,l]),n||o.set(c,l)):o.set(c,l)}let a=[];for(let[c,l]of o)if(typeof l=="string")a.push(`${c}=${l}`);else if(Array.isArray(l))for(let u of l)a.push(`${c}=${u}`);else a.push(`${c}=${l}`);return s.search=a.length?`?${a.join("&")}`:"",s.toString()}i(WZe,"appendQueryParams");var sq=ic("core-client");var MC=class{static{i(this,"ServiceClient")}_endpoint;_requestContentType;_allowInsecureConnection;_httpClient;pipeline;constructor(e={}){if(this._requestContentType=e.requestContentType,this._endpoint=e.endpoint??e.baseUri,e.baseUri&&sq.warning("The baseUri option for SDK Clients has been deprecated, please use endpoint instead."),this._allowInsecureConnection=e.allowInsecureConnection,this._httpClient=e.httpClient||Mde(),this.pipeline=e.pipeline||jZe(e),e.additionalPolicies?.length)for(let{policy:r,position:n}of e.additionalPolicies){let s=n==="perRetry"?"Sign":void 0;this.pipeline.addPolicy(r,{afterPhase:s})}}async sendRequest(e){return this.pipeline.sendRequest(this._httpClient,e)}async sendOperationRequest(e,r){let n=r.baseUrl||this._endpoint;if(!n)throw new Error("If operationSpec.baseUrl is not specified, then the ServiceClient must have a endpoint string property that contains the base URL to use.");let s=Ude(n,r,e,this),o=LC({url:s});o.method=r.httpMethod;let a=Jl(o);a.operationSpec=r,a.operationArguments=e;let c=r.contentType||this._requestContentType;c&&r.requestBody&&o.headers.set("Content-Type",c);let l=e.options;if(l){let u=l.requestOptions;u&&(u.timeout&&(o.timeout=u.timeout),u.onUploadProgress&&(o.onUploadProgress=u.onUploadProgress),u.onDownloadProgress&&(o.onDownloadProgress=u.onDownloadProgress),u.shouldDeserialize!==void 0&&(a.shouldDeserialize=u.shouldDeserialize),u.allowInsecureConnection&&(o.allowInsecureConnection=!0)),l.abortSignal&&(o.abortSignal=l.abortSignal),l.tracingOptions&&(o.tracingOptions=l.tracingOptions)}this._allowInsecureConnection&&(o.allowInsecureConnection=!0),o.streamResponseStatusCodes===void 0&&(o.streamResponseStatusCodes=Lde(r));try{let u=await this.sendRequest(o),d=X2(u,r.responses[u.status]);return l?.onResponse&&l.onResponse(u,d),d}catch(u){if(typeof u=="object"&&u?.response){let d=u.response,p=X2(d,r.responses[u.statusCode]||r.responses.default);u.details=p,l?.onResponse&&l.onResponse(d,p,u)}throw u}}};function jZe(t){let e=JZe(t),r=t.credential&&e?{credentialScopes:e,credential:t.credential}:void 0;return OC({...t,credentialOptions:r})}i(jZe,"createDefaultPipeline");function JZe(t){if(t.credentialScopes)return t.credentialScopes;if(t.endpoint)return`${t.endpoint}/.default`;if(t.baseUri)return`${t.baseUri}/.default`;if(t.credential&&!t.credentialScopes)throw new Error("When using credentials, the ServiceClientOptions must contain either a endpoint or a credentialScopes. Unable to create a bearerTokenAuthenticationPolicy")}i(JZe,"getCredentialScopes");var qde={DefaultScope:"/.default",HeaderConstants:{AUTHORIZATION:"authorization"}};function KZe(t){return/^[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}$/.test(t)}i(KZe,"isUuid");var sR=i(async t=>{let e=ret(t.request),r=eet(t.response);if(r){let n=tet(r),s=ZZe(t,n),o=XZe(n);if(!o)return!1;let a=await t.getAccessToken(s,{...e,tenantId:o});return a?(t.request.headers.set(qde.HeaderConstants.AUTHORIZATION,`${a.tokenType??"Bearer"} ${a.token}`),!0):!1}return!1},"authorizeRequestOnTenantChallenge");function XZe(t){let n=new URL(t.authorization_uri).pathname.split("/")[1];if(n&&KZe(n))return n}i(XZe,"extractTenantId");function ZZe(t,e){if(!e.resource_id)return t.scopes;let r=new URL(e.resource_id);r.pathname=qde.DefaultScope;let n=r.toString();return n==="https://disk.azure.com/.default"&&(n="https://disk.azure.com//.default"),[n]}i(ZZe,"buildScopes");function eet(t){let e=t.headers.get("WWW-Authenticate");if(t.status===401&&e)return e}i(eet,"getChallenge");function tet(t){return`${t.slice(7).trim()} `.split(" ").filter(s=>s).map(s=>(([o,a])=>({[o]:a}))(s.trim().split("="))).reduce((s,o)=>({...s,...o}),{})}i(tet,"parseChallenge");function ret(t){return{abortSignal:t.abortSignal,requestOptions:{timeout:t.timeout},tracingOptions:t.tracingOptions}}i(ret,"requestToOptions");var $de=Symbol("Original PipelineRequest"),net=Symbol.for("@azure/core-client original request");function UC(t,e={}){let n=t[$de],s=jl(t.headers.toJson({preserveCase:!0}));if(n)return n.headers=s,n;{let o=LC({url:t.url,method:t.method,headers:s,withCredentials:t.withCredentials,timeout:t.timeout,requestId:t.requestId,abortSignal:t.abortSignal,body:t.body,formData:t.formData,disableKeepAlive:!!t.keepAlive,onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress,proxySettings:t.proxySettings,streamResponseStatusCodes:t.streamResponseStatusCodes,agent:t.agent,requestOverrides:t.requestOverrides});return e.originalRequest&&(o[net]=e.originalRequest),o}}i(UC,"toPipelineRequest");function wm(t,e){let r=e?.originalRequest??t,n={url:t.url,method:t.method,headers:qC(t.headers),withCredentials:t.withCredentials,timeout:t.timeout,requestId:t.headers.get("x-ms-client-request-id")||t.requestId,abortSignal:t.abortSignal,body:t.body,formData:t.formData,keepAlive:!!t.disableKeepAlive,onDownloadProgress:t.onDownloadProgress,onUploadProgress:t.onUploadProgress,proxySettings:t.proxySettings,streamResponseStatusCodes:t.streamResponseStatusCodes,agent:t.agent,requestOverrides:t.requestOverrides,clone(){throw new Error("Cannot clone a non-proxied WebResourceLike")},prepare(){throw new Error("WebResourceLike.prepare() is not supported by @azure/core-http-compat")},validateRequestProperties(){}};return e?.createProxy?new Proxy(n,{get(s,o,a){return o===$de?t:o==="clone"?()=>wm(UC(n,{originalRequest:r}),{createProxy:!0,originalRequest:r}):Reflect.get(s,o,a)},set(s,o,a,c){return o==="keepAlive"&&(t.disableKeepAlive=!a),typeof o=="string"&&["url","method","withCredentials","timeout","requestId","abortSignal","body","formData","onDownloadProgress","onUploadProgress","proxySettings","streamResponseStatusCodes","agent","requestOverrides"].includes(o)&&(t[o]=a),Reflect.set(s,o,a,c)}}):n}i(wm,"toWebResourceLike");function qC(t){return new oq(t.toJSON({preserveCase:!0}))}i(qC,"toHttpHeadersLike");function FC(t){return t.toLowerCase()}i(FC,"getHeaderKey");var oq=class t{static{i(this,"HttpHeaders")}_headersMap;constructor(e){if(this._headersMap={},e)for(let r in e)this.set(r,e[r])}set(e,r){this._headersMap[FC(e)]={name:e,value:r.toString()}}get(e){let r=this._headersMap[FC(e)];return r?r.value:void 0}contains(e){return!!this._headersMap[FC(e)]}remove(e){let r=this.contains(e);return delete this._headersMap[FC(e)],r}rawHeaders(){return this.toJson({preserveCase:!0})}headersArray(){let e=[];for(let r in this._headersMap)e.push(this._headersMap[r]);return e}headerNames(){let e=[],r=this.headersArray();for(let n=0;n{let r=await t.sendRequest(wm(e,{createProxy:!0}));return iR(r)},"sendRequest")}}i(cq,"convertHttpClient");var zde=":A-Za-z_\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD",iet=zde+"\\-.\\d\\u00B7\\u0300-\\u036F\\u203F-\\u2040",aet="["+zde+"]["+iet+"]*",cet=new RegExp("^"+aet+"$");function aR(t,e){let r=[],n=e.exec(t);for(;n;){let s=[];s.startIndex=e.lastIndex-n[0].length;let o=n.length;for(let a=0;a"u")},"isName");function Vde(t){return typeof t<"u"}i(Vde,"isExist");var GC=["hasOwnProperty","toString","valueOf","__defineGetter__","__defineSetter__","__lookupGetter__","__lookupSetter__"],cR=["__proto__","constructor","prototype"];var uet={allowBooleanAttributes:!1,unpairedTags:[]};function lR(t,e){e=Object.assign({},uet,e);let r=[],n=!1,s=!1;t[0]==="\uFEFF"&&(t=t.substr(1));for(let o=0;o"&&t[o]!==" "&&t[o]!==" "&&t[o]!==` +`&&t[o]!=="\r";o++)l+=t[o];if(l=l.trim(),l[l.length-1]==="/"&&(l=l.substring(0,l.length-1),o--),!yet(l)){let p;return l.trim().length===0?p="Invalid space after '<'.":p="Tag '"+l+"' is an invalid name.",kr("InvalidTag",p,Is(t,o))}let u=met(t,o);if(u===!1)return kr("InvalidAttr","Attributes for '"+l+"' have open quote.",Is(t,o));let d=u.value;if(o=u.index,d[d.length-1]==="/"){let p=o-d.length;d=d.substring(0,d.length-1);let m=Jde(d,e);if(m===!0)n=!0;else return kr(m.err.code,m.err.msg,Is(t,p+m.err.line))}else if(c)if(u.tagClosed){if(d.trim().length>0)return kr("InvalidTag","Closing tag '"+l+"' can't have attributes or invalid starting.",Is(t,a));if(r.length===0)return kr("InvalidTag","Closing tag '"+l+"' has not been opened.",Is(t,a));{let p=r.pop();if(l!==p.tagName){let m=Is(t,p.tagStartPos);return kr("InvalidTag","Expected closing tag '"+p.tagName+"' (opened in line "+m.line+", col "+m.col+") instead of closing tag '"+l+"'.",Is(t,a))}r.length==0&&(s=!0)}}else return kr("InvalidTag","Closing tag '"+l+"' doesn't have proper closing.",Is(t,o));else{let p=Jde(d,e);if(p!==!0)return kr(p.err.code,p.err.msg,Is(t,o-d.length+p.err.line));if(s===!0)return kr("InvalidXml","Multiple possible root nodes found.",Is(t,o));e.unpairedTags.indexOf(l)!==-1||r.push({tagName:l,tagStartPos:a}),n=!0}for(o++;o0)return kr("InvalidXml","Invalid '"+JSON.stringify(r.map(o=>o.tagName),null,4).replace(/\r?\n/g,"")+"' found.",{line:1,col:1})}else return kr("InvalidXml","Start tag expected.",1);return!0}i(lR,"validate");function Yde(t){return t===" "||t===" "||t===` +`||t==="\r"}i(Yde,"isWhiteSpace");function Wde(t,e){let r=e;for(;e5&&n==="xml")return kr("InvalidXml","XML declaration allowed only at the start of the document.",Is(t,e));if(t[e]=="?"&&t[e+1]==">"){e++;break}else continue}return e}i(Wde,"readPI");function jde(t,e){if(t.length>e+5&&t[e+1]==="-"&&t[e+2]==="-"){for(e+=3;e"){e+=2;break}}else if(t.length>e+8&&t[e+1]==="D"&&t[e+2]==="O"&&t[e+3]==="C"&&t[e+4]==="T"&&t[e+5]==="Y"&&t[e+6]==="P"&&t[e+7]==="E"){let r=1;for(e+=8;e"&&(r--,r===0))break}else if(t.length>e+9&&t[e+1]==="["&&t[e+2]==="C"&&t[e+3]==="D"&&t[e+4]==="A"&&t[e+5]==="T"&&t[e+6]==="A"&&t[e+7]==="["){for(e+=8;e"){e+=2;break}}return e}i(jde,"readCommentAndCDATA");var det='"',pet="'";function met(t,e){let r="",n="",s=!1;for(;e"&&n===""){s=!0;break}r+=t[e]}return n!==""?!1:{value:r,index:e,tagClosed:s}}i(met,"readAttributeStr");var fet=new RegExp(`(\\s*)([^\\s=]+)(\\s*=)?(\\s*(['"])(([\\s\\S])*?)\\5)?`,"g");function Jde(t,e){let r=aR(t,fet),n={};for(let s=0;s",GT:">",quot:'"',QUOT:'"',apos:"'",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",lsquor:"\u201A",rsquor:"\u2019",ldquor:"\u201E",bdquo:"\u201E",comma:",",period:".",colon:":",semi:";",excl:"!",quest:"?",num:"#",dollar:"$",percent:"%",amp:"&",ast:"*",commat:"@",lowbar:"_",verbar:"|",vert:"|",sol:"/",bsol:"\\",lbrace:"{",rbrace:"}",lbrack:"[",rbrack:"]",lpar:"(",rpar:")",nbsp:"\xA0",iexcl:"\xA1",cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",COPY:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",REG:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",half:"\xBD",frac34:"\xBE",iquest:"\xBF",times:"\xD7",div:"\xF7",divide:"\xF7"},Xde={Agrave:"\xC0",agrave:"\xE0",Aacute:"\xC1",aacute:"\xE1",Acirc:"\xC2",acirc:"\xE2",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",Aring:"\xC5",aring:"\xE5",AElig:"\xC6",aelig:"\xE6",Ccedil:"\xC7",ccedil:"\xE7",Egrave:"\xC8",egrave:"\xE8",Eacute:"\xC9",eacute:"\xE9",Ecirc:"\xCA",ecirc:"\xEA",Euml:"\xCB",euml:"\xEB",Igrave:"\xCC",igrave:"\xEC",Iacute:"\xCD",iacute:"\xED",Icirc:"\xCE",icirc:"\xEE",Iuml:"\xCF",iuml:"\xEF",ETH:"\xD0",eth:"\xF0",Ntilde:"\xD1",ntilde:"\xF1",Ograve:"\xD2",ograve:"\xF2",Oacute:"\xD3",oacute:"\xF3",Ocirc:"\xD4",ocirc:"\xF4",Otilde:"\xD5",otilde:"\xF5",Ouml:"\xD6",ouml:"\xF6",Oslash:"\xD8",oslash:"\xF8",Ugrave:"\xD9",ugrave:"\xF9",Uacute:"\xDA",uacute:"\xFA",Ucirc:"\xDB",ucirc:"\xFB",Uuml:"\xDC",uuml:"\xFC",Yacute:"\xDD",yacute:"\xFD",THORN:"\xDE",thorn:"\xFE",szlig:"\xDF",yuml:"\xFF",Yuml:"\u0178"},Zde={Amacr:"\u0100",amacr:"\u0101",Abreve:"\u0102",abreve:"\u0103",Aogon:"\u0104",aogon:"\u0105",Cacute:"\u0106",cacute:"\u0107",Ccirc:"\u0108",ccirc:"\u0109",Cdot:"\u010A",cdot:"\u010B",Ccaron:"\u010C",ccaron:"\u010D",Dcaron:"\u010E",dcaron:"\u010F",Dstrok:"\u0110",dstrok:"\u0111",Emacr:"\u0112",emacr:"\u0113",Ecaron:"\u011A",ecaron:"\u011B",Edot:"\u0116",edot:"\u0117",Eogon:"\u0118",eogon:"\u0119",Gcirc:"\u011C",gcirc:"\u011D",Gbreve:"\u011E",gbreve:"\u011F",Gdot:"\u0120",gdot:"\u0121",Gcedil:"\u0122",Hcirc:"\u0124",hcirc:"\u0125",Hstrok:"\u0126",hstrok:"\u0127",Itilde:"\u0128",itilde:"\u0129",Imacr:"\u012A",imacr:"\u012B",Iogon:"\u012E",iogon:"\u012F",Idot:"\u0130",IJlig:"\u0132",ijlig:"\u0133",Jcirc:"\u0134",jcirc:"\u0135",Kcedil:"\u0136",kcedil:"\u0137",kgreen:"\u0138",Lacute:"\u0139",lacute:"\u013A",Lcedil:"\u013B",lcedil:"\u013C",Lcaron:"\u013D",lcaron:"\u013E",Lmidot:"\u013F",lmidot:"\u0140",Lstrok:"\u0141",lstrok:"\u0142",Nacute:"\u0143",nacute:"\u0144",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ENG:"\u014A",eng:"\u014B",Omacr:"\u014C",omacr:"\u014D",Odblac:"\u0150",odblac:"\u0151",OElig:"\u0152",oelig:"\u0153",Racute:"\u0154",racute:"\u0155",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",Sacute:"\u015A",sacute:"\u015B",Scirc:"\u015C",scirc:"\u015D",Scedil:"\u015E",scedil:"\u015F",Scaron:"\u0160",scaron:"\u0161",Tcedil:"\u0162",tcedil:"\u0163",Tcaron:"\u0164",tcaron:"\u0165",Tstrok:"\u0166",tstrok:"\u0167",Utilde:"\u0168",utilde:"\u0169",Umacr:"\u016A",umacr:"\u016B",Ubreve:"\u016C",ubreve:"\u016D",Uring:"\u016E",uring:"\u016F",Udblac:"\u0170",udblac:"\u0171",Uogon:"\u0172",uogon:"\u0173",Wcirc:"\u0174",wcirc:"\u0175",Ycirc:"\u0176",ycirc:"\u0177",Zacute:"\u0179",zacute:"\u017A",Zdot:"\u017B",zdot:"\u017C",Zcaron:"\u017D",zcaron:"\u017E"},epe={Alpha:"\u0391",alpha:"\u03B1",Beta:"\u0392",beta:"\u03B2",Gamma:"\u0393",gamma:"\u03B3",Delta:"\u0394",delta:"\u03B4",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",varepsilon:"\u03F5",Zeta:"\u0396",zeta:"\u03B6",Eta:"\u0397",eta:"\u03B7",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",vartheta:"\u03D1",Iota:"\u0399",iota:"\u03B9",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",varkappa:"\u03F0",Lambda:"\u039B",lambda:"\u03BB",Mu:"\u039C",mu:"\u03BC",Nu:"\u039D",nu:"\u03BD",Xi:"\u039E",xi:"\u03BE",Omicron:"\u039F",omicron:"\u03BF",Pi:"\u03A0",pi:"\u03C0",piv:"\u03D6",varpi:"\u03D6",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",varrho:"\u03F1",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",varsigma:"\u03C2",Tau:"\u03A4",tau:"\u03C4",Upsilon:"\u03A5",upsilon:"\u03C5",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",varphi:"\u03D5",Chi:"\u03A7",chi:"\u03C7",Psi:"\u03A8",psi:"\u03C8",Omega:"\u03A9",omega:"\u03C9",ohm:"\u03A9",Gammad:"\u03DC",gammad:"\u03DD",digamma:"\u03DD"},tpe={Afr:"\u{1D504}",afr:"\u{1D51E}",Acy:"\u0410",acy:"\u0430",Bcy:"\u0411",bcy:"\u0431",Vcy:"\u0412",vcy:"\u0432",Gcy:"\u0413",gcy:"\u0433",Dcy:"\u0414",dcy:"\u0434",IEcy:"\u0415",iecy:"\u0435",IOcy:"\u0401",iocy:"\u0451",ZHcy:"\u0416",zhcy:"\u0436",Zcy:"\u0417",zcy:"\u0437",Icy:"\u0418",icy:"\u0438",Jcy:"\u0419",jcy:"\u0439",Kcy:"\u041A",kcy:"\u043A",Lcy:"\u041B",lcy:"\u043B",Mcy:"\u041C",mcy:"\u043C",Ncy:"\u041D",ncy:"\u043D",Ocy:"\u041E",ocy:"\u043E",Pcy:"\u041F",pcy:"\u043F",Rcy:"\u0420",rcy:"\u0440",Scy:"\u0421",scy:"\u0441",Tcy:"\u0422",tcy:"\u0442",Ucy:"\u0423",ucy:"\u0443",Fcy:"\u0424",fcy:"\u0444",KHcy:"\u0425",khcy:"\u0445",TScy:"\u0426",tscy:"\u0446",CHcy:"\u0427",chcy:"\u0447",SHcy:"\u0428",shcy:"\u0448",SHCHcy:"\u0429",shchcy:"\u0449",HARDcy:"\u042A",hardcy:"\u044A",Ycy:"\u042B",ycy:"\u044B",SOFTcy:"\u042C",softcy:"\u044C",Ecy:"\u042D",ecy:"\u044D",YUcy:"\u042E",yucy:"\u044E",YAcy:"\u042F",yacy:"\u044F",DJcy:"\u0402",djcy:"\u0452",GJcy:"\u0403",gjcy:"\u0453",Jukcy:"\u0404",jukcy:"\u0454",DScy:"\u0405",dscy:"\u0455",Iukcy:"\u0406",iukcy:"\u0456",YIcy:"\u0407",yicy:"\u0457",Jsercy:"\u0408",jsercy:"\u0458",LJcy:"\u0409",ljcy:"\u0459",NJcy:"\u040A",njcy:"\u045A",TSHcy:"\u040B",tshcy:"\u045B",KJcy:"\u040C",kjcy:"\u045C",Ubrcy:"\u040E",ubrcy:"\u045E",DZcy:"\u040F",dzcy:"\u045F"},rpe={plus:"+",minus:"\u2212",mnplus:"\u2213",mp:"\u2213",pm:"\xB1",times:"\xD7",div:"\xF7",divide:"\xF7",sdot:"\u22C5",star:"\u2606",starf:"\u2605",bigstar:"\u2605",lowast:"\u2217",ast:"*",midast:"*",compfn:"\u2218",smallcircle:"\u2218",bullet:"\u2022",bull:"\u2022",nbsp:"\xA0",hellip:"\u2026",mldr:"\u2026",prime:"\u2032",Prime:"\u2033",tprime:"\u2034",bprime:"\u2035",backprime:"\u2035",minus:"\u2212",minusd:"\u2238",dotminus:"\u2238",plusdo:"\u2214",dotplus:"\u2214",plusmn:"\xB1",minusplus:"\u2213",mnplus:"\u2213",mp:"\u2213",setminus:"\u2216",smallsetminus:"\u2216",Backslash:"\u2216",setmn:"\u2216",ssetmn:"\u2216",lowbar:"_",verbar:"|",vert:"|",VerticalLine:"|",colon:":",Colon:"\u2237",Proportion:"\u2237",ratio:"\u2236",equals:"=",ne:"\u2260",nequiv:"\u2262",equiv:"\u2261",Congruent:"\u2261",sim:"\u223C",thicksim:"\u223C",thksim:"\u223C",sime:"\u2243",simeq:"\u2243",TildeEqual:"\u2243",asymp:"\u2248",approx:"\u2248",thickapprox:"\u2248",thkap:"\u2248",TildeTilde:"\u2248",ncong:"\u2247",cong:"\u2245",TildeFullEqual:"\u2245",asympeq:"\u224D",CupCap:"\u224D",bump:"\u224E",Bumpeq:"\u224E",HumpDownHump:"\u224E",bumpe:"\u224F",bumpeq:"\u224F",HumpEqual:"\u224F",dotminus:"\u2238",minusd:"\u2238",plusdo:"\u2214",dotplus:"\u2214",le:"\u2264",LessEqual:"\u2264",ge:"\u2265",GreaterEqual:"\u2265",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",greater:">",less:"<"},npe={alefsym:"\u2135",aleph:"\u2135",beth:"\u2136",gimel:"\u2137",daleth:"\u2138",forall:"\u2200",ForAll:"\u2200",part:"\u2202",PartialD:"\u2202",exist:"\u2203",Exists:"\u2203",nexist:"\u2204",nexists:"\u2204",empty:"\u2205",emptyset:"\u2205",emptyv:"\u2205",varnothing:"\u2205",nabla:"\u2207",Del:"\u2207",isin:"\u2208",isinv:"\u2208",in:"\u2208",Element:"\u2208",notin:"\u2209",notinva:"\u2209",ni:"\u220B",niv:"\u220B",SuchThat:"\u220B",ReverseElement:"\u220B",notni:"\u220C",notniva:"\u220C",prod:"\u220F",Product:"\u220F",coprod:"\u2210",Coproduct:"\u2210",sum:"\u2211",Sum:"\u2211",minus:"\u2212",mp:"\u2213",plusdo:"\u2214",dotplus:"\u2214",setminus:"\u2216",lowast:"\u2217",radic:"\u221A",Sqrt:"\u221A",prop:"\u221D",propto:"\u221D",Proportional:"\u221D",varpropto:"\u221D",infin:"\u221E",infintie:"\u29DD",ang:"\u2220",angle:"\u2220",angmsd:"\u2221",measuredangle:"\u2221",angsph:"\u2222",mid:"\u2223",VerticalBar:"\u2223",nmid:"\u2224",nsmid:"\u2224",npar:"\u2226",parallel:"\u2225",spar:"\u2225",nparallel:"\u2226",nspar:"\u2226",and:"\u2227",wedge:"\u2227",or:"\u2228",vee:"\u2228",cap:"\u2229",cup:"\u222A",int:"\u222B",Integral:"\u222B",conint:"\u222E",ContourIntegral:"\u222E",Conint:"\u222F",DoubleContourIntegral:"\u222F",Cconint:"\u2230",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",becaus:"\u2235",because:"\u2235",Because:"\u2235",ratio:"\u2236",Proportion:"\u2237",minusd:"\u2238",dotminus:"\u2238",mDDot:"\u223A",homtht:"\u223B",sim:"\u223C",bsimg:"\u223D",backsim:"\u223D",ac:"\u223E",mstpos:"\u223E",acd:"\u223F",VerticalTilde:"\u2240",wr:"\u2240",wreath:"\u2240",nsime:"\u2244",nsimeq:"\u2244",nsimeq:"\u2244",ncong:"\u2247",simne:"\u2246",ncongdot:"\u2A6D\u0338",ngsim:"\u2275",nsim:"\u2241",napprox:"\u2249",nap:"\u2249",ngeq:"\u2271",nge:"\u2271",nleq:"\u2270",nle:"\u2270",ngtr:"\u226F",ngt:"\u226F",nless:"\u226E",nlt:"\u226E",nprec:"\u2280",npr:"\u2280",nsucc:"\u2281",nsc:"\u2281"},spe={larr:"\u2190",leftarrow:"\u2190",LeftArrow:"\u2190",uarr:"\u2191",uparrow:"\u2191",UpArrow:"\u2191",rarr:"\u2192",rightarrow:"\u2192",RightArrow:"\u2192",darr:"\u2193",downarrow:"\u2193",DownArrow:"\u2193",harr:"\u2194",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",varr:"\u2195",updownarrow:"\u2195",UpDownArrow:"\u2195",nwarr:"\u2196",nwarrow:"\u2196",UpperLeftArrow:"\u2196",nearr:"\u2197",nearrow:"\u2197",UpperRightArrow:"\u2197",searr:"\u2198",searrow:"\u2198",LowerRightArrow:"\u2198",swarr:"\u2199",swarrow:"\u2199",LowerLeftArrow:"\u2199",lArr:"\u21D0",Leftarrow:"\u21D0",uArr:"\u21D1",Uparrow:"\u21D1",rArr:"\u21D2",Rightarrow:"\u21D2",dArr:"\u21D3",Downarrow:"\u21D3",hArr:"\u21D4",Leftrightarrow:"\u21D4",iff:"\u21D4",vArr:"\u21D5",Updownarrow:"\u21D5",lAarr:"\u21DA",Lleftarrow:"\u21DA",rAarr:"\u21DB",Rrightarrow:"\u21DB",lrarr:"\u21C6",leftrightarrows:"\u21C6",rlarr:"\u21C4",rightleftarrows:"\u21C4",lrhar:"\u21CB",leftrightharpoons:"\u21CB",ReverseEquilibrium:"\u21CB",rlhar:"\u21CC",rightleftharpoons:"\u21CC",Equilibrium:"\u21CC",udarr:"\u21C5",UpArrowDownArrow:"\u21C5",duarr:"\u21F5",DownArrowUpArrow:"\u21F5",llarr:"\u21C7",leftleftarrows:"\u21C7",rrarr:"\u21C9",rightrightarrows:"\u21C9",ddarr:"\u21CA",downdownarrows:"\u21CA",har:"\u21BD",lhard:"\u21BD",leftharpoondown:"\u21BD",lharu:"\u21BC",leftharpoonup:"\u21BC",rhard:"\u21C1",rightharpoondown:"\u21C1",rharu:"\u21C0",rightharpoonup:"\u21C0",lsh:"\u21B0",Lsh:"\u21B0",rsh:"\u21B1",Rsh:"\u21B1",ldsh:"\u21B2",rdsh:"\u21B3",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",mapstoleft:"\u21A4",mapstoup:"\u21A5",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",crarr:"\u21B5",nwarrow:"\u2196",nearrow:"\u2197",searrow:"\u2198",swarrow:"\u2199",nleftarrow:"\u219A",nleftrightarrow:"\u21AE",nrightarrow:"\u219B",nrarr:"\u219B",larrtl:"\u21A2",rarrtl:"\u21A3",leftarrowtail:"\u21A2",rightarrowtail:"\u21A3",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Larr:"\u219E",Rarr:"\u21A0",larrhk:"\u21A9",rarrhk:"\u21AA",larrlp:"\u21AB",looparrowleft:"\u21AB",rarrlp:"\u21AC",looparrowright:"\u21AC",harrw:"\u21AD",leftrightsquigarrow:"\u21AD",nrarrw:"\u219D\u0338",rarrw:"\u219D",rightsquigarrow:"\u219D",larrbfs:"\u291F",rarrbfs:"\u2920",nvHarr:"\u2904",nvlArr:"\u2902",nvrArr:"\u2903",larrfs:"\u291D",rarrfs:"\u291E",Map:"\u2905",larrsim:"\u2973",rarrsim:"\u2974",harrcir:"\u2948",Uarrocir:"\u2949",lurdshar:"\u294A",ldrdhar:"\u2967",ldrushar:"\u294B",rdldhar:"\u2969",lrhard:"\u296D",rlhar:"\u21CC",uharr:"\u21BE",uharl:"\u21BF",dharr:"\u21C2",dharl:"\u21C3",Uarr:"\u219F",Darr:"\u21A1",zigrarr:"\u21DD",nwArr:"\u21D6",neArr:"\u21D7",seArr:"\u21D8",swArr:"\u21D9",nharr:"\u21AE",nhArr:"\u21CE",nlarr:"\u219A",nlArr:"\u21CD",nrarr:"\u219B",nrArr:"\u21CF",larrb:"\u21E4",LeftArrowBar:"\u21E4",rarrb:"\u21E5",RightArrowBar:"\u21E5"},ope={square:"\u25A1",Square:"\u25A1",squ:"\u25A1",squf:"\u25AA",squarf:"\u25AA",blacksquar:"\u25AA",blacksquare:"\u25AA",FilledVerySmallSquare:"\u25AA",blk34:"\u2593",blk12:"\u2592",blk14:"\u2591",block:"\u2588",srect:"\u25AD",rect:"\u25AD",sdot:"\u22C5",sdotb:"\u22A1",dotsquare:"\u22A1",triangle:"\u25B5",tri:"\u25B5",trine:"\u25B5",utri:"\u25B5",triangledown:"\u25BF",dtri:"\u25BF",tridown:"\u25BF",triangleleft:"\u25C3",ltri:"\u25C3",triangleright:"\u25B9",rtri:"\u25B9",blacktriangle:"\u25B4",utrif:"\u25B4",blacktriangledown:"\u25BE",dtrif:"\u25BE",blacktriangleleft:"\u25C2",ltrif:"\u25C2",blacktriangleright:"\u25B8",rtrif:"\u25B8",loz:"\u25CA",lozenge:"\u25CA",blacklozenge:"\u29EB",lozf:"\u29EB",bigcirc:"\u25EF",xcirc:"\u25EF",circ:"\u02C6",Circle:"\u25CB",cir:"\u25CB",o:"\u25CB",bullet:"\u2022",bull:"\u2022",hellip:"\u2026",mldr:"\u2026",nldr:"\u2025",boxh:"\u2500",HorizontalLine:"\u2500",boxv:"\u2502",boxdr:"\u250C",boxdl:"\u2510",boxur:"\u2514",boxul:"\u2518",boxvr:"\u251C",boxvl:"\u2524",boxhd:"\u252C",boxhu:"\u2534",boxvh:"\u253C",boxH:"\u2550",boxV:"\u2551",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxDl:"\u2555",boxdL:"\u2556",boxDL:"\u2557",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxUl:"\u255C",boxuL:"\u255B",boxUL:"\u255D",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",boxVl:"\u2562",boxvL:"\u2561",boxVL:"\u2563",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C"},ipe={excl:"!",iexcl:"\xA1",brvbar:"\xA6",sect:"\xA7",uml:"\xA8",copy:"\xA9",ordf:"\xAA",laquo:"\xAB",not:"\xAC",shy:"\xAD",reg:"\xAE",macr:"\xAF",deg:"\xB0",plusmn:"\xB1",sup2:"\xB2",sup3:"\xB3",acute:"\xB4",micro:"\xB5",para:"\xB6",middot:"\xB7",cedil:"\xB8",sup1:"\xB9",ordm:"\xBA",raquo:"\xBB",frac14:"\xBC",frac12:"\xBD",frac34:"\xBE",iquest:"\xBF",nbsp:"\xA0",comma:",",period:".",colon:":",semi:";",vert:"|",Verbar:"\u2016",verbar:"|",dblac:"\u02DD",circ:"\u02C6",caron:"\u02C7",breve:"\u02D8",dot:"\u02D9",ring:"\u02DA",ogon:"\u02DB",tilde:"\u02DC",DiacriticalGrave:"`",DiacriticalAcute:"\xB4",DiacriticalTilde:"\u02DC",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",grave:"`",acute:"\xB4"},uR={cent:"\xA2",pound:"\xA3",curren:"\xA4",yen:"\xA5",euro:"\u20AC",dollar:"$",euro:"\u20AC",fnof:"\u0192",inr:"\u20B9",af:"\u060B",birr:"\u1265\u122D",peso:"\u20B1",rub:"\u20BD",won:"\u20A9",yuan:"\xA5",cedil:"\xB8"},ape={frac12:"\xBD",half:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044"},cpe={trade:"\u2122",TRADE:"\u2122",telrec:"\u2315",target:"\u2316",ulcorn:"\u231C",ulcorner:"\u231C",urcorn:"\u231D",urcorner:"\u231D",dlcorn:"\u231E",llcorner:"\u231E",drcorn:"\u231F",lrcorner:"\u231F",intercal:"\u22BA",intcal:"\u22BA",oplus:"\u2295",CirclePlus:"\u2295",ominus:"\u2296",CircleMinus:"\u2296",otimes:"\u2297",CircleTimes:"\u2297",osol:"\u2298",odot:"\u2299",CircleDot:"\u2299",oast:"\u229B",circledast:"\u229B",odash:"\u229D",circleddash:"\u229D",ocirc:"\u229A",circledcirc:"\u229A",boxplus:"\u229E",plusb:"\u229E",boxminus:"\u229F",minusb:"\u229F",boxtimes:"\u22A0",timesb:"\u22A0",boxdot:"\u22A1",sdotb:"\u22A1",veebar:"\u22BB",vee:"\u2228",barvee:"\u22BD",and:"\u2227",wedge:"\u2227",Cap:"\u22D2",Cup:"\u22D3",Fork:"\u22D4",pitchfork:"\u22D4",epar:"\u22D5",ltlarr:"\u2976",nvap:"\u224D\u20D2",nvsim:"\u223C\u20D2",nvge:"\u2265\u20D2",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvgt:">\u20D2",nvltrie:"\u22B4\u20D2",nvrtrie:"\u22B5\u20D2",Vdash:"\u22A9",dashv:"\u22A3",vDash:"\u22A8",Vdash:"\u22A9",Vvdash:"\u22AA",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF"},Eet={...Kde,...Xde,...Zde,...epe,...tpe,...rpe,...npe,...spe,...ope,...ipe,...uR,...ape,...cpe},zC={amp:"&",apos:"'",gt:">",lt:"<",quot:'"'},uq={nbsp:"\xA0",copy:"\xA9",reg:"\xAE",trade:"\u2122",mdash:"\u2014",ndash:"\u2013",hellip:"\u2026",laquo:"\xAB",raquo:"\xBB",lsquo:"\u2018",rsquo:"\u2019",ldquo:"\u201C",rdquo:"\u201D",bull:"\u2022",para:"\xB6",sect:"\xA7",deg:"\xB0",frac12:"\xBD",frac14:"\xBC",frac34:"\xBE"};var Cet=new Set("!?\\\\/[]$%{}^&*()<>|+");function lpe(t){if(t[0]==="#")throw new Error(`[EntityReplacer] Invalid character '#' in entity name: "${t}"`);for(let e of t)if(Cet.has(e))throw new Error(`[EntityReplacer] Invalid character '${e}' in entity name: "${t}"`);return t}i(lpe,"validateEntityName");function dq(...t){let e=Object.create(null);for(let r of t)if(r)for(let n of Object.keys(r)){let s=r[n];if(typeof s=="string")e[n]=s;else if(s&&typeof s=="object"&&s.val!==void 0){let o=s.val;typeof o=="string"&&(e[n]=o)}}return e}i(dq,"mergeEntityMaps");var bm="external",dR="base",pq="all";function Iet(t){return!t||t===bm?new Set([bm]):t===pq?new Set([pq]):t===dR?new Set([dR]):Array.isArray(t)?new Set(t):new Set([bm])}i(Iet,"parseLimitTiers");var Ws=Object.freeze({allow:0,leave:1,remove:2,throw:3}),xet=new Set([9,10,13]);function wet(t){if(!t)return{xmlVersion:1,onLevel:Ws.allow,nullLevel:Ws.remove};let e=t.xmlVersion===1.1?1.1:1,r=Ws[t.onNCR]??Ws.allow,n=Ws[t.nullNCR]??Ws.remove,s=Math.max(n,Ws.remove);return{xmlVersion:e,onLevel:r,nullLevel:s}}i(wet,"parseNCRConfig");var Rh=class{static{i(this,"EntityDecoder")}constructor(e={}){this._limit=e.limit||{},this._maxTotalExpansions=this._limit.maxTotalExpansions||0,this._maxExpandedLength=this._limit.maxExpandedLength||0,this._postCheck=typeof e.postCheck=="function"?e.postCheck:n=>n,this._limitTiers=Iet(this._limit.applyLimitsTo??bm),this._numericAllowed=e.numericAllowed??!0,this._baseMap=dq(zC,e.namedEntities||null),this._externalMap=Object.create(null),this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this._removeSet=new Set(e.remove&&Array.isArray(e.remove)?e.remove:[]),this._leaveSet=new Set(e.leave&&Array.isArray(e.leave)?e.leave:[]);let r=wet(e.ncr);this._ncrXmlVersion=r.xmlVersion,this._ncrOnLevel=r.onLevel,this._ncrNullLevel=r.nullLevel}setExternalEntities(e){if(e)for(let r of Object.keys(e))lpe(r);this._externalMap=dq(e)}addExternalEntity(e,r){lpe(e),typeof r=="string"&&r.indexOf("&")===-1&&(this._externalMap[e]=r)}addInputEntities(e){this._totalExpansions=0,this._expandedLength=0,this._inputMap=dq(e)}reset(){return this._inputMap=Object.create(null),this._totalExpansions=0,this._expandedLength=0,this}setXmlVersion(e){this._ncrXmlVersion=e===1.1?1.1:1}decode(e){if(typeof e!="string"||e.length===0)return e;let r=e,n=[],s=e.length,o=0,a=0,c=this._maxTotalExpansions>0,l=this._maxExpandedLength>0,u=c||l;for(;a=s||e.charCodeAt(p)!==59){a++;continue}let m=e.slice(a+1,p);if(m.length===0){a++;continue}let f,g;if(this._removeSet.has(m))f="",g===void 0&&(g=bm);else if(this._leaveSet.has(m)){a++;continue}else if(m.charCodeAt(0)===35){let E=this._resolveNCR(m);if(E===void 0){a++;continue}f=E,g=dR}else{let E=this._resolveName(m);f=E?.value,g=E?.tier}if(f===void 0){a++;continue}if(a>o&&n.push(e.slice(o,a)),n.push(f),o=p+1,a=o,u&&this._tierCounts(g)){if(c&&(this._totalExpansions++,this._totalExpansions>this._maxTotalExpansions))throw new Error(`[EntityReplacer] Entity expansion count limit exceeded: ${this._totalExpansions} > ${this._maxTotalExpansions}`);if(l){let E=f.length-(m.length+2);if(E>0&&(this._expandedLength+=E,this._expandedLength>this._maxExpandedLength))throw new Error(`[EntityReplacer] Expanded content length limit exceeded: ${this._expandedLength} > ${this._maxExpandedLength}`)}}}o=55296&&e<=57343||this._ncrXmlVersion===1&&e>=1&&e<=31&&!xet.has(e)?Ws.remove:-1}_applyNCRAction(e,r,n){switch(e){case Ws.allow:return String.fromCodePoint(n);case Ws.remove:return"";case Ws.leave:return;case Ws.throw:throw new Error(`[EntityDecoder] Prohibited numeric character reference &${r}; (U+${n.toString(16).toUpperCase().padStart(4,"0")})`);default:return String.fromCodePoint(n)}}_resolveNCR(e){let r=e.charCodeAt(1),n;if(r===120||r===88?n=parseInt(e.slice(2),16):n=parseInt(e.slice(1),10),Number.isNaN(n)||n<0||n>1114111)return;let s=this._classifyNCR(n);if(!this._numericAllowed&&sGC.includes(t)?"__"+t:t,"defaultOnDangerousProperty"),bet={preserveOrder:!1,attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,removeNSPrefix:!1,allowBooleanAttributes:!1,parseTagValue:!0,parseAttributeValue:!1,trimValues:!0,cdataPropName:!1,numberParseOptions:{hex:!0,leadingZeros:!0,eNotation:!0},tagValueProcessor:i(function(t,e){return e},"tagValueProcessor"),attributeValueProcessor:i(function(t,e){return e},"attributeValueProcessor"),stopNodes:[],alwaysCreateTextNode:!1,isArray:i(()=>!1,"isArray"),commentPropName:!1,unpairedTags:[],processEntities:!0,htmlEntities:!1,entityDecoder:null,ignoreDeclaration:!1,ignorePiTags:!1,transformTagName:!1,transformAttributeName:!1,updateTag:i(function(t,e,r){return t},"updateTag"),captureMetaData:!1,maxNestedTags:100,strictReservedNames:!0,jPath:!0,onDangerousProperty:upe};function Bet(t,e){if(typeof t!="string")return;let r=t.toLowerCase();if(GC.some(n=>r===n.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);if(cR.some(n=>r===n.toLowerCase()))throw new Error(`[SECURITY] Invalid ${e}: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`)}i(Bet,"validatePropertyName");function dpe(t,e){return typeof t=="boolean"?{enabled:t,maxEntitySize:1e4,maxExpansionDepth:1e4,maxTotalExpansions:1/0,maxExpandedLength:1e5,maxEntityCount:1e3,allowedTags:null,tagFilter:null,appliesTo:"all"}:typeof t=="object"&&t!==null?{enabled:t.enabled!==!1,maxEntitySize:Math.max(1,t.maxEntitySize??1e4),maxExpansionDepth:Math.max(1,t.maxExpansionDepth??1e4),maxTotalExpansions:Math.max(1,t.maxTotalExpansions??1/0),maxExpandedLength:Math.max(1,t.maxExpandedLength??1e5),maxEntityCount:Math.max(1,t.maxEntityCount??1e3),allowedTags:t.allowedTags??null,tagFilter:t.tagFilter??null,appliesTo:t.appliesTo??"all"}:dpe(!0)}i(dpe,"normalizeProcessEntities");var ppe=i(function(t){let e=Object.assign({},bet,t),r=[{value:e.attributeNamePrefix,name:"attributeNamePrefix"},{value:e.attributesGroupName,name:"attributesGroupName"},{value:e.textNodeName,name:"textNodeName"},{value:e.cdataPropName,name:"cdataPropName"},{value:e.commentPropName,name:"commentPropName"}];for(let{value:n,name:s}of r)n&&Bet(n,s);return e.onDangerousProperty===null&&(e.onDangerousProperty=upe),e.processEntities=dpe(e.processEntities,e.htmlEntities),e.unpairedTagsSet=new Set(e.unpairedTags),e.stopNodes&&Array.isArray(e.stopNodes)&&(e.stopNodes=e.stopNodes.map(n=>typeof n=="string"&&n.startsWith("*.")?".."+n.substring(2):n)),e},"buildOptions");var pR;typeof Symbol!="function"?pR="@@xmlMetadata":pR=Symbol("XML Node Metadata");var js=class{static{i(this,"XmlNode")}constructor(e){this.tagname=e,this.child=[],this[":@"]=Object.create(null)}add(e,r){e==="__proto__"&&(e="#__proto__"),this.child.push({[e]:r})}addChild(e,r){e.tagname==="__proto__"&&(e.tagname="#__proto__"),e[":@"]&&Object.keys(e[":@"]).length>0?this.child.push({[e.tagname]:e.child,":@":e[":@"]}):this.child.push({[e.tagname]:e.child}),r!==void 0&&(this.child[this.child.length-1][pR]={startIndex:r})}static getMetaDataSymbol(){return pR}};var mpe=":A-Za-z_\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",Ret=mpe+"\\-\\.\\d\xB7\u0300-\u036F\u203F-\u2040",fpe=":A-Za-z_\xC0-\u02FF\u0370-\u037D\u037F-\u0486\u0488-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\u{10000}-\u{EFFFF}",Net=fpe+"\\-\\.\\d\xB7\u0300-\u036F\u0487\u203F-\u2040",Ape=i((t,e,r="")=>{let n=t.replace(":",""),s=e.replace(":",""),o=`[${n}][${s}]*`;return{name:new RegExp(`^[${t}][${e}]*$`,r),ncName:new RegExp(`^${o}$`,r),qName:new RegExp(`^${o}(?::${o})?$`,r),nmToken:new RegExp(`^[${e}]+$`,r),nmTokens:new RegExp(`^[${e}]+(?:\\s+[${e}]+)*$`,r)}},"buildRegexes"),Tet=Ape(mpe,Ret),Pet=Ape(fpe,Net,"u"),vet=i((t="1.0")=>t==="1.1"?Pet:Tet,"getRegexes");var Sm=i((t,{xmlVersion:e="1.0"}={})=>vet(e).qName.test(t),"qName");var YC=class{static{i(this,"DocTypeReader")}constructor(e,r){this.suppressValidationErr=!e,this.options=e,this.xmlVersion=r||1}setXmlVersion(e=1){this.xmlVersion=e}readDocType(e,r){let n=Object.create(null),s=0;if(e[r+3]==="O"&&e[r+4]==="C"&&e[r+5]==="T"&&e[r+6]==="Y"&&e[r+7]==="P"&&e[r+8]==="E"){r=r+9;let o=1,a=!1,c=!1,l="";for(;r=this.options.maxEntityCount)throw new Error(`Entity count (${s+1}) exceeds maximum allowed (${this.options.maxEntityCount})`);n[u]=d,s++}}else if(a&&Bm(e,"!ELEMENT",r)){r+=8;let{index:u}=this.readElementExp(e,r+1);r=u}else if(a&&Bm(e,"!ATTLIST",r))r+=8;else if(a&&Bm(e,"!NOTATION",r)){r+=9;let{index:u}=this.readNotationExp(e,r+1,this.suppressValidationErr);r=u}else if(Bm(e,"!--",r))c=!0;else throw new Error("Invalid DOCTYPE");o++,l=""}else if(e[r]===">"){if(c?e[r-1]==="-"&&e[r-2]==="-"&&(c=!1,o--):o--,o===0)break}else e[r]==="["?a=!0:l+=e[r];if(o!==0)throw new Error("Unclosed DOCTYPE")}else throw new Error("Invalid Tag instead of DOCTYPE");return{entities:n,i:r}}readEntityExp(e,r){r=Js(e,r);let n=r;for(;rthis.options.maxEntitySize)throw new Error(`Entity "${s}" size (${o.length}) exceeds maximum allowed size (${this.options.maxEntitySize})`);return r--,[s,o,r]}readNotationExp(e,r){r=Js(e,r);let n=r;for(;r{for(;e1||o.length===1&&!c))return t;{let l=Number(r),u=String(l);if(l===0)return l;if(u.search(/[eE]/)!==-1)return e.eNotation?l:t;if(r.indexOf(".")!==-1)return u==="0"||u===a||u===`${s}${a}`?l:t;let d=o?a:r;return o?d===u||s+d===u?l:t:d===u||d===s+u?l:t}}else return t}}else return Uet(t,Number(r),e)}i(fq,"toNumber");var Oet=/^([-+])?(0*)(\d*(\.\d*)?[eE][-\+]?\d+)$/;function Met(t,e,r){if(!r.eNotation)return t;let n=e.match(Oet);if(n){let s=n[1]||"",o=n[3].indexOf("e")===-1?"E":"e",a=n[2],c=s?t[a.length+1]===o:t[a.length]===o;return a.length>1&&c?t:a.length===1&&(n[3].startsWith(`.${o}`)||n[3][0]===o)?Number(e):a.length>0?r.leadingZeros&&!c?(e=(n[1]||"")+n[3],Number(e)):t:Number(e)}else return t}i(Met,"resolveEnotation");function Fet(t){return t&&t.indexOf(".")!==-1&&(t=t.replace(/0+$/,""),t==="."?t="0":t[0]==="."?t="0"+t:t[t.length-1]==="."&&(t=t.substring(0,t.length-1))),t}i(Fet,"trimZeros");function mq(t,e){let r=t.trim();if((e===2||e===8)&&(t=r.substring(2)),parseInt)return parseInt(t,e);if(Number.parseInt)return Number.parseInt(t,e);if(window&&window.parseInt)return window.parseInt(t,e);throw new Error("parseInt, Number.parseInt, window.parseInt are not supported")}i(mq,"parse_int");function Uet(t,e,r){let n=e===1/0;switch(r.infinity.toLowerCase()){case"null":return null;case"infinity":return e;case"string":return n?"Infinity":"-Infinity";default:return t}}i(Uet,"handleInfinity");function Aq(t){return typeof t=="function"?t:Array.isArray(t)?e=>{for(let r of t)if(typeof r=="string"&&e===r||r instanceof RegExp&&r.test(e))return!0}:()=>!1}i(Aq,"getIgnoreAttributesFn");var Oo=class{static{i(this,"Expression")}constructor(e,r={},n){this.pattern=e,this.separator=r.separator||".",this.segments=this._parse(e),this.data=n,this._hasDeepWildcard=this.segments.some(s=>s.type==="deep-wildcard"),this._hasAttributeCondition=this.segments.some(s=>s.attrName!==void 0),this._hasPositionSelector=this.segments.some(s=>s.position!==void 0)}_parse(e){let r=[],n=0,s="";for(;n0?e[e.length-1].tag:void 0}getCurrentNamespace(){let e=this._matcher.path;return e.length>0?e[e.length-1].namespace:void 0}getAttrValue(e){let r=this._matcher.path;if(r.length!==0)return r[r.length-1].values?.[e]}hasAttr(e){let r=this._matcher.path;if(r.length===0)return!1;let n=r[r.length-1];return n.values!==void 0&&e in n.values}getPosition(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].position??0}getCounter(){let e=this._matcher.path;return e.length===0?-1:e[e.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this._matcher.path.length}toString(e,r=!0){return this._matcher.toString(e,r)}toArray(){return this._matcher.path.map(e=>e.tag)}matches(e){return this._matcher.matches(e)}matchesAny(e){return e.matchesAny(this._matcher)}},uc=class{static{i(this,"Matcher")}constructor(e={}){this.separator=e.separator||".",this.path=[],this.siblingStacks=[],this._pathStringCache=null,this._view=new hq(this)}push(e,r=null,n=null){this._pathStringCache=null,this.path.length>0&&(this.path[this.path.length-1].values=void 0);let s=this.path.length;this.siblingStacks[s]||(this.siblingStacks[s]=new Map);let o=this.siblingStacks[s],a=n?`${n}:${e}`:e,c=o.get(a)||0,l=0;for(let d of o.values())l+=d;o.set(a,c+1);let u={tag:e,position:l,counter:c};n!=null&&(u.namespace=n),r!=null&&(u.values=r),this.path.push(u)}pop(){if(this.path.length===0)return;this._pathStringCache=null;let e=this.path.pop();return this.siblingStacks.length>this.path.length+1&&(this.siblingStacks.length=this.path.length+1),e}updateCurrent(e){if(this.path.length>0){let r=this.path[this.path.length-1];e!=null&&(r.values=e)}}getCurrentTag(){return this.path.length>0?this.path[this.path.length-1].tag:void 0}getCurrentNamespace(){return this.path.length>0?this.path[this.path.length-1].namespace:void 0}getAttrValue(e){if(this.path.length!==0)return this.path[this.path.length-1].values?.[e]}hasAttr(e){if(this.path.length===0)return!1;let r=this.path[this.path.length-1];return r.values!==void 0&&e in r.values}getPosition(){return this.path.length===0?-1:this.path[this.path.length-1].position??0}getCounter(){return this.path.length===0?-1:this.path[this.path.length-1].counter??0}getIndex(){return this.getPosition()}getDepth(){return this.path.length}toString(e,r=!0){let n=e||this.separator;if(n===this.separator&&r===!0){if(this._pathStringCache!==null)return this._pathStringCache;let o=this.path.map(a=>a.namespace?`${a.namespace}:${a.tag}`:a.tag).join(n);return this._pathStringCache=o,o}return this.path.map(o=>r&&o.namespace?`${o.namespace}:${o.tag}`:o.tag).join(n)}toArray(){return this.path.map(e=>e.tag)}reset(){this._pathStringCache=null,this.path=[],this.siblingStacks=[]}matches(e){let r=e.segments;return r.length===0?!1:e.hasDeepWildcard()?this._matchWithDeepWildcard(r):this._matchSimple(r)}_matchSimple(e){if(this.path.length!==e.length)return!1;for(let r=0;r=0&&r>=0;){let s=e[n];if(s.type==="deep-wildcard"){if(n--,n<0)return!0;let o=e[n],a=!1;for(let c=r;c>=0;c--)if(this._matchSegment(o,this.path[c],c===this.path.length-1)){r=c-1,n--,a=!0;break}if(!a)return!1}else{if(!this._matchSegment(s,this.path[r],r===this.path.length-1))return!1;r--,n--}}return n<0}_matchSegment(e,r,n){if(e.tag!=="*"&&e.tag!==r.tag||e.namespace!==void 0&&e.namespace!=="*"&&e.namespace!==r.namespace||e.attrName!==void 0&&(!n||!r.values||!(e.attrName in r.values)||e.attrValue!==void 0&&String(r.values[e.attrName])!==String(e.attrValue)))return!1;if(e.position!==void 0){if(!n)return!1;let s=r.counter??0;if(e.position==="first"&&s!==0)return!1;if(e.position==="odd"&&s%2!==1)return!1;if(e.position==="even"&&s%2!==0)return!1;if(e.position==="nth"&&s!==e.positionValue)return!1}return!0}matchesAny(e){return e.matchesAny(this)}snapshot(){return{path:this.path.map(e=>({...e})),siblingStacks:this.siblingStacks.map(e=>new Map(e))}}restore(e){this._pathStringCache=null,this.path=e.path.map(r=>({...r})),this.siblingStacks=e.siblingStacks.map(r=>new Map(r))}readOnly(){return this._view}};function qet(t,e){if(!t)return{};let r=e.attributesGroupName?t[e.attributesGroupName]:t;if(!r)return{};let n={};for(let s in r)if(s.startsWith(e.attributeNamePrefix)){let o=s.substring(e.attributeNamePrefix.length);n[o]=r[s]}else n[s]=r[s];return n}i(qet,"extractRawAttributes");function $et(t){if(!t||typeof t!="string")return;let e=t.indexOf(":");if(e!==-1&&e>0){let r=t.substring(0,e);if(r!=="xmlns")return r}}i($et,"extractNamespace");var WC=class{static{i(this,"OrderedObjParser")}constructor(e,r){this.options=e,this.currentNode=null,this.tagsNodeStack=[],this.parseXml=Yet,this.parseTextData=Get,this.resolveNameSpace=Het,this.buildAttributesMap=Vet,this.isItStopNode=Ket,this.replaceEntitiesValue=jet,this.readStopNodeData=ett,this.saveTextToParentTag=Jet,this.addChild=Wet,this.ignoreAttributesFn=Aq(this.options.ignoreAttributes),this.entityExpansionCount=0,this.currentExpandedLength=0;let n={...zC};this.options.entityDecoder?this.entityDecoder=this.options.entityDecoder:(typeof this.options.htmlEntities=="object"?n=this.options.htmlEntities:this.options.htmlEntities===!0&&(n={...uq,...uR}),this.entityDecoder=new Rh({namedEntities:{...n,...r},numericAllowed:this.options.htmlEntities,limit:{maxTotalExpansions:this.options.processEntities.maxTotalExpansions,maxExpandedLength:this.options.processEntities.maxExpandedLength,applyLimitsTo:this.options.processEntities.appliesTo}})),this.matcher=new uc,this.readonlyMatcher=this.matcher.readOnly(),this.isCurrentNodeStopNode=!1,this.stopNodeExpressionsSet=new Nh;let s=this.options.stopNodes;if(s&&s.length>0){for(let o=0;o0)){a||(t=this.replaceEntitiesValue(t,e,r));let l=c.jPath?r.toString():r,u=c.tagValueProcessor(e,t,l,s,o);return u==null?t:typeof u!=typeof t||u!==t?u:c.trimValues||t.trim()===t?Eq(t,c.parseTagValue,c.numberParseOptions):t}}i(Get,"parseTextData");function Het(t){if(this.options.removeNSPrefix){let e=t.split(":"),r=t.charAt(0)==="/"?"/":"";if(e[0]==="xmlns")return"";e.length===2&&(t=r+e[1])}return t}i(Het,"resolveNameSpace");var zet=new RegExp(`([^\\s=]+)\\s*(=\\s*(['"])([\\s\\S]*?)\\3)?`,"gm");function Vet(t,e,r,n=!1){let s=this.options;if(n===!0||s.ignoreAttributes!==!0&&typeof t=="string"){let o=aR(t,zet),a=o.length,c={},l=new Array(a),u=!1,d={};for(let f=0;f",c,"Closing Tag is not closed."),p=t.substring(c+2,d).trim();if(s.removeNSPrefix){let f=p.indexOf(":");f!==-1&&(p=p.substr(f+1))}p=gq(s.transformTagName,p,"",s).tagName,r&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher));let m=this.matcher.getCurrentTag();if(p&&s.unpairedTagsSet.has(p))throw new Error(`Unpaired tag can not be used as closing tag: `);m&&s.unpairedTagsSet.has(m)&&(this.matcher.pop(),this.tagsNodeStack.pop()),this.matcher.pop(),this.isCurrentNodeStopNode=!1,r=this.tagsNodeStack.pop(),n="",c=d}else if(u===63){let d=yq(t,c,!1,"?>");if(!d)throw new Error("Pi Tag is not closed.");n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let p=this.buildAttributesMap(d.tagExp,this.matcher,d.tagName,!0);if(p){let m=p[this.options.attributeNamePrefix+"version"];this.entityDecoder.setXmlVersion(Number(m)||1),o.setXmlVersion(Number(m)||1)}if(!(s.ignoreDeclaration&&d.tagName==="?xml"||s.ignorePiTags)){let m=new js(d.tagName);m.add(s.textNodeName,""),d.tagName!==d.tagExp&&d.attrExpPresent&&s.ignoreAttributes!==!0&&(m[":@"]=p),this.addChild(r,m,this.readonlyMatcher,c)}c=d.closeIndex+1}else if(u===33&&t.charCodeAt(c+2)===45&&t.charCodeAt(c+3)===45){let d=Th(t,"-->",c+4,"Comment is not closed.");if(s.commentPropName){let p=t.substring(c+4,d-2);n=this.saveTextToParentTag(n,r,this.readonlyMatcher),r.add(s.commentPropName,[{[s.textNodeName]:p}])}c=d}else if(u===33&&t.charCodeAt(c+2)===68){let d=o.readDocType(t,c);this.entityDecoder.addInputEntities(d.entities),c=d.i}else if(u===33&&t.charCodeAt(c+2)===91){let d=Th(t,"]]>",c,"CDATA is not closed.")-2,p=t.substring(c+9,d);n=this.saveTextToParentTag(n,r,this.readonlyMatcher);let m=this.parseTextData(p,r.tagname,this.readonlyMatcher,!0,!1,!0,!0);m==null&&(m=""),s.cdataPropName?r.add(s.cdataPropName,[{[s.textNodeName]:p}]):r.add(s.textNodeName,m),c=d+2}else{let d=yq(t,c,s.removeNSPrefix);if(!d){let M=t.substring(Math.max(0,c-50),Math.min(a,c+50));throw new Error(`readTagExp returned undefined at position ${c}. Context: "${M}"`)}let p=d.tagName,m=d.rawTagName,f=d.tagExp,g=d.attrExpPresent,E=d.closeIndex;if({tagName:p,tagExp:f}=gq(s.transformTagName,p,f,s),s.strictReservedNames&&(p===s.commentPropName||p===s.cdataPropName||p===s.textNodeName||p===s.attributesGroupName))throw new Error(`Invalid tag name: ${p}`);r&&n&&r.tagname!=="!xml"&&(n=this.saveTextToParentTag(n,r,this.readonlyMatcher,!1));let x=r;x&&s.unpairedTagsSet.has(x.tagname)&&(r=this.tagsNodeStack.pop(),this.matcher.pop());let w=!1;f.length>0&&f.lastIndexOf("/")===f.length-1&&(w=!0,p[p.length-1]==="/"?(p=p.substr(0,p.length-1),f=p):f=f.substr(0,f.length-1),g=p!==f);let S=null,P={},Q;Q=$et(m),p!==e.tagname&&this.matcher.push(p,{},Q),p!==f&&g&&(S=this.buildAttributesMap(f,this.matcher,p),S&&(P=qet(S,s))),p!==e.tagname&&(this.isCurrentNodeStopNode=this.isItStopNode());let q=c;if(this.isCurrentNodeStopNode){let M="";if(w)c=d.closeIndex;else if(s.unpairedTagsSet.has(p))c=d.closeIndex;else{let pe=this.readStopNodeData(t,m,E+1);if(!pe)throw new Error(`Unexpected end of ${m}`);c=pe.i,M=pe.tagContent}let V=new js(p);S&&(V[":@"]=S),V.add(s.textNodeName,M),this.matcher.pop(),this.isCurrentNodeStopNode=!1,this.addChild(r,V,this.readonlyMatcher,q)}else{if(w){({tagName:p,tagExp:f}=gq(s.transformTagName,p,f,s));let M=new js(p);S&&(M[":@"]=S),this.addChild(r,M,this.readonlyMatcher,q),this.matcher.pop(),this.isCurrentNodeStopNode=!1}else if(s.unpairedTagsSet.has(p)){let M=new js(p);S&&(M[":@"]=S),this.addChild(r,M,this.readonlyMatcher,q),this.matcher.pop(),this.isCurrentNodeStopNode=!1,c=d.closeIndex;continue}else{let M=new js(p);if(this.tagsNodeStack.length>s.maxNestedTags)throw new Error("Maximum nested tags exceeded");this.tagsNodeStack.push(r),S&&(M[":@"]=S),this.addChild(r,M,this.readonlyMatcher,q),r=M}n="",c=E}}}else n+=t[c];return e.child},"parseXml");function Wet(t,e,r,n){this.options.captureMetaData||(n=void 0);let s=this.options.jPath?r.toString():r,o=this.options.updateTag(e.tagname,s,e[":@"]);o===!1||(typeof o=="string"&&(e.tagname=o),t.addChild(e,n))}i(Wet,"addChild");function jet(t,e,r){let n=this.options.processEntities;if(!n||!n.enabled)return t;if(n.allowedTags){let s=this.options.jPath?r.toString():r;if(!(Array.isArray(n.allowedTags)?n.allowedTags.includes(e):n.allowedTags(e,s)))return t}if(n.tagFilter){let s=this.options.jPath?r.toString():r;if(!n.tagFilter(e,s))return t}return this.entityDecoder.decode(t)}i(jet,"replaceEntitiesValue");function Jet(t,e,r,n){return t&&(n===void 0&&(n=e.child.length===0),t=this.parseTextData(t,e.tagname,r,!1,e[":@"]?Object.keys(e[":@"]).length!==0:!1,n),t!==void 0&&t!==""&&e.add(this.options.textNodeName,t),t=""),t}i(Jet,"saveTextToParentTag");function Ket(){return this.stopNodeExpressionsSet.size===0?!1:this.matcher.matchesAny(this.stopNodeExpressionsSet)}i(Ket,"isItStopNode");function Xet(t,e,r=">"){let n=0,s=t.length,o=r.charCodeAt(0),a=r.length>1?r.charCodeAt(1):-1,c="",l=e;for(let u=e;u",r,`${e} is not closed`);if(t.substring(r+2,c).trim()===e&&(s--,s===0))return{tagContent:t.substring(n,r),i:c};r=c}else if(a===63)r=Th(t,"?>",r+1,"StopNode is not closed.");else if(a===33&&t.charCodeAt(r+2)===45&&t.charCodeAt(r+3)===45)r=Th(t,"-->",r+3,"StopNode is not closed.");else if(a===33&&t.charCodeAt(r+2)===91)r=Th(t,"]]>",r,"StopNode is not closed.")-2;else{let c=yq(t,r,!1);c&&((c&&c.tagName)===e&&c.tagExp[c.tagExp.length-1]!=="/"&&s++,r=c.closeIndex)}}}i(ett,"readStopNodeData");function Eq(t,e,r){if(e&&typeof t=="string"){let n=t.trim();return n==="true"?!0:n==="false"?!1:fq(t,r)}else return Vde(t)?t:""}i(Eq,"parseValue");function gq(t,e,r,n){if(t){let s=t(e);r===e&&(r=s),e=s}return e=hpe(e,n),{tagName:e,tagExp:r}}i(gq,"transformTagName");function hpe(t,e){if(cR.includes(t))throw new Error(`[SECURITY] Invalid name: "${t}" is a reserved JavaScript keyword that could cause prototype pollution`);return GC.includes(t)?e.onDangerousProperty(t):t}i(hpe,"sanitizeName");var Cq=js.getMetaDataSymbol();function ttt(t,e){if(!t||typeof t!="object")return{};if(!e)return t;let r={};for(let n in t)if(n.startsWith(e)){let s=n.substring(e.length);r[s]=t[n]}else r[n]=t[n];return r}i(ttt,"stripAttributePrefix");function Iq(t,e,r,n){return gpe(t,e,r,n)}i(Iq,"prettify");function gpe(t,e,r,n){let s,o={};for(let a=0;a0&&(o[e.textNodeName]=s):s!==void 0&&(o[e.textNodeName]=s),o}i(gpe,"compress");function rtt(t){let e=Object.keys(t);for(let r=0;r/g,"]]]]>")}i(fR,"safeCdata");function Sd(t){return String(t).replace(/"/g,""").replace(/'/g,"'")}i(Sd,"escapeAttribute");var ott=` +`;function itt(t,e){if(!Array.isArray(t)||t.length===0)return"1.0";let r=t[0];if(bq(r)==="?xml"){let s=r[":@"];if(s){let o=e.attributeNamePrefix+"version";if(s[o])return s[o]}}return"1.0"}i(itt,"detectXmlVersionFromArray");function Epe(t,e,r,n,s){return!r.sanitizeName||Sm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(Epe,"resolveTagName");function wq(t,e){let r="";e.format&&(r=ott);let n=[];if(e.stopNodes&&Array.isArray(e.stopNodes))for(let a=0;ae.maxNestedTags)throw new Error("Maximum nested tags exceeded");if(!Array.isArray(t)){if(t!=null){let l=t.toString();return l=xq(l,e),l}return""}for(let l=0;l`,c=!1,n.pop();continue}else if(m===e.commentPropName){let P=u[d][0][e.textNodeName],Q=mR(P);a+=r+``,c=!0,n.pop();continue}else if(m[0]==="?"){let P=ype(u[":@"],e,g,n,o);a+=(m==="?xml"?"":r)+`<${m}${P}?>`,c=!0,n.pop();continue}let E=r;E!==""&&(E+=e.indentBy);let x=ype(u[":@"],e,g,n,o),w=r+`<${m}${x}`,S;g?S=Ipe(u[d],e):S=Cpe(u[d],e,E,n,s,o),e.unpairedTags.indexOf(m)!==-1?e.suppressUnpairedNode?a+=w+">":a+=w+"/>":(!S||S.length===0)&&e.suppressEmptyNode?a+=w+"/>":S&&S.endsWith(">")?a+=w+`>${S}${r}`:(a+=w+">",S&&r!==""&&(S.includes("/>")||S.includes("`),c=!0,n.pop()}return a}i(Cpe,"arrToStr");function att(t,e){if(!t||e.ignoreAttributes)return null;let r={},n=!1;for(let s in t){if(!Object.prototype.hasOwnProperty.call(t,s))continue;let o=s.startsWith(e.attributeNamePrefix)?s.substr(e.attributeNamePrefix.length):s;r[o]=Sd(t[s]),n=!0}return n?r:null}i(att,"extractAttributeValues");function Ipe(t,e){if(!Array.isArray(t))return t!=null?t.toString():"";let r="";for(let n=0;n`:r+=`<${o}${a}>${c}`}}}return r}i(Ipe,"getRawContent");function ctt(t,e){let r="";if(t&&!e.ignoreAttributes)for(let n in t){if(!Object.prototype.hasOwnProperty.call(t,n))continue;let s=t[n];s===!0&&e.suppressBooleanAttributes?r+=` ${n.substr(e.attributeNamePrefix.length)}`:r+=` ${n.substr(e.attributeNamePrefix.length)}="${Sd(s)}"`}return r}i(ctt,"attr_to_str_raw");function bq(t){let e=Object.keys(t);for(let r=0;r0&&e.processEntities)for(let r=0;r{for(let r of t)if(typeof r=="string"&&e===r||r instanceof RegExp&&r.test(e))return!0}:()=>!1}i(Sq,"getIgnoreAttributesFn");var utt={attributeNamePrefix:"@_",attributesGroupName:!1,textNodeName:"#text",ignoreAttributes:!0,cdataPropName:!1,format:!1,indentBy:" ",suppressEmptyNode:!1,suppressUnpairedNode:!0,suppressBooleanAttributes:!0,tagValueProcessor:i(function(t,e){return e},"tagValueProcessor"),attributeValueProcessor:i(function(t,e){return e},"attributeValueProcessor"),preserveOrder:!1,commentPropName:!1,unpairedTags:[],entities:[{regex:new RegExp("&","g"),val:"&"},{regex:new RegExp(">","g"),val:">"},{regex:new RegExp("<","g"),val:"<"},{regex:new RegExp("'","g"),val:"'"},{regex:new RegExp('"',"g"),val:"""}],processEntities:!0,stopNodes:[],oneListGroup:!1,maxNestedTags:100,jPath:!0,sanitizeName:!1};function Ks(t){if(this.options=Object.assign({},utt,t),this.options.stopNodes&&Array.isArray(this.options.stopNodes)&&(this.options.stopNodes=this.options.stopNodes.map(e=>typeof e=="string"&&e.startsWith("*.")?".."+e.substring(2):e)),this.stopNodeExpressions=[],this.options.stopNodes&&Array.isArray(this.options.stopNodes))for(let e=0;e `,this.newLine=` -`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}function ltt(t,e){let r=t["?xml"];if(r&&typeof r=="object"){if(e.attributesGroupName&&r[e.attributesGroupName]){let s=r[e.attributesGroupName][e.attributeNamePrefix+"version"];if(s)return s}let n=r[e.attributeNamePrefix+"version"];if(n)return n}return"1.0"}function Sq(t,e,r,n,s){return!r.sanitizeName||bm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}Js.prototype.build=function(t){if(this.options.preserveOrder)return xq(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});let e=new lc,r=ltt(t,this.options);return this.j2x(t,0,e,r).val}};Js.prototype.j2x=function(t,e,r,n){let s="",o="";if(this.options.maxNestedTags&&r.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");let i=this.options.jPath?r.toString():r,a=this.checkStopNode(r);for(let c in t){if(!Object.prototype.hasOwnProperty.call(t,c))continue;let u=c===this.options.textNodeName||c===this.options.cdataPropName||c===this.options.commentPropName||this.options.attributesGroupName&&c===this.options.attributesGroupName||this.isAttribute(c)||c[0]==="?"?c:Sq(c,!1,this.options,r,n);if(typeof t[c]>"u")this.isAttribute(c)&&(o+="");else if(t[c]===null)this.isAttribute(c)||u===this.options.cdataPropName||u===this.options.commentPropName?o+="":u[0]==="?"?o+=this.indentate(e)+"<"+u+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+u+"/"+this.tagEndChar;else if(t[c]instanceof Date)o+=this.buildTextValNode(t[c],u,"",e,r);else if(typeof t[c]!="object"){let d=this.isAttribute(c);if(d&&!this.ignoreAttributesFn(d,i)){let p=Sq(d,!0,this.options,r,n);s+=this.buildAttrPairStr(p,""+t[c],a)}else if(!d)if(c===this.options.textNodeName){let p=this.options.tagValueProcessor(c,""+t[c]);o+=this.replaceEntitiesValue(p)}else{r.push(u);let p=this.checkStopNode(r);if(r.pop(),p){let m=""+t[c];m===""?o+=this.indentate(e)+"<"+u+this.closeTag(u)+this.tagEndChar:o+=this.indentate(e)+"<"+u+">"+m+""u"))if(y===null)u[0]==="?"?o+=this.indentate(e)+"<"+u+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+u+"/"+this.tagEndChar;else if(typeof y=="object")if(this.options.oneListGroup){r.push(u);let I=this.j2x(y,e+1,r,n);r.pop(),p+=I.val,this.options.attributesGroupName&&y.hasOwnProperty(this.options.attributesGroupName)&&(m+=I.attrStr)}else p+=this.processTextOrObjNode(y,u,e,r,n);else if(this.options.oneListGroup){let I=this.options.tagValueProcessor(u,y);I=this.replaceEntitiesValue(I),p+=I}else{r.push(u);let I=this.checkStopNode(r);if(r.pop(),I){let x=""+y;x===""?p+=this.indentate(e)+"<"+u+this.closeTag(u)+this.tagEndChar:p+=this.indentate(e)+"<"+u+">"+x+"${s}`;else if(typeof s=="object"&&s!==null){let o=this.buildRawContent(s),i=this.buildAttributesForStopNode(s);o===""?e+=`<${r}${i}/>`:e+=`<${r}${i}>${o}`}}else if(typeof n=="object"&&n!==null){let s=this.buildRawContent(n),o=this.buildAttributesForStopNode(n);s===""?e+=`<${r}${o}/>`:e+=`<${r}${o}>${s}`}else e+=`<${r}>${n}`}return e};Js.prototype.buildAttributesForStopNode=function(t){if(!t||typeof t!="object")return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){let r=t[this.options.attributesGroupName];for(let n in r){if(!Object.prototype.hasOwnProperty.call(r,n))continue;let s=n.startsWith(this.options.attributeNamePrefix)?n.substring(this.options.attributeNamePrefix.length):n,o=r[n];o===!0&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+o+'"'}}else for(let r in t){if(!Object.prototype.hasOwnProperty.call(t,r))continue;let n=this.isAttribute(r);if(n){let s=t[r];s===!0&&this.options.suppressBooleanAttributes?e+=" "+n:e+=" "+n+'="'+s+'"'}}return e};Js.prototype.buildObjectNode=function(t,e,r,n){if(t==="")return e[0]==="?"?this.indentate(n)+"<"+e+r+"?"+this.tagEndChar:this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar;if(e[0]==="?")return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let s=""+t+s:this.options.commentPropName!==!1&&e===this.options.commentPropName&&o.length===0?this.indentate(n)+``+this.newLine:this.indentate(n)+"<"+e+r+o+this.tagEndChar+t+this.indentate(n)+s}};Js.prototype.closeTag=function(t){let e="";return this.options.unpairedTags.indexOf(t)!==-1?this.options.suppressUnpairedNode||(e="/"):this.options.suppressEmptyNode?e="/":e=`>`+this.newLine}else if(this.options.commentPropName!==!1&&e===this.options.commentPropName){let o=pR(t);return this.indentate(n)+``+this.newLine}else{if(e[0]==="?")return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let o=this.options.tagValueProcessor(e,t);return o=this.replaceEntitiesValue(o),o===""?this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar:this.indentate(n)+"<"+e+r+">"+o+"0&&this.options.processEntities)for(let e=0;e${n.build(s)}`.replace(/\n/g,"")}async function Rq(t,e={}){if(!t)throw new Error("Document is empty");let r=Ipe.validate(t);if(r!==!0)throw r;let s=new Th(ftt(e)).parse(t);if(s["?xml"]&&delete s["?xml"],!e.includeRoot)for(let o of Object.keys(s)){let i=s[o];return typeof i=="object"?Object.assign({},i):i}return s}var AR=oc("storage-blob");var Rpe=require("events");var Spe=require("node:stream"),hR=class extends Spe.Readable{buffers;byteLength;byteOffsetInCurrentBuffer;bufferIndex;pushedBytesLength;constructor(e,r,n){super(n),this.buffers=e,this.byteLength=r,this.byteOffsetInCurrentBuffer=0,this.bufferIndex=0,this.pushedBytesLength=0;let s=0;for(let o of this.buffers)s+=o.byteLength;if(s=this.byteLength&&this.push(null),e||(e=this.readableHighWaterMark);let r=[],n=0;for(;ne-n){let a=this.byteOffsetInCurrentBuffer+e-n;r.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,a)),this.pushedBytesLength+=e-n,this.byteOffsetInCurrentBuffer=a,n=e;break}else{let a=this.byteOffsetInCurrentBuffer+i;r.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,a)),i===o?(this.byteOffsetInCurrentBuffer=0,this.bufferIndex++):this.byteOffsetInCurrentBuffer=a,this.pushedBytesLength+=i,n+=i}}r.length>1?this.push(Buffer.concat(r)):r.length===1&&this.push(r[0])}};var Bpe=Q(require("node:buffer"),1),gR=Bpe.default.constants.MAX_LENGTH,yR=class{buffers=[];capacity;_size;get size(){return this._size}constructor(e,r,n){this.capacity=e,this._size=0;let s=Math.ceil(e/gR);for(let o=0;o0&&(e[0]=e[0].slice(i))}getReadableStream(){return new hR(this.buffers,this.size)}};var ER=class{bufferSize;maxBuffers;readable;outgoingHandler;emitter=new Rpe.EventEmitter;concurrency;offset=0;isStreamEnd=!1;isError=!1;executingOutgoingHandlers=0;encoding;numBuffers=0;unresolvedDataArray=[];unresolvedLength=0;incoming=[];outgoing=[];constructor(e,r,n,s,o,i){if(r<=0)throw new RangeError(`bufferSize must be larger than 0, current is ${r}`);if(n<=0)throw new RangeError(`maxBuffers must be larger than 0, current is ${n}`);if(o<=0)throw new RangeError(`concurrency must be larger than 0, current is ${o}`);this.bufferSize=r,this.maxBuffers=n,this.readable=e,this.outgoingHandler=s,this.concurrency=o,this.encoding=i}async do(){return new Promise((e,r)=>{this.readable.on("data",n=>{n=typeof n=="string"?Buffer.from(n,this.encoding):n,this.appendUnresolvedData(n),this.resolveData()||this.readable.pause()}),this.readable.on("error",n=>{this.emitter.emit("error",n)}),this.readable.on("end",()=>{this.isStreamEnd=!0,this.emitter.emit("checkEnd")}),this.emitter.on("error",n=>{this.isError=!0,this.readable.pause(),r(n)}),this.emitter.on("checkEnd",()=>{if(this.outgoing.length>0){this.triggerOutgoingHandlers();return}if(this.isStreamEnd&&this.executingOutgoingHandlers===0)if(this.unresolvedLength>0&&this.unresolvedLengthn.getReadableStream(),n.size,this.offset).then(e).catch(r)}else{if(this.unresolvedLength>=this.bufferSize)return;e()}})})}appendUnresolvedData(e){this.unresolvedDataArray.push(e),this.unresolvedLength+=e.length}shiftBufferFromUnresolvedDataArray(e){return e?e.fill(this.unresolvedDataArray,this.unresolvedLength):e=new yR(this.bufferSize,this.unresolvedDataArray,this.unresolvedLength),this.unresolvedLength-=e.size,e}resolveData(){for(;this.unresolvedLength>=this.bufferSize;){let e;if(this.incoming.length>0)e=this.incoming.shift(),this.shiftBufferFromUnresolvedDataArray(e);else if(this.numBuffers=this.concurrency)return;e=this.outgoing.shift(),e&&this.triggerOutgoingHandler(e)}while(e)}async triggerOutgoingHandler(e){let r=e.size;this.executingOutgoingHandlers++,this.offset+=r;try{await this.outgoingHandler(()=>e.getReadableStream(),r,this.offset-r)}catch(n){this.emitter.emit("error",n);return}this.executingOutgoingHandlers--,this.reuseBuffer(e),this.emitter.emit("checkEnd")}reuseBuffer(e){this.incoming.push(e),!this.isError&&this.resolveData()&&!this.isStreamEnd&&this.readable.resume()}};var Nq;function Tq(){return Nq||(Nq=QC()),Nq}var uc=class{_nextPolicy;_options;constructor(e,r){this._nextPolicy=e,this._options=r}shouldLog(e){return this._options.shouldLog(e)}log(e,r){this._options.log(e,r)}};var Jl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}},qe={AUTHORIZATION:"Authorization",AUTHORIZATION_SCHEME:"Bearer",CONTENT_ENCODING:"Content-Encoding",CONTENT_ID:"Content-ID",CONTENT_LANGUAGE:"Content-Language",CONTENT_LENGTH:"Content-Length",CONTENT_MD5:"Content-Md5",CONTENT_TRANSFER_ENCODING:"Content-Transfer-Encoding",CONTENT_TYPE:"Content-Type",COOKIE:"Cookie",DATE:"date",IF_MATCH:"if-match",IF_MODIFIED_SINCE:"if-modified-since",IF_NONE_MATCH:"if-none-match",IF_UNMODIFIED_SINCE:"if-unmodified-since",PREFIX_FOR_STORAGE:"x-ms-",RANGE:"Range",USER_AGENT:"User-Agent",X_MS_CLIENT_REQUEST_ID:"x-ms-client-request-id",X_MS_COPY_SOURCE:"x-ms-copy-source",X_MS_DATE:"x-ms-date",X_MS_ERROR_CODE:"x-ms-error-code",X_MS_VERSION:"x-ms-version",X_MS_CopySourceErrorCode:"x-ms-copy-source-error-code"};function Sd(t,e,r){let n=new URL(t),s=encodeURIComponent(e),o=r?encodeURIComponent(r):void 0,i=n.search===""?"?":n.search,a=[];for(let c of i.slice(1).split("&"))if(c){let[l]=c.split("=",2);l!==s&&a.push(c)}return o&&a.push(`${s}=${o}`),n.search=a.length?`?${a.join("&")}`:"",n.toString()}function CR(t,e){let r=new URL(t);return r.hostname=e,r.toString()}function IR(t){try{return new URL(t).pathname}catch{return}}function xR(t){let e=new URL(t).search;if(!e)return{};e=e.trim(),e=e.startsWith("?")?e.substring(1):e;let r=e.split("&");r=r.filter(s=>{let o=s.indexOf("="),i=s.lastIndexOf("=");return o>0&&o===i&&i{let o,i=()=>{o!==void 0&&clearTimeout(o),s(r)};o=setTimeout(()=>{e!==void 0&&e.removeEventListener("abort",i),n()},t),e!==void 0&&e.addEventListener("abort",i)})}var YC=class extends uc{constructor(e,r){super(e,r)}async sendRequest(e){return Bt?this._nextPolicy.sendRequest(e):((e.method.toUpperCase()==="GET"||e.method.toUpperCase()==="HEAD")&&(e.url=Sd(e.url,Jl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),e.headers.remove(qe.COOKIE),e.headers.remove(qe.CONTENT_LENGTH),this._nextPolicy.sendRequest(e))}};var WC=class{create(e,r){return new YC(e,r)}};var Bm=class extends uc{sendRequest(e){return this._nextPolicy.sendRequest(this.signRequest(e))}signRequest(e){return e}};var jC=class extends Bm{constructor(e,r){super(e,r)}};var Rm=class{create(e,r){throw new Error("Method should be implemented in children classes.")}};var tr=class extends Rm{create(e,r){return new jC(e,r)}};var Npe=require("node:crypto");var Att=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1820,0,1823,1825,1827,1829,0,0,0,1837,2051,0,0,1843,0,3331,3354,3356,3358,3360,3362,3364,3366,3368,3370,0,0,0,0,0,0,0,3586,3593,3594,3610,3617,3619,3621,3628,3634,3637,3638,3656,3665,3696,3708,3710,3721,3722,3729,3737,3743,3746,3748,3750,3751,3753,0,0,0,1859,1860,1864,3586,3593,3594,3610,3617,3619,3621,3628,3634,3637,3638,3656,3665,3696,3708,3710,3721,3722,3729,3737,3743,3746,3748,3750,3751,3753,0,1868,0,1872,0]),htt=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),gtt=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32786,0,0,0,0,0,33298,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function bR(t,e){return ytt(t,e)?-1:1}function ytt(t,e){let r=[Att,htt,gtt],n=0,s=0,o=0;for(;no;let i=s0&&e.headers.set(qe.CONTENT_LENGTH,Buffer.byteLength(e.body));let r=[e.method.toUpperCase(),this.getHeaderValueToSign(e,qe.CONTENT_LANGUAGE),this.getHeaderValueToSign(e,qe.CONTENT_ENCODING),this.getHeaderValueToSign(e,qe.CONTENT_LENGTH),this.getHeaderValueToSign(e,qe.CONTENT_MD5),this.getHeaderValueToSign(e,qe.CONTENT_TYPE),this.getHeaderValueToSign(e,qe.DATE),this.getHeaderValueToSign(e,qe.IF_MODIFIED_SINCE),this.getHeaderValueToSign(e,qe.IF_MATCH),this.getHeaderValueToSign(e,qe.IF_NONE_MATCH),this.getHeaderValueToSign(e,qe.IF_UNMODIFIED_SINCE),this.getHeaderValueToSign(e,qe.RANGE)].join(` +`):(this.indentate=function(){return""},this.tagEndChar=">",this.newLine="")}i(Ks,"Builder");function dtt(t,e){let r=t["?xml"];if(r&&typeof r=="object"){if(e.attributesGroupName&&r[e.attributesGroupName]){let s=r[e.attributesGroupName][e.attributeNamePrefix+"version"];if(s)return s}let n=r[e.attributeNamePrefix+"version"];if(n)return n}return"1.0"}i(dtt,"detectXmlVersionFromObj");function Bq(t,e,r,n,s){return!r.sanitizeName||Sm(t,{xmlVersion:s})?t:r.sanitizeName(t,{isAttribute:e,matcher:n.readOnly()})}i(Bq,"resolveTagName");Ks.prototype.build=function(t){if(this.options.preserveOrder)return wq(t,this.options);{Array.isArray(t)&&this.options.arrayNodeName&&this.options.arrayNodeName.length>1&&(t={[this.options.arrayNodeName]:t});let e=new uc,r=dtt(t,this.options);return this.j2x(t,0,e,r).val}};Ks.prototype.j2x=function(t,e,r,n){let s="",o="";if(this.options.maxNestedTags&&r.getDepth()>=this.options.maxNestedTags)throw new Error("Maximum nested tags exceeded");let a=this.options.jPath?r.toString():r,c=this.checkStopNode(r);for(let l in t){if(!Object.prototype.hasOwnProperty.call(t,l))continue;let d=l===this.options.textNodeName||l===this.options.cdataPropName||l===this.options.commentPropName||this.options.attributesGroupName&&l===this.options.attributesGroupName||this.isAttribute(l)||l[0]==="?"?l:Bq(l,!1,this.options,r,n);if(typeof t[l]>"u")this.isAttribute(l)&&(o+="");else if(t[l]===null)this.isAttribute(l)||d===this.options.cdataPropName||d===this.options.commentPropName?o+="":d[0]==="?"?o+=this.indentate(e)+"<"+d+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+d+"/"+this.tagEndChar;else if(t[l]instanceof Date)o+=this.buildTextValNode(t[l],d,"",e,r);else if(typeof t[l]!="object"){let p=this.isAttribute(l);if(p&&!this.ignoreAttributesFn(p,a)){let m=Bq(p,!0,this.options,r,n);s+=this.buildAttrPairStr(m,""+t[l],c)}else if(!p)if(l===this.options.textNodeName){let m=this.options.tagValueProcessor(l,""+t[l]);o+=this.replaceEntitiesValue(m)}else{r.push(d);let m=this.checkStopNode(r);if(r.pop(),m){let f=""+t[l];f===""?o+=this.indentate(e)+"<"+d+this.closeTag(d)+this.tagEndChar:o+=this.indentate(e)+"<"+d+">"+f+""u"))if(E===null)d[0]==="?"?o+=this.indentate(e)+"<"+d+"?"+this.tagEndChar:o+=this.indentate(e)+"<"+d+"/"+this.tagEndChar;else if(typeof E=="object")if(this.options.oneListGroup){r.push(d);let x=this.j2x(E,e+1,r,n);r.pop(),m+=x.val,this.options.attributesGroupName&&E.hasOwnProperty(this.options.attributesGroupName)&&(f+=x.attrStr)}else m+=this.processTextOrObjNode(E,d,e,r,n);else if(this.options.oneListGroup){let x=this.options.tagValueProcessor(d,E);x=this.replaceEntitiesValue(x),m+=x}else{r.push(d);let x=this.checkStopNode(r);if(r.pop(),x){let w=""+E;w===""?m+=this.indentate(e)+"<"+d+this.closeTag(d)+this.tagEndChar:m+=this.indentate(e)+"<"+d+">"+w+"${s}`;else if(typeof s=="object"&&s!==null){let o=this.buildRawContent(s),a=this.buildAttributesForStopNode(s);o===""?e+=`<${r}${a}/>`:e+=`<${r}${a}>${o}`}}else if(typeof n=="object"&&n!==null){let s=this.buildRawContent(n),o=this.buildAttributesForStopNode(n);s===""?e+=`<${r}${o}/>`:e+=`<${r}${o}>${s}`}else e+=`<${r}>${n}`}return e};Ks.prototype.buildAttributesForStopNode=function(t){if(!t||typeof t!="object")return"";let e="";if(this.options.attributesGroupName&&t[this.options.attributesGroupName]){let r=t[this.options.attributesGroupName];for(let n in r){if(!Object.prototype.hasOwnProperty.call(r,n))continue;let s=n.startsWith(this.options.attributeNamePrefix)?n.substring(this.options.attributeNamePrefix.length):n,o=r[n];o===!0&&this.options.suppressBooleanAttributes?e+=" "+s:e+=" "+s+'="'+o+'"'}}else for(let r in t){if(!Object.prototype.hasOwnProperty.call(t,r))continue;let n=this.isAttribute(r);if(n){let s=t[r];s===!0&&this.options.suppressBooleanAttributes?e+=" "+n:e+=" "+n+'="'+s+'"'}}return e};Ks.prototype.buildObjectNode=function(t,e,r,n){if(t==="")return e[0]==="?"?this.indentate(n)+"<"+e+r+"?"+this.tagEndChar:this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar;if(e[0]==="?")return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let s=""+t+s:this.options.commentPropName!==!1&&e===this.options.commentPropName&&o.length===0?this.indentate(n)+``+this.newLine:this.indentate(n)+"<"+e+r+o+this.tagEndChar+t+this.indentate(n)+s}};Ks.prototype.closeTag=function(t){let e="";return this.options.unpairedTags.indexOf(t)!==-1?this.options.suppressUnpairedNode||(e="/"):this.options.suppressEmptyNode?e="/":e=`>`+this.newLine}else if(this.options.commentPropName!==!1&&e===this.options.commentPropName){let o=mR(t);return this.indentate(n)+``+this.newLine}else{if(e[0]==="?")return this.indentate(n)+"<"+e+r+"?"+this.tagEndChar;{let o=this.options.tagValueProcessor(e,t);return o=this.replaceEntitiesValue(o),o===""?this.indentate(n)+"<"+e+r+this.closeTag(e)+this.tagEndChar:this.indentate(n)+"<"+e+r+">"+o+"0&&this.options.processEntities)for(let e=0;e${n.build(s)}`.replace(/\n/g,"")}i(AR,"stringifyXML");async function Nq(t,e={}){if(!t)throw new Error("Document is empty");let r=xpe.validate(t);if(r!==!0)throw r;let s=new Ph(htt(e)).parse(t);if(s["?xml"]&&delete s["?xml"],!e.includeRoot)for(let o of Object.keys(s)){let a=s[o];return typeof a=="object"?Object.assign({},a):a}return s}i(Nq,"parseXML");var hR=ic("storage-blob");var Npe=require("events");var Bpe=require("node:stream");var gR=class extends Bpe.Readable{static{i(this,"BuffersStream")}buffers;byteLength;byteOffsetInCurrentBuffer;bufferIndex;pushedBytesLength;constructor(e,r,n){super(n),this.buffers=e,this.byteLength=r,this.byteOffsetInCurrentBuffer=0,this.bufferIndex=0,this.pushedBytesLength=0;let s=0;for(let o of this.buffers)s+=o.byteLength;if(s=this.byteLength&&this.push(null),e||(e=this.readableHighWaterMark);let r=[],n=0;for(;ne-n){let c=this.byteOffsetInCurrentBuffer+e-n;r.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,c)),this.pushedBytesLength+=e-n,this.byteOffsetInCurrentBuffer=c,n=e;break}else{let c=this.byteOffsetInCurrentBuffer+a;r.push(this.buffers[this.bufferIndex].slice(this.byteOffsetInCurrentBuffer,c)),a===o?(this.byteOffsetInCurrentBuffer=0,this.bufferIndex++):this.byteOffsetInCurrentBuffer=c,this.pushedBytesLength+=a,n+=a}}r.length>1?this.push(Buffer.concat(r)):r.length===1&&this.push(r[0])}};var Rpe=D(require("node:buffer"),1);var yR=Rpe.default.constants.MAX_LENGTH,ER=class{static{i(this,"PooledBuffer")}buffers=[];capacity;_size;get size(){return this._size}constructor(e,r,n){this.capacity=e,this._size=0;let s=Math.ceil(e/yR);for(let o=0;o0&&(e[0]=e[0].slice(a))}getReadableStream(){return new gR(this.buffers,this.size)}};var CR=class{static{i(this,"BufferScheduler")}bufferSize;maxBuffers;readable;outgoingHandler;emitter=new Npe.EventEmitter;concurrency;offset=0;isStreamEnd=!1;isError=!1;executingOutgoingHandlers=0;encoding;numBuffers=0;unresolvedDataArray=[];unresolvedLength=0;incoming=[];outgoing=[];constructor(e,r,n,s,o,a){if(r<=0)throw new RangeError(`bufferSize must be larger than 0, current is ${r}`);if(n<=0)throw new RangeError(`maxBuffers must be larger than 0, current is ${n}`);if(o<=0)throw new RangeError(`concurrency must be larger than 0, current is ${o}`);this.bufferSize=r,this.maxBuffers=n,this.readable=e,this.outgoingHandler=s,this.concurrency=o,this.encoding=a}async do(){return new Promise((e,r)=>{this.readable.on("data",n=>{n=typeof n=="string"?Buffer.from(n,this.encoding):n,this.appendUnresolvedData(n),this.resolveData()||this.readable.pause()}),this.readable.on("error",n=>{this.emitter.emit("error",n)}),this.readable.on("end",()=>{this.isStreamEnd=!0,this.emitter.emit("checkEnd")}),this.emitter.on("error",n=>{this.isError=!0,this.readable.pause(),r(n)}),this.emitter.on("checkEnd",()=>{if(this.outgoing.length>0){this.triggerOutgoingHandlers();return}if(this.isStreamEnd&&this.executingOutgoingHandlers===0)if(this.unresolvedLength>0&&this.unresolvedLengthn.getReadableStream(),n.size,this.offset).then(e).catch(r)}else{if(this.unresolvedLength>=this.bufferSize)return;e()}})})}appendUnresolvedData(e){this.unresolvedDataArray.push(e),this.unresolvedLength+=e.length}shiftBufferFromUnresolvedDataArray(e){return e?e.fill(this.unresolvedDataArray,this.unresolvedLength):e=new ER(this.bufferSize,this.unresolvedDataArray,this.unresolvedLength),this.unresolvedLength-=e.size,e}resolveData(){for(;this.unresolvedLength>=this.bufferSize;){let e;if(this.incoming.length>0)e=this.incoming.shift(),this.shiftBufferFromUnresolvedDataArray(e);else if(this.numBuffers=this.concurrency)return;e=this.outgoing.shift(),e&&this.triggerOutgoingHandler(e)}while(e)}async triggerOutgoingHandler(e){let r=e.size;this.executingOutgoingHandlers++,this.offset+=r;try{await this.outgoingHandler(()=>e.getReadableStream(),r,this.offset-r)}catch(n){this.emitter.emit("error",n);return}this.executingOutgoingHandlers--,this.reuseBuffer(e),this.emitter.emit("checkEnd")}reuseBuffer(e){this.incoming.push(e),!this.isError&&this.resolveData()&&!this.isStreamEnd&&this.readable.resume()}};var Tq;function Pq(){return Tq||(Tq=kC()),Tq}i(Pq,"getCachedDefaultHttpClient");var dc=class{static{i(this,"BaseRequestPolicy")}_nextPolicy;_options;constructor(e,r){this._nextPolicy=e,this._options=r}shouldLog(e){return this._options.shouldLog(e)}log(e,r){this._options.log(e,r)}};var Kl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}},$e={AUTHORIZATION:"Authorization",AUTHORIZATION_SCHEME:"Bearer",CONTENT_ENCODING:"Content-Encoding",CONTENT_ID:"Content-ID",CONTENT_LANGUAGE:"Content-Language",CONTENT_LENGTH:"Content-Length",CONTENT_MD5:"Content-Md5",CONTENT_TRANSFER_ENCODING:"Content-Transfer-Encoding",CONTENT_TYPE:"Content-Type",COOKIE:"Cookie",DATE:"date",IF_MATCH:"if-match",IF_MODIFIED_SINCE:"if-modified-since",IF_NONE_MATCH:"if-none-match",IF_UNMODIFIED_SINCE:"if-unmodified-since",PREFIX_FOR_STORAGE:"x-ms-",RANGE:"Range",USER_AGENT:"User-Agent",X_MS_CLIENT_REQUEST_ID:"x-ms-client-request-id",X_MS_COPY_SOURCE:"x-ms-copy-source",X_MS_DATE:"x-ms-date",X_MS_ERROR_CODE:"x-ms-error-code",X_MS_VERSION:"x-ms-version",X_MS_CopySourceErrorCode:"x-ms-copy-source-error-code"};function Bd(t,e,r){let n=new URL(t),s=encodeURIComponent(e),o=r?encodeURIComponent(r):void 0,a=n.search===""?"?":n.search,c=[];for(let l of a.slice(1).split("&"))if(l){let[u]=l.split("=",2);u!==s&&c.push(l)}return o&&c.push(`${s}=${o}`),n.search=c.length?`?${c.join("&")}`:"",n.toString()}i(Bd,"setURLParameter");function IR(t,e){let r=new URL(t);return r.hostname=e,r.toString()}i(IR,"setURLHost");function xR(t){try{return new URL(t).pathname}catch{return}}i(xR,"getURLPath");function wR(t){let e=new URL(t).search;if(!e)return{};e=e.trim(),e=e.startsWith("?")?e.substring(1):e;let r=e.split("&");r=r.filter(s=>{let o=s.indexOf("="),a=s.lastIndexOf("=");return o>0&&o===a&&a{let o,a=i(()=>{o!==void 0&&clearTimeout(o),s(r)},"abortHandler");o=setTimeout(i(()=>{e!==void 0&&e.removeEventListener("abort",a),n()},"resolveHandler"),t),e!==void 0&&e.addEventListener("abort",a)})}i(bR,"delay");var jC=class extends dc{static{i(this,"StorageBrowserPolicy")}constructor(e,r){super(e,r)}async sendRequest(e){return Rt?this._nextPolicy.sendRequest(e):((e.method.toUpperCase()==="GET"||e.method.toUpperCase()==="HEAD")&&(e.url=Bd(e.url,Kl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),e.headers.remove($e.COOKIE),e.headers.remove($e.CONTENT_LENGTH),this._nextPolicy.sendRequest(e))}};var JC=class{static{i(this,"StorageBrowserPolicyFactory")}create(e,r){return new jC(e,r)}};var Rm=class extends dc{static{i(this,"CredentialPolicy")}sendRequest(e){return this._nextPolicy.sendRequest(this.signRequest(e))}signRequest(e){return e}};var KC=class extends Rm{static{i(this,"AnonymousCredentialPolicy")}constructor(e,r){super(e,r)}};var Nm=class{static{i(this,"Credential")}create(e,r){throw new Error("Method should be implemented in children classes.")}};var rr=class extends Nm{static{i(this,"AnonymousCredential")}create(e,r){return new KC(e,r)}};var Tpe=require("node:crypto");var gtt=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1820,0,1823,1825,1827,1829,0,0,0,1837,2051,0,0,1843,0,3331,3354,3356,3358,3360,3362,3364,3366,3368,3370,0,0,0,0,0,0,0,3586,3593,3594,3610,3617,3619,3621,3628,3634,3637,3638,3656,3665,3696,3708,3710,3721,3722,3729,3737,3743,3746,3748,3750,3751,3753,0,0,0,1859,1860,1864,3586,3593,3594,3610,3617,3619,3621,3628,3634,3637,3638,3656,3665,3696,3708,3710,3721,3722,3729,3737,3743,3746,3748,3750,3751,3753,0,1868,0,1872,0]),ytt=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,18,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]),Ett=new Uint32Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,32786,0,0,0,0,0,33298,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]);function SR(t,e){return Ctt(t,e)?-1:1}i(SR,"compareHeader");function Ctt(t,e){let r=[gtt,ytt,Ett],n=0,s=0,o=0;for(;no;let a=s0&&e.headers.set($e.CONTENT_LENGTH,Buffer.byteLength(e.body));let r=[e.method.toUpperCase(),this.getHeaderValueToSign(e,$e.CONTENT_LANGUAGE),this.getHeaderValueToSign(e,$e.CONTENT_ENCODING),this.getHeaderValueToSign(e,$e.CONTENT_LENGTH),this.getHeaderValueToSign(e,$e.CONTENT_MD5),this.getHeaderValueToSign(e,$e.CONTENT_TYPE),this.getHeaderValueToSign(e,$e.DATE),this.getHeaderValueToSign(e,$e.IF_MODIFIED_SINCE),this.getHeaderValueToSign(e,$e.IF_MATCH),this.getHeaderValueToSign(e,$e.IF_NONE_MATCH),this.getHeaderValueToSign(e,$e.IF_UNMODIFIED_SINCE),this.getHeaderValueToSign(e,$e.RANGE)].join(` `)+` -`+this.getCanonicalizedHeadersString(e)+this.getCanonicalizedResourceString(e),n=this.factory.computeHMACSHA256(r);return e.headers.set(qe.AUTHORIZATION,`SharedKey ${this.factory.accountName}:${n}`),e}getHeaderValueToSign(e,r){let n=e.headers.get(r);return!n||r===qe.CONTENT_LENGTH&&n==="0"?"":n}getCanonicalizedHeadersString(e){let r=e.headers.headersArray().filter(s=>s.name.toLowerCase().startsWith(qe.PREFIX_FOR_STORAGE));r.sort((s,o)=>bR(s.name.toLowerCase(),o.name.toLowerCase())),r=r.filter((s,o,i)=>!(o>0&&s.name.toLowerCase()===i[o-1].name.toLowerCase()));let n="";return r.forEach(s=>{n+=`${s.name.toLowerCase().trimRight()}:${s.value.trimLeft()} -`}),n}getCanonicalizedResourceString(e){let r=IR(e.url)||"/",n="";n+=`/${this.factory.accountName}${r}`;let s=xR(e.url),o={};if(s){let i=[];for(let a in s)if(Object.prototype.hasOwnProperty.call(s,a)){let c=a.toLowerCase();o[c]=s[a],i.push(c)}i.sort();for(let a of i)n+=` -${a}:${decodeURIComponent(o[a])}`}return n}};var Ir=class extends Rm{accountName;accountKey;constructor(e,r){super(),this.accountName=e,this.accountKey=Buffer.from(r,"base64")}create(e,r){return new JC(e,r,this)}computeHMACSHA256(e){return(0,Npe.createHmac)("sha256",this.accountKey).update(e,"utf8").digest("base64")}};var nn=oc("storage-common");var gi;(function(t){t[t.EXPONENTIAL=0]="EXPONENTIAL",t[t.FIXED=1]="FIXED"})(gi||(gi={}));var Bd={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:gi.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},Ett=new Qo("The operation was aborted."),KC=class extends uc{retryOptions;constructor(e,r,n=Bd){super(e,r),this.retryOptions={retryPolicyType:n.retryPolicyType?n.retryPolicyType:Bd.retryPolicyType,maxTries:n.maxTries&&n.maxTries>=1?Math.floor(n.maxTries):Bd.maxTries,tryTimeoutInMs:n.tryTimeoutInMs&&n.tryTimeoutInMs>=0?n.tryTimeoutInMs:Bd.tryTimeoutInMs,retryDelayInMs:n.retryDelayInMs&&n.retryDelayInMs>=0?Math.min(n.retryDelayInMs,n.maxRetryDelayInMs?n.maxRetryDelayInMs:Bd.maxRetryDelayInMs):Bd.retryDelayInMs,maxRetryDelayInMs:n.maxRetryDelayInMs&&n.maxRetryDelayInMs>=0?n.maxRetryDelayInMs:Bd.maxRetryDelayInMs,secondaryHost:n.secondaryHost?n.secondaryHost:Bd.secondaryHost}}async sendRequest(e){return this.attemptSendRequest(e,!1,1)}async attemptSendRequest(e,r,n){let s=e.clone(),o=r||!this.retryOptions.secondaryHost||!(e.method==="GET"||e.method==="HEAD"||e.method==="OPTIONS")||n%2===1;o||(s.url=CR(s.url,this.retryOptions.secondaryHost)),this.retryOptions.tryTimeoutInMs&&(s.url=Sd(s.url,Jl.Parameters.TIMEOUT,Math.floor(this.retryOptions.tryTimeoutInMs/1e3).toString()));let i;try{if(nn.info(`RetryPolicy: =====> Try=${n} ${o?"Primary":"Secondary"}`),i=await this._nextPolicy.sendRequest(s),!this.shouldRetry(o,n,i))return i;r=r||!o&&i.status===404}catch(a){if(nn.error(`RetryPolicy: Caught error, message: ${a.message}, code: ${a.code}`),!this.shouldRetry(o,n,i,a))throw a}return await this.delay(o,n,e.abortSignal),this.attemptSendRequest(e,r,++n)}shouldRetry(e,r,n,s){if(r>=this.retryOptions.maxTries)return nn.info(`RetryPolicy: Attempt(s) ${r} >= maxTries ${this.retryOptions.maxTries}, no further try.`),!1;let o=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"];if(s){for(let i of o)if(s.name.toUpperCase().includes(i)||s.message.toUpperCase().includes(i)||s.code&&s.code.toString().toUpperCase()===i)return nn.info(`RetryPolicy: Network error ${i} found, will retry.`),!0}if(n||s){let i=n?n.status:s?s.statusCode:0;if(!e&&i===404)return nn.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(i===503||i===500)return nn.info(`RetryPolicy: Will retry for status code ${i}.`),!0}if(n&&n?.status>=400){let i=n.headers.get(qe.X_MS_CopySourceErrorCode);if(i!==void 0)switch(i){case"InternalError":case"OperationTimedOut":case"ServerBusy":return!0}}return s?.code==="PARSE_ERROR"&&s?.message.startsWith('Error "Error: Unclosed root tag')?(nn.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),!0):!1}async delay(e,r,n){let s=0;if(e)switch(this.retryOptions.retryPolicyType){case gi.EXPONENTIAL:s=Math.min((Math.pow(2,r-1)-1)*this.retryOptions.retryDelayInMs,this.retryOptions.maxRetryDelayInMs);break;case gi.FIXED:s=this.retryOptions.retryDelayInMs;break}else s=Math.random()*1e3;return nn.info(`RetryPolicy: Delay for ${s}ms`),wR(s,n,Ett)}};var XC=class{retryOptions;constructor(e){this.retryOptions=e}create(e,r){return new KC(e,r,this.retryOptions)}};var Ctt="storageBrowserPolicy";function Tpe(){return{name:Ctt,async sendRequest(t,e){return Bt||((t.method==="GET"||t.method==="HEAD")&&(t.url=Sd(t.url,Jl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),t.headers.delete(qe.COOKIE),t.headers.delete(qe.CONTENT_LENGTH)),e(t)}}}var Itt="StorageCorrectContentLengthPolicy";function Ppe(){function t(e){e.body&&(typeof e.body=="string"||Buffer.isBuffer(e.body))&&e.body.length>0&&e.headers.set(qe.CONTENT_LENGTH,Buffer.byteLength(e.body))}return{name:Itt,async sendRequest(e,r){return t(e),r(e)}}}var xtt="storageRetryPolicy",Ph={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:gi.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},wtt=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"],btt=new Qo("The operation was aborted.");function vpe(t={}){let e=t.retryPolicyType??Ph.retryPolicyType,r=t.maxTries??Ph.maxTries,n=t.retryDelayInMs??Ph.retryDelayInMs,s=t.maxRetryDelayInMs??Ph.maxRetryDelayInMs,o=t.secondaryHost??Ph.secondaryHost,i=t.tryTimeoutInMs??Ph.tryTimeoutInMs;function a({isPrimaryRetry:l,attempt:u,response:d,error:p}){if(u>=r)return nn.info(`RetryPolicy: Attempt(s) ${u} >= maxTries ${r}, no further try.`),!1;if(p){for(let m of wtt)if(p.name.toUpperCase().includes(m)||p.message.toUpperCase().includes(m)||p.code&&p.code.toString().toUpperCase()===m)return nn.info(`RetryPolicy: Network error ${m} found, will retry.`),!0;if(p?.code==="PARSE_ERROR"&&p?.message.startsWith('Error "Error: Unclosed root tag'))return nn.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),!0}if(d||p){let m=d?.status??p?.statusCode??0;if(!l&&m===404)return nn.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(m===503||m===500)return nn.info(`RetryPolicy: Will retry for status code ${m}.`),!0}if(d&&d?.status>=400){let m=d.headers.get(qe.X_MS_CopySourceErrorCode);if(m!==void 0)switch(m){case"InternalError":case"OperationTimedOut":case"ServerBusy":return!0}}return!1}function c(l,u){let d=0;if(l)switch(e){case gi.EXPONENTIAL:d=Math.min((Math.pow(2,u-1)-1)*n,s);break;case gi.FIXED:d=n;break}else d=Math.random()*1e3;return nn.info(`RetryPolicy: Delay for ${d}ms`),d}return{name:xtt,async sendRequest(l,u){i&&(l.url=Sd(l.url,Jl.Parameters.TIMEOUT,String(Math.floor(i/1e3))));let d=l.url,p=o?CR(l.url,o):void 0,m=!1,h=1,y=!0,I,x;for(;y;){let b=m||!p||!["GET","HEAD","OPTIONS"].includes(l.method)||h%2===1;l.url=b?d:p,I=void 0,x=void 0;try{nn.info(`RetryPolicy: =====> Try=${h} ${b?"Primary":"Secondary"}`),I=await u(l),m=m||!b&&I.status===404}catch(T){if(Im(T))nn.error(`RetryPolicy: Caught error, message: ${T.message}, code: ${T.code}`),x=T;else throw nn.error(`RetryPolicy: Caught error, message: ${Cd(T)}`),T}y=a({isPrimaryRetry:b,attempt:h,response:I,error:x}),y&&await wR(c(b,h),l.abortSignal,btt),h++}if(I)return I;throw x??new Yl("RetryPolicy failed without known error.")}}}var _pe=require("node:crypto");var Stt="storageSharedKeyCredentialPolicy";function Pq(t){function e(o){o.headers.set(qe.X_MS_DATE,new Date().toUTCString()),o.body&&(typeof o.body=="string"||Buffer.isBuffer(o.body))&&o.body.length>0&&o.headers.set(qe.CONTENT_LENGTH,Buffer.byteLength(o.body));let i=[o.method.toUpperCase(),r(o,qe.CONTENT_LANGUAGE),r(o,qe.CONTENT_ENCODING),r(o,qe.CONTENT_LENGTH),r(o,qe.CONTENT_MD5),r(o,qe.CONTENT_TYPE),r(o,qe.DATE),r(o,qe.IF_MODIFIED_SINCE),r(o,qe.IF_MATCH),r(o,qe.IF_NONE_MATCH),r(o,qe.IF_UNMODIFIED_SINCE),r(o,qe.RANGE)].join(` +`+this.getCanonicalizedHeadersString(e)+this.getCanonicalizedResourceString(e),n=this.factory.computeHMACSHA256(r);return e.headers.set($e.AUTHORIZATION,`SharedKey ${this.factory.accountName}:${n}`),e}getHeaderValueToSign(e,r){let n=e.headers.get(r);return!n||r===$e.CONTENT_LENGTH&&n==="0"?"":n}getCanonicalizedHeadersString(e){let r=e.headers.headersArray().filter(s=>s.name.toLowerCase().startsWith($e.PREFIX_FOR_STORAGE));r.sort((s,o)=>SR(s.name.toLowerCase(),o.name.toLowerCase())),r=r.filter((s,o,a)=>!(o>0&&s.name.toLowerCase()===a[o-1].name.toLowerCase()));let n="";return r.forEach(s=>{n+=`${s.name.toLowerCase().trimRight()}:${s.value.trimLeft()} +`}),n}getCanonicalizedResourceString(e){let r=xR(e.url)||"/",n="";n+=`/${this.factory.accountName}${r}`;let s=wR(e.url),o={};if(s){let a=[];for(let c in s)if(Object.prototype.hasOwnProperty.call(s,c)){let l=c.toLowerCase();o[l]=s[c],a.push(l)}a.sort();for(let c of a)n+=` +${c}:${decodeURIComponent(o[c])}`}return n}};var xr=class extends Nm{static{i(this,"StorageSharedKeyCredential")}accountName;accountKey;constructor(e,r){super(),this.accountName=e,this.accountKey=Buffer.from(r,"base64")}create(e,r){return new XC(e,r,this)}computeHMACSHA256(e){return(0,Tpe.createHmac)("sha256",this.accountKey).update(e,"utf8").digest("base64")}};var sn=ic("storage-common");var yi;(function(t){t[t.EXPONENTIAL=0]="EXPONENTIAL",t[t.FIXED=1]="FIXED"})(yi||(yi={}));var Rd={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:yi.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},Itt=new Do("The operation was aborted."),ZC=class extends dc{static{i(this,"StorageRetryPolicy")}retryOptions;constructor(e,r,n=Rd){super(e,r),this.retryOptions={retryPolicyType:n.retryPolicyType?n.retryPolicyType:Rd.retryPolicyType,maxTries:n.maxTries&&n.maxTries>=1?Math.floor(n.maxTries):Rd.maxTries,tryTimeoutInMs:n.tryTimeoutInMs&&n.tryTimeoutInMs>=0?n.tryTimeoutInMs:Rd.tryTimeoutInMs,retryDelayInMs:n.retryDelayInMs&&n.retryDelayInMs>=0?Math.min(n.retryDelayInMs,n.maxRetryDelayInMs?n.maxRetryDelayInMs:Rd.maxRetryDelayInMs):Rd.retryDelayInMs,maxRetryDelayInMs:n.maxRetryDelayInMs&&n.maxRetryDelayInMs>=0?n.maxRetryDelayInMs:Rd.maxRetryDelayInMs,secondaryHost:n.secondaryHost?n.secondaryHost:Rd.secondaryHost}}async sendRequest(e){return this.attemptSendRequest(e,!1,1)}async attemptSendRequest(e,r,n){let s=e.clone(),o=r||!this.retryOptions.secondaryHost||!(e.method==="GET"||e.method==="HEAD"||e.method==="OPTIONS")||n%2===1;o||(s.url=IR(s.url,this.retryOptions.secondaryHost)),this.retryOptions.tryTimeoutInMs&&(s.url=Bd(s.url,Kl.Parameters.TIMEOUT,Math.floor(this.retryOptions.tryTimeoutInMs/1e3).toString()));let a;try{if(sn.info(`RetryPolicy: =====> Try=${n} ${o?"Primary":"Secondary"}`),a=await this._nextPolicy.sendRequest(s),!this.shouldRetry(o,n,a))return a;r=r||!o&&a.status===404}catch(c){if(sn.error(`RetryPolicy: Caught error, message: ${c.message}, code: ${c.code}`),!this.shouldRetry(o,n,a,c))throw c}return await this.delay(o,n,e.abortSignal),this.attemptSendRequest(e,r,++n)}shouldRetry(e,r,n,s){if(r>=this.retryOptions.maxTries)return sn.info(`RetryPolicy: Attempt(s) ${r} >= maxTries ${this.retryOptions.maxTries}, no further try.`),!1;let o=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"];if(s){for(let a of o)if(s.name.toUpperCase().includes(a)||s.message.toUpperCase().includes(a)||s.code&&s.code.toString().toUpperCase()===a)return sn.info(`RetryPolicy: Network error ${a} found, will retry.`),!0}if(n||s){let a=n?n.status:s?s.statusCode:0;if(!e&&a===404)return sn.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(a===503||a===500)return sn.info(`RetryPolicy: Will retry for status code ${a}.`),!0}if(n&&n?.status>=400){let a=n.headers.get($e.X_MS_CopySourceErrorCode);if(a!==void 0)switch(a){case"InternalError":case"OperationTimedOut":case"ServerBusy":return!0}}return s?.code==="PARSE_ERROR"&&s?.message.startsWith('Error "Error: Unclosed root tag')?(sn.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),!0):!1}async delay(e,r,n){let s=0;if(e)switch(this.retryOptions.retryPolicyType){case yi.EXPONENTIAL:s=Math.min((Math.pow(2,r-1)-1)*this.retryOptions.retryDelayInMs,this.retryOptions.maxRetryDelayInMs);break;case yi.FIXED:s=this.retryOptions.retryDelayInMs;break}else s=Math.random()*1e3;return sn.info(`RetryPolicy: Delay for ${s}ms`),bR(s,n,Itt)}};var eI=class{static{i(this,"StorageRetryPolicyFactory")}retryOptions;constructor(e){this.retryOptions=e}create(e,r){return new ZC(e,r,this.retryOptions)}};var xtt="storageBrowserPolicy";function Ppe(){return{name:xtt,async sendRequest(t,e){return Rt||((t.method==="GET"||t.method==="HEAD")&&(t.url=Bd(t.url,Kl.Parameters.FORCE_BROWSER_NO_CACHE,new Date().getTime().toString())),t.headers.delete($e.COOKIE),t.headers.delete($e.CONTENT_LENGTH)),e(t)}}}i(Ppe,"storageBrowserPolicy");var wtt="StorageCorrectContentLengthPolicy";function vpe(){function t(e){e.body&&(typeof e.body=="string"||Buffer.isBuffer(e.body))&&e.body.length>0&&e.headers.set($e.CONTENT_LENGTH,Buffer.byteLength(e.body))}return i(t,"correctContentLength"),{name:wtt,async sendRequest(e,r){return t(e),r(e)}}}i(vpe,"storageCorrectContentLengthPolicy");var btt="storageRetryPolicy",vh={maxRetryDelayInMs:120*1e3,maxTries:4,retryDelayInMs:4*1e3,retryPolicyType:yi.EXPONENTIAL,secondaryHost:"",tryTimeoutInMs:void 0},Stt=["ETIMEDOUT","ESOCKETTIMEDOUT","ECONNREFUSED","ECONNRESET","ENOENT","ENOTFOUND","TIMEOUT","EPIPE","REQUEST_SEND_ERROR"],Btt=new Do("The operation was aborted.");function _pe(t={}){let e=t.retryPolicyType??vh.retryPolicyType,r=t.maxTries??vh.maxTries,n=t.retryDelayInMs??vh.retryDelayInMs,s=t.maxRetryDelayInMs??vh.maxRetryDelayInMs,o=t.secondaryHost??vh.secondaryHost,a=t.tryTimeoutInMs??vh.tryTimeoutInMs;function c({isPrimaryRetry:u,attempt:d,response:p,error:m}){if(d>=r)return sn.info(`RetryPolicy: Attempt(s) ${d} >= maxTries ${r}, no further try.`),!1;if(m){for(let f of Stt)if(m.name.toUpperCase().includes(f)||m.message.toUpperCase().includes(f)||m.code&&m.code.toString().toUpperCase()===f)return sn.info(`RetryPolicy: Network error ${f} found, will retry.`),!0;if(m?.code==="PARSE_ERROR"&&m?.message.startsWith('Error "Error: Unclosed root tag'))return sn.info("RetryPolicy: Incomplete XML response likely due to service timeout, will retry."),!0}if(p||m){let f=p?.status??m?.statusCode??0;if(!u&&f===404)return sn.info("RetryPolicy: Secondary access with 404, will retry."),!0;if(f===503||f===500)return sn.info(`RetryPolicy: Will retry for status code ${f}.`),!0}if(p&&p?.status>=400){let f=p.headers.get($e.X_MS_CopySourceErrorCode);if(f!==void 0)switch(f){case"InternalError":case"OperationTimedOut":case"ServerBusy":return!0}}return!1}i(c,"shouldRetry");function l(u,d){let p=0;if(u)switch(e){case yi.EXPONENTIAL:p=Math.min((Math.pow(2,d-1)-1)*n,s);break;case yi.FIXED:p=n;break}else p=Math.random()*1e3;return sn.info(`RetryPolicy: Delay for ${p}ms`),p}return i(l,"calculateDelay"),{name:btt,async sendRequest(u,d){a&&(u.url=Bd(u.url,Kl.Parameters.TIMEOUT,String(Math.floor(a/1e3))));let p=u.url,m=o?IR(u.url,o):void 0,f=!1,g=1,E=!0,x,w;for(;E;){let S=f||!m||!["GET","HEAD","OPTIONS"].includes(u.method)||g%2===1;u.url=S?p:m,x=void 0,w=void 0;try{sn.info(`RetryPolicy: =====> Try=${g} ${S?"Primary":"Secondary"}`),x=await d(u),f=f||!S&&x.status===404}catch(P){if(xm(P))sn.error(`RetryPolicy: Caught error, message: ${P.message}, code: ${P.code}`),w=P;else throw sn.error(`RetryPolicy: Caught error, message: ${Id(P)}`),P}E=c({isPrimaryRetry:S,attempt:g,response:x,error:w}),E&&await bR(l(S,g),u.abortSignal,Btt),g++}if(x)return x;throw w??new Wl("RetryPolicy failed without known error.")}}}i(_pe,"storageRetryPolicy");var Qpe=require("node:crypto");var Rtt="storageSharedKeyCredentialPolicy";function vq(t){function e(o){o.headers.set($e.X_MS_DATE,new Date().toUTCString()),o.body&&(typeof o.body=="string"||Buffer.isBuffer(o.body))&&o.body.length>0&&o.headers.set($e.CONTENT_LENGTH,Buffer.byteLength(o.body));let a=[o.method.toUpperCase(),r(o,$e.CONTENT_LANGUAGE),r(o,$e.CONTENT_ENCODING),r(o,$e.CONTENT_LENGTH),r(o,$e.CONTENT_MD5),r(o,$e.CONTENT_TYPE),r(o,$e.DATE),r(o,$e.IF_MODIFIED_SINCE),r(o,$e.IF_MATCH),r(o,$e.IF_NONE_MATCH),r(o,$e.IF_UNMODIFIED_SINCE),r(o,$e.RANGE)].join(` `)+` -`+n(o)+s(o),a=(0,_pe.createHmac)("sha256",t.accountKey).update(i,"utf8").digest("base64");o.headers.set(qe.AUTHORIZATION,`SharedKey ${t.accountName}:${a}`)}function r(o,i){let a=o.headers.get(i);return!a||i===qe.CONTENT_LENGTH&&a==="0"?"":a}function n(o){let i=[];for(let[c,l]of o.headers)c.toLowerCase().startsWith(qe.PREFIX_FOR_STORAGE)&&i.push({name:c,value:l});i.sort((c,l)=>bR(c.name.toLowerCase(),l.name.toLowerCase())),i=i.filter((c,l,u)=>!(l>0&&c.name.toLowerCase()===u[l-1].name.toLowerCase()));let a="";return i.forEach(c=>{a+=`${c.name.toLowerCase().trimRight()}:${c.value.trimLeft()} -`}),a}function s(o){let i=IR(o.url)||"/",a="";a+=`/${t.accountName}${i}`;let c=xR(o.url),l={};if(c){let u=[];for(let d in c)if(Object.prototype.hasOwnProperty.call(c,d)){let p=d.toLowerCase();l[p]=c[d],u.push(p)}u.sort();for(let d of u)a+=` -${d}:${decodeURIComponent(l[d])}`}return a}return{name:Stt,async sendRequest(o,i){return e(o),i(o)}}}var Btt="storageRequestFailureDetailsParserPolicy";function Qpe(){return{name:Btt,async sendRequest(t,e){try{return await e(t)}catch(r){throw typeof r=="object"&&r!==null&&r.response&&r.response.parsedBody&&r.response.parsedBody.code==="InvalidHeaderValue"&&r.response.parsedBody.HeaderName==="x-ms-version"&&(r.message=`The provided service version is not enabled on this storage account. Please see https://learn.microsoft.com/rest/api/storageservices/versioning-for-the-azure-storage-services for additional information. -`),r}}}}var Dpe=require("node:crypto"),SR=class{accountName;userDelegationKey;key;constructor(e,r){this.accountName=e,this.userDelegationKey=r,this.key=Buffer.from(r.value,"base64")}computeHMACSHA256(e){return(0,Dpe.createHmac)("sha256",this.key).update(e,"utf8").digest("base64")}};var BR="12.31.0",RR="2026-02-06";var NR="https://storage.azure.com/.default",Kl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}};var la="",vq="*",Rtt=1*1024*1024;var Ntt=4*Rtt;var kpe="AES256",Lpe="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;",Ope=["Access-Control-Allow-Origin","Cache-Control","Content-Length","Content-Type","Date","Request-Id","traceparent","Transfer-Encoding","User-Agent","x-ms-client-request-id","x-ms-date","x-ms-error-code","x-ms-request-id","x-ms-return-client-request-id","x-ms-version","Accept-Ranges","Content-Disposition","Content-Encoding","Content-Language","Content-MD5","Content-Range","ETag","Last-Modified","Server","Vary","x-ms-content-crc64","x-ms-copy-action","x-ms-copy-completion-time","x-ms-copy-id","x-ms-copy-progress","x-ms-copy-status","x-ms-has-immutability-policy","x-ms-has-legal-hold","x-ms-lease-state","x-ms-lease-status","x-ms-range","x-ms-request-server-encrypted","x-ms-server-encrypted","x-ms-snapshot","x-ms-source-range","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","x-ms-access-tier","x-ms-access-tier-change-time","x-ms-access-tier-inferred","x-ms-account-kind","x-ms-archive-status","x-ms-blob-append-offset","x-ms-blob-cache-control","x-ms-blob-committed-block-count","x-ms-blob-condition-appendpos","x-ms-blob-condition-maxsize","x-ms-blob-content-disposition","x-ms-blob-content-encoding","x-ms-blob-content-language","x-ms-blob-content-length","x-ms-blob-content-md5","x-ms-blob-content-type","x-ms-blob-public-access","x-ms-blob-sequence-number","x-ms-blob-type","x-ms-copy-destination-snapshot","x-ms-creation-time","x-ms-default-encryption-scope","x-ms-delete-snapshots","x-ms-delete-type-permanent","x-ms-deny-encryption-scope-override","x-ms-encryption-algorithm","x-ms-if-sequence-number-eq","x-ms-if-sequence-number-le","x-ms-if-sequence-number-lt","x-ms-incremental-copy","x-ms-lease-action","x-ms-lease-break-period","x-ms-lease-duration","x-ms-lease-id","x-ms-lease-time","x-ms-page-write","x-ms-proposed-lease-id","x-ms-range-get-content-md5","x-ms-rehydrate-priority","x-ms-sequence-number-action","x-ms-sku-name","x-ms-source-content-md5","x-ms-source-if-match","x-ms-source-if-modified-since","x-ms-source-if-none-match","x-ms-source-if-unmodified-since","x-ms-tag-count","x-ms-encryption-key-sha256","x-ms-copy-source-error-code","x-ms-copy-source-status-code","x-ms-if-tags","x-ms-source-if-tags"],Mpe=["comp","maxresults","rscc","rscd","rsce","rscl","rsct","se","si","sip","sp","spr","sr","srt","ss","st","sv","include","marker","prefix","copyid","restype","blockid","blocklisttype","delimiter","prevsnapshot","ske","skoid","sks","skt","sktid","skv","snapshot"],Fpe="BlobUsesCustomerSpecifiedEncryption",Upe="BlobDoesNotUseCustomerSpecifiedEncryption",qpe=["10000","10001","10002","10003","10004","10100","10101","10102","10103","10104","11000","11001","11002","11003","11004","11100","11101","11102","11103","11104"];function Xl(t){if(!t||typeof t!="object")return!1;let e=t;return Array.isArray(e.factories)&&typeof e.options=="object"&&typeof e.toServiceClientOptions=="function"}var ZC=class{factories;options;constructor(e,r={}){this.factories=e,this.options=r}toServiceClientOptions(){return{httpClient:this.options.httpClient,requestPolicyFactories:this.factories}}};function kr(t,e={}){t||(t=new tr);let r=new ZC([],e);return r._credential=t,r}function Ttt(t){let e=[Ptt,$pe,vtt,_tt,Qtt,Dtt,Ltt];if(t.factories.length){let r=t.factories.filter(n=>!e.some(s=>s(n)));if(r.length){let n=r.some(s=>ktt(s));return{wrappedPolicies:iq(r),afterRetry:n}}}}function _q(t){let{httpClient:e,...r}=t.options,n=t._coreHttpClient;n||(n=e?aq(e):Tq(),t._coreHttpClient=n);let s=t._corePipeline;if(!s){let o=`azsdk-js-azure-storage-blob/${BR}`,i=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${o}`:`${o}`;s=kC({...r,loggingOptions:{additionalAllowedHeaderNames:Ope,additionalAllowedQueryParameters:Mpe,logger:AR.info},userAgentOptions:{userAgentPrefix:i},serializationOptions:{stringifyXML:fR,serializerOptions:{xml:{xmlCharKey:"#"}}},deserializationOptions:{parseXML:Rq,serializerOptions:{xml:{xmlCharKey:"#"}}}}),s.removePolicy({phase:"Retry"}),s.removePolicy({name:L2}),s.addPolicy(Ppe()),s.addPolicy(vpe(r.retryOptions),{phase:"Retry"}),s.addPolicy(Qpe()),s.addPolicy(Tpe());let a=Ttt(t);a&&s.addPolicy(a.wrappedPolicies,a.afterRetry?{afterPhase:"Retry"}:void 0);let c=Qq(t);Do(c)?s.addPolicy(bh({credential:c,scopes:r.audience??NR,challengeCallbacks:{authorizeRequestOnChallenge:nR}}),{phase:"Sign"}):c instanceof Ir&&s.addPolicy(Pq({accountName:c.accountName,accountKey:c.accountKey}),{phase:"Sign"}),t._corePipeline=s}return{...r,allowInsecureConnection:!0,httpClient:n,pipeline:s}}function Qq(t){if(t._credential)return t._credential;let e=new tr;for(let r of t.factories)if(Do(r.credential))e=r.credential;else if($pe(r))return r;return e}function $pe(t){return t instanceof Ir?!0:t.constructor.name==="StorageSharedKeyCredential"}function Ptt(t){return t instanceof tr?!0:t.constructor.name==="AnonymousCredential"}function vtt(t){return Do(t.credential)}function _tt(t){return t instanceof WC?!0:t.constructor.name==="StorageBrowserPolicyFactory"}function Qtt(t){return t instanceof XC?!0:t.constructor.name==="StorageRetryPolicyFactory"}function Dtt(t){return t.constructor.name==="TelemetryPolicyFactory"}function ktt(t){return t.constructor.name==="InjectorPolicyFactory"}function Ltt(t){let e=["GenerateClientRequestIdPolicy","TracingPolicy","LogPolicy","ProxyPolicy","DisableResponseDecompressionPolicy","KeepAlivePolicy","DeserializationPolicy"],r={sendRequest:async i=>({request:i,headers:i.headers.clone(),status:500})},n={log(i,a){},shouldLog(i){return!1}},o=t.create(r,n).constructor.name;return e.some(i=>o.startsWith(i))}var Gpe;(function(t){t.AES256="AES256"})(Gpe||(Gpe={}));var Hpe;(function(t){t.Backup="backup"})(Hpe||(Hpe={}));var zpe;(function(t){t.NeverExpire="NeverExpire",t.RelativeToCreation="RelativeToCreation",t.RelativeToNow="RelativeToNow",t.Absolute="Absolute"})(zpe||(zpe={}));var Vpe;(function(t){t.AccountAlreadyExists="AccountAlreadyExists",t.AccountBeingCreated="AccountBeingCreated",t.AccountIsDisabled="AccountIsDisabled",t.AuthenticationFailed="AuthenticationFailed",t.AuthorizationFailure="AuthorizationFailure",t.ConditionHeadersNotSupported="ConditionHeadersNotSupported",t.ConditionNotMet="ConditionNotMet",t.EmptyMetadataKey="EmptyMetadataKey",t.InsufficientAccountPermissions="InsufficientAccountPermissions",t.InternalError="InternalError",t.InvalidAuthenticationInfo="InvalidAuthenticationInfo",t.InvalidHeaderValue="InvalidHeaderValue",t.InvalidHttpVerb="InvalidHttpVerb",t.InvalidInput="InvalidInput",t.InvalidMd5="InvalidMd5",t.InvalidMetadata="InvalidMetadata",t.InvalidQueryParameterValue="InvalidQueryParameterValue",t.InvalidRange="InvalidRange",t.InvalidResourceName="InvalidResourceName",t.InvalidUri="InvalidUri",t.InvalidXmlDocument="InvalidXmlDocument",t.InvalidXmlNodeValue="InvalidXmlNodeValue",t.Md5Mismatch="Md5Mismatch",t.MetadataTooLarge="MetadataTooLarge",t.MissingContentLengthHeader="MissingContentLengthHeader",t.MissingRequiredQueryParameter="MissingRequiredQueryParameter",t.MissingRequiredHeader="MissingRequiredHeader",t.MissingRequiredXmlNode="MissingRequiredXmlNode",t.MultipleConditionHeadersNotSupported="MultipleConditionHeadersNotSupported",t.OperationTimedOut="OperationTimedOut",t.OutOfRangeInput="OutOfRangeInput",t.OutOfRangeQueryParameterValue="OutOfRangeQueryParameterValue",t.RequestBodyTooLarge="RequestBodyTooLarge",t.ResourceTypeMismatch="ResourceTypeMismatch",t.RequestUrlFailedToParse="RequestUrlFailedToParse",t.ResourceAlreadyExists="ResourceAlreadyExists",t.ResourceNotFound="ResourceNotFound",t.ServerBusy="ServerBusy",t.UnsupportedHeader="UnsupportedHeader",t.UnsupportedXmlNode="UnsupportedXmlNode",t.UnsupportedQueryParameter="UnsupportedQueryParameter",t.UnsupportedHttpVerb="UnsupportedHttpVerb",t.AppendPositionConditionNotMet="AppendPositionConditionNotMet",t.BlobAlreadyExists="BlobAlreadyExists",t.BlobImmutableDueToPolicy="BlobImmutableDueToPolicy",t.BlobNotFound="BlobNotFound",t.BlobOverwritten="BlobOverwritten",t.BlobTierInadequateForContentLength="BlobTierInadequateForContentLength",t.BlobUsesCustomerSpecifiedEncryption="BlobUsesCustomerSpecifiedEncryption",t.BlockCountExceedsLimit="BlockCountExceedsLimit",t.BlockListTooLong="BlockListTooLong",t.CannotChangeToLowerTier="CannotChangeToLowerTier",t.CannotVerifyCopySource="CannotVerifyCopySource",t.ContainerAlreadyExists="ContainerAlreadyExists",t.ContainerBeingDeleted="ContainerBeingDeleted",t.ContainerDisabled="ContainerDisabled",t.ContainerNotFound="ContainerNotFound",t.ContentLengthLargerThanTierLimit="ContentLengthLargerThanTierLimit",t.CopyAcrossAccountsNotSupported="CopyAcrossAccountsNotSupported",t.CopyIdMismatch="CopyIdMismatch",t.FeatureVersionMismatch="FeatureVersionMismatch",t.IncrementalCopyBlobMismatch="IncrementalCopyBlobMismatch",t.IncrementalCopyOfEarlierVersionSnapshotNotAllowed="IncrementalCopyOfEarlierVersionSnapshotNotAllowed",t.IncrementalCopySourceMustBeSnapshot="IncrementalCopySourceMustBeSnapshot",t.InfiniteLeaseDurationRequired="InfiniteLeaseDurationRequired",t.InvalidBlobOrBlock="InvalidBlobOrBlock",t.InvalidBlobTier="InvalidBlobTier",t.InvalidBlobType="InvalidBlobType",t.InvalidBlockId="InvalidBlockId",t.InvalidBlockList="InvalidBlockList",t.InvalidOperation="InvalidOperation",t.InvalidPageRange="InvalidPageRange",t.InvalidSourceBlobType="InvalidSourceBlobType",t.InvalidSourceBlobUrl="InvalidSourceBlobUrl",t.InvalidVersionForPageBlobOperation="InvalidVersionForPageBlobOperation",t.LeaseAlreadyPresent="LeaseAlreadyPresent",t.LeaseAlreadyBroken="LeaseAlreadyBroken",t.LeaseIdMismatchWithBlobOperation="LeaseIdMismatchWithBlobOperation",t.LeaseIdMismatchWithContainerOperation="LeaseIdMismatchWithContainerOperation",t.LeaseIdMismatchWithLeaseOperation="LeaseIdMismatchWithLeaseOperation",t.LeaseIdMissing="LeaseIdMissing",t.LeaseIsBreakingAndCannotBeAcquired="LeaseIsBreakingAndCannotBeAcquired",t.LeaseIsBreakingAndCannotBeChanged="LeaseIsBreakingAndCannotBeChanged",t.LeaseIsBrokenAndCannotBeRenewed="LeaseIsBrokenAndCannotBeRenewed",t.LeaseLost="LeaseLost",t.LeaseNotPresentWithBlobOperation="LeaseNotPresentWithBlobOperation",t.LeaseNotPresentWithContainerOperation="LeaseNotPresentWithContainerOperation",t.LeaseNotPresentWithLeaseOperation="LeaseNotPresentWithLeaseOperation",t.MaxBlobSizeConditionNotMet="MaxBlobSizeConditionNotMet",t.NoAuthenticationInformation="NoAuthenticationInformation",t.NoPendingCopyOperation="NoPendingCopyOperation",t.OperationNotAllowedOnIncrementalCopyBlob="OperationNotAllowedOnIncrementalCopyBlob",t.PendingCopyOperation="PendingCopyOperation",t.PreviousSnapshotCannotBeNewer="PreviousSnapshotCannotBeNewer",t.PreviousSnapshotNotFound="PreviousSnapshotNotFound",t.PreviousSnapshotOperationNotSupported="PreviousSnapshotOperationNotSupported",t.SequenceNumberConditionNotMet="SequenceNumberConditionNotMet",t.SequenceNumberIncrementTooLarge="SequenceNumberIncrementTooLarge",t.SnapshotCountExceeded="SnapshotCountExceeded",t.SnapshotOperationRateExceeded="SnapshotOperationRateExceeded",t.SnapshotsPresent="SnapshotsPresent",t.SourceConditionNotMet="SourceConditionNotMet",t.SystemInUse="SystemInUse",t.TargetConditionNotMet="TargetConditionNotMet",t.UnauthorizedBlobOverwrite="UnauthorizedBlobOverwrite",t.BlobBeingRehydrated="BlobBeingRehydrated",t.BlobArchived="BlobArchived",t.BlobNotArchived="BlobNotArchived",t.AuthorizationSourceIPMismatch="AuthorizationSourceIPMismatch",t.AuthorizationProtocolMismatch="AuthorizationProtocolMismatch",t.AuthorizationPermissionMismatch="AuthorizationPermissionMismatch",t.AuthorizationServiceMismatch="AuthorizationServiceMismatch",t.AuthorizationResourceTypeMismatch="AuthorizationResourceTypeMismatch",t.BlobAccessTierNotSupportedForAccountType="BlobAccessTierNotSupportedForAccountType"})(Vpe||(Vpe={}));var Oo={};Zr(Oo,{AccessPolicy:()=>Wtt,AppendBlobAppendBlockExceptionHeaders:()=>ZG,AppendBlobAppendBlockFromUrlExceptionHeaders:()=>tH,AppendBlobAppendBlockFromUrlHeaders:()=>eH,AppendBlobAppendBlockHeaders:()=>XG,AppendBlobCreateExceptionHeaders:()=>KG,AppendBlobCreateHeaders:()=>JG,AppendBlobSealExceptionHeaders:()=>nH,AppendBlobSealHeaders:()=>rH,ArrowConfiguration:()=>crt,ArrowField:()=>lrt,BlobAbortCopyFromURLExceptionHeaders:()=>wG,BlobAbortCopyFromURLHeaders:()=>xG,BlobAcquireLeaseExceptionHeaders:()=>aG,BlobAcquireLeaseHeaders:()=>iG,BlobBreakLeaseExceptionHeaders:()=>AG,BlobBreakLeaseHeaders:()=>fG,BlobChangeLeaseExceptionHeaders:()=>mG,BlobChangeLeaseHeaders:()=>pG,BlobCopyFromURLExceptionHeaders:()=>IG,BlobCopyFromURLHeaders:()=>CG,BlobCreateSnapshotExceptionHeaders:()=>gG,BlobCreateSnapshotHeaders:()=>hG,BlobDeleteExceptionHeaders:()=>z$,BlobDeleteHeaders:()=>H$,BlobDeleteImmutabilityPolicyExceptionHeaders:()=>tG,BlobDeleteImmutabilityPolicyHeaders:()=>eG,BlobDownloadExceptionHeaders:()=>q$,BlobDownloadHeaders:()=>PR,BlobFlatListSegment:()=>jtt,BlobGetAccountInfoExceptionHeaders:()=>BG,BlobGetAccountInfoHeaders:()=>SG,BlobGetPropertiesExceptionHeaders:()=>G$,BlobGetPropertiesHeaders:()=>$$,BlobGetTagsExceptionHeaders:()=>TG,BlobGetTagsHeaders:()=>NG,BlobHierarchyListSegment:()=>Ztt,BlobItemInternal:()=>Jtt,BlobName:()=>Ktt,BlobPrefix:()=>ert,BlobPropertiesInternal:()=>Xtt,BlobQueryExceptionHeaders:()=>RG,BlobQueryHeaders:()=>_R,BlobReleaseLeaseExceptionHeaders:()=>lG,BlobReleaseLeaseHeaders:()=>cG,BlobRenewLeaseExceptionHeaders:()=>dG,BlobRenewLeaseHeaders:()=>uG,BlobServiceProperties:()=>eI,BlobServiceStatistics:()=>Dq,BlobSetExpiryExceptionHeaders:()=>j$,BlobSetExpiryHeaders:()=>W$,BlobSetHttpHeadersExceptionHeaders:()=>K$,BlobSetHttpHeadersHeaders:()=>J$,BlobSetImmutabilityPolicyExceptionHeaders:()=>Z$,BlobSetImmutabilityPolicyHeaders:()=>X$,BlobSetLegalHoldExceptionHeaders:()=>nG,BlobSetLegalHoldHeaders:()=>rG,BlobSetMetadataExceptionHeaders:()=>oG,BlobSetMetadataHeaders:()=>sG,BlobSetTagsExceptionHeaders:()=>vG,BlobSetTagsHeaders:()=>PG,BlobSetTierExceptionHeaders:()=>bG,BlobSetTierHeaders:()=>vR,BlobStartCopyFromURLExceptionHeaders:()=>EG,BlobStartCopyFromURLHeaders:()=>yG,BlobTag:()=>Vtt,BlobTags:()=>rI,BlobUndeleteExceptionHeaders:()=>Y$,BlobUndeleteHeaders:()=>V$,Block:()=>trt,BlockBlobCommitBlockListExceptionHeaders:()=>mH,BlockBlobCommitBlockListHeaders:()=>pH,BlockBlobGetBlockListExceptionHeaders:()=>AH,BlockBlobGetBlockListHeaders:()=>fH,BlockBlobPutBlobFromUrlExceptionHeaders:()=>aH,BlockBlobPutBlobFromUrlHeaders:()=>iH,BlockBlobStageBlockExceptionHeaders:()=>lH,BlockBlobStageBlockFromURLExceptionHeaders:()=>dH,BlockBlobStageBlockFromURLHeaders:()=>uH,BlockBlobStageBlockHeaders:()=>cH,BlockBlobUploadExceptionHeaders:()=>oH,BlockBlobUploadHeaders:()=>sH,BlockList:()=>qq,BlockLookupList:()=>Uq,ClearRange:()=>nrt,ContainerAcquireLeaseExceptionHeaders:()=>B$,ContainerAcquireLeaseHeaders:()=>S$,ContainerBreakLeaseExceptionHeaders:()=>_$,ContainerBreakLeaseHeaders:()=>v$,ContainerChangeLeaseExceptionHeaders:()=>D$,ContainerChangeLeaseHeaders:()=>Q$,ContainerCreateExceptionHeaders:()=>i$,ContainerCreateHeaders:()=>o$,ContainerDeleteExceptionHeaders:()=>u$,ContainerDeleteHeaders:()=>l$,ContainerFilterBlobsExceptionHeaders:()=>b$,ContainerFilterBlobsHeaders:()=>w$,ContainerGetAccessPolicyExceptionHeaders:()=>f$,ContainerGetAccessPolicyHeaders:()=>m$,ContainerGetAccountInfoExceptionHeaders:()=>U$,ContainerGetAccountInfoHeaders:()=>F$,ContainerGetPropertiesExceptionHeaders:()=>c$,ContainerGetPropertiesHeaders:()=>a$,ContainerItem:()=>Gtt,ContainerListBlobFlatSegmentExceptionHeaders:()=>L$,ContainerListBlobFlatSegmentHeaders:()=>k$,ContainerListBlobHierarchySegmentExceptionHeaders:()=>M$,ContainerListBlobHierarchySegmentHeaders:()=>O$,ContainerProperties:()=>Htt,ContainerReleaseLeaseExceptionHeaders:()=>N$,ContainerReleaseLeaseHeaders:()=>R$,ContainerRenameExceptionHeaders:()=>C$,ContainerRenameHeaders:()=>E$,ContainerRenewLeaseExceptionHeaders:()=>P$,ContainerRenewLeaseHeaders:()=>T$,ContainerRestoreExceptionHeaders:()=>y$,ContainerRestoreHeaders:()=>g$,ContainerSetAccessPolicyExceptionHeaders:()=>h$,ContainerSetAccessPolicyHeaders:()=>A$,ContainerSetMetadataExceptionHeaders:()=>p$,ContainerSetMetadataHeaders:()=>d$,ContainerSubmitBatchExceptionHeaders:()=>x$,ContainerSubmitBatchHeaders:()=>I$,CorsRule:()=>Utt,DelimitedTextConfiguration:()=>irt,FilterBlobItem:()=>ztt,FilterBlobSegment:()=>tI,GeoReplication:()=>$tt,JsonTextConfiguration:()=>art,KeyInfo:()=>Lq,ListBlobsFlatSegmentResponse:()=>Mq,ListBlobsHierarchySegmentResponse:()=>Fq,ListContainersSegmentResponse:()=>kq,Logging:()=>Ott,Metrics:()=>Ftt,PageBlobClearPagesExceptionHeaders:()=>OG,PageBlobClearPagesHeaders:()=>LG,PageBlobCopyIncrementalExceptionHeaders:()=>jG,PageBlobCopyIncrementalHeaders:()=>WG,PageBlobCreateExceptionHeaders:()=>QG,PageBlobCreateHeaders:()=>_G,PageBlobGetPageRangesDiffExceptionHeaders:()=>GG,PageBlobGetPageRangesDiffHeaders:()=>$G,PageBlobGetPageRangesExceptionHeaders:()=>qG,PageBlobGetPageRangesHeaders:()=>UG,PageBlobResizeExceptionHeaders:()=>zG,PageBlobResizeHeaders:()=>HG,PageBlobUpdateSequenceNumberExceptionHeaders:()=>YG,PageBlobUpdateSequenceNumberHeaders:()=>VG,PageBlobUploadPagesExceptionHeaders:()=>kG,PageBlobUploadPagesFromURLExceptionHeaders:()=>FG,PageBlobUploadPagesFromURLHeaders:()=>MG,PageBlobUploadPagesHeaders:()=>DG,PageList:()=>TR,PageRange:()=>rrt,QueryFormat:()=>ort,QueryRequest:()=>$q,QuerySerialization:()=>srt,RetentionPolicy:()=>Mtt,ServiceFilterBlobsExceptionHeaders:()=>s$,ServiceFilterBlobsHeaders:()=>n$,ServiceGetAccountInfoExceptionHeaders:()=>e$,ServiceGetAccountInfoHeaders:()=>Zq,ServiceGetPropertiesExceptionHeaders:()=>Vq,ServiceGetPropertiesHeaders:()=>zq,ServiceGetStatisticsExceptionHeaders:()=>Wq,ServiceGetStatisticsHeaders:()=>Yq,ServiceGetUserDelegationKeyExceptionHeaders:()=>Xq,ServiceGetUserDelegationKeyHeaders:()=>Kq,ServiceListContainersSegmentExceptionHeaders:()=>Jq,ServiceListContainersSegmentHeaders:()=>jq,ServiceSetPropertiesExceptionHeaders:()=>Hq,ServiceSetPropertiesHeaders:()=>Gq,ServiceSubmitBatchExceptionHeaders:()=>r$,ServiceSubmitBatchHeaders:()=>t$,SignedIdentifier:()=>Ytt,StaticWebsite:()=>qtt,StorageError:()=>J,UserDelegationKey:()=>Oq});var eI={serializedName:"BlobServiceProperties",xmlName:"StorageServiceProperties",type:{name:"Composite",className:"BlobServiceProperties",modelProperties:{blobAnalyticsLogging:{serializedName:"Logging",xmlName:"Logging",type:{name:"Composite",className:"Logging"}},hourMetrics:{serializedName:"HourMetrics",xmlName:"HourMetrics",type:{name:"Composite",className:"Metrics"}},minuteMetrics:{serializedName:"MinuteMetrics",xmlName:"MinuteMetrics",type:{name:"Composite",className:"Metrics"}},cors:{serializedName:"Cors",xmlName:"Cors",xmlIsWrapped:!0,xmlElementName:"CorsRule",type:{name:"Sequence",element:{type:{name:"Composite",className:"CorsRule"}}}},defaultServiceVersion:{serializedName:"DefaultServiceVersion",xmlName:"DefaultServiceVersion",type:{name:"String"}},deleteRetentionPolicy:{serializedName:"DeleteRetentionPolicy",xmlName:"DeleteRetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}},staticWebsite:{serializedName:"StaticWebsite",xmlName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite"}}}}},Ott={serializedName:"Logging",type:{name:"Composite",className:"Logging",modelProperties:{version:{serializedName:"Version",required:!0,xmlName:"Version",type:{name:"String"}},deleteProperty:{serializedName:"Delete",required:!0,xmlName:"Delete",type:{name:"Boolean"}},read:{serializedName:"Read",required:!0,xmlName:"Read",type:{name:"Boolean"}},write:{serializedName:"Write",required:!0,xmlName:"Write",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},Mtt={serializedName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},days:{constraints:{InclusiveMinimum:1},serializedName:"Days",xmlName:"Days",type:{name:"Number"}}}}},Ftt={serializedName:"Metrics",type:{name:"Composite",className:"Metrics",modelProperties:{version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},includeAPIs:{serializedName:"IncludeAPIs",xmlName:"IncludeAPIs",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},Utt={serializedName:"CorsRule",type:{name:"Composite",className:"CorsRule",modelProperties:{allowedOrigins:{serializedName:"AllowedOrigins",required:!0,xmlName:"AllowedOrigins",type:{name:"String"}},allowedMethods:{serializedName:"AllowedMethods",required:!0,xmlName:"AllowedMethods",type:{name:"String"}},allowedHeaders:{serializedName:"AllowedHeaders",required:!0,xmlName:"AllowedHeaders",type:{name:"String"}},exposedHeaders:{serializedName:"ExposedHeaders",required:!0,xmlName:"ExposedHeaders",type:{name:"String"}},maxAgeInSeconds:{constraints:{InclusiveMinimum:0},serializedName:"MaxAgeInSeconds",required:!0,xmlName:"MaxAgeInSeconds",type:{name:"Number"}}}}},qtt={serializedName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},indexDocument:{serializedName:"IndexDocument",xmlName:"IndexDocument",type:{name:"String"}},errorDocument404Path:{serializedName:"ErrorDocument404Path",xmlName:"ErrorDocument404Path",type:{name:"String"}},defaultIndexDocumentPath:{serializedName:"DefaultIndexDocumentPath",xmlName:"DefaultIndexDocumentPath",type:{name:"String"}}}}},J={serializedName:"StorageError",type:{name:"Composite",className:"StorageError",modelProperties:{message:{serializedName:"Message",xmlName:"Message",type:{name:"String"}},copySourceStatusCode:{serializedName:"CopySourceStatusCode",xmlName:"CopySourceStatusCode",type:{name:"Number"}},copySourceErrorCode:{serializedName:"CopySourceErrorCode",xmlName:"CopySourceErrorCode",type:{name:"String"}},copySourceErrorMessage:{serializedName:"CopySourceErrorMessage",xmlName:"CopySourceErrorMessage",type:{name:"String"}},code:{serializedName:"Code",xmlName:"Code",type:{name:"String"}},authenticationErrorDetail:{serializedName:"AuthenticationErrorDetail",xmlName:"AuthenticationErrorDetail",type:{name:"String"}}}}},Dq={serializedName:"BlobServiceStatistics",xmlName:"StorageServiceStats",type:{name:"Composite",className:"BlobServiceStatistics",modelProperties:{geoReplication:{serializedName:"GeoReplication",xmlName:"GeoReplication",type:{name:"Composite",className:"GeoReplication"}}}}},$tt={serializedName:"GeoReplication",type:{name:"Composite",className:"GeoReplication",modelProperties:{status:{serializedName:"Status",required:!0,xmlName:"Status",type:{name:"Enum",allowedValues:["live","bootstrap","unavailable"]}},lastSyncOn:{serializedName:"LastSyncTime",required:!0,xmlName:"LastSyncTime",type:{name:"DateTimeRfc1123"}}}}},kq={serializedName:"ListContainersSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListContainersSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},containerItems:{serializedName:"ContainerItems",required:!0,xmlName:"Containers",xmlIsWrapped:!0,xmlElementName:"Container",type:{name:"Sequence",element:{type:{name:"Composite",className:"ContainerItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},Gtt={serializedName:"ContainerItem",xmlName:"Container",type:{name:"Composite",className:"ContainerItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},deleted:{serializedName:"Deleted",xmlName:"Deleted",type:{name:"Boolean"}},version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"ContainerProperties"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},Htt={serializedName:"ContainerProperties",type:{name:"Composite",className:"ContainerProperties",modelProperties:{lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},publicAccess:{serializedName:"PublicAccess",xmlName:"PublicAccess",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"HasImmutabilityPolicy",xmlName:"HasImmutabilityPolicy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"HasLegalHold",xmlName:"HasLegalHold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"DefaultEncryptionScope",xmlName:"DefaultEncryptionScope",type:{name:"String"}},preventEncryptionScopeOverride:{serializedName:"DenyEncryptionScopeOverride",xmlName:"DenyEncryptionScopeOverride",type:{name:"Boolean"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},isImmutableStorageWithVersioningEnabled:{serializedName:"ImmutableStorageWithVersioningEnabled",xmlName:"ImmutableStorageWithVersioningEnabled",type:{name:"Boolean"}}}}},Lq={serializedName:"KeyInfo",type:{name:"Composite",className:"KeyInfo",modelProperties:{startsOn:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",required:!0,xmlName:"Expiry",type:{name:"String"}}}}},Oq={serializedName:"UserDelegationKey",type:{name:"Composite",className:"UserDelegationKey",modelProperties:{signedObjectId:{serializedName:"SignedOid",required:!0,xmlName:"SignedOid",type:{name:"String"}},signedTenantId:{serializedName:"SignedTid",required:!0,xmlName:"SignedTid",type:{name:"String"}},signedStartsOn:{serializedName:"SignedStart",required:!0,xmlName:"SignedStart",type:{name:"String"}},signedExpiresOn:{serializedName:"SignedExpiry",required:!0,xmlName:"SignedExpiry",type:{name:"String"}},signedService:{serializedName:"SignedService",required:!0,xmlName:"SignedService",type:{name:"String"}},signedVersion:{serializedName:"SignedVersion",required:!0,xmlName:"SignedVersion",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},tI={serializedName:"FilterBlobSegment",xmlName:"EnumerationResults",type:{name:"Composite",className:"FilterBlobSegment",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},where:{serializedName:"Where",required:!0,xmlName:"Where",type:{name:"String"}},blobs:{serializedName:"Blobs",required:!0,xmlName:"Blobs",xmlIsWrapped:!0,xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"FilterBlobItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},ztt={serializedName:"FilterBlobItem",xmlName:"Blob",type:{name:"Composite",className:"FilterBlobItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",type:{name:"String"}},tags:{serializedName:"Tags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}}}}},rI={serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags",modelProperties:{blobTagSet:{serializedName:"BlobTagSet",required:!0,xmlName:"TagSet",xmlIsWrapped:!0,xmlElementName:"Tag",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobTag"}}}}}}},Vtt={serializedName:"BlobTag",xmlName:"Tag",type:{name:"Composite",className:"BlobTag",modelProperties:{key:{serializedName:"Key",required:!0,xmlName:"Key",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},Ytt={serializedName:"SignedIdentifier",xmlName:"SignedIdentifier",type:{name:"Composite",className:"SignedIdentifier",modelProperties:{id:{serializedName:"Id",required:!0,xmlName:"Id",type:{name:"String"}},accessPolicy:{serializedName:"AccessPolicy",xmlName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy"}}}}},Wtt={serializedName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy",modelProperties:{startsOn:{serializedName:"Start",xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",xmlName:"Expiry",type:{name:"String"}},permissions:{serializedName:"Permission",xmlName:"Permission",type:{name:"String"}}}}},Mq={serializedName:"ListBlobsFlatSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsFlatSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},jtt={serializedName:"BlobFlatListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment",modelProperties:{blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},Jtt={serializedName:"BlobItemInternal",xmlName:"Blob",type:{name:"Composite",className:"BlobItemInternal",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}},deleted:{serializedName:"Deleted",required:!0,xmlName:"Deleted",type:{name:"Boolean"}},snapshot:{serializedName:"Snapshot",required:!0,xmlName:"Snapshot",type:{name:"String"}},versionId:{serializedName:"VersionId",xmlName:"VersionId",type:{name:"String"}},isCurrentVersion:{serializedName:"IsCurrentVersion",xmlName:"IsCurrentVersion",type:{name:"Boolean"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},blobTags:{serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}},objectReplicationMetadata:{serializedName:"ObjectReplicationMetadata",xmlName:"OrMetadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},hasVersionsOnly:{serializedName:"HasVersionsOnly",xmlName:"HasVersionsOnly",type:{name:"Boolean"}}}}},Ktt={serializedName:"BlobName",type:{name:"Composite",className:"BlobName",modelProperties:{encoded:{serializedName:"Encoded",xmlName:"Encoded",xmlIsAttribute:!0,type:{name:"Boolean"}},content:{serializedName:"content",xmlName:"content",xmlIsMsText:!0,type:{name:"String"}}}}},Xtt={serializedName:"BlobPropertiesInternal",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal",modelProperties:{createdOn:{serializedName:"Creation-Time",xmlName:"Creation-Time",type:{name:"DateTimeRfc1123"}},lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},contentLength:{serializedName:"Content-Length",xmlName:"Content-Length",type:{name:"Number"}},contentType:{serializedName:"Content-Type",xmlName:"Content-Type",type:{name:"String"}},contentEncoding:{serializedName:"Content-Encoding",xmlName:"Content-Encoding",type:{name:"String"}},contentLanguage:{serializedName:"Content-Language",xmlName:"Content-Language",type:{name:"String"}},contentMD5:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}},contentDisposition:{serializedName:"Content-Disposition",xmlName:"Content-Disposition",type:{name:"String"}},cacheControl:{serializedName:"Cache-Control",xmlName:"Cache-Control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"BlobType",xmlName:"BlobType",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},copyId:{serializedName:"CopyId",xmlName:"CopyId",type:{name:"String"}},copyStatus:{serializedName:"CopyStatus",xmlName:"CopyStatus",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},copySource:{serializedName:"CopySource",xmlName:"CopySource",type:{name:"String"}},copyProgress:{serializedName:"CopyProgress",xmlName:"CopyProgress",type:{name:"String"}},copyCompletedOn:{serializedName:"CopyCompletionTime",xmlName:"CopyCompletionTime",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"CopyStatusDescription",xmlName:"CopyStatusDescription",type:{name:"String"}},serverEncrypted:{serializedName:"ServerEncrypted",xmlName:"ServerEncrypted",type:{name:"Boolean"}},incrementalCopy:{serializedName:"IncrementalCopy",xmlName:"IncrementalCopy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"DestinationSnapshot",xmlName:"DestinationSnapshot",type:{name:"String"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},accessTier:{serializedName:"AccessTier",xmlName:"AccessTier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}},accessTierInferred:{serializedName:"AccessTierInferred",xmlName:"AccessTierInferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"ArchiveStatus",xmlName:"ArchiveStatus",type:{name:"Enum",allowedValues:["rehydrate-pending-to-hot","rehydrate-pending-to-cool","rehydrate-pending-to-cold"]}},customerProvidedKeySha256:{serializedName:"CustomerProvidedKeySha256",xmlName:"CustomerProvidedKeySha256",type:{name:"String"}},encryptionScope:{serializedName:"EncryptionScope",xmlName:"EncryptionScope",type:{name:"String"}},accessTierChangedOn:{serializedName:"AccessTierChangeTime",xmlName:"AccessTierChangeTime",type:{name:"DateTimeRfc1123"}},tagCount:{serializedName:"TagCount",xmlName:"TagCount",type:{name:"Number"}},expiresOn:{serializedName:"Expiry-Time",xmlName:"Expiry-Time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"Sealed",xmlName:"Sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"RehydratePriority",xmlName:"RehydratePriority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessedOn:{serializedName:"LastAccessTime",xmlName:"LastAccessTime",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"ImmutabilityPolicyUntilDate",xmlName:"ImmutabilityPolicyUntilDate",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"ImmutabilityPolicyMode",xmlName:"ImmutabilityPolicyMode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"LegalHold",xmlName:"LegalHold",type:{name:"Boolean"}}}}},Fq={serializedName:"ListBlobsHierarchySegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsHierarchySegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},delimiter:{serializedName:"Delimiter",xmlName:"Delimiter",type:{name:"String"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},Ztt={serializedName:"BlobHierarchyListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment",modelProperties:{blobPrefixes:{serializedName:"BlobPrefixes",xmlName:"BlobPrefixes",xmlElementName:"BlobPrefix",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobPrefix"}}}},blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},ert={serializedName:"BlobPrefix",type:{name:"Composite",className:"BlobPrefix",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}}}}},Uq={serializedName:"BlockLookupList",xmlName:"BlockList",type:{name:"Composite",className:"BlockLookupList",modelProperties:{committed:{serializedName:"Committed",xmlName:"Committed",xmlElementName:"Committed",type:{name:"Sequence",element:{type:{name:"String"}}}},uncommitted:{serializedName:"Uncommitted",xmlName:"Uncommitted",xmlElementName:"Uncommitted",type:{name:"Sequence",element:{type:{name:"String"}}}},latest:{serializedName:"Latest",xmlName:"Latest",xmlElementName:"Latest",type:{name:"Sequence",element:{type:{name:"String"}}}}}}},qq={serializedName:"BlockList",type:{name:"Composite",className:"BlockList",modelProperties:{committedBlocks:{serializedName:"CommittedBlocks",xmlName:"CommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}},uncommittedBlocks:{serializedName:"UncommittedBlocks",xmlName:"UncommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}}}}},trt={serializedName:"Block",type:{name:"Composite",className:"Block",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},size:{serializedName:"Size",required:!0,xmlName:"Size",type:{name:"Number"}}}}},TR={serializedName:"PageList",type:{name:"Composite",className:"PageList",modelProperties:{pageRange:{serializedName:"PageRange",xmlName:"PageRange",xmlElementName:"PageRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"PageRange"}}}},clearRange:{serializedName:"ClearRange",xmlName:"ClearRange",xmlElementName:"ClearRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"ClearRange"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},rrt={serializedName:"PageRange",xmlName:"PageRange",type:{name:"Composite",className:"PageRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},nrt={serializedName:"ClearRange",xmlName:"ClearRange",type:{name:"Composite",className:"ClearRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},$q={serializedName:"QueryRequest",xmlName:"QueryRequest",type:{name:"Composite",className:"QueryRequest",modelProperties:{queryType:{serializedName:"QueryType",required:!0,xmlName:"QueryType",type:{name:"String"}},expression:{serializedName:"Expression",required:!0,xmlName:"Expression",type:{name:"String"}},inputSerialization:{serializedName:"InputSerialization",xmlName:"InputSerialization",type:{name:"Composite",className:"QuerySerialization"}},outputSerialization:{serializedName:"OutputSerialization",xmlName:"OutputSerialization",type:{name:"Composite",className:"QuerySerialization"}}}}},srt={serializedName:"QuerySerialization",type:{name:"Composite",className:"QuerySerialization",modelProperties:{format:{serializedName:"Format",xmlName:"Format",type:{name:"Composite",className:"QueryFormat"}}}}},ort={serializedName:"QueryFormat",type:{name:"Composite",className:"QueryFormat",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"Enum",allowedValues:["delimited","json","arrow","parquet"]}},delimitedTextConfiguration:{serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration"}},jsonTextConfiguration:{serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration"}},arrowConfiguration:{serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration"}},parquetTextConfiguration:{serializedName:"ParquetTextConfiguration",xmlName:"ParquetTextConfiguration",type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},irt={serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration",modelProperties:{columnSeparator:{serializedName:"ColumnSeparator",xmlName:"ColumnSeparator",type:{name:"String"}},fieldQuote:{serializedName:"FieldQuote",xmlName:"FieldQuote",type:{name:"String"}},recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}},escapeChar:{serializedName:"EscapeChar",xmlName:"EscapeChar",type:{name:"String"}},headersPresent:{serializedName:"HeadersPresent",xmlName:"HasHeaders",type:{name:"Boolean"}}}}},art={serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration",modelProperties:{recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}}}}},crt={serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration",modelProperties:{schema:{serializedName:"Schema",required:!0,xmlName:"Schema",xmlIsWrapped:!0,xmlElementName:"Field",type:{name:"Sequence",element:{type:{name:"Composite",className:"ArrowField"}}}}}}},lrt={serializedName:"ArrowField",xmlName:"Field",type:{name:"Composite",className:"ArrowField",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"String"}},name:{serializedName:"Name",xmlName:"Name",type:{name:"String"}},precision:{serializedName:"Precision",xmlName:"Precision",type:{name:"Number"}},scale:{serializedName:"Scale",xmlName:"Scale",type:{name:"Number"}}}}},Gq={serializedName:"Service_setPropertiesHeaders",type:{name:"Composite",className:"ServiceSetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Hq={serializedName:"Service_setPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceSetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},zq={serializedName:"Service_getPropertiesHeaders",type:{name:"Composite",className:"ServiceGetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Vq={serializedName:"Service_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Yq={serializedName:"Service_getStatisticsHeaders",type:{name:"Composite",className:"ServiceGetStatisticsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Wq={serializedName:"Service_getStatisticsExceptionHeaders",type:{name:"Composite",className:"ServiceGetStatisticsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},jq={serializedName:"Service_listContainersSegmentHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Jq={serializedName:"Service_listContainersSegmentExceptionHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Kq={serializedName:"Service_getUserDelegationKeyHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Xq={serializedName:"Service_getUserDelegationKeyExceptionHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Zq={serializedName:"Service_getAccountInfoHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},e$={serializedName:"Service_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},t$={serializedName:"Service_submitBatchHeaders",type:{name:"Composite",className:"ServiceSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},r$={serializedName:"Service_submitBatchExceptionHeaders",type:{name:"Composite",className:"ServiceSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},n$={serializedName:"Service_filterBlobsHeaders",type:{name:"Composite",className:"ServiceFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},s$={serializedName:"Service_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ServiceFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},o$={serializedName:"Container_createHeaders",type:{name:"Composite",className:"ContainerCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},i$={serializedName:"Container_createExceptionHeaders",type:{name:"Composite",className:"ContainerCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},a$={serializedName:"Container_getPropertiesHeaders",type:{name:"Composite",className:"ContainerGetPropertiesHeaders",modelProperties:{metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"x-ms-has-immutability-policy",xmlName:"x-ms-has-immutability-policy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"x-ms-has-legal-hold",xmlName:"x-ms-has-legal-hold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}},denyEncryptionScopeOverride:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}},isImmutableStorageWithVersioningEnabled:{serializedName:"x-ms-immutable-storage-with-versioning-enabled",xmlName:"x-ms-immutable-storage-with-versioning-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},c$={serializedName:"Container_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ContainerGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},l$={serializedName:"Container_deleteHeaders",type:{name:"Composite",className:"ContainerDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},u$={serializedName:"Container_deleteExceptionHeaders",type:{name:"Composite",className:"ContainerDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},d$={serializedName:"Container_setMetadataHeaders",type:{name:"Composite",className:"ContainerSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},p$={serializedName:"Container_setMetadataExceptionHeaders",type:{name:"Composite",className:"ContainerSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},m$={serializedName:"Container_getAccessPolicyHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyHeaders",modelProperties:{blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},f$={serializedName:"Container_getAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},A$={serializedName:"Container_setAccessPolicyHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},h$={serializedName:"Container_setAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},g$={serializedName:"Container_restoreHeaders",type:{name:"Composite",className:"ContainerRestoreHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},y$={serializedName:"Container_restoreExceptionHeaders",type:{name:"Composite",className:"ContainerRestoreExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},E$={serializedName:"Container_renameHeaders",type:{name:"Composite",className:"ContainerRenameHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},C$={serializedName:"Container_renameExceptionHeaders",type:{name:"Composite",className:"ContainerRenameExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},I$={serializedName:"Container_submitBatchHeaders",type:{name:"Composite",className:"ContainerSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}}}}},x$={serializedName:"Container_submitBatchExceptionHeaders",type:{name:"Composite",className:"ContainerSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},w$={serializedName:"Container_filterBlobsHeaders",type:{name:"Composite",className:"ContainerFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},b$={serializedName:"Container_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ContainerFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},S$={serializedName:"Container_acquireLeaseHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},B$={serializedName:"Container_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},R$={serializedName:"Container_releaseLeaseHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},N$={serializedName:"Container_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},T$={serializedName:"Container_renewLeaseHeaders",type:{name:"Composite",className:"ContainerRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},P$={serializedName:"Container_renewLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},v$={serializedName:"Container_breakLeaseHeaders",type:{name:"Composite",className:"ContainerBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},_$={serializedName:"Container_breakLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Q$={serializedName:"Container_changeLeaseHeaders",type:{name:"Composite",className:"ContainerChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},D$={serializedName:"Container_changeLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},k$={serializedName:"Container_listBlobFlatSegmentHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},L$={serializedName:"Container_listBlobFlatSegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},O$={serializedName:"Container_listBlobHierarchySegmentHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},M$={serializedName:"Container_listBlobHierarchySegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},F$={serializedName:"Container_getAccountInfoHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}}}}},U$={serializedName:"Container_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},PR={serializedName:"Blob_downloadHeaders",type:{name:"Composite",className:"BlobDownloadHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},createdOn:{serializedName:"x-ms-creation-time",xmlName:"x-ms-creation-time",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",headerCollectionPrefix:"x-ms-or-",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},q$={serializedName:"Blob_downloadExceptionHeaders",type:{name:"Composite",className:"BlobDownloadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$$={serializedName:"Blob_getPropertiesHeaders",type:{name:"Composite",className:"BlobGetPropertiesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},createdOn:{serializedName:"x-ms-creation-time",xmlName:"x-ms-creation-time",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",headerCollectionPrefix:"x-ms-or-",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},isIncrementalCopy:{serializedName:"x-ms-incremental-copy",xmlName:"x-ms-incremental-copy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"x-ms-copy-destination-snapshot",xmlName:"x-ms-copy-destination-snapshot",type:{name:"String"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},accessTier:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"String"}},accessTierInferred:{serializedName:"x-ms-access-tier-inferred",xmlName:"x-ms-access-tier-inferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"x-ms-archive-status",xmlName:"x-ms-archive-status",type:{name:"String"}},accessTierChangedOn:{serializedName:"x-ms-access-tier-change-time",xmlName:"x-ms-access-tier-change-time",type:{name:"DateTimeRfc1123"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},expiresOn:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},G$={serializedName:"Blob_getPropertiesExceptionHeaders",type:{name:"Composite",className:"BlobGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},H$={serializedName:"Blob_deleteHeaders",type:{name:"Composite",className:"BlobDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},z$={serializedName:"Blob_deleteExceptionHeaders",type:{name:"Composite",className:"BlobDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},V$={serializedName:"Blob_undeleteHeaders",type:{name:"Composite",className:"BlobUndeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Y$={serializedName:"Blob_undeleteExceptionHeaders",type:{name:"Composite",className:"BlobUndeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},W$={serializedName:"Blob_setExpiryHeaders",type:{name:"Composite",className:"BlobSetExpiryHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},j$={serializedName:"Blob_setExpiryExceptionHeaders",type:{name:"Composite",className:"BlobSetExpiryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},J$={serializedName:"Blob_setHttpHeadersHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},K$={serializedName:"Blob_setHttpHeadersExceptionHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},X$={serializedName:"Blob_setImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiry:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}}}},Z$={serializedName:"Blob_setImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},eG={serializedName:"Blob_deleteImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},tG={serializedName:"Blob_deleteImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},rG={serializedName:"Blob_setLegalHoldHeaders",type:{name:"Composite",className:"BlobSetLegalHoldHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}}}},nG={serializedName:"Blob_setLegalHoldExceptionHeaders",type:{name:"Composite",className:"BlobSetLegalHoldExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},sG={serializedName:"Blob_setMetadataHeaders",type:{name:"Composite",className:"BlobSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oG={serializedName:"Blob_setMetadataExceptionHeaders",type:{name:"Composite",className:"BlobSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},iG={serializedName:"Blob_acquireLeaseHeaders",type:{name:"Composite",className:"BlobAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},aG={serializedName:"Blob_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"BlobAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},cG={serializedName:"Blob_releaseLeaseHeaders",type:{name:"Composite",className:"BlobReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},lG={serializedName:"Blob_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"BlobReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},uG={serializedName:"Blob_renewLeaseHeaders",type:{name:"Composite",className:"BlobRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},dG={serializedName:"Blob_renewLeaseExceptionHeaders",type:{name:"Composite",className:"BlobRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},pG={serializedName:"Blob_changeLeaseHeaders",type:{name:"Composite",className:"BlobChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},mG={serializedName:"Blob_changeLeaseExceptionHeaders",type:{name:"Composite",className:"BlobChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},fG={serializedName:"Blob_breakLeaseHeaders",type:{name:"Composite",className:"BlobBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},AG={serializedName:"Blob_breakLeaseExceptionHeaders",type:{name:"Composite",className:"BlobBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},hG={serializedName:"Blob_createSnapshotHeaders",type:{name:"Composite",className:"BlobCreateSnapshotHeaders",modelProperties:{snapshot:{serializedName:"x-ms-snapshot",xmlName:"x-ms-snapshot",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},gG={serializedName:"Blob_createSnapshotExceptionHeaders",type:{name:"Composite",className:"BlobCreateSnapshotExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},yG={serializedName:"Blob_startCopyFromURLHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},EG={serializedName:"Blob_startCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},CG={serializedName:"Blob_copyFromURLHeaders",type:{name:"Composite",className:"BlobCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{defaultValue:"success",isConstant:!0,serializedName:"x-ms-copy-status",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},IG={serializedName:"Blob_copyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},xG={serializedName:"Blob_abortCopyFromURLHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},wG={serializedName:"Blob_abortCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},vR={serializedName:"Blob_setTierHeaders",type:{name:"Composite",className:"BlobSetTierHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},bG={serializedName:"Blob_setTierExceptionHeaders",type:{name:"Composite",className:"BlobSetTierExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},SG={serializedName:"Blob_getAccountInfoHeaders",type:{name:"Composite",className:"BlobGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}}}}},BG={serializedName:"Blob_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"BlobGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},_R={serializedName:"Blob_queryHeaders",type:{name:"Composite",className:"BlobQueryHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletionTime:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},RG={serializedName:"Blob_queryExceptionHeaders",type:{name:"Composite",className:"BlobQueryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},NG={serializedName:"Blob_getTagsHeaders",type:{name:"Composite",className:"BlobGetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},TG={serializedName:"Blob_getTagsExceptionHeaders",type:{name:"Composite",className:"BlobGetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},PG={serializedName:"Blob_setTagsHeaders",type:{name:"Composite",className:"BlobSetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},vG={serializedName:"Blob_setTagsExceptionHeaders",type:{name:"Composite",className:"BlobSetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},_G={serializedName:"PageBlob_createHeaders",type:{name:"Composite",className:"PageBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},QG={serializedName:"PageBlob_createExceptionHeaders",type:{name:"Composite",className:"PageBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},DG={serializedName:"PageBlob_uploadPagesHeaders",type:{name:"Composite",className:"PageBlobUploadPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},kG={serializedName:"PageBlob_uploadPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},LG={serializedName:"PageBlob_clearPagesHeaders",type:{name:"Composite",className:"PageBlobClearPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},OG={serializedName:"PageBlob_clearPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobClearPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},MG={serializedName:"PageBlob_uploadPagesFromURLHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},FG={serializedName:"PageBlob_uploadPagesFromURLExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},UG={serializedName:"PageBlob_getPageRangesHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},qG={serializedName:"PageBlob_getPageRangesExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$G={serializedName:"PageBlob_getPageRangesDiffHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},GG={serializedName:"PageBlob_getPageRangesDiffExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},HG={serializedName:"PageBlob_resizeHeaders",type:{name:"Composite",className:"PageBlobResizeHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},zG={serializedName:"PageBlob_resizeExceptionHeaders",type:{name:"Composite",className:"PageBlobResizeExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},VG={serializedName:"PageBlob_updateSequenceNumberHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},YG={serializedName:"PageBlob_updateSequenceNumberExceptionHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},WG={serializedName:"PageBlob_copyIncrementalHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},jG={serializedName:"PageBlob_copyIncrementalExceptionHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},JG={serializedName:"AppendBlob_createHeaders",type:{name:"Composite",className:"AppendBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},KG={serializedName:"AppendBlob_createExceptionHeaders",type:{name:"Composite",className:"AppendBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},XG={serializedName:"AppendBlob_appendBlockHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ZG={serializedName:"AppendBlob_appendBlockExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},eH={serializedName:"AppendBlob_appendBlockFromUrlHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},tH={serializedName:"AppendBlob_appendBlockFromUrlExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},rH={serializedName:"AppendBlob_sealHeaders",type:{name:"Composite",className:"AppendBlobSealHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}}}}},nH={serializedName:"AppendBlob_sealExceptionHeaders",type:{name:"Composite",className:"AppendBlobSealExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},sH={serializedName:"BlockBlob_uploadHeaders",type:{name:"Composite",className:"BlockBlobUploadHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oH={serializedName:"BlockBlob_uploadExceptionHeaders",type:{name:"Composite",className:"BlockBlobUploadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},iH={serializedName:"BlockBlob_putBlobFromUrlHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},aH={serializedName:"BlockBlob_putBlobFromUrlExceptionHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},cH={serializedName:"BlockBlob_stageBlockHeaders",type:{name:"Composite",className:"BlockBlobStageBlockHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},lH={serializedName:"BlockBlob_stageBlockExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},uH={serializedName:"BlockBlob_stageBlockFromURLHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},dH={serializedName:"BlockBlob_stageBlockFromURLExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},pH={serializedName:"BlockBlob_commitBlockListHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},mH={serializedName:"BlockBlob_commitBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},fH={serializedName:"BlockBlob_getBlockListHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},AH={serializedName:"BlockBlob_getBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}};var dc={parameterPath:["options","contentType"],mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},Ype={parameterPath:"blobServiceProperties",mapper:eI},yi={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},X={parameterPath:"url",mapper:{serializedName:"url",required:!0,xmlName:"url",type:{name:"String"}},skipEncoding:!0},nI={parameterPath:"restype",mapper:{defaultValue:"service",isConstant:!0,serializedName:"restype",type:{name:"String"}}},Ei={parameterPath:"comp",mapper:{defaultValue:"properties",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Z={parameterPath:["options","timeoutInSeconds"],mapper:{constraints:{InclusiveMinimum:0},serializedName:"timeout",xmlName:"timeout",type:{name:"Number"}}},ee={parameterPath:"version",mapper:{defaultValue:"2026-02-06",isConstant:!0,serializedName:"x-ms-version",type:{name:"String"}}},te={parameterPath:["options","requestId"],mapper:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}}},pe={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},Wpe={parameterPath:"comp",mapper:{defaultValue:"stats",isConstant:!0,serializedName:"comp",type:{name:"String"}}},sI={parameterPath:"comp",mapper:{defaultValue:"list",isConstant:!0,serializedName:"comp",type:{name:"String"}}},oI={parameterPath:["options","prefix"],mapper:{serializedName:"prefix",xmlName:"prefix",type:{name:"String"}}},pc={parameterPath:["options","marker"],mapper:{serializedName:"marker",xmlName:"marker",type:{name:"String"}}},mc={parameterPath:["options","maxPageSize"],mapper:{constraints:{InclusiveMinimum:1},serializedName:"maxresults",xmlName:"maxresults",type:{name:"Number"}}},jpe={parameterPath:["options","include"],mapper:{serializedName:"include",xmlName:"include",xmlElementName:"ListContainersIncludeType",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["metadata","deleted","system"]}}}},collectionFormat:"CSV"},Jpe={parameterPath:"keyInfo",mapper:Lq},Kpe={parameterPath:"comp",mapper:{defaultValue:"userdelegationkey",isConstant:!0,serializedName:"comp",type:{name:"String"}}},vh={parameterPath:"restype",mapper:{defaultValue:"account",isConstant:!0,serializedName:"restype",type:{name:"String"}}},QR={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},DR={parameterPath:"comp",mapper:{defaultValue:"batch",isConstant:!0,serializedName:"comp",type:{name:"String"}}},hn={parameterPath:"contentLength",mapper:{serializedName:"Content-Length",required:!0,xmlName:"Content-Length",type:{name:"Number"}}},kR={parameterPath:"multipartContentType",mapper:{serializedName:"Content-Type",required:!0,xmlName:"Content-Type",type:{name:"String"}}},LR={parameterPath:"comp",mapper:{defaultValue:"blobs",isConstant:!0,serializedName:"comp",type:{name:"String"}}},OR={parameterPath:["options","where"],mapper:{serializedName:"where",xmlName:"where",type:{name:"String"}}},gn={parameterPath:"restype",mapper:{defaultValue:"container",isConstant:!0,serializedName:"restype",type:{name:"String"}}},Vn={parameterPath:["options","metadata"],mapper:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",type:{name:"Dictionary",value:{type:{name:"String"}}}}},hH={parameterPath:["options","access"],mapper:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}}},Xpe={parameterPath:["options","containerEncryptionScope","defaultEncryptionScope"],mapper:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}}},Zpe={parameterPath:["options","containerEncryptionScope","preventEncryptionScopeOverride"],mapper:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}}},ot={parameterPath:["options","leaseAccessConditions","leaseId"],mapper:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}}},Ze={parameterPath:["options","modifiedAccessConditions","ifModifiedSince"],mapper:{serializedName:"If-Modified-Since",xmlName:"If-Modified-Since",type:{name:"DateTimeRfc1123"}}},et={parameterPath:["options","modifiedAccessConditions","ifUnmodifiedSince"],mapper:{serializedName:"If-Unmodified-Since",xmlName:"If-Unmodified-Since",type:{name:"DateTimeRfc1123"}}},MR={parameterPath:"comp",mapper:{defaultValue:"metadata",isConstant:!0,serializedName:"comp",type:{name:"String"}}},gH={parameterPath:"comp",mapper:{defaultValue:"acl",isConstant:!0,serializedName:"comp",type:{name:"String"}}},eme={parameterPath:["options","containerAcl"],mapper:{serializedName:"containerAcl",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier",type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}}}},FR={parameterPath:"comp",mapper:{defaultValue:"undelete",isConstant:!0,serializedName:"comp",type:{name:"String"}}},tme={parameterPath:["options","deletedContainerName"],mapper:{serializedName:"x-ms-deleted-container-name",xmlName:"x-ms-deleted-container-name",type:{name:"String"}}},rme={parameterPath:["options","deletedContainerVersion"],mapper:{serializedName:"x-ms-deleted-container-version",xmlName:"x-ms-deleted-container-version",type:{name:"String"}}},nme={parameterPath:"comp",mapper:{defaultValue:"rename",isConstant:!0,serializedName:"comp",type:{name:"String"}}},sme={parameterPath:"sourceContainerName",mapper:{serializedName:"x-ms-source-container-name",required:!0,xmlName:"x-ms-source-container-name",type:{name:"String"}}},ome={parameterPath:["options","sourceLeaseId"],mapper:{serializedName:"x-ms-source-lease-id",xmlName:"x-ms-source-lease-id",type:{name:"String"}}},Ci={parameterPath:"comp",mapper:{defaultValue:"lease",isConstant:!0,serializedName:"comp",type:{name:"String"}}},UR={parameterPath:"action",mapper:{defaultValue:"acquire",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},qR={parameterPath:["options","duration"],mapper:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Number"}}},$R={parameterPath:["options","proposedLeaseId"],mapper:{serializedName:"x-ms-proposed-lease-id",xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},GR={parameterPath:"action",mapper:{defaultValue:"release",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},Rd={parameterPath:"leaseId",mapper:{serializedName:"x-ms-lease-id",required:!0,xmlName:"x-ms-lease-id",type:{name:"String"}}},HR={parameterPath:"action",mapper:{defaultValue:"renew",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},zR={parameterPath:"action",mapper:{defaultValue:"break",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},VR={parameterPath:["options","breakPeriod"],mapper:{serializedName:"x-ms-lease-break-period",xmlName:"x-ms-lease-break-period",type:{name:"Number"}}},YR={parameterPath:"action",mapper:{defaultValue:"change",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},WR={parameterPath:"proposedLeaseId",mapper:{serializedName:"x-ms-proposed-lease-id",required:!0,xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},yH={parameterPath:["options","include"],mapper:{serializedName:"include",xmlName:"include",xmlElementName:"ListBlobsIncludeItem",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["copy","deleted","metadata","snapshots","uncommittedblobs","versions","tags","immutabilitypolicy","legalhold","deletedwithversions"]}}}},collectionFormat:"CSV"},EH={parameterPath:["options","startFrom"],mapper:{serializedName:"startFrom",xmlName:"startFrom",type:{name:"String"}}},ime={parameterPath:"delimiter",mapper:{serializedName:"delimiter",required:!0,xmlName:"delimiter",type:{name:"String"}}},Is={parameterPath:["options","snapshot"],mapper:{serializedName:"snapshot",xmlName:"snapshot",type:{name:"String"}}},fc={parameterPath:["options","versionId"],mapper:{serializedName:"versionid",xmlName:"versionid",type:{name:"String"}}},Nm={parameterPath:["options","range"],mapper:{serializedName:"x-ms-range",xmlName:"x-ms-range",type:{name:"String"}}},ame={parameterPath:["options","rangeGetContentMD5"],mapper:{serializedName:"x-ms-range-get-content-md5",xmlName:"x-ms-range-get-content-md5",type:{name:"Boolean"}}},cme={parameterPath:["options","rangeGetContentCRC64"],mapper:{serializedName:"x-ms-range-get-content-crc64",xmlName:"x-ms-range-get-content-crc64",type:{name:"Boolean"}}},xr={parameterPath:["options","cpkInfo","encryptionKey"],mapper:{serializedName:"x-ms-encryption-key",xmlName:"x-ms-encryption-key",type:{name:"String"}}},wr={parameterPath:["options","cpkInfo","encryptionKeySha256"],mapper:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}}},br={parameterPath:["options","cpkInfo","encryptionAlgorithm"],mapper:{serializedName:"x-ms-encryption-algorithm",xmlName:"x-ms-encryption-algorithm",type:{name:"String"}}},ht={parameterPath:["options","modifiedAccessConditions","ifMatch"],mapper:{serializedName:"If-Match",xmlName:"If-Match",type:{name:"String"}}},gt={parameterPath:["options","modifiedAccessConditions","ifNoneMatch"],mapper:{serializedName:"If-None-Match",xmlName:"If-None-Match",type:{name:"String"}}},dt={parameterPath:["options","modifiedAccessConditions","ifTags"],mapper:{serializedName:"x-ms-if-tags",xmlName:"x-ms-if-tags",type:{name:"String"}}},lme={parameterPath:["options","deleteSnapshots"],mapper:{serializedName:"x-ms-delete-snapshots",xmlName:"x-ms-delete-snapshots",type:{name:"Enum",allowedValues:["include","only"]}}},ume={parameterPath:["options","blobDeleteType"],mapper:{serializedName:"deletetype",xmlName:"deletetype",type:{name:"String"}}},dme={parameterPath:"comp",mapper:{defaultValue:"expiry",isConstant:!0,serializedName:"comp",type:{name:"String"}}},pme={parameterPath:"expiryOptions",mapper:{serializedName:"x-ms-expiry-option",required:!0,xmlName:"x-ms-expiry-option",type:{name:"String"}}},mme={parameterPath:["options","expiresOn"],mapper:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"String"}}},Ac={parameterPath:["options","blobHttpHeaders","blobCacheControl"],mapper:{serializedName:"x-ms-blob-cache-control",xmlName:"x-ms-blob-cache-control",type:{name:"String"}}},hc={parameterPath:["options","blobHttpHeaders","blobContentType"],mapper:{serializedName:"x-ms-blob-content-type",xmlName:"x-ms-blob-content-type",type:{name:"String"}}},gc={parameterPath:["options","blobHttpHeaders","blobContentMD5"],mapper:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}}},yc={parameterPath:["options","blobHttpHeaders","blobContentEncoding"],mapper:{serializedName:"x-ms-blob-content-encoding",xmlName:"x-ms-blob-content-encoding",type:{name:"String"}}},Ec={parameterPath:["options","blobHttpHeaders","blobContentLanguage"],mapper:{serializedName:"x-ms-blob-content-language",xmlName:"x-ms-blob-content-language",type:{name:"String"}}},Cc={parameterPath:["options","blobHttpHeaders","blobContentDisposition"],mapper:{serializedName:"x-ms-blob-content-disposition",xmlName:"x-ms-blob-content-disposition",type:{name:"String"}}},CH={parameterPath:"comp",mapper:{defaultValue:"immutabilityPolicies",isConstant:!0,serializedName:"comp",type:{name:"String"}}},ua={parameterPath:["options","immutabilityPolicyExpiry"],mapper:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}}},da={parameterPath:["options","immutabilityPolicyMode"],mapper:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}},fme={parameterPath:"comp",mapper:{defaultValue:"legalhold",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Ame={parameterPath:"legalHold",mapper:{serializedName:"x-ms-legal-hold",required:!0,xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},Wr={parameterPath:["options","encryptionScope"],mapper:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}}},hme={parameterPath:"comp",mapper:{defaultValue:"snapshot",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Zl={parameterPath:["options","tier"],mapper:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}}},IH={parameterPath:["options","rehydratePriority"],mapper:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}}},Ic={parameterPath:["options","sourceModifiedAccessConditions","sourceIfModifiedSince"],mapper:{serializedName:"x-ms-source-if-modified-since",xmlName:"x-ms-source-if-modified-since",type:{name:"DateTimeRfc1123"}}},xc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfUnmodifiedSince"],mapper:{serializedName:"x-ms-source-if-unmodified-since",xmlName:"x-ms-source-if-unmodified-since",type:{name:"DateTimeRfc1123"}}},wc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfMatch"],mapper:{serializedName:"x-ms-source-if-match",xmlName:"x-ms-source-if-match",type:{name:"String"}}},bc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfNoneMatch"],mapper:{serializedName:"x-ms-source-if-none-match",xmlName:"x-ms-source-if-none-match",type:{name:"String"}}},jR={parameterPath:["options","sourceModifiedAccessConditions","sourceIfTags"],mapper:{serializedName:"x-ms-source-if-tags",xmlName:"x-ms-source-if-tags",type:{name:"String"}}},Tm={parameterPath:"copySource",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},pa={parameterPath:["options","blobTagsString"],mapper:{serializedName:"x-ms-tags",xmlName:"x-ms-tags",type:{name:"String"}}},gme={parameterPath:["options","sealBlob"],mapper:{serializedName:"x-ms-seal-blob",xmlName:"x-ms-seal-blob",type:{name:"Boolean"}}},Sc={parameterPath:["options","legalHold"],mapper:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},yme={parameterPath:"xMsRequiresSync",mapper:{defaultValue:"true",isConstant:!0,serializedName:"x-ms-requires-sync",type:{name:"String"}}},eu={parameterPath:["options","sourceContentMD5"],mapper:{serializedName:"x-ms-source-content-md5",xmlName:"x-ms-source-content-md5",type:{name:"ByteArray"}}},tu={parameterPath:["options","copySourceAuthorization"],mapper:{serializedName:"x-ms-copy-source-authorization",xmlName:"x-ms-copy-source-authorization",type:{name:"String"}}},JR={parameterPath:["options","copySourceTags"],mapper:{serializedName:"x-ms-copy-source-tag-option",xmlName:"x-ms-copy-source-tag-option",type:{name:"Enum",allowedValues:["REPLACE","COPY"]}}},ru={parameterPath:["options","fileRequestIntent"],mapper:{serializedName:"x-ms-file-request-intent",xmlName:"x-ms-file-request-intent",type:{name:"String"}}},Eme={parameterPath:"comp",mapper:{defaultValue:"copy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Cme={parameterPath:"copyActionAbortConstant",mapper:{defaultValue:"abort",isConstant:!0,serializedName:"x-ms-copy-action",type:{name:"String"}}},Ime={parameterPath:"copyId",mapper:{serializedName:"copyid",required:!0,xmlName:"copyid",type:{name:"String"}}},xme={parameterPath:"comp",mapper:{defaultValue:"tier",isConstant:!0,serializedName:"comp",type:{name:"String"}}},wme={parameterPath:"tier",mapper:{serializedName:"x-ms-access-tier",required:!0,xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}}},bme={parameterPath:["options","queryRequest"],mapper:$q},Sme={parameterPath:"comp",mapper:{defaultValue:"query",isConstant:!0,serializedName:"comp",type:{name:"String"}}},xH={parameterPath:"comp",mapper:{defaultValue:"tags",isConstant:!0,serializedName:"comp",type:{name:"String"}}},wH={parameterPath:["options","blobModifiedAccessConditions","ifModifiedSince"],mapper:{serializedName:"x-ms-blob-if-modified-since",xmlName:"x-ms-blob-if-modified-since",type:{name:"DateTimeRfc1123"}}},bH={parameterPath:["options","blobModifiedAccessConditions","ifUnmodifiedSince"],mapper:{serializedName:"x-ms-blob-if-unmodified-since",xmlName:"x-ms-blob-if-unmodified-since",type:{name:"DateTimeRfc1123"}}},SH={parameterPath:["options","blobModifiedAccessConditions","ifMatch"],mapper:{serializedName:"x-ms-blob-if-match",xmlName:"x-ms-blob-if-match",type:{name:"String"}}},BH={parameterPath:["options","blobModifiedAccessConditions","ifNoneMatch"],mapper:{serializedName:"x-ms-blob-if-none-match",xmlName:"x-ms-blob-if-none-match",type:{name:"String"}}},Bme={parameterPath:["options","tags"],mapper:rI},Ii={parameterPath:["options","transactionalContentMD5"],mapper:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}}},Bc={parameterPath:["options","transactionalContentCrc64"],mapper:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}},Rme={parameterPath:"blobType",mapper:{defaultValue:"PageBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},RH={parameterPath:"blobContentLength",mapper:{serializedName:"x-ms-blob-content-length",required:!0,xmlName:"x-ms-blob-content-length",type:{name:"Number"}}},NH={parameterPath:["options","blobSequenceNumber"],mapper:{defaultValue:0,serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}}},Pm={parameterPath:["options","contentType"],mapper:{defaultValue:"application/octet-stream",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},vm={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},_m={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},KR={parameterPath:"comp",mapper:{defaultValue:"page",isConstant:!0,serializedName:"comp",type:{name:"String"}}},TH={parameterPath:"pageWrite",mapper:{defaultValue:"update",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},XR={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThanOrEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-le",xmlName:"x-ms-if-sequence-number-le",type:{name:"Number"}}},ZR={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThan"],mapper:{serializedName:"x-ms-if-sequence-number-lt",xmlName:"x-ms-if-sequence-number-lt",type:{name:"Number"}}},eN={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-eq",xmlName:"x-ms-if-sequence-number-eq",type:{name:"Number"}}},Nme={parameterPath:"pageWrite",mapper:{defaultValue:"clear",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},_h={parameterPath:"sourceUrl",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},Tme={parameterPath:"sourceRange",mapper:{serializedName:"x-ms-source-range",required:!0,xmlName:"x-ms-source-range",type:{name:"String"}}},Qh={parameterPath:["options","sourceContentCrc64"],mapper:{serializedName:"x-ms-source-content-crc64",xmlName:"x-ms-source-content-crc64",type:{name:"ByteArray"}}},Pme={parameterPath:"range",mapper:{serializedName:"x-ms-range",required:!0,xmlName:"x-ms-range",type:{name:"String"}}},PH={parameterPath:"comp",mapper:{defaultValue:"pagelist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},vme={parameterPath:["options","prevsnapshot"],mapper:{serializedName:"prevsnapshot",xmlName:"prevsnapshot",type:{name:"String"}}},_me={parameterPath:["options","prevSnapshotUrl"],mapper:{serializedName:"x-ms-previous-snapshot-url",xmlName:"x-ms-previous-snapshot-url",type:{name:"String"}}},Qme={parameterPath:"sequenceNumberAction",mapper:{serializedName:"x-ms-sequence-number-action",required:!0,xmlName:"x-ms-sequence-number-action",type:{name:"Enum",allowedValues:["max","update","increment"]}}},Dme={parameterPath:"comp",mapper:{defaultValue:"incrementalcopy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},kme={parameterPath:"blobType",mapper:{defaultValue:"AppendBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},vH={parameterPath:"comp",mapper:{defaultValue:"appendblock",isConstant:!0,serializedName:"comp",type:{name:"String"}}},_H={parameterPath:["options","appendPositionAccessConditions","maxSize"],mapper:{serializedName:"x-ms-blob-condition-maxsize",xmlName:"x-ms-blob-condition-maxsize",type:{name:"Number"}}},tN={parameterPath:["options","appendPositionAccessConditions","appendPosition"],mapper:{serializedName:"x-ms-blob-condition-appendpos",xmlName:"x-ms-blob-condition-appendpos",type:{name:"Number"}}},rN={parameterPath:["options","sourceRange"],mapper:{serializedName:"x-ms-source-range",xmlName:"x-ms-source-range",type:{name:"String"}}},Lme={parameterPath:"comp",mapper:{defaultValue:"seal",isConstant:!0,serializedName:"comp",type:{name:"String"}}},QH={parameterPath:"blobType",mapper:{defaultValue:"BlockBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},Ome={parameterPath:["options","copySourceBlobProperties"],mapper:{serializedName:"x-ms-copy-source-blob-properties",xmlName:"x-ms-copy-source-blob-properties",type:{name:"Boolean"}}},DH={parameterPath:"comp",mapper:{defaultValue:"block",isConstant:!0,serializedName:"comp",type:{name:"String"}}},kH={parameterPath:"blockId",mapper:{serializedName:"blockid",required:!0,xmlName:"blockid",type:{name:"String"}}},Mme={parameterPath:"blocks",mapper:Uq},LH={parameterPath:"comp",mapper:{defaultValue:"blocklist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Fme={parameterPath:"listType",mapper:{defaultValue:"committed",serializedName:"blocklisttype",required:!0,xmlName:"blocklisttype",type:{name:"Enum",allowedValues:["committed","uncommitted","all"]}}};var nN=class{client;constructor(e){this.client=e}setProperties(e,r){return this.client.sendOperationRequest({blobServiceProperties:e,options:r},urt)}getProperties(e){return this.client.sendOperationRequest({options:e},drt)}getStatistics(e){return this.client.sendOperationRequest({options:e},prt)}listContainersSegment(e){return this.client.sendOperationRequest({options:e},mrt)}getUserDelegationKey(e,r){return this.client.sendOperationRequest({keyInfo:e,options:r},frt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},Art)}submitBatch(e,r,n,s){return this.client.sendOperationRequest({contentLength:e,multipartContentType:r,body:n,options:s},hrt)}filterBlobs(e){return this.client.sendOperationRequest({options:e},grt)}},Nd=ko(Oo,!0),urt={path:"/",httpMethod:"PUT",responses:{202:{headersMapper:Gq},default:{bodyMapper:J,headersMapper:Hq}},requestBody:Ype,queryParameters:[nI,Ei,Z],urlParameters:[X],headerParameters:[dc,yi,ee,te],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Nd},drt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:eI,headersMapper:zq},default:{bodyMapper:J,headersMapper:Vq}},queryParameters:[nI,Ei,Z],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:Nd},prt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:Dq,headersMapper:Yq},default:{bodyMapper:J,headersMapper:Wq}},queryParameters:[nI,Z,Wpe],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:Nd},mrt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:kq,headersMapper:jq},default:{bodyMapper:J,headersMapper:Jq}},queryParameters:[Z,sI,oI,pc,mc,jpe],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:Nd},frt={path:"/",httpMethod:"POST",responses:{200:{bodyMapper:Oq,headersMapper:Kq},default:{bodyMapper:J,headersMapper:Xq}},requestBody:Jpe,queryParameters:[nI,Z,Kpe],urlParameters:[X],headerParameters:[dc,yi,ee,te],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Nd},Art={path:"/",httpMethod:"GET",responses:{200:{headersMapper:Zq},default:{bodyMapper:J,headersMapper:e$}},queryParameters:[Ei,Z,vh],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:Nd},hrt={path:"/",httpMethod:"POST",responses:{202:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:t$},default:{bodyMapper:J,headersMapper:r$}},requestBody:QR,queryParameters:[Z,DR],urlParameters:[X],headerParameters:[yi,ee,te,hn,kR],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Nd},grt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:tI,headersMapper:n$},default:{bodyMapper:J,headersMapper:s$}},queryParameters:[Z,pc,mc,LR,OR],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:Nd};var sN=class{client;constructor(e){this.client=e}create(e){return this.client.sendOperationRequest({options:e},yrt)}getProperties(e){return this.client.sendOperationRequest({options:e},Ert)}delete(e){return this.client.sendOperationRequest({options:e},Crt)}setMetadata(e){return this.client.sendOperationRequest({options:e},Irt)}getAccessPolicy(e){return this.client.sendOperationRequest({options:e},xrt)}setAccessPolicy(e){return this.client.sendOperationRequest({options:e},wrt)}restore(e){return this.client.sendOperationRequest({options:e},brt)}rename(e,r){return this.client.sendOperationRequest({sourceContainerName:e,options:r},Srt)}submitBatch(e,r,n,s){return this.client.sendOperationRequest({contentLength:e,multipartContentType:r,body:n,options:s},Brt)}filterBlobs(e){return this.client.sendOperationRequest({options:e},Rrt)}acquireLease(e){return this.client.sendOperationRequest({options:e},Nrt)}releaseLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},Trt)}renewLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},Prt)}breakLease(e){return this.client.sendOperationRequest({options:e},vrt)}changeLease(e,r,n){return this.client.sendOperationRequest({leaseId:e,proposedLeaseId:r,options:n},_rt)}listBlobFlatSegment(e){return this.client.sendOperationRequest({options:e},Qrt)}listBlobHierarchySegment(e,r){return this.client.sendOperationRequest({delimiter:e,options:r},Drt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},krt)}},yn=ko(Oo,!0),yrt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:o$},default:{bodyMapper:J,headersMapper:i$}},queryParameters:[Z,gn],urlParameters:[X],headerParameters:[ee,te,pe,Vn,hH,Xpe,Zpe],isXML:!0,serializer:yn},Ert={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:a$},default:{bodyMapper:J,headersMapper:c$}},queryParameters:[Z,gn],urlParameters:[X],headerParameters:[ee,te,pe,ot],isXML:!0,serializer:yn},Crt={path:"/{containerName}",httpMethod:"DELETE",responses:{202:{headersMapper:l$},default:{bodyMapper:J,headersMapper:u$}},queryParameters:[Z,gn],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et],isXML:!0,serializer:yn},Irt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:d$},default:{bodyMapper:J,headersMapper:p$}},queryParameters:[Z,gn,MR],urlParameters:[X],headerParameters:[ee,te,pe,Vn,ot,Ze],isXML:!0,serializer:yn},xrt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}},serializedName:"SignedIdentifiers",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier"},headersMapper:m$},default:{bodyMapper:J,headersMapper:f$}},queryParameters:[Z,gn,gH],urlParameters:[X],headerParameters:[ee,te,pe,ot],isXML:!0,serializer:yn},wrt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:A$},default:{bodyMapper:J,headersMapper:h$}},requestBody:eme,queryParameters:[Z,gn,gH],urlParameters:[X],headerParameters:[dc,yi,ee,te,hH,ot,Ze,et],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:yn},brt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:g$},default:{bodyMapper:J,headersMapper:y$}},queryParameters:[Z,gn,FR],urlParameters:[X],headerParameters:[ee,te,pe,tme,rme],isXML:!0,serializer:yn},Srt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:E$},default:{bodyMapper:J,headersMapper:C$}},queryParameters:[Z,gn,nme],urlParameters:[X],headerParameters:[ee,te,pe,sme,ome],isXML:!0,serializer:yn},Brt={path:"/{containerName}",httpMethod:"POST",responses:{202:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:I$},default:{bodyMapper:J,headersMapper:x$}},requestBody:QR,queryParameters:[Z,DR,gn],urlParameters:[X],headerParameters:[yi,ee,te,hn,kR],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:yn},Rrt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:tI,headersMapper:w$},default:{bodyMapper:J,headersMapper:b$}},queryParameters:[Z,pc,mc,LR,OR,gn],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:yn},Nrt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:S$},default:{bodyMapper:J,headersMapper:B$}},queryParameters:[Z,gn,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,UR,qR,$R],isXML:!0,serializer:yn},Trt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:R$},default:{bodyMapper:J,headersMapper:N$}},queryParameters:[Z,gn,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,GR,Rd],isXML:!0,serializer:yn},Prt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:T$},default:{bodyMapper:J,headersMapper:P$}},queryParameters:[Z,gn,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,Rd,HR],isXML:!0,serializer:yn},vrt={path:"/{containerName}",httpMethod:"PUT",responses:{202:{headersMapper:v$},default:{bodyMapper:J,headersMapper:_$}},queryParameters:[Z,gn,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,zR,VR],isXML:!0,serializer:yn},_rt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:Q$},default:{bodyMapper:J,headersMapper:D$}},queryParameters:[Z,gn,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,Rd,YR,WR],isXML:!0,serializer:yn},Qrt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:Mq,headersMapper:k$},default:{bodyMapper:J,headersMapper:L$}},queryParameters:[Z,sI,oI,pc,mc,gn,yH,EH],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:yn},Drt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:Fq,headersMapper:O$},default:{bodyMapper:J,headersMapper:M$}},queryParameters:[Z,sI,oI,pc,mc,gn,yH,EH,ime],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:yn},krt={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:F$},default:{bodyMapper:J,headersMapper:U$}},queryParameters:[Ei,Z,vh],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:yn};var oN=class{client;constructor(e){this.client=e}download(e){return this.client.sendOperationRequest({options:e},Lrt)}getProperties(e){return this.client.sendOperationRequest({options:e},Ort)}delete(e){return this.client.sendOperationRequest({options:e},Mrt)}undelete(e){return this.client.sendOperationRequest({options:e},Frt)}setExpiry(e,r){return this.client.sendOperationRequest({expiryOptions:e,options:r},Urt)}setHttpHeaders(e){return this.client.sendOperationRequest({options:e},qrt)}setImmutabilityPolicy(e){return this.client.sendOperationRequest({options:e},$rt)}deleteImmutabilityPolicy(e){return this.client.sendOperationRequest({options:e},Grt)}setLegalHold(e,r){return this.client.sendOperationRequest({legalHold:e,options:r},Hrt)}setMetadata(e){return this.client.sendOperationRequest({options:e},zrt)}acquireLease(e){return this.client.sendOperationRequest({options:e},Vrt)}releaseLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},Yrt)}renewLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},Wrt)}changeLease(e,r,n){return this.client.sendOperationRequest({leaseId:e,proposedLeaseId:r,options:n},jrt)}breakLease(e){return this.client.sendOperationRequest({options:e},Jrt)}createSnapshot(e){return this.client.sendOperationRequest({options:e},Krt)}startCopyFromURL(e,r){return this.client.sendOperationRequest({copySource:e,options:r},Xrt)}copyFromURL(e,r){return this.client.sendOperationRequest({copySource:e,options:r},Zrt)}abortCopyFromURL(e,r){return this.client.sendOperationRequest({copyId:e,options:r},ent)}setTier(e,r){return this.client.sendOperationRequest({tier:e,options:r},tnt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},rnt)}query(e){return this.client.sendOperationRequest({options:e},nnt)}getTags(e){return this.client.sendOperationRequest({options:e},snt)}setTags(e){return this.client.sendOperationRequest({options:e},ont)}},rr=ko(Oo,!0),Lrt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:PR},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:PR},default:{bodyMapper:J,headersMapper:q$}},queryParameters:[Z,Is,fc],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,Nm,ame,cme,xr,wr,br,ht,gt,dt],isXML:!0,serializer:rr},Ort={path:"/{containerName}/{blob}",httpMethod:"HEAD",responses:{200:{headersMapper:$$},default:{bodyMapper:J,headersMapper:G$}},queryParameters:[Z,Is,fc],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,xr,wr,br,ht,gt,dt],isXML:!0,serializer:rr},Mrt={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{202:{headersMapper:H$},default:{bodyMapper:J,headersMapper:z$}},queryParameters:[Z,Is,fc,ume],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,ht,gt,dt,lme],isXML:!0,serializer:rr},Frt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:V$},default:{bodyMapper:J,headersMapper:Y$}},queryParameters:[Z,FR],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:rr},Urt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:W$},default:{bodyMapper:J,headersMapper:j$}},queryParameters:[Z,dme],urlParameters:[X],headerParameters:[ee,te,pe,pme,mme],isXML:!0,serializer:rr},qrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:J$},default:{bodyMapper:J,headersMapper:K$}},queryParameters:[Ei,Z],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc],isXML:!0,serializer:rr},$rt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:X$},default:{bodyMapper:J,headersMapper:Z$}},queryParameters:[Z,Is,fc,CH],urlParameters:[X],headerParameters:[ee,te,pe,et,ua,da],isXML:!0,serializer:rr},Grt={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{200:{headersMapper:eG},default:{bodyMapper:J,headersMapper:tG}},queryParameters:[Z,Is,fc,CH],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:rr},Hrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:rG},default:{bodyMapper:J,headersMapper:nG}},queryParameters:[Z,Is,fc,fme],urlParameters:[X],headerParameters:[ee,te,pe,Ame],isXML:!0,serializer:rr},zrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:sG},default:{bodyMapper:J,headersMapper:oG}},queryParameters:[Z,MR],urlParameters:[X],headerParameters:[ee,te,pe,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr],isXML:!0,serializer:rr},Vrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:iG},default:{bodyMapper:J,headersMapper:aG}},queryParameters:[Z,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,UR,qR,$R,ht,gt,dt],isXML:!0,serializer:rr},Yrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:cG},default:{bodyMapper:J,headersMapper:lG}},queryParameters:[Z,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,GR,Rd,ht,gt,dt],isXML:!0,serializer:rr},Wrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:uG},default:{bodyMapper:J,headersMapper:dG}},queryParameters:[Z,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,Rd,HR,ht,gt,dt],isXML:!0,serializer:rr},jrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:pG},default:{bodyMapper:J,headersMapper:mG}},queryParameters:[Z,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,Rd,YR,WR,ht,gt,dt],isXML:!0,serializer:rr},Jrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:fG},default:{bodyMapper:J,headersMapper:AG}},queryParameters:[Z,Ci],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,zR,VR,ht,gt,dt],isXML:!0,serializer:rr},Krt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:hG},default:{bodyMapper:J,headersMapper:gG}},queryParameters:[Z,hme],urlParameters:[X],headerParameters:[ee,te,pe,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr],isXML:!0,serializer:rr},Xrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:yG},default:{bodyMapper:J,headersMapper:EG}},queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,pe,Vn,ot,Ze,et,ht,gt,dt,ua,da,Zl,IH,Ic,xc,wc,bc,jR,Tm,pa,gme,Sc],isXML:!0,serializer:rr},Zrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:CG},default:{bodyMapper:J,headersMapper:IG}},queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,pe,Vn,ot,Ze,et,ht,gt,dt,ua,da,Wr,Zl,Ic,xc,wc,bc,Tm,pa,Sc,yme,eu,tu,JR,ru],isXML:!0,serializer:rr},ent={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:xG},default:{bodyMapper:J,headersMapper:wG}},queryParameters:[Z,Eme,Ime],urlParameters:[X],headerParameters:[ee,te,pe,ot,Cme],isXML:!0,serializer:rr},tnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:vR},202:{headersMapper:vR},default:{bodyMapper:J,headersMapper:bG}},queryParameters:[Z,Is,fc,xme],urlParameters:[X],headerParameters:[ee,te,pe,ot,dt,IH,wme],isXML:!0,serializer:rr},rnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{headersMapper:SG},default:{bodyMapper:J,headersMapper:BG}},queryParameters:[Ei,Z,vh],urlParameters:[X],headerParameters:[ee,te,pe],isXML:!0,serializer:rr},nnt={path:"/{containerName}/{blob}",httpMethod:"POST",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:_R},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:_R},default:{bodyMapper:J,headersMapper:RG}},requestBody:bme,queryParameters:[Z,Is,Sme],urlParameters:[X],headerParameters:[dc,yi,ee,te,ot,Ze,et,xr,wr,br,ht,gt,dt],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:rr},snt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:rI,headersMapper:NG},default:{bodyMapper:J,headersMapper:TG}},queryParameters:[Z,Is,fc,xH],urlParameters:[X],headerParameters:[ee,te,pe,ot,dt,wH,bH,SH,BH],isXML:!0,serializer:rr},ont={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:PG},default:{bodyMapper:J,headersMapper:vG}},requestBody:Bme,queryParameters:[Z,fc,xH],urlParameters:[X],headerParameters:[dc,yi,ee,te,ot,dt,wH,bH,SH,BH,Ii,Bc],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:rr};var iN=class{client;constructor(e){this.client=e}create(e,r,n){return this.client.sendOperationRequest({contentLength:e,blobContentLength:r,options:n},int)}uploadPages(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},ant)}clearPages(e,r){return this.client.sendOperationRequest({contentLength:e,options:r},cnt)}uploadPagesFromURL(e,r,n,s,o){return this.client.sendOperationRequest({sourceUrl:e,sourceRange:r,contentLength:n,range:s,options:o},lnt)}getPageRanges(e){return this.client.sendOperationRequest({options:e},unt)}getPageRangesDiff(e){return this.client.sendOperationRequest({options:e},dnt)}resize(e,r){return this.client.sendOperationRequest({blobContentLength:e,options:r},pnt)}updateSequenceNumber(e,r){return this.client.sendOperationRequest({sequenceNumberAction:e,options:r},mnt)}copyIncremental(e,r){return this.client.sendOperationRequest({copySource:e,options:r},fnt)}},nu=ko(Oo,!0),int={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:_G},default:{bodyMapper:J,headersMapper:QG}},queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,pe,hn,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc,ua,da,Wr,Zl,pa,Sc,Rme,RH,NH],isXML:!0,serializer:nu},ant={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:DG},default:{bodyMapper:J,headersMapper:kG}},requestBody:vm,queryParameters:[Z,KR],urlParameters:[X],headerParameters:[ee,te,hn,ot,Ze,et,Nm,xr,wr,br,ht,gt,dt,Wr,Ii,Bc,Pm,_m,TH,XR,ZR,eN],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:nu},cnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:LG},default:{bodyMapper:J,headersMapper:OG}},queryParameters:[Z,KR],urlParameters:[X],headerParameters:[ee,te,pe,hn,ot,Ze,et,Nm,xr,wr,br,ht,gt,dt,Wr,XR,ZR,eN,Nme],isXML:!0,serializer:nu},lnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:MG},default:{bodyMapper:J,headersMapper:FG}},queryParameters:[Z,KR],urlParameters:[X],headerParameters:[ee,te,pe,hn,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr,Ic,xc,wc,bc,eu,tu,ru,TH,XR,ZR,eN,_h,Tme,Qh,Pme],isXML:!0,serializer:nu},unt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:TR,headersMapper:UG},default:{bodyMapper:J,headersMapper:qG}},queryParameters:[Z,pc,mc,Is,PH],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,Nm,ht,gt,dt],isXML:!0,serializer:nu},dnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:TR,headersMapper:$G},default:{bodyMapper:J,headersMapper:GG}},queryParameters:[Z,pc,mc,Is,PH,vme],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,Nm,ht,gt,dt,_me],isXML:!0,serializer:nu},pnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:HG},default:{bodyMapper:J,headersMapper:zG}},queryParameters:[Ei,Z],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr,RH],isXML:!0,serializer:nu},mnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:VG},default:{bodyMapper:J,headersMapper:YG}},queryParameters:[Ei,Z],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,ht,gt,dt,NH,Qme],isXML:!0,serializer:nu},fnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:WG},default:{bodyMapper:J,headersMapper:jG}},queryParameters:[Z,Dme],urlParameters:[X],headerParameters:[ee,te,pe,Ze,et,ht,gt,dt,Tm],isXML:!0,serializer:nu};var aN=class{client;constructor(e){this.client=e}create(e,r){return this.client.sendOperationRequest({contentLength:e,options:r},Ant)}appendBlock(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},hnt)}appendBlockFromUrl(e,r,n){return this.client.sendOperationRequest({sourceUrl:e,contentLength:r,options:n},gnt)}seal(e){return this.client.sendOperationRequest({options:e},ynt)}},cN=ko(Oo,!0),Ant={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:JG},default:{bodyMapper:J,headersMapper:KG}},queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,pe,hn,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc,ua,da,Wr,pa,Sc,kme],isXML:!0,serializer:cN},hnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:XG},default:{bodyMapper:J,headersMapper:ZG}},requestBody:vm,queryParameters:[Z,vH],urlParameters:[X],headerParameters:[ee,te,hn,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr,Ii,Bc,Pm,_m,_H,tN],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:cN},gnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:eH},default:{bodyMapper:J,headersMapper:tH}},queryParameters:[Z,vH],urlParameters:[X],headerParameters:[ee,te,pe,hn,ot,Ze,et,xr,wr,br,ht,gt,dt,Wr,Ic,xc,wc,bc,eu,tu,ru,Ii,_h,Qh,_H,tN,rN],isXML:!0,serializer:cN},ynt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:rH},default:{bodyMapper:J,headersMapper:nH}},queryParameters:[Z,Lme],urlParameters:[X],headerParameters:[ee,te,pe,ot,Ze,et,ht,gt,tN],isXML:!0,serializer:cN};var lN=class{client;constructor(e){this.client=e}upload(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},Ent)}putBlobFromUrl(e,r,n){return this.client.sendOperationRequest({contentLength:e,copySource:r,options:n},Cnt)}stageBlock(e,r,n,s){return this.client.sendOperationRequest({blockId:e,contentLength:r,body:n,options:s},Int)}stageBlockFromURL(e,r,n,s){return this.client.sendOperationRequest({blockId:e,contentLength:r,sourceUrl:n,options:s},xnt)}commitBlockList(e,r){return this.client.sendOperationRequest({blocks:e,options:r},wnt)}getBlockList(e,r){return this.client.sendOperationRequest({listType:e,options:r},bnt)}},kh=ko(Oo,!0),Ent={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:sH},default:{bodyMapper:J,headersMapper:oH}},requestBody:vm,queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,hn,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc,ua,da,Wr,Zl,pa,Sc,Ii,Bc,Pm,_m,QH],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:kh},Cnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:iH},default:{bodyMapper:J,headersMapper:aH}},queryParameters:[Z],urlParameters:[X],headerParameters:[ee,te,pe,hn,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc,Wr,Zl,Ic,xc,wc,bc,jR,Tm,pa,eu,tu,JR,ru,Ii,QH,Ome],isXML:!0,serializer:kh},Int={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:cH},default:{bodyMapper:J,headersMapper:lH}},requestBody:vm,queryParameters:[Z,DH,kH],urlParameters:[X],headerParameters:[ee,te,hn,ot,xr,wr,br,Wr,Ii,Bc,Pm,_m],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:kh},xnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:uH},default:{bodyMapper:J,headersMapper:dH}},queryParameters:[Z,DH,kH],urlParameters:[X],headerParameters:[ee,te,pe,hn,ot,xr,wr,br,Wr,Ic,xc,wc,bc,eu,tu,ru,_h,Qh,rN],isXML:!0,serializer:kh},wnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:pH},default:{bodyMapper:J,headersMapper:mH}},requestBody:Mme,queryParameters:[Z,LH],urlParameters:[X],headerParameters:[dc,yi,ee,te,Vn,ot,Ze,et,xr,wr,br,ht,gt,dt,Ac,hc,gc,yc,Ec,Cc,ua,da,Wr,Zl,pa,Sc,Ii,Bc],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:kh},bnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:qq,headersMapper:fH},default:{bodyMapper:J,headersMapper:AH}},queryParameters:[Z,Is,LH,Fme],urlParameters:[X],headerParameters:[ee,te,pe,ot,dt],isXML:!0,serializer:kh};var iI=class extends UC{url;version;constructor(e,r){if(e===void 0)throw new Error("'url' cannot be null");r||(r={});let n={requestContentType:"application/json; charset=utf-8"},s="azsdk-js-azure-storage-blob/12.30.0",o=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${s}`:`${s}`,i={...n,...r,userAgentOptions:{userAgentPrefix:o},endpoint:r.endpoint??r.baseUri??"{url}"};super(i),this.url=e,this.version=r.version||"2026-02-06",this.service=new nN(this),this.container=new sN(this),this.blob=new oN(this),this.pageBlob=new iN(this),this.appendBlob=new aN(this),this.blockBlob=new lN(this)}service;container;blob;pageBlob;appendBlob;blockBlob};var aI=class extends iI{async sendOperationRequest(e,r){let n={...r};return(n.path==="/{containerName}"||n.path==="/{containerName}/{blob}")&&(n.path=""),super.sendOperationRequest(e,n)}};function qme(t){let e=new URL(t),r=e.pathname;return r=r||"/",r=Bnt(r),e.pathname=r,e.toString()}function Snt(t){let e="";if(t.search("DevelopmentStorageProxyUri=")!==-1){let r=t.split(";");for(let n of r)n.trim().startsWith("DevelopmentStorageProxyUri=")&&(e=n.trim().match("DevelopmentStorageProxyUri=(.*)")[1])}return e}function Qm(t,e){let r=t.split(";");for(let n of r)if(n.trim().startsWith(e))return n.trim().match(e+"=(.*)")[1];return""}function Dm(t){let e="";t.startsWith("UseDevelopmentStorage=true")&&(e=Snt(t),t=Lpe);let r=Qm(t,"BlobEndpoint");if(r=r.endsWith("/")?r.slice(0,-1):r,t.search("DefaultEndpointsProtocol=")!==-1&&t.search("AccountKey=")!==-1){let n="",s="",o=Buffer.from("accountKey","base64"),i="";if(s=Qm(t,"AccountName"),o=Buffer.from(Qm(t,"AccountKey"),"base64"),!r){n=Qm(t,"DefaultEndpointsProtocol");let a=n.toLowerCase();if(a!=="https"&&a!=="http")throw new Error("Invalid DefaultEndpointsProtocol in the provided Connection String. Expecting 'https' or 'http'");if(i=Qm(t,"EndpointSuffix"),!i)throw new Error("Invalid EndpointSuffix in the provided Connection String");r=`${n}://${s}.blob.${i}`}if(s){if(o.length===0)throw new Error("Invalid AccountKey in the provided Connection String")}else throw new Error("Invalid AccountName in the provided Connection String");return{kind:"AccountConnString",url:r,accountName:s,accountKey:o,proxyUri:e}}else{let n=Qm(t,"SharedAccessSignature"),s=Qm(t,"AccountName");if(s||(s=UH(r)),r){if(!n)throw new Error("Invalid SharedAccessSignature in the provided SAS Connection String")}else throw new Error("Invalid BlobEndpoint in the provided SAS Connection String");return n.startsWith("?")&&(n=n.substring(1)),{kind:"SASConnString",url:r,accountName:s,accountSas:n}}}function Bnt(t){return encodeURIComponent(t).replace(/%2F/g,"/").replace(/'/g,"%27").replace(/\+/g,"%20").replace(/%25/g,"%")}function sn(t,e){let r=new URL(t),n=r.pathname;return n=n?n.endsWith("/")?`${n}${e}`:`${n}/${e}`:e,r.pathname=n,r.toString()}function Lh(t,e,r){let n=new URL(t),s=encodeURIComponent(e),o=r?encodeURIComponent(r):void 0,i=n.search===""?"?":n.search,a=[];for(let c of i.slice(1).split("&"))if(c){let[l]=c.split("=",2);l!==s&&a.push(c)}return o&&a.push(`${s}=${o}`),n.search=a.length?`?${a.join("&")}`:"",n.toString()}function OH(t,e){return new URL(t).searchParams.get(e)??void 0}function $me(t){try{let e=new URL(t);return e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol}catch{return}}function cI(t,e){let r=new URL(t),n=r.search;return n?n+="&"+e:n=e,r.search=n,r.toString()}function Rt(t,e=!0){let r=t.toISOString();return e?r.substring(0,r.length-1)+"0000Z":r.substring(0,r.length-5)+"Z"}function Rnt(t){return Bt?Buffer.from(t).toString("base64"):btoa(t)}function MH(t,e){t.length>42&&(t=t.slice(0,42));let o=t+Nnt(e.toString(),48-t.length,"0");return Rnt(o)}function Nnt(t,e,r=" "){return String.prototype.padStart?t.padStart(e,r):(r=r||" ",t.length>e?t:(e=e-t.length,e>r.length&&(r+=r.repeat(e/r.length)),r.slice(0,e)+t))}function FH(t,e){return t.toLocaleLowerCase()===e.toLocaleLowerCase()}function UH(t){let e=new URL(t),r;try{return e.hostname.split(".")[1]==="blob"?r=e.hostname.split(".")[0]:uN(e)?r=e.pathname.split("/")[1]:r="",r}catch{throw new Error("Unable to extract accountName with provided information.")}}function uN(t){let e=t.host;return/^.*:.*:.*$|^(localhost|host.docker.internal)(:[0-9]+)?$|^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])){3}(:[0-9]+)?$/.test(e)||!!t.port&&qpe.includes(t.port)}function Td(t){if(t===void 0)return;let e=[];for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];e.push(`${encodeURIComponent(r)}=${encodeURIComponent(n)}`)}return e.join("&")}function Gme(t){if(t===void 0)return;let e={blobTagSet:[]};for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];e.blobTagSet.push({key:r,value:n})}return e}function dN(t){if(t===void 0)return;let e={};for(let r of t.blobTagSet)e[r.key]=r.value;return e}function qH(t){if(t!==void 0)switch(t.kind){case"csv":return{format:{type:"delimited",delimitedTextConfiguration:{columnSeparator:t.columnSeparator||",",fieldQuote:t.fieldQuote||"",recordSeparator:t.recordSeparator,escapeChar:t.escapeCharacter||"",headersPresent:t.hasHeaders||!1}}};case"json":return{format:{type:"json",jsonTextConfiguration:{recordSeparator:t.recordSeparator}}};case"arrow":return{format:{type:"arrow",arrowConfiguration:{schema:t.schema}}};case"parquet":return{format:{type:"parquet"}};default:throw Error("Invalid BlobQueryTextConfiguration.")}}function pN(t){if(!t||"policy-id"in t)return;let e=[];for(let r in t){let n=r.split("_"),s="or-";n[0].startsWith(s)&&(n[0]=n[0].substring(s.length));let o={ruleId:n[1],replicationStatus:t[r]},i=e.findIndex(a=>a.policyId===n[0]);i>-1?e[i].rules.push(o):e.push({policyId:n[0],rules:[o]})}return e}function Oh(t){return t?t.scheme+" "+t.value:void 0}function*$H(t){let e=[],r=[];t.pageRange&&(e=t.pageRange),t.clearRange&&(r=t.clearRange);let n=0,s=0;for(;n0&&n.length>0&&e.push(`${r}=${n}`))}};function lI(t,e,r){return uI(t,e,r).sasQueryParameters}function uI(t,e,r){let n=t.version?t.version:RR,s=e instanceof Ir?e:void 0,o;if(s===void 0&&r!==void 0&&(o=new SR(r,e)),s===void 0&&o===void 0)throw TypeError("Invalid sharedKeyCredential, userDelegationKey or accountName.");if(n>="2020-12-06")return s!==void 0?vnt(t,s):n>="2025-07-05"?knt(t,o):Dnt(t,o);if(n>="2018-11-09")return s!==void 0?Pnt(t,s):n>="2020-02-10"?Qnt(t,o):_nt(t,o);if(n>="2015-04-05"){if(s!==void 0)return Tnt(t,s);throw new RangeError("'version' must be >= '2018-11-09' when generating user delegation SAS using user delegation key.")}throw new RangeError("'version' must be >= '2015-04-05'.")}function Tnt(t,e){if(t=Lm(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c";t.blobName&&(r="b");let n;t.permissions&&(t.blobName?n=Rc.parse(t.permissions.toString()).toString():n=Nc.parse(t.permissions.toString()).toString());let s=[n||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` -`),o=e.computeHMACSHA256(s);return{sasQueryParameters:new fa(t.version,o,n,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:s}}function Pnt(t,e){if(t=Lm(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:o}}function vnt(t,e){if(t=Lm(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,void 0,void 0,void 0,t.encryptionScope),stringToSign:o}}function _nt(t,e){if(t=Lm(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Rt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Rt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey),stringToSign:o}}function Qnt(t,e){if(t=Lm(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Rt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Rt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId),stringToSign:o}}function Dnt(t,e){if(t=Lm(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Rt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Rt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope),stringToSign:o}}function knt(t,e){if(t=Lm(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Rc.parse(t.permissions.toString()).toString():s=Nc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Rt(t.startsOn,!1):"",t.expiresOn?Rt(t.expiresOn,!1):"",km(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Rt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Rt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,void 0,t.delegatedUserObjectId,t.ipRange?ma(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` -`),i=e.computeHMACSHA256(o);return{sasQueryParameters:new fa(t.version,i,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope,t.delegatedUserObjectId),stringToSign:o}}function km(t,e,r){let n=[`/blob/${t}/${e}`];return r&&n.push(`/${r}`),n.join("")}function Lm(t){let e=t.version?t.version:RR;if(t.snapshotTime&&e<"2018-11-09")throw RangeError("'version' must be >= '2018-11-09' when providing 'snapshotTime'.");if(t.blobName===void 0&&t.snapshotTime)throw RangeError("Must provide 'blobName' when providing 'snapshotTime'.");if(t.versionId&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'versionId'.");if(t.blobName===void 0&&t.versionId)throw RangeError("Must provide 'blobName' when providing 'versionId'.");if(t.permissions&&t.permissions.setImmutabilityPolicy&&e<"2020-08-04")throw RangeError("'version' must be >= '2020-08-04' when provided 'i' permission.");if(t.permissions&&t.permissions.deleteVersion&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");if(t.permissions&&t.permissions.permanentDelete&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");if(t.permissions&&t.permissions.tag&&e<"2019-12-12")throw RangeError("'version' must be >= '2019-12-12' when providing 't' permission.");if(e<"2020-02-10"&&t.permissions&&(t.permissions.move||t.permissions.execute))throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");if(e<"2021-04-10"&&t.permissions&&t.permissions.filterByTags)throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");if(e<"2020-02-10"&&(t.preauthorizedAgentObjectId||t.correlationId))throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");if(t.encryptionScope&&e<"2020-12-06")throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");return t.version=e,t}var dI=class{_leaseId;_url;_containerOrBlobOperation;_isContainer;get leaseId(){return this._leaseId}get url(){return this._url}constructor(e,r){let n=e.storageClientContext;this._url=e.url,e.name===void 0?(this._isContainer=!0,this._containerOrBlobOperation=n.container):(this._isContainer=!1,this._containerOrBlobOperation=n.blob),r||(r=xh()),this._leaseId=r}async acquireLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==la||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==la||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return Ae.withSpan("BlobLeaseClient-acquireLease",r,async n=>Ne(await this._containerOrBlobOperation.acquireLease({abortSignal:r.abortSignal,duration:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},proposedLeaseId:this._leaseId,tracingOptions:n.tracingOptions})))}async changeLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==la||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==la||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return Ae.withSpan("BlobLeaseClient-changeLease",r,async n=>{let s=Ne(await this._containerOrBlobOperation.changeLease(this._leaseId,e,{abortSignal:r.abortSignal,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return this._leaseId=e,s})}async releaseLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==la||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==la||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return Ae.withSpan("BlobLeaseClient-releaseLease",e,async r=>Ne(await this._containerOrBlobOperation.releaseLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async renewLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==la||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==la||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return Ae.withSpan("BlobLeaseClient-renewLease",e,async r=>this._containerOrBlobOperation.renewLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions}))}async breakLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==la||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==la||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return Ae.withSpan("BlobLeaseClient-breakLease",r,async n=>{let s={abortSignal:r.abortSignal,breakPeriod:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions};return Ne(await this._containerOrBlobOperation.breakLease(s))})}};var zme=require("node:stream"),mN=class extends zme.Readable{start;offset;end;getter;source;retries=0;maxRetryRequests;onProgress;options;constructor(e,r,n,s,o={}){super({highWaterMark:o.highWaterMark}),this.getter=r,this.source=e,this.start=n,this.offset=n,this.end=n+s-1,this.maxRetryRequests=o.maxRetryRequests&&o.maxRetryRequests>=0?o.maxRetryRequests:0,this.onProgress=o.onProgress,this.options=o,this.setSourceEventHandlers()}_read(){this.source.resume()}setSourceEventHandlers(){this.source.on("data",this.sourceDataHandler),this.source.on("end",this.sourceErrorOrEndHandler),this.source.on("error",this.sourceErrorOrEndHandler),this.source.on("aborted",this.sourceAbortedHandler)}removeSourceEventHandlers(){this.source.removeListener("data",this.sourceDataHandler),this.source.removeListener("end",this.sourceErrorOrEndHandler),this.source.removeListener("error",this.sourceErrorOrEndHandler),this.source.removeListener("aborted",this.sourceAbortedHandler)}sourceDataHandler=e=>{if(this.options.doInjectErrorOnce){this.options.doInjectErrorOnce=void 0,this.source.pause(),this.sourceErrorOrEndHandler(),this.source.destroy();return}this.offset+=e.length,this.onProgress&&this.onProgress({loadedBytes:this.offset-this.start}),this.push(e)||this.source.pause()};sourceAbortedHandler=()=>{let e=new Qo("The operation was aborted.");this.destroy(e)};sourceErrorOrEndHandler=e=>{if(e&&e.name==="AbortError"){this.destroy(e);return}this.removeSourceEventHandlers(),this.offset-1===this.end?this.push(null):this.offset<=this.end?this.retries{this.source=r,this.setSourceEventHandlers()}).catch(r=>{this.destroy(r)})):this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset-1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`)):this.destroy(new Error(`Data corruption failure: Received more data than original request, data needed offset is ${this.end}, received offset: ${this.offset-1}`))};_destroy(e,r){this.removeSourceEventHandlers(),this.source.destroy(),r(e===null?void 0:e)}};var fN=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){return this.originalResponse.copyCompletedOn}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get tagCount(){return this.originalResponse.tagCount}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get lastAccessed(){return this.originalResponse.lastAccessed}get createdOn(){return this.originalResponse.createdOn}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get versionId(){return this.originalResponse.versionId}get isCurrentVersion(){return this.originalResponse.isCurrentVersion}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get objectReplicationDestinationPolicyId(){return this.originalResponse.objectReplicationDestinationPolicyId}get objectReplicationSourceProperties(){return this.originalResponse.objectReplicationSourceProperties}get isSealed(){return this.originalResponse.isSealed}get immutabilityPolicyExpiresOn(){return this.originalResponse.immutabilityPolicyExpiresOn}get immutabilityPolicyMode(){return this.originalResponse.immutabilityPolicyMode}get legalHold(){return this.originalResponse.legalHold}get contentAsBlob(){return this.originalResponse.blobBody}get readableStreamBody(){return Bt?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,r,n,s,o={}){this.originalResponse=e,this.blobDownloadStream=new mN(this.originalResponse.readableStreamBody,r,n,s,o)}};var Kme=require("node:stream");var GH=new Uint8Array([79,98,106,1]),Vme="avro.codec",Yme="avro.schema";var pr=class t{static async readFixedBytes(e,r,n={}){let s=await e.read(r,{abortSignal:n.abortSignal});if(s.length!==r)throw new Error("Hit stream end.");return s}static async readByte(e,r={}){return(await t.readFixedBytes(e,1,r))[0]}static async readZigZagLong(e,r={}){let n=0,s=0,o,i,a;do o=await t.readByte(e,r),i=o&128,n|=(o&127)<Number.MAX_SAFE_INTEGER)throw new Error("Integer overflow.");return c}return n>>1^-(n&1)}static async readLong(e,r={}){return t.readZigZagLong(e,r)}static async readInt(e,r={}){return t.readZigZagLong(e,r)}static async readNull(){return null}static async readBoolean(e,r={}){let n=await t.readByte(e,r);if(n===1)return!0;if(n===0)return!1;throw new Error("Byte was not a boolean.")}static async readFloat(e,r={}){let n=await t.readFixedBytes(e,4,r);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,!0)}static async readDouble(e,r={}){let n=await t.readFixedBytes(e,8,r);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,!0)}static async readBytes(e,r={}){let n=await t.readLong(e,r);if(n<0)throw new Error("Bytes size was negative.");return e.read(n,{abortSignal:r.abortSignal})}static async readString(e,r={}){let n=await t.readBytes(e,r);return new TextDecoder().decode(n)}static async readMapPair(e,r,n={}){let s=await t.readString(e,n),o=await r(e,n);return{key:s,value:o}}static async readMap(e,r,n={}){let s=(a,c={})=>t.readMapPair(a,r,c),o=await t.readArray(e,s,n),i={};for(let a of o)i[a.key]=a.value;return i}static async readArray(e,r,n={}){let s=[];for(let o=await t.readLong(e,n);o!==0;o=await t.readLong(e,n))for(o<0&&(await t.readLong(e,n),o=-o);o--;){let i=await r(e,n);s.push(i)}return s}},Om;(function(t){t.RECORD="record",t.ENUM="enum",t.ARRAY="array",t.MAP="map",t.UNION="union",t.FIXED="fixed"})(Om||(Om={}));var En;(function(t){t.NULL="null",t.BOOLEAN="boolean",t.INT="int",t.LONG="long",t.FLOAT="float",t.DOUBLE="double",t.BYTES="bytes",t.STRING="string"})(En||(En={}));var su=class t{static fromSchema(e){return typeof e=="string"?t.fromStringSchema(e):Array.isArray(e)?t.fromArraySchema(e):t.fromObjectSchema(e)}static fromStringSchema(e){switch(e){case En.NULL:case En.BOOLEAN:case En.INT:case En.LONG:case En.FLOAT:case En.DOUBLE:case En.BYTES:case En.STRING:return new HH(e);default:throw new Error(`Unexpected Avro type ${e}`)}}static fromArraySchema(e){return new VH(e.map(t.fromSchema))}static fromObjectSchema(e){let r=e.type;try{return t.fromStringSchema(r)}catch{}switch(r){case Om.RECORD:if(e.aliases)throw new Error(`aliases currently is not supported, schema: ${e}`);if(!e.name)throw new Error(`Required attribute 'name' doesn't exist on schema: ${e}`);let n={};if(!e.fields)throw new Error(`Required attribute 'fields' doesn't exist on schema: ${e}`);for(let s of e.fields)n[s.name]=t.fromSchema(s.type);return new WH(n,e.name);case Om.ENUM:if(e.aliases)throw new Error(`aliases currently is not supported, schema: ${e}`);if(!e.symbols)throw new Error(`Required attribute 'symbols' doesn't exist on schema: ${e}`);return new zH(e.symbols);case Om.MAP:if(!e.values)throw new Error(`Required attribute 'values' doesn't exist on schema: ${e}`);return new YH(t.fromSchema(e.values));case Om.ARRAY:case Om.FIXED:default:throw new Error(`Unexpected Avro type ${r} in ${e}`)}}},HH=class extends su{_primitive;constructor(e){super(),this._primitive=e}read(e,r={}){switch(this._primitive){case En.NULL:return pr.readNull();case En.BOOLEAN:return pr.readBoolean(e,r);case En.INT:return pr.readInt(e,r);case En.LONG:return pr.readLong(e,r);case En.FLOAT:return pr.readFloat(e,r);case En.DOUBLE:return pr.readDouble(e,r);case En.BYTES:return pr.readBytes(e,r);case En.STRING:return pr.readString(e,r);default:throw new Error("Unknown Avro Primitive")}}},zH=class extends su{_symbols;constructor(e){super(),this._symbols=e}async read(e,r={}){let n=await pr.readInt(e,r);return this._symbols[n]}},VH=class extends su{_types;constructor(e){super(),this._types=e}async read(e,r={}){let n=await pr.readInt(e,r);return this._types[n].read(e,r)}},YH=class extends su{_itemType;constructor(e){super(),this._itemType=e}read(e,r={}){let n=(s,o)=>this._itemType.read(s,o);return pr.readMap(e,n,r)}},WH=class extends su{_name;_fields;constructor(e,r){super(),this._fields=e,this._name=r}async read(e,r={}){let n={};n.$schema=this._name;for(let s in this._fields)Object.prototype.hasOwnProperty.call(this._fields,s)&&(n[s]=await this._fields[s].read(e,r));return n}};function jH(t,e){if(t===e)return!0;if(t==null||e==null||t.length!==e.length)return!1;for(let r=0;r0)for(let o=0;o0}async*parseObjects(e={}){for(this._initialized||await this.initialize(e);this.hasNext();){let r=await this._itemType.read(this._dataStream,{abortSignal:e.abortSignal});if(this._itemsRemainingInBlock--,this._objectIndex++,this._itemsRemainingInBlock===0){let n=await pr.readFixedBytes(this._dataStream,16,{abortSignal:e.abortSignal});if(this._blockOffset=this._initialBlockOffset+this._dataStream.position,this._objectIndex=0,!jH(this._syncMarker,n))throw new Error("Stream is not a valid Avro file.");try{this._itemsRemainingInBlock=await pr.readLong(this._dataStream,{abortSignal:e.abortSignal})}catch{this._itemsRemainingInBlock=0}this._itemsRemainingInBlock>0&&await pr.readLong(this._dataStream,{abortSignal:e.abortSignal})}yield r}}};var mI=class{};var Jme=require("buffer"),jme=new Qo("Reading from the avro stream was aborted."),fI=class extends mI{_position;_readable;toUint8Array(e){return typeof e=="string"?Jme.Buffer.from(e):e}constructor(e){super(),this._readable=e,this._position=0}get position(){return this._position}async read(e,r={}){if(r.abortSignal?.aborted)throw jme;if(e<0)throw new Error(`size parameter should be positive: ${e}`);if(e===0)return new Uint8Array;if(!this._readable.readable)throw new Error("Stream no longer readable.");let n=this._readable.read(e);return n?(this._position+=n.length,this.toUint8Array(n)):new Promise((s,o)=>{let i=()=>{this._readable.removeListener("readable",a),this._readable.removeListener("error",c),this._readable.removeListener("end",c),this._readable.removeListener("close",c),r.abortSignal&&r.abortSignal.removeEventListener("abort",l)},a=()=>{let u=this._readable.read(e);u&&(this._position+=u.length,i(),s(this.toUint8Array(u)))},c=()=>{i(),o()},l=()=>{i(),o(jme)};this._readable.on("readable",a),this._readable.once("error",c),this._readable.once("end",c),this._readable.once("close",c),r.abortSignal&&r.abortSignal.addEventListener("abort",l)})}};var AN=class extends Kme.Readable{source;avroReader;avroIter;avroPaused=!0;onProgress;onError;constructor(e,r={}){super(),this.source=e,this.onProgress=r.onProgress,this.onError=r.onError,this.avroReader=new pI(new fI(this.source)),this.avroIter=this.avroReader.parseObjects({abortSignal:r.abortSignal})}_read(){this.avroPaused&&this.readInternal().catch(e=>{this.emit("error",e)})}async readInternal(){this.avroPaused=!1;let e;do{if(e=await this.avroIter.next(),e.done)break;let r=e.value,n=r.$schema;if(typeof n!="string")throw Error("Missing schema in avro record.");switch(n){case"com.microsoft.azure.storage.queryBlobContents.resultData":{let s=r.data;if(!(s instanceof Uint8Array))throw Error("Invalid data in avro result record.");this.push(Buffer.from(s))||(this.avroPaused=!0)}break;case"com.microsoft.azure.storage.queryBlobContents.progress":{let s=r.bytesScanned;if(typeof s!="number")throw Error("Invalid bytesScanned in avro progress record.");this.onProgress&&this.onProgress({loadedBytes:s})}break;case"com.microsoft.azure.storage.queryBlobContents.end":if(this.onProgress){let s=r.totalBytes;if(typeof s!="number")throw Error("Invalid totalBytes in avro end record.");this.onProgress({loadedBytes:s})}this.push(null);break;case"com.microsoft.azure.storage.queryBlobContents.error":if(this.onError){let s=r.fatal;if(typeof s!="boolean")throw Error("Invalid fatal in avro error record.");let o=r.name;if(typeof o!="string")throw Error("Invalid name in avro error record.");let i=r.description;if(typeof i!="string")throw Error("Invalid description in avro error record.");let a=r.position;if(typeof a!="number")throw Error("Invalid position in avro error record.");this.onError({position:a,name:o,isFatal:s,description:i})}break;default:throw Error(`Unknown schema ${n} in avro progress record.`)}}while(!e.done&&!this.avroPaused)}};var hN=class{get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get blobBody(){}get readableStreamBody(){return Bt?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,r={}){this.originalResponse=e,this.blobDownloadStream=new AN(this.originalResponse.readableStreamBody,r)}};var JH;(function(t){t.Hot="Hot",t.Cool="Cool",t.Cold="Cold",t.Archive="Archive"})(JH||(JH={}));var KH;(function(t){t.P4="P4",t.P6="P6",t.P10="P10",t.P15="P15",t.P20="P20",t.P30="P30",t.P40="P40",t.P50="P50",t.P60="P60",t.P70="P70",t.P80="P80"})(KH||(KH={}));function Pd(t){if(t!==void 0)return t}function on(t,e){if(t&&!e)throw new RangeError("Customer-provided encryption key must be used over HTTPS.");t&&!t.encryptionAlgorithm&&(t.encryptionAlgorithm=kpe)}var XH;(function(t){t.StorageOAuthScopes="https://storage.azure.com/.default",t.DiskComputeOAuthScopes="https://disk.compute.azure.com/.default"})(XH||(XH={}));function gN(t){let e=(t._response.parsedBody.pageRange||[]).map(n=>({offset:n.start,count:n.end-n.start})),r=(t._response.parsedBody.clearRange||[]).map(n=>({offset:n.start,count:n.end-n.start}));return{...t,pageRange:e,clearRange:r,_response:{...t._response,parsedBody:{pageRange:e,clearRange:r}}}}var Lfe=Q(kfe(),1),RN=class extends Lfe.Poller{intervalInMs;constructor(e){let{blobClient:r,copySource:n,intervalInMs:s=15e3,onProgress:o,resumeFrom:i,startCopyFromURLOptions:a}=e,c;i&&(c=JSON.parse(i).state);let l=yI({...c,blobClient:r,copySource:n,startCopyFromURLOptions:a});super(l),typeof o=="function"&&this.onProgress(o),this.intervalInMs=s}delay(){return PC(this.intervalInMs)}},Est=async function(e={}){let r=this.state,{copyId:n}=r;return r.isCompleted?yI(r):n?(await r.blobClient.abortCopyFromURL(n,{abortSignal:e.abortSignal}),r.isCancelled=!0,yI(r)):(r.isCancelled=!0,yI(r))},Cst=async function(e={}){let r=this.state,{blobClient:n,copySource:s,startCopyFromURLOptions:o}=r;if(r.isStarted){if(!r.isCompleted)try{let i=await r.blobClient.getProperties({abortSignal:e.abortSignal}),{copyStatus:a,copyProgress:c}=i,l=r.copyProgress;c&&(r.copyProgress=c),a==="pending"&&c!==l&&typeof e.fireProgress=="function"?e.fireProgress(r):a==="success"?(r.result=i,r.isCompleted=!0):a==="failed"&&(r.error=new Error(`Blob copy failed with reason: "${i.copyStatusDescription||"unknown"}"`),r.isCompleted=!0)}catch(i){r.error=i,r.isCompleted=!0}}else{r.isStarted=!0;let i=await n.startCopyFromURL(s,o);r.copyId=i.copyId,i.copyStatus==="success"&&(r.result=i,r.isCompleted=!0)}return yI(r)},Ist=function(){return JSON.stringify({state:this.state},(e,r)=>{if(e!=="blobClient")return r})};function yI(t){return{state:{...t},cancel:Est,toString:Ist,update:Cst}}function Ks(t){if(t.offset<0)throw new RangeError("Range.offset cannot be smaller than 0.");if(t.count&&t.count<=0)throw new RangeError("Range.count must be larger than 0. Leave it undefined if you want a range from offset to the end.");return t.count?`bytes=${t.offset}-${t.offset+t.count-1}`:`bytes=${t.offset}-`}var Ofe=require("events"),EI;(function(t){t[t.Good=0]="Good",t[t.Error=1]="Error"})(EI||(EI={}));var CI=class{concurrency;actives=0;completed=0;offset=0;operations=[];state=EI.Good;emitter;constructor(e=5){if(e<1)throw new RangeError("concurrency must be larger than 0");this.concurrency=e,this.emitter=new Ofe.EventEmitter}addOperation(e){this.operations.push(async()=>{try{this.actives++,await e(),this.actives--,this.completed++,this.parallelExecute()}catch(r){this.emitter.emit("error",r)}})}async do(){return this.operations.length===0?Promise.resolve():(this.parallelExecute(),new Promise((e,r)=>{this.emitter.on("finish",e),this.emitter.on("error",n=>{this.state=EI.Error,r(n)})}))}nextOperation(){return this.offset=this.operations.length){this.emitter.emit("finish");return}for(;this.actives{let l=setTimeout(()=>c(new Error("The operation cannot be completed in timeout.")),1e5);t.on("readable",()=>{if(o>=i){clearTimeout(l),a();return}let u=t.read();if(!u)return;typeof u=="string"&&(u=Buffer.from(u,s));let d=o+u.length>i?i-o:u.length;e.fill(u.slice(0,d),r+o,r+o+d),o+=d}),t.on("end",()=>{clearTimeout(l),o{clearTimeout(l),c(u)})})}async function Ufe(t,e){return new Promise((r,n)=>{let s=NN.default.createWriteStream(e);t.on("error",o=>{n(o)}),s.on("error",o=>{n(o)}),s.on("close",r),t.pipe(s)})}var qfe=Mfe.default.promisify(NN.default.stat),$fe=NN.default.createReadStream;var ou=class t extends Mh{blobContext;_name;_containerName;_versionId;_snapshot;get name(){return this._name}get containerName(){return this._containerName}constructor(e,r,n,s){s=s||{};let o,i;if(Xl(r))i=e,o=r;else if(Bt&&r instanceof Ir||r instanceof tr||Do(r))i=e,s=n,o=kr(r,s);else if(!r&&typeof r!="string")i=e,n&&typeof n!="string"&&(s=n),o=kr(new tr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let a=r,c=n,l=Dm(e);if(l.kind==="AccountConnString")if(Bt){let u=new Ir(l.accountName,l.accountKey);i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c)),s.proxyOptions||(s.proxyOptions=Id(l.proxyUri)),o=kr(u,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(l.kind==="SASConnString")i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c))+"?"+l.accountSas,o=kr(new tr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(i,o),{blobName:this._name,containerName:this._containerName}=this.getBlobAndContainerNamesFromUrl(),this.blobContext=this.storageClientContext.blob,this._snapshot=OH(this.url,Kl.Parameters.SNAPSHOT),this._versionId=OH(this.url,Kl.Parameters.VERSIONID)}withSnapshot(e){return new t(Lh(this.url,Kl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}withVersion(e){return new t(Lh(this.url,Kl.Parameters.VERSIONID,e.length===0?void 0:e),this.pipeline)}getAppendBlobClient(){return new PN(this.url,this.pipeline)}getBlockBlobClient(){return new qh(this.url,this.pipeline)}getPageBlobClient(){return new vN(this.url,this.pipeline)}async download(e=0,r,n={}){return n.conditions=n.conditions||{},n.conditions=n.conditions||{},on(n.customerProvidedKey,this.isHttps),Ae.withSpan("BlobClient-download",n,async s=>{let o=Ne(await this.blobContext.download({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onDownloadProgress:Bt?void 0:n.onProgress},range:e===0&&!r?void 0:Ks({offset:e,count:r}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey,tracingOptions:s.tracingOptions})),i={...o,_response:o._response,objectReplicationDestinationPolicyId:o.objectReplicationPolicyId,objectReplicationSourceProperties:pN(o.objectReplicationRules)};if(!Bt)return i;if((n.maxRetryRequests===void 0||n.maxRetryRequests<0)&&(n.maxRetryRequests=5),o.contentLength===void 0)throw new RangeError("File download response doesn't contain valid content length header");if(!o.etag)throw new RangeError("File download response doesn't contain valid etag header");return new fN(i,async a=>{let c={leaseAccessConditions:n.conditions,modifiedAccessConditions:{ifMatch:n.conditions.ifMatch||o.etag,ifModifiedSince:n.conditions.ifModifiedSince,ifNoneMatch:n.conditions.ifNoneMatch,ifUnmodifiedSince:n.conditions.ifUnmodifiedSince,ifTags:n.conditions?.tagConditions},range:Ks({count:e+o.contentLength-a,offset:a}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey};return(await this.blobContext.download({abortSignal:n.abortSignal,...c})).readableStreamBody},e,o.contentLength,{maxRetryRequests:n.maxRetryRequests,onProgress:n.onProgress})})}async exists(e={}){return Ae.withSpan("BlobClient-exists",e,async r=>{try{return on(e.customerProvidedKey,this.isHttps),await this.getProperties({abortSignal:e.abortSignal,customerProvidedKey:e.customerProvidedKey,conditions:e.conditions,tracingOptions:r.tracingOptions}),!0}catch(n){if(n.statusCode===404)return!1;if(n.statusCode===409&&(n.details.errorCode===Fpe||n.details.errorCode===Upe))return!0;throw n}})}async getProperties(e={}){return e.conditions=e.conditions||{},on(e.customerProvidedKey,this.isHttps),Ae.withSpan("BlobClient-getProperties",e,async r=>{let n=Ne(await this.blobContext.getProperties({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,tracingOptions:r.tracingOptions}));return{...n,_response:n._response,objectReplicationDestinationPolicyId:n.objectReplicationPolicyId,objectReplicationSourceProperties:pN(n.objectReplicationRules)}})}async delete(e={}){return e.conditions=e.conditions||{},Ae.withSpan("BlobClient-delete",e,async r=>Ne(await this.blobContext.delete({abortSignal:e.abortSignal,deleteSnapshots:e.deleteSnapshots,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async deleteIfExists(e={}){return Ae.withSpan("BlobClient-deleteIfExists",e,async r=>{try{let n=Ne(await this.delete(r));return{succeeded:!0,...n,_response:n._response}}catch(n){if(n.details?.errorCode==="BlobNotFound")return{succeeded:!1,...n.response?.parsedHeaders,_response:n.response};throw n}})}async undelete(e={}){return Ae.withSpan("BlobClient-undelete",e,async r=>Ne(await this.blobContext.undelete({abortSignal:e.abortSignal,tracingOptions:r.tracingOptions})))}async setHTTPHeaders(e,r={}){return r.conditions=r.conditions||{},on(r.customerProvidedKey,this.isHttps),Ae.withSpan("BlobClient-setHTTPHeaders",r,async n=>Ne(await this.blobContext.setHttpHeaders({abortSignal:r.abortSignal,blobHttpHeaders:e,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}async setMetadata(e,r={}){return r.conditions=r.conditions||{},on(r.customerProvidedKey,this.isHttps),Ae.withSpan("BlobClient-setMetadata",r,async n=>Ne(await this.blobContext.setMetadata({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,metadata:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:n.tracingOptions})))}async setTags(e,r={}){return Ae.withSpan("BlobClient-setTags",r,async n=>Ne(await this.blobContext.setTags({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},blobModifiedAccessConditions:r.conditions,tracingOptions:n.tracingOptions,tags:Gme(e)})))}async getTags(e={}){return Ae.withSpan("BlobClient-getTags",e,async r=>{let n=Ne(await this.blobContext.getTags({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},blobModifiedAccessConditions:e.conditions,tracingOptions:r.tracingOptions}));return{...n,_response:n._response,tags:dN({blobTagSet:n.blobTagSet})||{}}})}getBlobLeaseClient(e){return new dI(this,e)}async createSnapshot(e={}){return e.conditions=e.conditions||{},on(e.customerProvidedKey,this.isHttps),Ae.withSpan("BlobClient-createSnapshot",e,async r=>Ne(await this.blobContext.createSnapshot({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,tracingOptions:r.tracingOptions})))}async beginCopyFromURL(e,r={}){let n={abortCopyFromURL:(...o)=>this.abortCopyFromURL(...o),getProperties:(...o)=>this.getProperties(...o),startCopyFromURL:(...o)=>this.startCopyFromURL(...o)},s=new RN({blobClient:n,copySource:e,intervalInMs:r.intervalInMs,onProgress:r.onProgress,resumeFrom:r.resumeFrom,startCopyFromURLOptions:r});return await s.poll(),s}async abortCopyFromURL(e,r={}){return Ae.withSpan("BlobClient-abortCopyFromURL",r,async n=>Ne(await this.blobContext.abortCopyFromURL(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,tracingOptions:n.tracingOptions})))}async syncCopyFromURL(e,r={}){return r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},Ae.withSpan("BlobClient-syncCopyFromURL",r,async n=>Ne(await this.blobContext.copyFromURL(e,{abortSignal:r.abortSignal,metadata:r.metadata,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince},sourceContentMD5:r.sourceContentMD5,copySourceAuthorization:Oh(r.sourceAuthorization),tier:Pd(r.tier),blobTagsString:Td(r.tags),immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,encryptionScope:r.encryptionScope,copySourceTags:r.copySourceTags,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async setAccessTier(e,r={}){return Ae.withSpan("BlobClient-setAccessTier",r,async n=>Ne(await this.blobContext.setTier(Pd(e),{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},rehydratePriority:r.rehydratePriority,tracingOptions:n.tracingOptions})))}async downloadToBuffer(e,r,n,s={}){let o,i=0,a=0,c=s;e instanceof Buffer?(o=e,i=r||0,a=typeof n=="number"?n:0):(i=typeof e=="number"?e:0,a=typeof r=="number"?r:0,c=n||{});let l=c.blockSize??0;if(l<0)throw new RangeError("blockSize option must be >= 0");if(l===0&&(l=4194304),i<0)throw new RangeError("offset option must be >= 0");if(a&&a<=0)throw new RangeError("count option must be greater than 0");return c.conditions||(c.conditions={}),Ae.withSpan("BlobClient-downloadToBuffer",c,async u=>{if(!a){let m=await this.getProperties({...c,tracingOptions:u.tracingOptions});if(a=m.contentLength-i,a<0)throw new RangeError(`offset ${i} shouldn't be larger than blob size ${m.contentLength}`)}if(!o)try{o=Buffer.alloc(a)}catch(m){throw new Error(`Unable to allocate the buffer of size: ${a}(in bytes). Please try passing your own buffer to the "downloadToBuffer" method or try using other methods like "download" or "downloadToFile". ${m.message}`)}if(o.length{let h=i+a;m+l{let i=await this.download(r,n,{...s,tracingOptions:o.tracingOptions});return i.readableStreamBody&&await Ufe(i.readableStreamBody,e),i.blobDownloadStream=void 0,i})}getBlobAndContainerNamesFromUrl(){let e,r;try{let n=new URL(this.url);if(n.host.split(".")[1]==="blob"){let s=n.pathname.match("/([^/]*)(/(.*))?");e=s[1],r=s[3]}else if(uN(n)){let s=n.pathname.match("/([^/]*)/([^/]*)(/(.*))?");e=s[2],r=s[4]}else{let s=n.pathname.match("/([^/]*)(/(.*))?");e=s[1],r=s[3]}if(e=decodeURIComponent(e),r=decodeURIComponent(r),r=r.replace(/\\/g,"/"),!e)throw new Error("Provided containerName is invalid.");return{blobName:r,containerName:e}}catch{throw new Error("Unable to extract blobName and containerName with provided information.")}}async startCopyFromURL(e,r={}){return Ae.withSpan("BlobClient-startCopyFromURL",r,async n=>(r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},Ne(await this.blobContext.startCopyFromURL(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions.ifMatch,sourceIfModifiedSince:r.sourceConditions.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions.ifUnmodifiedSince,sourceIfTags:r.sourceConditions.tagConditions},immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,rehydratePriority:r.rehydratePriority,tier:Pd(r.tier),blobTagsString:Td(r.tags),sealBlob:r.sealBlob,tracingOptions:n.tracingOptions}))))}generateSasUrl(e){return new Promise(r=>{if(!(this.credential instanceof Ir))throw new RangeError("Can only generate the SAS when the client is initialized with a shared key credential");let n=lI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).toString();r(cI(this.url,n))})}generateSasStringToSign(e){if(!(this.credential instanceof Ir))throw new RangeError("Can only generate the SAS when the client is initialized with a shared key credential");return uI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).stringToSign}generateUserDelegationSasUrl(e,r){return new Promise(n=>{let s=lI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},r,this.accountName).toString();n(cI(this.url,s))})}generateUserDelegationSasStringToSign(e,r){return uI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},r,this.accountName).stringToSign}async deleteImmutabilityPolicy(e={}){return Ae.withSpan("BlobClient-deleteImmutabilityPolicy",e,async r=>Ne(await this.blobContext.deleteImmutabilityPolicy({tracingOptions:r.tracingOptions})))}async setImmutabilityPolicy(e,r={}){return Ae.withSpan("BlobClient-setImmutabilityPolicy",r,async n=>Ne(await this.blobContext.setImmutabilityPolicy({immutabilityPolicyExpiry:e.expiriesOn,immutabilityPolicyMode:e.policyMode,tracingOptions:n.tracingOptions})))}async setLegalHold(e,r={}){return Ae.withSpan("BlobClient-setLegalHold",r,async n=>Ne(await this.blobContext.setLegalHold(e,{tracingOptions:n.tracingOptions})))}async getAccountInfo(e={}){return Ae.withSpan("BlobClient-getAccountInfo",e,async r=>Ne(await this.blobContext.getAccountInfo({abortSignal:e.abortSignal,tracingOptions:r.tracingOptions})))}},PN=class t extends ou{appendBlobContext;constructor(e,r,n,s){let o,i;if(s=s||{},Xl(r))i=e,o=r;else if(Bt&&r instanceof Ir||r instanceof tr||Do(r))i=e,s=n,o=kr(r,s);else if(!r&&typeof r!="string")i=e,o=kr(new tr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let a=r,c=n,l=Dm(e);if(l.kind==="AccountConnString")if(Bt){let u=new Ir(l.accountName,l.accountKey);i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c)),s.proxyOptions||(s.proxyOptions=Id(l.proxyUri)),o=kr(u,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(l.kind==="SASConnString")i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c))+"?"+l.accountSas,o=kr(new tr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(i,o),this.appendBlobContext=this.storageClientContext.appendBlob}withSnapshot(e){return new t(Lh(this.url,Kl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async create(e={}){return e.conditions=e.conditions||{},on(e.customerProvidedKey,this.isHttps),Ae.withSpan("AppendBlobClient-create",e,async r=>Ne(await this.appendBlobContext.create(0,{abortSignal:e.abortSignal,blobHttpHeaders:e.blobHTTPHeaders,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,immutabilityPolicyExpiry:e.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:e.immutabilityPolicy?.policyMode,legalHold:e.legalHold,blobTagsString:Td(e.tags),tracingOptions:r.tracingOptions})))}async createIfNotExists(e={}){let r={ifNoneMatch:vq};return Ae.withSpan("AppendBlobClient-createIfNotExists",e,async n=>{try{let s=Ne(await this.create({...n,conditions:r}));return{succeeded:!0,...s,_response:s._response}}catch(s){if(s.details?.errorCode==="BlobAlreadyExists")return{succeeded:!1,...s.response?.parsedHeaders,_response:s.response};throw s}})}async seal(e={}){return e.conditions=e.conditions||{},Ae.withSpan("AppendBlobClient-seal",e,async r=>Ne(await this.appendBlobContext.seal({abortSignal:e.abortSignal,appendPositionAccessConditions:e.conditions,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async appendBlock(e,r,n={}){return n.conditions=n.conditions||{},on(n.customerProvidedKey,this.isHttps),Ae.withSpan("AppendBlobClient-appendBlock",n,async s=>Ne(await this.appendBlobContext.appendBlock(r,e,{abortSignal:n.abortSignal,appendPositionAccessConditions:n.conditions,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},transactionalContentMD5:n.transactionalContentMD5,transactionalContentCrc64:n.transactionalContentCrc64,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:s.tracingOptions})))}async appendBlockFromURL(e,r,n,s={}){return s.conditions=s.conditions||{},s.sourceConditions=s.sourceConditions||{},on(s.customerProvidedKey,this.isHttps),Ae.withSpan("AppendBlobClient-appendBlockFromURL",s,async o=>Ne(await this.appendBlobContext.appendBlockFromUrl(e,0,{abortSignal:s.abortSignal,sourceRange:Ks({offset:r,count:n}),sourceContentMD5:s.sourceContentMD5,sourceContentCrc64:s.sourceContentCrc64,leaseAccessConditions:s.conditions,appendPositionAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:s.sourceConditions?.ifMatch,sourceIfModifiedSince:s.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:s.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:s.sourceConditions?.ifUnmodifiedSince},copySourceAuthorization:Oh(s.sourceAuthorization),cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,fileRequestIntent:s.sourceShareTokenIntent,tracingOptions:o.tracingOptions})))}},qh=class t extends ou{_blobContext;blockBlobContext;constructor(e,r,n,s){let o,i;if(s=s||{},Xl(r))i=e,o=r;else if(Bt&&r instanceof Ir||r instanceof tr||Do(r))i=e,s=n,o=kr(r,s);else if(!r&&typeof r!="string")i=e,n&&typeof n!="string"&&(s=n),o=kr(new tr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let a=r,c=n,l=Dm(e);if(l.kind==="AccountConnString")if(Bt){let u=new Ir(l.accountName,l.accountKey);i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c)),s.proxyOptions||(s.proxyOptions=Id(l.proxyUri)),o=kr(u,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(l.kind==="SASConnString")i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c))+"?"+l.accountSas,o=kr(new tr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(i,o),this.blockBlobContext=this.storageClientContext.blockBlob,this._blobContext=this.storageClientContext.blob}withSnapshot(e){return new t(Lh(this.url,Kl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async query(e,r={}){if(on(r.customerProvidedKey,this.isHttps),!Bt)throw new Error("This operation currently is only supported in Node.js.");return Ae.withSpan("BlockBlobClient-query",r,async n=>{let s=Ne(await this._blobContext.query({abortSignal:r.abortSignal,queryRequest:{queryType:"SQL",expression:e,inputSerialization:qH(r.inputTextConfiguration),outputSerialization:qH(r.outputTextConfiguration)},leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,tracingOptions:n.tracingOptions}));return new hN(s,{abortSignal:r.abortSignal,onProgress:r.onProgress,onError:r.onError})})}async upload(e,r,n={}){return n.conditions=n.conditions||{},on(n.customerProvidedKey,this.isHttps),Ae.withSpan("BlockBlobClient-upload",n,async s=>Ne(await this.blockBlobContext.upload(r,e,{abortSignal:n.abortSignal,blobHttpHeaders:n.blobHTTPHeaders,leaseAccessConditions:n.conditions,metadata:n.metadata,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,immutabilityPolicyExpiry:n.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:n.immutabilityPolicy?.policyMode,legalHold:n.legalHold,tier:Pd(n.tier),blobTagsString:Td(n.tags),tracingOptions:s.tracingOptions})))}async syncUploadFromURL(e,r={}){return r.conditions=r.conditions||{},on(r.customerProvidedKey,this.isHttps),Ae.withSpan("BlockBlobClient-syncUploadFromURL",r,async n=>Ne(await this.blockBlobContext.putBlobFromUrl(0,e,{...r,blobHttpHeaders:r.blobHTTPHeaders,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince,sourceIfTags:r.sourceConditions?.tagConditions},cpkInfo:r.customerProvidedKey,copySourceAuthorization:Oh(r.sourceAuthorization),tier:Pd(r.tier),blobTagsString:Td(r.tags),copySourceTags:r.copySourceTags,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async stageBlock(e,r,n,s={}){return on(s.customerProvidedKey,this.isHttps),Ae.withSpan("BlockBlobClient-stageBlock",s,async o=>Ne(await this.blockBlobContext.stageBlock(e,n,r,{abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,requestOptions:{onUploadProgress:s.onProgress},transactionalContentMD5:s.transactionalContentMD5,transactionalContentCrc64:s.transactionalContentCrc64,cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions})))}async stageBlockFromURL(e,r,n=0,s,o={}){return on(o.customerProvidedKey,this.isHttps),Ae.withSpan("BlockBlobClient-stageBlockFromURL",o,async i=>Ne(await this.blockBlobContext.stageBlockFromURL(e,0,r,{abortSignal:o.abortSignal,leaseAccessConditions:o.conditions,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,sourceRange:n===0&&!s?void 0:Ks({offset:n,count:s}),cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:Oh(o.sourceAuthorization),fileRequestIntent:o.sourceShareTokenIntent,tracingOptions:i.tracingOptions})))}async commitBlockList(e,r={}){return r.conditions=r.conditions||{},on(r.customerProvidedKey,this.isHttps),Ae.withSpan("BlockBlobClient-commitBlockList",r,async n=>Ne(await this.blockBlobContext.commitBlockList({latest:e},{abortSignal:r.abortSignal,blobHttpHeaders:r.blobHTTPHeaders,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,tier:Pd(r.tier),blobTagsString:Td(r.tags),tracingOptions:n.tracingOptions})))}async getBlockList(e,r={}){return Ae.withSpan("BlockBlobClient-getBlockList",r,async n=>{let s=Ne(await this.blockBlobContext.getBlockList(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return s.committedBlocks||(s.committedBlocks=[]),s.uncommittedBlocks||(s.uncommittedBlocks=[]),s})}async uploadData(e,r={}){return Ae.withSpan("BlockBlobClient-uploadData",r,async n=>{if(Bt){let s;return e instanceof Buffer?s=e:e instanceof ArrayBuffer?s=Buffer.from(e):(e=e,s=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),this.uploadSeekableInternal((o,i)=>s.slice(o,o+i),s.byteLength,n)}else{let s=new Blob([e]);return this.uploadSeekableInternal((o,i)=>s.slice(o,o+i),s.size,n)}})}async uploadBrowserData(e,r={}){return Ae.withSpan("BlockBlobClient-uploadBrowserData",r,async n=>{let s=new Blob([e]);return this.uploadSeekableInternal((o,i)=>s.slice(o,o+i),s.size,n)})}async uploadSeekableInternal(e,r,n={}){let s=n.blockSize??0;if(s<0||s>4194304e3)throw new RangeError(`blockSize option must be >= 0 and <= ${4194304e3}`);let o=n.maxSingleShotSize??268435456;if(o<0||o>268435456)throw new RangeError(`maxSingleShotSize option must be >= 0 and <= ${268435456}`);if(s===0){if(r>4194304e3*5e4)throw new RangeError(`${r} is too larger to upload to a block blob.`);r>o&&(s=Math.ceil(r/5e4),s<4194304&&(s=4194304))}return n.blobHTTPHeaders||(n.blobHTTPHeaders={}),n.conditions||(n.conditions={}),Ae.withSpan("BlockBlobClient-uploadSeekableInternal",n,async i=>{if(r<=o)return Ne(await this.upload(e(0,r),r,i));let a=Math.floor((r-1)/s)+1;if(a>5e4)throw new RangeError(`The buffer's size is too big or the BlockSize is too small;the number of blocks must be <= ${5e4}`);let c=[],l=xh(),u=0,d=new CI(n.concurrency);for(let p=0;p{let m=MH(l,p),h=s*p,I=(p===a-1?r:h+s)-h;c.push(m),await this.stageBlock(m,e(h,I),I,{abortSignal:n.abortSignal,conditions:n.conditions,encryptionScope:n.encryptionScope,tracingOptions:i.tracingOptions}),u+=I,n.onProgress&&n.onProgress({loadedBytes:u})});return await d.do(),this.commitBlockList(c,i)})}async uploadFile(e,r={}){return Ae.withSpan("BlockBlobClient-uploadFile",r,async n=>{let s=(await qfe(e)).size;return this.uploadSeekableInternal((o,i)=>()=>$fe(e,{autoClose:!0,end:i?o+i-1:1/0,start:o}),s,{...r,tracingOptions:n.tracingOptions})})}async uploadStream(e,r=8388608,n=5,s={}){return s.blobHTTPHeaders||(s.blobHTTPHeaders={}),s.conditions||(s.conditions={}),Ae.withSpan("BlockBlobClient-uploadStream",s,async o=>{let i=0,a=xh(),c=0,l=[];return await new ER(e,r,n,async(d,p)=>{let m=MH(a,i);l.push(m),i++,await this.stageBlock(m,d,p,{customerProvidedKey:s.customerProvidedKey,conditions:s.conditions,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions}),c+=p,s.onProgress&&s.onProgress({loadedBytes:c})},Math.ceil(n/4*3)).do(),Ne(await this.commitBlockList(l,{...s,tracingOptions:o.tracingOptions}))})}},vN=class t extends ou{pageBlobContext;constructor(e,r,n,s){let o,i;if(s=s||{},Xl(r))i=e,o=r;else if(Bt&&r instanceof Ir||r instanceof tr||Do(r))i=e,s=n,o=kr(r,s);else if(!r&&typeof r!="string")i=e,o=kr(new tr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let a=r,c=n,l=Dm(e);if(l.kind==="AccountConnString")if(Bt){let u=new Ir(l.accountName,l.accountKey);i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c)),s.proxyOptions||(s.proxyOptions=Id(l.proxyUri)),o=kr(u,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(l.kind==="SASConnString")i=sn(sn(l.url,encodeURIComponent(a)),encodeURIComponent(c))+"?"+l.accountSas,o=kr(new tr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(i,o),this.pageBlobContext=this.storageClientContext.pageBlob}withSnapshot(e){return new t(Lh(this.url,Kl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async create(e,r={}){return r.conditions=r.conditions||{},on(r.customerProvidedKey,this.isHttps),Ae.withSpan("PageBlobClient-create",r,async n=>Ne(await this.pageBlobContext.create(0,e,{abortSignal:r.abortSignal,blobHttpHeaders:r.blobHTTPHeaders,blobSequenceNumber:r.blobSequenceNumber,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,tier:Pd(r.tier),blobTagsString:Td(r.tags),tracingOptions:n.tracingOptions})))}async createIfNotExists(e,r={}){return Ae.withSpan("PageBlobClient-createIfNotExists",r,async n=>{try{let s={ifNoneMatch:vq},o=Ne(await this.create(e,{...r,conditions:s,tracingOptions:n.tracingOptions}));return{succeeded:!0,...o,_response:o._response}}catch(s){if(s.details?.errorCode==="BlobAlreadyExists")return{succeeded:!1,...s.response?.parsedHeaders,_response:s.response};throw s}})}async uploadPages(e,r,n,s={}){return s.conditions=s.conditions||{},on(s.customerProvidedKey,this.isHttps),Ae.withSpan("PageBlobClient-uploadPages",s,async o=>Ne(await this.pageBlobContext.uploadPages(n,e,{abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},requestOptions:{onUploadProgress:s.onProgress},range:Ks({offset:r,count:n}),sequenceNumberAccessConditions:s.conditions,transactionalContentMD5:s.transactionalContentMD5,transactionalContentCrc64:s.transactionalContentCrc64,cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions})))}async uploadPagesFromURL(e,r,n,s,o={}){return o.conditions=o.conditions||{},o.sourceConditions=o.sourceConditions||{},on(o.customerProvidedKey,this.isHttps),Ae.withSpan("PageBlobClient-uploadPagesFromURL",o,async i=>Ne(await this.pageBlobContext.uploadPagesFromURL(e,Ks({offset:r,count:s}),0,Ks({offset:n,count:s}),{abortSignal:o.abortSignal,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,leaseAccessConditions:o.conditions,sequenceNumberAccessConditions:o.conditions,modifiedAccessConditions:{...o.conditions,ifTags:o.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:o.sourceConditions?.ifMatch,sourceIfModifiedSince:o.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:o.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:o.sourceConditions?.ifUnmodifiedSince},cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:Oh(o.sourceAuthorization),fileRequestIntent:o.sourceShareTokenIntent,tracingOptions:i.tracingOptions})))}async clearPages(e=0,r,n={}){return n.conditions=n.conditions||{},Ae.withSpan("PageBlobClient-clearPages",n,async s=>Ne(await this.pageBlobContext.clearPages(0,{abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:Ks({offset:e,count:r}),sequenceNumberAccessConditions:n.conditions,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:s.tracingOptions})))}async getPageRanges(e=0,r,n={}){return n.conditions=n.conditions||{},Ae.withSpan("PageBlobClient-getPageRanges",n,async s=>{let o=Ne(await this.pageBlobContext.getPageRanges({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:Ks({offset:e,count:r}),tracingOptions:s.tracingOptions}));return gN(o)})}async listPageRangesSegment(e=0,r,n,s={}){return Ae.withSpan("PageBlobClient-getPageRangesSegment",s,async o=>Ne(await this.pageBlobContext.getPageRanges({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},range:Ks({offset:e,count:r}),marker:n,maxPageSize:s.maxPageSize,tracingOptions:o.tracingOptions})))}async*listPageRangeItemSegments(e=0,r,n,s={}){let o;if(n||n===void 0)do o=await this.listPageRangesSegment(e,r,n,s),n=o.continuationToken,yield await o;while(n)}async*listPageRangeItems(e=0,r,n={}){let s;for await(let o of this.listPageRangeItemSegments(e,r,s,n))yield*$H(o)}listPageRanges(e=0,r,n={}){n.conditions=n.conditions||{};let s=this.listPageRangeItems(e,r,n);return{next(){return s.next()},[Symbol.asyncIterator](){return this},byPage:(o={})=>this.listPageRangeItemSegments(e,r,o.continuationToken,{maxPageSize:o.maxPageSize,...n})}}async getPageRangesDiff(e,r,n,s={}){return s.conditions=s.conditions||{},Ae.withSpan("PageBlobClient-getPageRangesDiff",s,async o=>{let i=Ne(await this.pageBlobContext.getPageRangesDiff({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},prevsnapshot:n,range:Ks({offset:e,count:r}),tracingOptions:o.tracingOptions}));return gN(i)})}async listPageRangesDiffSegment(e,r,n,s,o={}){return Ae.withSpan("PageBlobClient-getPageRangesDiffSegment",o,async i=>Ne(await this.pageBlobContext.getPageRangesDiff({abortSignal:o?.abortSignal,leaseAccessConditions:o?.conditions,modifiedAccessConditions:{...o?.conditions,ifTags:o?.conditions?.tagConditions},prevsnapshot:n,range:Ks({offset:e,count:r}),marker:s,maxPageSize:o?.maxPageSize,tracingOptions:i.tracingOptions})))}async*listPageRangeDiffItemSegments(e,r,n,s,o){let i;if(s||s===void 0)do i=await this.listPageRangesDiffSegment(e,r,n,s,o),s=i.continuationToken,yield await i;while(s)}async*listPageRangeDiffItems(e,r,n,s){let o;for await(let i of this.listPageRangeDiffItemSegments(e,r,n,o,s))yield*$H(i)}listPageRangesDiff(e,r,n,s={}){s.conditions=s.conditions||{};let o=this.listPageRangeDiffItems(e,r,n,{...s});return{next(){return o.next()},[Symbol.asyncIterator](){return this},byPage:(i={})=>this.listPageRangeDiffItemSegments(e,r,n,i.continuationToken,{maxPageSize:i.maxPageSize,...s})}}async getPageRangesDiffForManagedDisks(e,r,n,s={}){return s.conditions=s.conditions||{},Ae.withSpan("PageBlobClient-GetPageRangesDiffForManagedDisks",s,async o=>{let i=Ne(await this.pageBlobContext.getPageRangesDiff({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},prevSnapshotUrl:n,range:Ks({offset:e,count:r}),tracingOptions:o.tracingOptions}));return gN(i)})}async resize(e,r={}){return r.conditions=r.conditions||{},Ae.withSpan("PageBlobClient-resize",r,async n=>Ne(await this.pageBlobContext.resize(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},encryptionScope:r.encryptionScope,tracingOptions:n.tracingOptions})))}async updateSequenceNumber(e,r,n={}){return n.conditions=n.conditions||{},Ae.withSpan("PageBlobClient-updateSequenceNumber",n,async s=>Ne(await this.pageBlobContext.updateSequenceNumber(e,{abortSignal:n.abortSignal,blobSequenceNumber:r,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},tracingOptions:s.tracingOptions})))}async startCopyIncremental(e,r={}){return Ae.withSpan("PageBlobClient-startCopyIncremental",r,async n=>Ne(await this.pageBlobContext.copyIncremental(e,{abortSignal:r.abortSignal,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}};var Gfe;(function(t){t[t.LOCKED=0]="LOCKED",t[t.UNLOCKED=1]="UNLOCKED"})(Gfe||(Gfe={}));var Hfe;(function(t){t.AES256="AES256"})(Hfe||(Hfe={}));var _N=class extends Error{constructor(e){super(e),this.name="InvalidResponseError"}};var $h=class extends Error{constructor(e){let r=`Unable to make request: ${e} -If you are using self-hosted runners, please make sure your runner has access to all GitHub endpoints: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github`;super(r),this.code=e,this.name="NetworkError"}};$h.isNetworkErrorCode=t=>t?["ECONNRESET","ENOTFOUND","ETIMEDOUT","ECONNREFUSED","EHOSTUNREACH"].includes(t):!1;var Um=class extends Error{constructor(){super(`Cache storage quota has been hit. Unable to upload any new cache entries. -More info on storage limits: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#calculating-minute-and-storage-spending`),this.name="UsageError"}};Um.isUsageErrorMessage=t=>t?t.includes("insufficient usage"):!1;var II=class extends Error{constructor(e){super(e),this.name="RateLimitError"}};var _st=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},Ez=class{constructor(e){this.contentLength=e,this.sentBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}setSentBytes(e){this.sentBytes=e}getTransferredBytes(){return this.sentBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.sentBytes,r=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,s=(e/(1024*1024)/(n/1e3)).toFixed(1);Je(`Sent ${e} of ${this.contentLength} (${r}%), ${s} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setSentBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let r=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(r,e))};this.timeoutHandle=setTimeout(r,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}};function zfe(t,e,r){return _st(this,void 0,void 0,function*(){var n;let s=new ou(t),o=s.getBlockBlobClient(),i=new Ez((n=r?.archiveSizeBytes)!==null&&n!==void 0?n:0),a={blockSize:r?.uploadChunkSize,concurrency:r?.uploadConcurrency,maxSingleShotSize:128*1024*1024,onProgress:i.onProgress()};try{i.startDisplayTimer(),$(`BlobClient: ${s.name}:${s.accountName}:${s.containerName}`);let c=yield o.uploadFile(e,a);if(c._response.status>=400)throw new _N(`uploadCacheArchiveSDK: upload failed with status code ${c._response.status}`);return c}catch(c){throw _r(`uploadCacheArchiveSDK: internal error uploading cache archive: ${c.message}`),c}finally{i.stopDisplayTimer()}})}var Yfe=Q(require("buffer"),1),Tc=Q(require("fs"),1),Wfe=Q(require("stream"),1),jfe=Q(require("util"),1);var QN=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function DN(t){return t?t>=200&&t<300:!1}function Qst(t){return t?t>=500:!0}function Dst(t){return t?[Cr.BadGateway,Cr.ServiceUnavailable,Cr.GatewayTimeout].includes(t):!1}function kst(t){return QN(this,void 0,void 0,function*(){return new Promise(e=>setTimeout(e,t))})}function Vfe(t,e,r){return QN(this,arguments,void 0,function*(n,s,o,i=oB,a=iB,c=void 0){let l="",u=1;for(;u<=i;){let d,p,m=!1;try{d=yield s()}catch(h){c&&(d=c(h)),m=!0,l=h.message}if(d&&(p=o(d),!Qst(p)))return d;if(p&&(m=Dst(p),l=`Cache service responded with ${p}`),$(`${n} - Attempt ${u} of ${i} failed with error: ${l}`),!m){$(`${n} - Error is not retryable`);break}yield kst(a),u++}throw Error(`${n} failed: ${l}`)})}function xI(t,e){return QN(this,arguments,void 0,function*(r,n,s=oB,o=iB){return yield Vfe(r,n,i=>i.statusCode,s,o,i=>{if(i instanceof tc)return{statusCode:i.statusCode,result:null,headers:{},error:i}})})}function Gh(t,e){return QN(this,arguments,void 0,function*(r,n,s=oB,o=iB){return yield Vfe(r,n,i=>i.message.statusCode,s,o)})}var xi=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function Lst(t,e){return xi(this,void 0,void 0,function*(){yield jfe.promisify(Wfe.pipeline)(t.message,e)})}var kN=class{constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset=this.segmentOffset+this.segmentSize,this.segmentIndex=this.segmentIndex+1,this.segmentSize=e,this.receivedBytes=0,$(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){this.receivedBytes=e}getTransferredBytes(){return this.segmentOffset+this.receivedBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.segmentOffset+this.receivedBytes,r=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,s=(e/(1024*1024)/(n/1e3)).toFixed(1);Je(`Received ${e} of ${this.contentLength} (${r}%), ${s} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setReceivedBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let r=()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(r,e))};this.timeoutHandle=setTimeout(r,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}};function LN(t,e){return xi(this,void 0,void 0,function*(){let r=Tc.createWriteStream(e),n=new Vl("actions/cache"),s=yield Gh("downloadCache",()=>xi(this,void 0,void 0,function*(){return n.get(t)}));s.message.socket.setTimeout(VU,()=>{s.message.destroy(),$(`Aborting download, socket timed out after ${VU} ms`)}),yield Lst(s,r);let o=s.message.headers["content-length"];if(o){let i=parseInt(o),a=ec(e);if(a!==i)throw new Error(`Incomplete download. Expected file size: ${i}, actual file size: ${a}`)}else $("Unable to validate download, no Content-Length header")})}function Jfe(t,e,r){return xi(this,void 0,void 0,function*(){var n;let s=yield Tc.promises.open(e,"w"),o=new Vl("actions/cache",void 0,{socketTimeout:r.timeoutInMs,keepAlive:!0});try{let a=(yield Gh("downloadCacheMetadata",()=>xi(this,void 0,void 0,function*(){return yield o.request("HEAD",t,null,{})}))).message.headers["content-length"];if(a==null)throw new Error("Content-Length not found on blob response");let c=parseInt(a);if(Number.isNaN(c))throw new Error(`Could not interpret Content-Length: ${c}`);let l=[],u=4*1024*1024;for(let b=0;bxi(this,void 0,void 0,function*(){return yield Ost(o,t,b,T)})})}l.reverse();let d=0,p=0,m=new kN(c);m.startDisplayTimer();let h=m.onProgress(),y=[],I,x=()=>xi(this,void 0,void 0,function*(){let b=yield Promise.race(Object.values(y));yield s.write(b.buffer,0,b.count,b.offset),d--,delete y[b.offset],p+=b.count,h({loadedBytes:p})});for(;I=l.pop();)y[I.offset]=I.promiseGetter(),d++,d>=((n=r.downloadConcurrency)!==null&&n!==void 0?n:10)&&(yield x());for(;d>0;)yield x()}finally{o.dispose(),yield s.close()}})}function Ost(t,e,r,n){return xi(this,void 0,void 0,function*(){let o=0;for(;;)try{let a=yield Xfe(3e4,Mst(t,e,r,n));if(typeof a=="string")throw new Error("downloadSegmentRetry failed due to timeout");return a}catch(i){if(o>=5)throw i;o++}})}function Mst(t,e,r,n){return xi(this,void 0,void 0,function*(){let s=yield Gh("downloadCachePart",()=>xi(this,void 0,void 0,function*(){return yield t.get(e,{Range:`bytes=${r}-${r+n-1}`})}));if(!s.readBodyBuffer)throw new Error("Expected HttpClientResponse to implement readBodyBuffer");return{offset:r,count:n,buffer:yield s.readBodyBuffer()}})}function Kfe(t,e,r){return xi(this,void 0,void 0,function*(){var n;let s=new qh(t,void 0,{retryOptions:{tryTimeoutInMs:r.timeoutInMs}}),i=(n=(yield s.getProperties()).contentLength)!==null&&n!==void 0?n:-1;if(i<0)$("Unable to determine content length, downloading file with http-client..."),yield LN(t,e);else{let a=Math.min(134217728,Yfe.constants.MAX_LENGTH),c=new kN(i),l=Tc.openSync(e,"w");try{c.startDisplayTimer();let u=new AbortController,d=u.signal;for(;!c.isDone();){let p=c.segmentOffset+c.segmentSize,m=Math.min(a,i-p);c.nextSegment(m);let h=yield Xfe(r.segmentTimeoutInMs||36e5,s.downloadToBuffer(p,m,{abortSignal:d,concurrency:r.downloadConcurrency,onProgress:c.onProgress()}));if(h==="timeout")throw u.abort(),new Error("Aborting cache download as the download time exceeded the timeout.");Buffer.isBuffer(h)&&Tc.writeFileSync(l,h)}}finally{c.stopDisplayTimer(),Tc.closeSync(l)}}})}var Xfe=(t,e)=>xi(void 0,void 0,void 0,function*(){let r,n=new Promise(s=>{r=setTimeout(()=>s("timeout"),t)});return Promise.race([e,n]).then(s=>(clearTimeout(r),s))});function Cz(t){let e={useAzureSdk:!1,uploadConcurrency:4,uploadChunkSize:33554432};return t&&(typeof t.useAzureSdk=="boolean"&&(e.useAzureSdk=t.useAzureSdk),typeof t.uploadConcurrency=="number"&&(e.uploadConcurrency=t.uploadConcurrency),typeof t.uploadChunkSize=="number"&&(e.uploadChunkSize=t.uploadChunkSize)),e.uploadConcurrency=isNaN(Number(process.env.CACHE_UPLOAD_CONCURRENCY))?e.uploadConcurrency:Math.min(32,Number(process.env.CACHE_UPLOAD_CONCURRENCY)),e.uploadChunkSize=isNaN(Number(process.env.CACHE_UPLOAD_CHUNK_SIZE))?e.uploadChunkSize:Math.min(128*1024*1024,Number(process.env.CACHE_UPLOAD_CHUNK_SIZE)*1024*1024),$(`Use Azure SDK: ${e.useAzureSdk}`),$(`Upload concurrency: ${e.uploadConcurrency}`),$(`Upload chunk size: ${e.uploadChunkSize}`),e}function Zfe(t){let e={useAzureSdk:!1,concurrentBlobDownloads:!0,downloadConcurrency:8,timeoutInMs:3e4,segmentTimeoutInMs:6e5,lookupOnly:!1};t&&(typeof t.useAzureSdk=="boolean"&&(e.useAzureSdk=t.useAzureSdk),typeof t.concurrentBlobDownloads=="boolean"&&(e.concurrentBlobDownloads=t.concurrentBlobDownloads),typeof t.downloadConcurrency=="number"&&(e.downloadConcurrency=t.downloadConcurrency),typeof t.timeoutInMs=="number"&&(e.timeoutInMs=t.timeoutInMs),typeof t.segmentTimeoutInMs=="number"&&(e.segmentTimeoutInMs=t.segmentTimeoutInMs),typeof t.lookupOnly=="boolean"&&(e.lookupOnly=t.lookupOnly));let r=process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS;return r&&!isNaN(Number(r))&&isFinite(Number(r))&&(e.segmentTimeoutInMs=Number(r)*60*1e3),$(`Use Azure SDK: ${e.useAzureSdk}`),$(`Download concurrency: ${e.downloadConcurrency}`),$(`Request timeout (ms): ${e.timeoutInMs}`),$(`Cache segment download timeout mins env var: ${process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS}`),$(`Segment download timeout (ms): ${e.segmentTimeoutInMs}`),$(`Lookup only: ${e.lookupOnly}`),e}function Iz(){let e=new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.trimEnd().toUpperCase(),r=e==="GITHUB.COM",n=e.endsWith(".GHE.COM"),s=e.endsWith(".LOCALHOST");return!r&&!n&&!s}function wI(){return Iz()?"v1":process.env.ACTIONS_CACHE_SERVICE_V2?"v2":"v1"}function ON(){let t=wI();switch(t){case"v1":return process.env.ACTIONS_CACHE_URL||process.env.ACTIONS_RESULTS_URL||"";case"v2":return process.env.ACTIONS_RESULTS_URL||"";default:throw new Error(`Unsupported cache service version: ${t}`)}}var nAe=Q(rAe(),1);function MN(){return`@actions/cache-${nAe.version}`}var Xs=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function bI(t){let e=ON();if(!e)throw new Error("Cache Service Url not found, unable to restore cache.");let r=`${e}_apis/artifactcache/${t}`;return $(`Resource Url: ${r}`),r}function qst(t,e){return`${t};api-version=${e}`}function $st(){return{headers:{Accept:qst("application/json","6.0-preview.1")}}}function xz(){let t=process.env.ACTIONS_RUNTIME_TOKEN||"",e=new fh(t);return new Vl(MN(),[e],$st())}function iAe(t,e,r){return Xs(this,void 0,void 0,function*(){let n=xz(),s=mh(e,r?.compressionMethod,r?.enableCrossOsArchive),o=`cache?keys=${encodeURIComponent(t.join(","))}&version=${s}`,i=yield xI("getCacheEntry",()=>Xs(this,void 0,void 0,function*(){return n.getJson(bI(o))}));if(i.statusCode===204)return am()&&(yield Gst(t[0],n,s)),null;if(!DN(i.statusCode))throw new Error(`Cache service responded with ${i.statusCode}`);let a=i.result,c=a?.archiveLocation;if(!c)throw new Error("Cache not found.");return So(c),$("Cache Result:"),$(JSON.stringify(a)),a})}function Gst(t,e,r){return Xs(this,void 0,void 0,function*(){let n=`caches?key=${encodeURIComponent(t)}`,s=yield xI("listCache",()=>Xs(this,void 0,void 0,function*(){return e.getJson(bI(n))}));if(s.statusCode===200){let o=s.result,i=o?.totalCount;if(i&&i>0){$(`No matching cache found for cache key '${t}', version '${r} and scope ${process.env.GITHUB_REF}. There exist one or more cache(s) with similar key but they have different version or scope. See more info on cache matching here: https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#matching-a-cache-key -Other caches with similar key:`);for(let a of o?.artifactCaches||[])$(`Cache Key: ${a?.cacheKey}, Cache Version: ${a?.cacheVersion}, Cache Scope: ${a?.scope}, Cache Created: ${a?.creationTime}`)}}})}function wz(t,e,r){return Xs(this,void 0,void 0,function*(){let n=new oAe.URL(t),s=Zfe(r);n.hostname.endsWith(".blob.core.windows.net")?s.useAzureSdk?yield Kfe(t,e,s):s.concurrentBlobDownloads?yield Jfe(t,e,s):yield LN(t,e):yield LN(t,e)})}function aAe(t,e,r){return Xs(this,void 0,void 0,function*(){let n=xz(),s=mh(e,r?.compressionMethod,r?.enableCrossOsArchive),o={key:t,version:s,cacheSize:r?.cacheSize};return yield xI("reserveCache",()=>Xs(this,void 0,void 0,function*(){return n.postJson(bI("caches"),o)}))})}function sAe(t,e){return`bytes ${t}-${e}/*`}function Hst(t,e,r,n,s){return Xs(this,void 0,void 0,function*(){$(`Uploading chunk of size ${s-n+1} bytes at offset ${n} with content range: ${sAe(n,s)}`);let o={"Content-Type":"application/octet-stream","Content-Range":sAe(n,s)},i=yield Gh(`uploadChunk (start: ${n}, end: ${s})`,()=>Xs(this,void 0,void 0,function*(){return t.sendStream("PATCH",e,r(),o)}));if(!DN(i.message.statusCode))throw new Error(`Cache service responded with ${i.message.statusCode} during upload chunk.`)})}function zst(t,e,r,n){return Xs(this,void 0,void 0,function*(){let s=ec(r),o=bI(`caches/${e.toString()}`),i=Hh.openSync(r,"r"),a=Cz(n),c=JU("uploadConcurrency",a.uploadConcurrency),l=JU("uploadChunkSize",a.uploadChunkSize),u=[...new Array(c).keys()];$("Awaiting all uploads");let d=0;try{yield Promise.all(u.map(()=>Xs(this,void 0,void 0,function*(){for(;dHh.createReadStream(r,{fd:i,start:m,end:h,autoClose:!1}).on("error",y=>{throw new Error(`Cache upload failed because file read failed with ${y.message}`)}),m,h)}})))}finally{Hh.closeSync(i)}})}function Vst(t,e,r){return Xs(this,void 0,void 0,function*(){let n={size:r};return yield xI("commitCache",()=>Xs(this,void 0,void 0,function*(){return t.postJson(bI(`caches/${e.toString()}`),n)}))})}function bz(t,e,r,n){return Xs(this,void 0,void 0,function*(){if(Cz(n).useAzureSdk){if(!r)throw new Error("Azure Storage SDK can only be used when a signed URL is provided.");yield zfe(r,e,n)}else{let o=xz();$("Upload cache"),yield zst(o,t,e,n),$("Commiting cache");let i=ec(e);Je(`Cache Size: ~${Math.round(i/(1024*1024))} MB (${i} B)`);let a=yield Vst(o,t,i);if(!DN(a.statusCode))throw new Error(`Cache service responded with ${a.statusCode} during commit cache.`);Je("Cache saved successfully")}})}var the=Q(WAe(),1),Mr=Q(Or(),1),Fo=Q(Or(),1),zm=Q(Or(),1),Vm=Q(Or(),1),Ym=Q(Or(),1);var y3=Q(Or(),1),E3=Q(Or(),1),XAe=Q(Or(),1),ZAe=Q(Or(),1),ehe=Q(Or(),1);var A3=Q(Or(),1),h3=Q(Or(),1),jAe=Q(Or(),1),JAe=Q(Or(),1),KAe=Q(Or(),1),g3=class extends KAe.MessageType{constructor(){super("github.actions.results.entities.v1.CacheScope",[{no:1,name:"scope",kind:"scalar",T:9},{no:2,name:"permission",kind:"scalar",T:3}])}create(e){let r={scope:"",permission:"0"};return globalThis.Object.defineProperty(r,JAe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,jAe.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),i=e.pos+r;for(;e.poswT}])}create(e){let r={repositoryId:"0",scope:[]};return globalThis.Object.defineProperty(r,ZAe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,XAe.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),i=e.pos+r;for(;e.posDc},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",version:""};return globalThis.Object.defineProperty(r,Vm.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,zm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),i=e.pos+r;for(;e.posDc},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"size_bytes",kind:"scalar",T:3},{no:4,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",sizeBytes:"0",version:""};return globalThis.Object.defineProperty(r,Vm.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,zm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),i=e.pos+r;for(;e.posDc},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"restore_keys",kind:"scalar",repeat:2,T:9},{no:4,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",restoreKeys:[],version:""};return globalThis.Object.defineProperty(r,Vm.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,zm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),i=e.pos+r;for(;e.posN3.fromJson(s,{ignoreUnknownFields:!0}))}FinalizeCacheEntryUpload(e){let r=T3.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request("github.actions.results.api.v1.CacheService","FinalizeCacheEntryUpload","application/json",r).then(s=>P3.fromJson(s,{ignoreUnknownFields:!0}))}GetCacheEntryDownloadURL(e){let r=v3.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request("github.actions.results.api.v1.CacheService","GetCacheEntryDownloadURL","application/json",r).then(s=>_3.fromJson(s,{ignoreUnknownFields:!0}))}};function rhe(t){if(t)try{let r=new URL(t).searchParams.get("sig");r&&(So(r),So(encodeURIComponent(r)))}catch(e){$(`Failed to parse URL: ${t} ${e instanceof Error?e.message:String(e)}`)}}function nhe(t){if(typeof t!="object"||t===null){$("body is not an object or is null");return}"signed_upload_url"in t&&typeof t.signed_upload_url=="string"&&rhe(t.signed_upload_url),"signed_download_url"in t&&typeof t.signed_download_url=="string"&&rhe(t.signed_download_url)}var ST=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},Q3=class{constructor(e,r,n,s){this.maxAttempts=5,this.baseRetryIntervalMilliseconds=3e3,this.retryMultiplier=1.5;let o=vle();this.baseUrl=ON(),r&&(this.maxAttempts=r),n&&(this.baseRetryIntervalMilliseconds=n),s&&(this.retryMultiplier=s),this.httpClient=new Vl(e,[new fh(o)])}request(e,r,n,s){return ST(this,void 0,void 0,function*(){let o=new URL(`/twirp/${e}/${r}`,this.baseUrl).href;$(`[Request] ${r} ${o}`);let i={"Content-Type":n};try{let{body:a}=yield this.retryableRequest(()=>ST(this,void 0,void 0,function*(){return this.httpClient.post(o,JSON.stringify(s),i)}));return a}catch(a){throw new Error(`Failed to ${r}: ${a.message}`)}})}retryableRequest(e){return ST(this,void 0,void 0,function*(){let r=0,n="",s="";for(;r0&&_r(`You've hit a rate limit, your rate limit will reset in ${d} seconds`)}throw new II(`Rate limited: ${n}`)}}catch(a){if(a instanceof SyntaxError&&$(`Raw Body: ${s}`),a instanceof Um||a instanceof II)throw a;if($h.isNetworkErrorCode(a?.code))throw new $h(a?.code);o=!0,n=a.message}if(!o)throw new Error(`Received non-retryable error: ${n}`);if(r+1===this.maxAttempts)throw new Error(`Failed to make request after ${this.maxAttempts} attempts: ${n}`);let i=this.getExponentialRetryTimeMilliseconds(r);Je(`Attempt ${r+1} of ${this.maxAttempts} failed with error: ${n}. Retrying request in ${i} ms...`),yield this.sleep(i),r++}throw new Error("Request failed")})}isSuccessStatusCode(e){return e?e>=200&&e<300:!1}isRetryableHttpStatusCode(e){return e?[Cr.BadGateway,Cr.GatewayTimeout,Cr.InternalServerError,Cr.ServiceUnavailable].includes(e):!1}sleep(e){return ST(this,void 0,void 0,function*(){return new Promise(r=>setTimeout(r,e))})}getExponentialRetryTimeMilliseconds(e){if(e<0)throw new Error("attempt should be a positive integer");if(e===0)return this.baseRetryIntervalMilliseconds;let r=this.baseRetryIntervalMilliseconds*Math.pow(this.retryMultiplier,e),n=r*this.retryMultiplier;return Math.trunc(Math.random()*(n-r)+r)}};function D3(t){let e=new Q3(MN(),t?.maxAttempts,t?.retryIntervalMs,t?.retryMultiplier);return new bT(e)}var BT=require("fs"),Uo=Q(require("path"),1);var au=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},Dd=process.platform==="win32";function rat(){return au(this,void 0,void 0,function*(){switch(process.platform){case"win32":{let t=yield Ple(),e=Ble;if(t)return{path:t,type:No.GNU};if((0,BT.existsSync)(e))return{path:e,type:No.BSD};break}case"darwin":{let t=yield $s("gtar",!1);return t?{path:t,type:No.GNU}:{path:yield $s("tar",!0),type:No.BSD}}default:break}return{path:yield $s("tar",!0),type:No.GNU}})}function nat(t,e,r){return au(this,arguments,void 0,function*(n,s,o,i=""){let a=[`"${n.path}"`],c=gd(s),l="cache.tar",u=she(),d=n.type===No.BSD&&s!==gs.Gzip&&Dd;switch(o){case"create":a.push("--posix","-cf",d?l:c.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),"--exclude",d?l:c.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),"-P","-C",u.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),"--files-from",WU);break;case"extract":a.push("-xf",d?l:i.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),"-P","-C",u.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"));break;case"list":a.push("-tf",d?l:i.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),"-P");break}if(n.type===No.GNU)switch(process.platform){case"win32":a.push("--force-local");break;case"darwin":a.push("--delay-directory-restore");break}return a})}function k3(t,e){return au(this,arguments,void 0,function*(r,n,s=""){let o,i=yield rat(),a=yield nat(i,r,n,s),c=n!=="create"?yield sat(i,r,s):yield oat(i,r),l=i.type===No.BSD&&r!==gs.Gzip&&Dd;return l&&n!=="create"?o=[[...c].join(" "),[...a].join(" ")]:o=[[...a].join(" "),[...c].join(" ")],l?o:[o.join(" ")]})}function she(){var t;return(t=process.env.GITHUB_WORKSPACE)!==null&&t!==void 0?t:process.cwd()}function sat(t,e,r){return au(this,void 0,void 0,function*(){let n=t.type===No.BSD&&e!==gs.Gzip&&Dd;switch(e){case gs.Zstd:return n?["zstd -d --long=30 --force -o",EC,r.replace(new RegExp(`\\${Uo.sep}`,"g"),"/")]:["--use-compress-program",Dd?'"zstd -d --long=30"':"unzstd --long=30"];case gs.ZstdWithoutLong:return n?["zstd -d --force -o",EC,r.replace(new RegExp(`\\${Uo.sep}`,"g"),"/")]:["--use-compress-program",Dd?'"zstd -d"':"unzstd"];default:return["-z"]}})}function oat(t,e){return au(this,void 0,void 0,function*(){let r=gd(e),n=t.type===No.BSD&&e!==gs.Gzip&&Dd;switch(e){case gs.Zstd:return n?["zstd -T0 --long=30 --force -o",r.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),EC]:["--use-compress-program",Dd?'"zstd -T0 --long=30"':"zstdmt --long=30"];case gs.ZstdWithoutLong:return n?["zstd -T0 --force -o",r.replace(new RegExp(`\\${Uo.sep}`,"g"),"/"),EC]:["--use-compress-program",Dd?'"zstd -T0"':"zstdmt"];default:return["-z"]}})}function L3(t,e){return au(this,void 0,void 0,function*(){for(let r of t)try{yield ld(r,void 0,{cwd:e,env:Object.assign(Object.assign({},process.env),{MSYS:"winsymlinks:nativestrict"})})}catch(n){throw new Error(`${r.split(" ")[0]} failed with error: ${n?.message}`)}})}function FI(t,e){return au(this,void 0,void 0,function*(){let r=yield k3(e,"list",t);yield L3(r)})}function O3(t,e){return au(this,void 0,void 0,function*(){let r=she();yield im(r);let n=yield k3(e,"extract",t);yield L3(n)})}function M3(t,e,r){return au(this,void 0,void 0,function*(){(0,BT.writeFileSync)(Uo.join(t,WU),e.join(` -`));let n=yield k3(r,"create");yield L3(n,t)})}var ag=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},ga=class t extends Error{constructor(e){super(e),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}},ig=class t extends Error{constructor(e){super(e),this.name="ReserveCacheError",Object.setPrototypeOf(this,t.prototype)}},RT=class t extends Error{constructor(e){super(e),this.name="FinalizeCacheError",Object.setPrototypeOf(this,t.prototype)}};function ohe(t){if(!t||t.length===0)throw new ga("Path Validation Error: At least one directory or file path is required")}function F3(t){if(t.length>512)throw new ga(`Key Validation Error: ${t} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(t))throw new ga(`Key Validation Error: ${t} cannot contain commas.`)}function U3(){return wI()==="v2"?!!process.env.ACTIONS_RESULTS_URL:!!process.env.ACTIONS_CACHE_URL}function ihe(t,e,r,n){return ag(this,arguments,void 0,function*(s,o,i,a,c=!1){let l=wI();return $(`Cache service version: ${l}`),ohe(s),l==="v2"?yield aat(s,o,i,a,c):yield iat(s,o,i,a,c)})}function iat(t,e,r,n){return ag(this,arguments,void 0,function*(s,o,i,a,c=!1){i=i||[];let l=[o,...i];if($("Resolved Keys:"),$(JSON.stringify(l)),l.length>10)throw new ga("Key Validation Error: Keys are limited to a maximum of 10.");for(let p of l)F3(p);let u=yield xC(),d="";try{let p=yield iAe(l,s,{compressionMethod:u,enableCrossOsArchive:c});if(!p?.archiveLocation)return;if(a?.lookupOnly)return Je("Lookup only - skipping download"),p.cacheKey;d=UI.join(yield CC(),gd(u)),$(`Archive Path: ${d}`),yield wz(p.archiveLocation,d,a),am()&&(yield FI(d,u));let m=ec(d);return Je(`Cache Size: ~${Math.round(m/(1024*1024))} MB (${m} B)`),yield O3(d,u),Je("Cache restored successfully"),p.cacheKey}catch(p){let m=p;if(m.name===ga.name)throw p;m instanceof tc&&typeof m.statusCode=="number"&&m.statusCode>=500?rh(`Failed to restore: ${p.message}`):_r(`Failed to restore: ${p.message}`)}finally{try{yield IC(d)}catch(p){$(`Failed to delete archive: ${p}`)}}})}function aat(t,e,r,n){return ag(this,arguments,void 0,function*(s,o,i,a,c=!1){a=Object.assign(Object.assign({},a),{useAzureSdk:!0}),i=i||[];let l=[o,...i];if($("Resolved Keys:"),$(JSON.stringify(l)),l.length>10)throw new ga("Key Validation Error: Keys are limited to a maximum of 10.");for(let d of l)F3(d);let u="";try{let d=D3(),p=yield xC(),m={key:o,restoreKeys:i,version:mh(s,p,c)},h=yield d.GetCacheEntryDownloadURL(m);if(!h.ok){$(`Cache not found for version ${m.version} of keys: ${l.join(", ")}`);return}if(m.key!==h.matchedKey?Je(`Cache hit for restore-key: ${h.matchedKey}`):Je(`Cache hit for: ${h.matchedKey}`),a?.lookupOnly)return Je("Lookup only - skipping download"),h.matchedKey;u=UI.join(yield CC(),gd(p)),$(`Archive path: ${u}`),$(`Starting download of archive to: ${u}`),yield wz(h.signedDownloadUrl,u,a);let I=ec(u);return Je(`Cache Size: ~${Math.round(I/(1024*1024))} MB (${I} B)`),am()&&(yield FI(u,p)),yield O3(u,p),Je("Cache restored successfully"),h.matchedKey}catch(d){let p=d;if(p.name===ga.name)throw d;p instanceof tc&&typeof p.statusCode=="number"&&p.statusCode>=500?rh(`Failed to restore: ${d.message}`):_r(`Failed to restore: ${d.message}`)}finally{try{u&&(yield IC(u))}catch(d){$(`Failed to delete archive: ${d}`)}}})}function q3(t,e,r){return ag(this,arguments,void 0,function*(n,s,o,i=!1){let a=wI();return $(`Cache service version: ${a}`),ohe(n),F3(s),a==="v2"?yield lat(n,s,o,i):yield cat(n,s,o,i)})}function cat(t,e,r){return ag(this,arguments,void 0,function*(n,s,o,i=!1){var a,c,l,u,d;let p=yield xC(),m=-1,h=yield jU(n);if($("Cache Paths:"),$(`${JSON.stringify(h)}`),h.length===0)throw new Error("Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.");let y=yield CC(),I=UI.join(y,gd(p));$(`Archive Path: ${I}`);try{yield M3(y,h,p),am()&&(yield FI(I,p));let x=10*1024*1024*1024,b=ec(I);if($(`File Size: ${b}`),b>x&&!Iz())throw new Error(`Cache size of ~${Math.round(b/(1024*1024))} MB (${b} B) is over the 10GB limit, not saving cache.`);$("Reserving Cache");let T=yield aAe(s,n,{compressionMethod:p,enableCrossOsArchive:i,cacheSize:b});if(!((a=T?.result)===null||a===void 0)&&a.cacheId)m=(c=T?.result)===null||c===void 0?void 0:c.cacheId;else throw T?.statusCode===400?new Error((u=(l=T?.error)===null||l===void 0?void 0:l.message)!==null&&u!==void 0?u:`Cache size of ~${Math.round(b/(1024*1024))} MB (${b} B) is over the data cap limit, not saving cache.`):new ig(`Unable to reserve cache with key ${s}, another job may be creating this cache. More details: ${(d=T?.error)===null||d===void 0?void 0:d.message}`);$(`Saving Cache (ID: ${m})`),yield bz(m,I,"",o)}catch(x){let b=x;if(b.name===ga.name)throw x;b.name===ig.name?Je(`Failed to save: ${b.message}`):b instanceof tc&&typeof b.statusCode=="number"&&b.statusCode>=500?rh(`Failed to save: ${b.message}`):_r(`Failed to save: ${b.message}`)}finally{try{yield IC(I)}catch(x){$(`Failed to delete archive: ${x}`)}}return m})}function lat(t,e,r){return ag(this,arguments,void 0,function*(n,s,o,i=!1){o=Object.assign(Object.assign({},o),{uploadChunkSize:64*1024*1024,uploadConcurrency:8,useAzureSdk:!0});let a=yield xC(),c=D3(),l=-1,u=yield jU(n);if($("Cache Paths:"),$(`${JSON.stringify(u)}`),u.length===0)throw new Error("Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.");let d=yield CC(),p=UI.join(d,gd(a));$(`Archive Path: ${p}`);try{yield M3(d,u,a),am()&&(yield FI(p,a));let m=ec(p);$(`File Size: ${m}`),o.archiveSizeBytes=m,$("Reserving Cache");let h=mh(n,a,i),y={key:s,version:h},I;try{let T=yield c.CreateCacheEntry(y);if(!T.ok)throw T.message&&_r(`Cache reservation failed: ${T.message}`),new Error(T.message||"Response was not ok");I=T.signedUploadUrl}catch(T){throw $(`Failed to reserve cache: ${T}`),new ig(`Unable to reserve cache with key ${s}, another job may be creating this cache.`)}$(`Attempting to upload cache located at: ${p}`),yield bz(l,p,I,o);let x={key:s,version:h,sizeBytes:`${m}`},b=yield c.FinalizeCacheEntryUpload(x);if($(`FinalizeCacheEntryUploadResponse: ${b.ok}`),!b.ok)throw b.message?new RT(b.message):new Error(`Unable to finalize cache with key ${s}, another job may be finalizing this cache.`);l=parseInt(b.entryId)}catch(m){let h=m;if(h.name===ga.name)throw m;h.name===ig.name?Je(`Failed to save: ${h.message}`):h.name===RT.name?_r(h.message):h instanceof tc&&typeof h.statusCode=="number"&&h.statusCode>=500?rh(`Failed to save: ${h.message}`):_r(`Failed to save: ${h.message}`)}finally{try{yield IC(p)}catch(m){$(`Failed to delete archive: ${m}`)}}return l})}var ahe=Q(require("util"),1),cg=class t{opts;ghaCacheKey;ghaNoCache;cacheDir;cachePath;static POST_CACHE_KEY="postCache";constructor(e){this.opts=e,this.ghaCacheKey=ahe.format("%s-%s-%s",this.opts.htcName,this.opts.htcVersion,this.platform()),this.ghaNoCache=this.opts.ghaNoCache,this.cacheDir=G3.default.join(this.opts.baseCacheDir,this.opts.htcVersion,this.platform()),this.cachePath=G3.default.join(this.cacheDir,this.opts.cacheFile),NT.default.existsSync(this.cacheDir)||NT.default.mkdirSync(this.cacheDir,{recursive:!0})}async save(e,r){$(`Cache.save ${e}`);let n=this.copyToCache(e),s=await pU(this.cacheDir,this.opts.htcName,this.opts.htcVersion,this.platform());if($(`Cache.save cached to hosted tool cache ${s}`),!this.ghaNoCache&&U3())if(r)try{$(`Cache.save caching ${this.ghaCacheKey} to GitHub Actions cache`),await q3([this.cacheDir],this.ghaCacheKey)}catch(o){_r(`Failed to save cache: ${o}`)}else $(`Cache.save sending ${this.ghaCacheKey} to post state`),cm(t.POST_CACHE_KEY,JSON.stringify({dir:this.cacheDir,key:this.ghaCacheKey}));return n}async find(){try{let e=eae(this.opts.htcName,this.opts.htcVersion,this.platform());if(e)return Je(`Restored from hosted tool cache ${e}`),this.copyToCache(`${e}/${this.opts.cacheFile}`);if(!this.ghaNoCache&&U3()){if($("GitHub Actions cache feature available"),await ihe([this.cacheDir],this.ghaCacheKey))return Je(`Restored ${this.ghaCacheKey} from GitHub Actions cache`),e=await pU(this.cacheDir,this.opts.htcName,this.opts.htcVersion,this.platform()),Je(`Cached to hosted tool cache ${e}`),this.copyToCache(`${e}/${this.opts.cacheFile}`)}else this.ghaNoCache?Je("GitHub Actions cache disabled"):Je("GitHub Actions cache feature not available")}catch(e){_r(`Failed to restore cache: ${e}`)}return""}static async post(){let e=roe(t.POST_CACHE_KEY);if(!e)return Je("State not set"),Promise.resolve(void 0);let r;try{r=JSON.parse(e)}catch(n){throw new Error(`Failed to parse cache post state: ${n}`)}if(!r.dir||!r.key)throw new Error(`Invalid cache post state: ${e}`);try{Je(`Caching ${r.key} to GitHub Actions cache`),await q3([r.dir],r.key)}catch(n){_r(`Failed to save cache: ${n}`)}return r}copyToCache(e){return Je(`Copying ${e} to ${this.cachePath}`),NT.default.copyFileSync(e,this.cachePath),this.cachePath}platform(){let e=process.config.variables.arm_version;return`${$3.default.platform()}-${$3.default.arch()}${e?"v"+e:""}`}};var che=!!process.env.STATE_isPost;che||cm("isPost","true");async function lhe(t,e){if(che)e&&await e(),await JE("Post cache",async()=>{await cg.post()});else try{await t()}catch(r){toe(r.message)}}var j4=Q(require("path"),1);function She(t){return typeof t>"u"||t===null}function pat(t){return typeof t=="object"&&t!==null}function mat(t){return Array.isArray(t)?t:She(t)?[]:[t]}function fat(t,e){var r,n,s,o;if(e)for(o=Object.keys(e),r=0,n=o.length;rSR(l.name.toLowerCase(),u.name.toLowerCase())),a=a.filter((l,u,d)=>!(u>0&&l.name.toLowerCase()===d[u-1].name.toLowerCase()));let c="";return a.forEach(l=>{c+=`${l.name.toLowerCase().trimRight()}:${l.value.trimLeft()} +`}),c}i(n,"getCanonicalizedHeadersString");function s(o){let a=xR(o.url)||"/",c="";c+=`/${t.accountName}${a}`;let l=wR(o.url),u={};if(l){let d=[];for(let p in l)if(Object.prototype.hasOwnProperty.call(l,p)){let m=p.toLowerCase();u[m]=l[p],d.push(m)}d.sort();for(let p of d)c+=` +${p}:${decodeURIComponent(u[p])}`}return c}return i(s,"getCanonicalizedResourceString"),{name:Rtt,async sendRequest(o,a){return e(o),a(o)}}}i(vq,"storageSharedKeyCredentialPolicy");var Ntt="storageRequestFailureDetailsParserPolicy";function Dpe(){return{name:Ntt,async sendRequest(t,e){try{return await e(t)}catch(r){throw typeof r=="object"&&r!==null&&r.response&&r.response.parsedBody&&r.response.parsedBody.code==="InvalidHeaderValue"&&r.response.parsedBody.HeaderName==="x-ms-version"&&(r.message=`The provided service version is not enabled on this storage account. Please see https://learn.microsoft.com/rest/api/storageservices/versioning-for-the-azure-storage-services for additional information. +`),r}}}}i(Dpe,"storageRequestFailureDetailsParserPolicy");var kpe=require("node:crypto");var BR=class{static{i(this,"UserDelegationKeyCredential")}accountName;userDelegationKey;key;constructor(e,r){this.accountName=e,this.userDelegationKey=r,this.key=Buffer.from(r.value,"base64")}computeHMACSHA256(e){return(0,kpe.createHmac)("sha256",this.key).update(e,"utf8").digest("base64")}};var RR="12.31.0",NR="2026-02-06";var TR="https://storage.azure.com/.default",Xl={Parameters:{FORCE_BROWSER_NO_CACHE:"_",SIGNATURE:"sig",SNAPSHOT:"snapshot",VERSIONID:"versionid",TIMEOUT:"timeout"}};var ua="",_q="*",Ttt=1*1024*1024;var Ptt=4*Ttt;var Lpe="AES256",Ope="DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;",Mpe=["Access-Control-Allow-Origin","Cache-Control","Content-Length","Content-Type","Date","Request-Id","traceparent","Transfer-Encoding","User-Agent","x-ms-client-request-id","x-ms-date","x-ms-error-code","x-ms-request-id","x-ms-return-client-request-id","x-ms-version","Accept-Ranges","Content-Disposition","Content-Encoding","Content-Language","Content-MD5","Content-Range","ETag","Last-Modified","Server","Vary","x-ms-content-crc64","x-ms-copy-action","x-ms-copy-completion-time","x-ms-copy-id","x-ms-copy-progress","x-ms-copy-status","x-ms-has-immutability-policy","x-ms-has-legal-hold","x-ms-lease-state","x-ms-lease-status","x-ms-range","x-ms-request-server-encrypted","x-ms-server-encrypted","x-ms-snapshot","x-ms-source-range","If-Match","If-Modified-Since","If-None-Match","If-Unmodified-Since","x-ms-access-tier","x-ms-access-tier-change-time","x-ms-access-tier-inferred","x-ms-account-kind","x-ms-archive-status","x-ms-blob-append-offset","x-ms-blob-cache-control","x-ms-blob-committed-block-count","x-ms-blob-condition-appendpos","x-ms-blob-condition-maxsize","x-ms-blob-content-disposition","x-ms-blob-content-encoding","x-ms-blob-content-language","x-ms-blob-content-length","x-ms-blob-content-md5","x-ms-blob-content-type","x-ms-blob-public-access","x-ms-blob-sequence-number","x-ms-blob-type","x-ms-copy-destination-snapshot","x-ms-creation-time","x-ms-default-encryption-scope","x-ms-delete-snapshots","x-ms-delete-type-permanent","x-ms-deny-encryption-scope-override","x-ms-encryption-algorithm","x-ms-if-sequence-number-eq","x-ms-if-sequence-number-le","x-ms-if-sequence-number-lt","x-ms-incremental-copy","x-ms-lease-action","x-ms-lease-break-period","x-ms-lease-duration","x-ms-lease-id","x-ms-lease-time","x-ms-page-write","x-ms-proposed-lease-id","x-ms-range-get-content-md5","x-ms-rehydrate-priority","x-ms-sequence-number-action","x-ms-sku-name","x-ms-source-content-md5","x-ms-source-if-match","x-ms-source-if-modified-since","x-ms-source-if-none-match","x-ms-source-if-unmodified-since","x-ms-tag-count","x-ms-encryption-key-sha256","x-ms-copy-source-error-code","x-ms-copy-source-status-code","x-ms-if-tags","x-ms-source-if-tags"],Fpe=["comp","maxresults","rscc","rscd","rsce","rscl","rsct","se","si","sip","sp","spr","sr","srt","ss","st","sv","include","marker","prefix","copyid","restype","blockid","blocklisttype","delimiter","prevsnapshot","ske","skoid","sks","skt","sktid","skv","snapshot"],Upe="BlobUsesCustomerSpecifiedEncryption",qpe="BlobDoesNotUseCustomerSpecifiedEncryption",$pe=["10000","10001","10002","10003","10004","10100","10101","10102","10103","10104","11000","11001","11002","11003","11004","11100","11101","11102","11103","11104"];function Zl(t){if(!t||typeof t!="object")return!1;let e=t;return Array.isArray(e.factories)&&typeof e.options=="object"&&typeof e.toServiceClientOptions=="function"}i(Zl,"isPipelineLike");var tI=class{static{i(this,"Pipeline")}factories;options;constructor(e,r={}){this.factories=e,this.options=r}toServiceClientOptions(){return{httpClient:this.options.httpClient,requestPolicyFactories:this.factories}}};function Lr(t,e={}){t||(t=new rr);let r=new tI([],e);return r._credential=t,r}i(Lr,"newPipeline");function vtt(t){let e=[_tt,Gpe,Qtt,Dtt,ktt,Ltt,Mtt];if(t.factories.length){let r=t.factories.filter(n=>!e.some(s=>s(n)));if(r.length){let n=r.some(s=>Ott(s));return{wrappedPolicies:aq(r),afterRetry:n}}}}i(vtt,"processDownlevelPipeline");function Qq(t){let{httpClient:e,...r}=t.options,n=t._coreHttpClient;n||(n=e?cq(e):Pq(),t._coreHttpClient=n);let s=t._corePipeline;if(!s){let o=`azsdk-js-azure-storage-blob/${RR}`,a=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${o}`:`${o}`;s=OC({...r,loggingOptions:{additionalAllowedHeaderNames:Mpe,additionalAllowedQueryParameters:Fpe,logger:hR.info},userAgentOptions:{userAgentPrefix:a},serializationOptions:{stringifyXML:AR,serializerOptions:{xml:{xmlCharKey:"#"}}},deserializationOptions:{parseXML:Nq,serializerOptions:{xml:{xmlCharKey:"#"}}}}),s.removePolicy({phase:"Retry"}),s.removePolicy({name:O2}),s.addPolicy(vpe()),s.addPolicy(_pe(r.retryOptions),{phase:"Retry"}),s.addPolicy(Dpe()),s.addPolicy(Ppe());let c=vtt(t);c&&s.addPolicy(c.wrappedPolicies,c.afterRetry?{afterPhase:"Retry"}:void 0);let l=Dq(t);ko(l)?s.addPolicy(Sh({credential:l,scopes:r.audience??TR,challengeCallbacks:{authorizeRequestOnChallenge:sR}}),{phase:"Sign"}):l instanceof xr&&s.addPolicy(vq({accountName:l.accountName,accountKey:l.accountKey}),{phase:"Sign"}),t._corePipeline=s}return{...r,allowInsecureConnection:!0,httpClient:n,pipeline:s}}i(Qq,"getCoreClientOptions");function Dq(t){if(t._credential)return t._credential;let e=new rr;for(let r of t.factories)if(ko(r.credential))e=r.credential;else if(Gpe(r))return r;return e}i(Dq,"getCredentialFromPipeline");function Gpe(t){return t instanceof xr?!0:t.constructor.name==="StorageSharedKeyCredential"}i(Gpe,"isStorageSharedKeyCredential");function _tt(t){return t instanceof rr?!0:t.constructor.name==="AnonymousCredential"}i(_tt,"isAnonymousCredential");function Qtt(t){return ko(t.credential)}i(Qtt,"isCoreHttpBearerTokenFactory");function Dtt(t){return t instanceof JC?!0:t.constructor.name==="StorageBrowserPolicyFactory"}i(Dtt,"isStorageBrowserPolicyFactory");function ktt(t){return t instanceof eI?!0:t.constructor.name==="StorageRetryPolicyFactory"}i(ktt,"isStorageRetryPolicyFactory");function Ltt(t){return t.constructor.name==="TelemetryPolicyFactory"}i(Ltt,"isStorageTelemetryPolicyFactory");function Ott(t){return t.constructor.name==="InjectorPolicyFactory"}i(Ott,"isInjectorPolicyFactory");function Mtt(t){let e=["GenerateClientRequestIdPolicy","TracingPolicy","LogPolicy","ProxyPolicy","DisableResponseDecompressionPolicy","KeepAlivePolicy","DeserializationPolicy"],r={sendRequest:i(async a=>({request:a,headers:a.headers.clone(),status:500}),"sendRequest")},n={log(a,c){},shouldLog(a){return!1}},o=t.create(r,n).constructor.name;return e.some(a=>o.startsWith(a))}i(Mtt,"isCoreHttpPolicyFactory");var Hpe;(function(t){t.AES256="AES256"})(Hpe||(Hpe={}));var zpe;(function(t){t.Backup="backup"})(zpe||(zpe={}));var Vpe;(function(t){t.NeverExpire="NeverExpire",t.RelativeToCreation="RelativeToCreation",t.RelativeToNow="RelativeToNow",t.Absolute="Absolute"})(Vpe||(Vpe={}));var Ype;(function(t){t.AccountAlreadyExists="AccountAlreadyExists",t.AccountBeingCreated="AccountBeingCreated",t.AccountIsDisabled="AccountIsDisabled",t.AuthenticationFailed="AuthenticationFailed",t.AuthorizationFailure="AuthorizationFailure",t.ConditionHeadersNotSupported="ConditionHeadersNotSupported",t.ConditionNotMet="ConditionNotMet",t.EmptyMetadataKey="EmptyMetadataKey",t.InsufficientAccountPermissions="InsufficientAccountPermissions",t.InternalError="InternalError",t.InvalidAuthenticationInfo="InvalidAuthenticationInfo",t.InvalidHeaderValue="InvalidHeaderValue",t.InvalidHttpVerb="InvalidHttpVerb",t.InvalidInput="InvalidInput",t.InvalidMd5="InvalidMd5",t.InvalidMetadata="InvalidMetadata",t.InvalidQueryParameterValue="InvalidQueryParameterValue",t.InvalidRange="InvalidRange",t.InvalidResourceName="InvalidResourceName",t.InvalidUri="InvalidUri",t.InvalidXmlDocument="InvalidXmlDocument",t.InvalidXmlNodeValue="InvalidXmlNodeValue",t.Md5Mismatch="Md5Mismatch",t.MetadataTooLarge="MetadataTooLarge",t.MissingContentLengthHeader="MissingContentLengthHeader",t.MissingRequiredQueryParameter="MissingRequiredQueryParameter",t.MissingRequiredHeader="MissingRequiredHeader",t.MissingRequiredXmlNode="MissingRequiredXmlNode",t.MultipleConditionHeadersNotSupported="MultipleConditionHeadersNotSupported",t.OperationTimedOut="OperationTimedOut",t.OutOfRangeInput="OutOfRangeInput",t.OutOfRangeQueryParameterValue="OutOfRangeQueryParameterValue",t.RequestBodyTooLarge="RequestBodyTooLarge",t.ResourceTypeMismatch="ResourceTypeMismatch",t.RequestUrlFailedToParse="RequestUrlFailedToParse",t.ResourceAlreadyExists="ResourceAlreadyExists",t.ResourceNotFound="ResourceNotFound",t.ServerBusy="ServerBusy",t.UnsupportedHeader="UnsupportedHeader",t.UnsupportedXmlNode="UnsupportedXmlNode",t.UnsupportedQueryParameter="UnsupportedQueryParameter",t.UnsupportedHttpVerb="UnsupportedHttpVerb",t.AppendPositionConditionNotMet="AppendPositionConditionNotMet",t.BlobAlreadyExists="BlobAlreadyExists",t.BlobImmutableDueToPolicy="BlobImmutableDueToPolicy",t.BlobNotFound="BlobNotFound",t.BlobOverwritten="BlobOverwritten",t.BlobTierInadequateForContentLength="BlobTierInadequateForContentLength",t.BlobUsesCustomerSpecifiedEncryption="BlobUsesCustomerSpecifiedEncryption",t.BlockCountExceedsLimit="BlockCountExceedsLimit",t.BlockListTooLong="BlockListTooLong",t.CannotChangeToLowerTier="CannotChangeToLowerTier",t.CannotVerifyCopySource="CannotVerifyCopySource",t.ContainerAlreadyExists="ContainerAlreadyExists",t.ContainerBeingDeleted="ContainerBeingDeleted",t.ContainerDisabled="ContainerDisabled",t.ContainerNotFound="ContainerNotFound",t.ContentLengthLargerThanTierLimit="ContentLengthLargerThanTierLimit",t.CopyAcrossAccountsNotSupported="CopyAcrossAccountsNotSupported",t.CopyIdMismatch="CopyIdMismatch",t.FeatureVersionMismatch="FeatureVersionMismatch",t.IncrementalCopyBlobMismatch="IncrementalCopyBlobMismatch",t.IncrementalCopyOfEarlierVersionSnapshotNotAllowed="IncrementalCopyOfEarlierVersionSnapshotNotAllowed",t.IncrementalCopySourceMustBeSnapshot="IncrementalCopySourceMustBeSnapshot",t.InfiniteLeaseDurationRequired="InfiniteLeaseDurationRequired",t.InvalidBlobOrBlock="InvalidBlobOrBlock",t.InvalidBlobTier="InvalidBlobTier",t.InvalidBlobType="InvalidBlobType",t.InvalidBlockId="InvalidBlockId",t.InvalidBlockList="InvalidBlockList",t.InvalidOperation="InvalidOperation",t.InvalidPageRange="InvalidPageRange",t.InvalidSourceBlobType="InvalidSourceBlobType",t.InvalidSourceBlobUrl="InvalidSourceBlobUrl",t.InvalidVersionForPageBlobOperation="InvalidVersionForPageBlobOperation",t.LeaseAlreadyPresent="LeaseAlreadyPresent",t.LeaseAlreadyBroken="LeaseAlreadyBroken",t.LeaseIdMismatchWithBlobOperation="LeaseIdMismatchWithBlobOperation",t.LeaseIdMismatchWithContainerOperation="LeaseIdMismatchWithContainerOperation",t.LeaseIdMismatchWithLeaseOperation="LeaseIdMismatchWithLeaseOperation",t.LeaseIdMissing="LeaseIdMissing",t.LeaseIsBreakingAndCannotBeAcquired="LeaseIsBreakingAndCannotBeAcquired",t.LeaseIsBreakingAndCannotBeChanged="LeaseIsBreakingAndCannotBeChanged",t.LeaseIsBrokenAndCannotBeRenewed="LeaseIsBrokenAndCannotBeRenewed",t.LeaseLost="LeaseLost",t.LeaseNotPresentWithBlobOperation="LeaseNotPresentWithBlobOperation",t.LeaseNotPresentWithContainerOperation="LeaseNotPresentWithContainerOperation",t.LeaseNotPresentWithLeaseOperation="LeaseNotPresentWithLeaseOperation",t.MaxBlobSizeConditionNotMet="MaxBlobSizeConditionNotMet",t.NoAuthenticationInformation="NoAuthenticationInformation",t.NoPendingCopyOperation="NoPendingCopyOperation",t.OperationNotAllowedOnIncrementalCopyBlob="OperationNotAllowedOnIncrementalCopyBlob",t.PendingCopyOperation="PendingCopyOperation",t.PreviousSnapshotCannotBeNewer="PreviousSnapshotCannotBeNewer",t.PreviousSnapshotNotFound="PreviousSnapshotNotFound",t.PreviousSnapshotOperationNotSupported="PreviousSnapshotOperationNotSupported",t.SequenceNumberConditionNotMet="SequenceNumberConditionNotMet",t.SequenceNumberIncrementTooLarge="SequenceNumberIncrementTooLarge",t.SnapshotCountExceeded="SnapshotCountExceeded",t.SnapshotOperationRateExceeded="SnapshotOperationRateExceeded",t.SnapshotsPresent="SnapshotsPresent",t.SourceConditionNotMet="SourceConditionNotMet",t.SystemInUse="SystemInUse",t.TargetConditionNotMet="TargetConditionNotMet",t.UnauthorizedBlobOverwrite="UnauthorizedBlobOverwrite",t.BlobBeingRehydrated="BlobBeingRehydrated",t.BlobArchived="BlobArchived",t.BlobNotArchived="BlobNotArchived",t.AuthorizationSourceIPMismatch="AuthorizationSourceIPMismatch",t.AuthorizationProtocolMismatch="AuthorizationProtocolMismatch",t.AuthorizationPermissionMismatch="AuthorizationPermissionMismatch",t.AuthorizationServiceMismatch="AuthorizationServiceMismatch",t.AuthorizationResourceTypeMismatch="AuthorizationResourceTypeMismatch",t.BlobAccessTierNotSupportedForAccountType="BlobAccessTierNotSupportedForAccountType"})(Ype||(Ype={}));var Mo={};en(Mo,{AccessPolicy:()=>Jtt,AppendBlobAppendBlockExceptionHeaders:()=>eH,AppendBlobAppendBlockFromUrlExceptionHeaders:()=>rH,AppendBlobAppendBlockFromUrlHeaders:()=>tH,AppendBlobAppendBlockHeaders:()=>ZG,AppendBlobCreateExceptionHeaders:()=>XG,AppendBlobCreateHeaders:()=>KG,AppendBlobSealExceptionHeaders:()=>sH,AppendBlobSealHeaders:()=>nH,ArrowConfiguration:()=>urt,ArrowField:()=>drt,BlobAbortCopyFromURLExceptionHeaders:()=>bG,BlobAbortCopyFromURLHeaders:()=>wG,BlobAcquireLeaseExceptionHeaders:()=>cG,BlobAcquireLeaseHeaders:()=>aG,BlobBreakLeaseExceptionHeaders:()=>hG,BlobBreakLeaseHeaders:()=>AG,BlobChangeLeaseExceptionHeaders:()=>fG,BlobChangeLeaseHeaders:()=>mG,BlobCopyFromURLExceptionHeaders:()=>xG,BlobCopyFromURLHeaders:()=>IG,BlobCreateSnapshotExceptionHeaders:()=>yG,BlobCreateSnapshotHeaders:()=>gG,BlobDeleteExceptionHeaders:()=>V$,BlobDeleteHeaders:()=>z$,BlobDeleteImmutabilityPolicyExceptionHeaders:()=>rG,BlobDeleteImmutabilityPolicyHeaders:()=>tG,BlobDownloadExceptionHeaders:()=>$$,BlobDownloadHeaders:()=>vR,BlobFlatListSegment:()=>Ktt,BlobGetAccountInfoExceptionHeaders:()=>RG,BlobGetAccountInfoHeaders:()=>BG,BlobGetPropertiesExceptionHeaders:()=>H$,BlobGetPropertiesHeaders:()=>G$,BlobGetTagsExceptionHeaders:()=>PG,BlobGetTagsHeaders:()=>TG,BlobHierarchyListSegment:()=>trt,BlobItemInternal:()=>Xtt,BlobName:()=>Ztt,BlobPrefix:()=>rrt,BlobPropertiesInternal:()=>ert,BlobQueryExceptionHeaders:()=>NG,BlobQueryHeaders:()=>QR,BlobReleaseLeaseExceptionHeaders:()=>uG,BlobReleaseLeaseHeaders:()=>lG,BlobRenewLeaseExceptionHeaders:()=>pG,BlobRenewLeaseHeaders:()=>dG,BlobServiceProperties:()=>rI,BlobServiceStatistics:()=>kq,BlobSetExpiryExceptionHeaders:()=>J$,BlobSetExpiryHeaders:()=>j$,BlobSetHttpHeadersExceptionHeaders:()=>X$,BlobSetHttpHeadersHeaders:()=>K$,BlobSetImmutabilityPolicyExceptionHeaders:()=>eG,BlobSetImmutabilityPolicyHeaders:()=>Z$,BlobSetLegalHoldExceptionHeaders:()=>sG,BlobSetLegalHoldHeaders:()=>nG,BlobSetMetadataExceptionHeaders:()=>iG,BlobSetMetadataHeaders:()=>oG,BlobSetTagsExceptionHeaders:()=>_G,BlobSetTagsHeaders:()=>vG,BlobSetTierExceptionHeaders:()=>SG,BlobSetTierHeaders:()=>_R,BlobStartCopyFromURLExceptionHeaders:()=>CG,BlobStartCopyFromURLHeaders:()=>EG,BlobTag:()=>Wtt,BlobTags:()=>sI,BlobUndeleteExceptionHeaders:()=>W$,BlobUndeleteHeaders:()=>Y$,Block:()=>nrt,BlockBlobCommitBlockListExceptionHeaders:()=>fH,BlockBlobCommitBlockListHeaders:()=>mH,BlockBlobGetBlockListExceptionHeaders:()=>hH,BlockBlobGetBlockListHeaders:()=>AH,BlockBlobPutBlobFromUrlExceptionHeaders:()=>cH,BlockBlobPutBlobFromUrlHeaders:()=>aH,BlockBlobStageBlockExceptionHeaders:()=>uH,BlockBlobStageBlockFromURLExceptionHeaders:()=>pH,BlockBlobStageBlockFromURLHeaders:()=>dH,BlockBlobStageBlockHeaders:()=>lH,BlockBlobUploadExceptionHeaders:()=>iH,BlockBlobUploadHeaders:()=>oH,BlockList:()=>$q,BlockLookupList:()=>qq,ClearRange:()=>ort,ContainerAcquireLeaseExceptionHeaders:()=>R$,ContainerAcquireLeaseHeaders:()=>B$,ContainerBreakLeaseExceptionHeaders:()=>Q$,ContainerBreakLeaseHeaders:()=>_$,ContainerChangeLeaseExceptionHeaders:()=>k$,ContainerChangeLeaseHeaders:()=>D$,ContainerCreateExceptionHeaders:()=>a$,ContainerCreateHeaders:()=>i$,ContainerDeleteExceptionHeaders:()=>d$,ContainerDeleteHeaders:()=>u$,ContainerFilterBlobsExceptionHeaders:()=>S$,ContainerFilterBlobsHeaders:()=>b$,ContainerGetAccessPolicyExceptionHeaders:()=>A$,ContainerGetAccessPolicyHeaders:()=>f$,ContainerGetAccountInfoExceptionHeaders:()=>q$,ContainerGetAccountInfoHeaders:()=>U$,ContainerGetPropertiesExceptionHeaders:()=>l$,ContainerGetPropertiesHeaders:()=>c$,ContainerItem:()=>ztt,ContainerListBlobFlatSegmentExceptionHeaders:()=>O$,ContainerListBlobFlatSegmentHeaders:()=>L$,ContainerListBlobHierarchySegmentExceptionHeaders:()=>F$,ContainerListBlobHierarchySegmentHeaders:()=>M$,ContainerProperties:()=>Vtt,ContainerReleaseLeaseExceptionHeaders:()=>T$,ContainerReleaseLeaseHeaders:()=>N$,ContainerRenameExceptionHeaders:()=>I$,ContainerRenameHeaders:()=>C$,ContainerRenewLeaseExceptionHeaders:()=>v$,ContainerRenewLeaseHeaders:()=>P$,ContainerRestoreExceptionHeaders:()=>E$,ContainerRestoreHeaders:()=>y$,ContainerSetAccessPolicyExceptionHeaders:()=>g$,ContainerSetAccessPolicyHeaders:()=>h$,ContainerSetMetadataExceptionHeaders:()=>m$,ContainerSetMetadataHeaders:()=>p$,ContainerSubmitBatchExceptionHeaders:()=>w$,ContainerSubmitBatchHeaders:()=>x$,CorsRule:()=>$tt,DelimitedTextConfiguration:()=>crt,FilterBlobItem:()=>Ytt,FilterBlobSegment:()=>nI,GeoReplication:()=>Htt,JsonTextConfiguration:()=>lrt,KeyInfo:()=>Oq,ListBlobsFlatSegmentResponse:()=>Fq,ListBlobsHierarchySegmentResponse:()=>Uq,ListContainersSegmentResponse:()=>Lq,Logging:()=>Ftt,Metrics:()=>qtt,PageBlobClearPagesExceptionHeaders:()=>MG,PageBlobClearPagesHeaders:()=>OG,PageBlobCopyIncrementalExceptionHeaders:()=>JG,PageBlobCopyIncrementalHeaders:()=>jG,PageBlobCreateExceptionHeaders:()=>DG,PageBlobCreateHeaders:()=>QG,PageBlobGetPageRangesDiffExceptionHeaders:()=>HG,PageBlobGetPageRangesDiffHeaders:()=>GG,PageBlobGetPageRangesExceptionHeaders:()=>$G,PageBlobGetPageRangesHeaders:()=>qG,PageBlobResizeExceptionHeaders:()=>VG,PageBlobResizeHeaders:()=>zG,PageBlobUpdateSequenceNumberExceptionHeaders:()=>WG,PageBlobUpdateSequenceNumberHeaders:()=>YG,PageBlobUploadPagesExceptionHeaders:()=>LG,PageBlobUploadPagesFromURLExceptionHeaders:()=>UG,PageBlobUploadPagesFromURLHeaders:()=>FG,PageBlobUploadPagesHeaders:()=>kG,PageList:()=>PR,PageRange:()=>srt,QueryFormat:()=>art,QueryRequest:()=>Gq,QuerySerialization:()=>irt,RetentionPolicy:()=>Utt,ServiceFilterBlobsExceptionHeaders:()=>o$,ServiceFilterBlobsHeaders:()=>s$,ServiceGetAccountInfoExceptionHeaders:()=>t$,ServiceGetAccountInfoHeaders:()=>e$,ServiceGetPropertiesExceptionHeaders:()=>Yq,ServiceGetPropertiesHeaders:()=>Vq,ServiceGetStatisticsExceptionHeaders:()=>jq,ServiceGetStatisticsHeaders:()=>Wq,ServiceGetUserDelegationKeyExceptionHeaders:()=>Zq,ServiceGetUserDelegationKeyHeaders:()=>Xq,ServiceListContainersSegmentExceptionHeaders:()=>Kq,ServiceListContainersSegmentHeaders:()=>Jq,ServiceSetPropertiesExceptionHeaders:()=>zq,ServiceSetPropertiesHeaders:()=>Hq,ServiceSubmitBatchExceptionHeaders:()=>n$,ServiceSubmitBatchHeaders:()=>r$,SignedIdentifier:()=>jtt,StaticWebsite:()=>Gtt,StorageError:()=>K,UserDelegationKey:()=>Mq});var rI={serializedName:"BlobServiceProperties",xmlName:"StorageServiceProperties",type:{name:"Composite",className:"BlobServiceProperties",modelProperties:{blobAnalyticsLogging:{serializedName:"Logging",xmlName:"Logging",type:{name:"Composite",className:"Logging"}},hourMetrics:{serializedName:"HourMetrics",xmlName:"HourMetrics",type:{name:"Composite",className:"Metrics"}},minuteMetrics:{serializedName:"MinuteMetrics",xmlName:"MinuteMetrics",type:{name:"Composite",className:"Metrics"}},cors:{serializedName:"Cors",xmlName:"Cors",xmlIsWrapped:!0,xmlElementName:"CorsRule",type:{name:"Sequence",element:{type:{name:"Composite",className:"CorsRule"}}}},defaultServiceVersion:{serializedName:"DefaultServiceVersion",xmlName:"DefaultServiceVersion",type:{name:"String"}},deleteRetentionPolicy:{serializedName:"DeleteRetentionPolicy",xmlName:"DeleteRetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}},staticWebsite:{serializedName:"StaticWebsite",xmlName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite"}}}}},Ftt={serializedName:"Logging",type:{name:"Composite",className:"Logging",modelProperties:{version:{serializedName:"Version",required:!0,xmlName:"Version",type:{name:"String"}},deleteProperty:{serializedName:"Delete",required:!0,xmlName:"Delete",type:{name:"Boolean"}},read:{serializedName:"Read",required:!0,xmlName:"Read",type:{name:"Boolean"}},write:{serializedName:"Write",required:!0,xmlName:"Write",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},Utt={serializedName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},days:{constraints:{InclusiveMinimum:1},serializedName:"Days",xmlName:"Days",type:{name:"Number"}}}}},qtt={serializedName:"Metrics",type:{name:"Composite",className:"Metrics",modelProperties:{version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},includeAPIs:{serializedName:"IncludeAPIs",xmlName:"IncludeAPIs",type:{name:"Boolean"}},retentionPolicy:{serializedName:"RetentionPolicy",xmlName:"RetentionPolicy",type:{name:"Composite",className:"RetentionPolicy"}}}}},$tt={serializedName:"CorsRule",type:{name:"Composite",className:"CorsRule",modelProperties:{allowedOrigins:{serializedName:"AllowedOrigins",required:!0,xmlName:"AllowedOrigins",type:{name:"String"}},allowedMethods:{serializedName:"AllowedMethods",required:!0,xmlName:"AllowedMethods",type:{name:"String"}},allowedHeaders:{serializedName:"AllowedHeaders",required:!0,xmlName:"AllowedHeaders",type:{name:"String"}},exposedHeaders:{serializedName:"ExposedHeaders",required:!0,xmlName:"ExposedHeaders",type:{name:"String"}},maxAgeInSeconds:{constraints:{InclusiveMinimum:0},serializedName:"MaxAgeInSeconds",required:!0,xmlName:"MaxAgeInSeconds",type:{name:"Number"}}}}},Gtt={serializedName:"StaticWebsite",type:{name:"Composite",className:"StaticWebsite",modelProperties:{enabled:{serializedName:"Enabled",required:!0,xmlName:"Enabled",type:{name:"Boolean"}},indexDocument:{serializedName:"IndexDocument",xmlName:"IndexDocument",type:{name:"String"}},errorDocument404Path:{serializedName:"ErrorDocument404Path",xmlName:"ErrorDocument404Path",type:{name:"String"}},defaultIndexDocumentPath:{serializedName:"DefaultIndexDocumentPath",xmlName:"DefaultIndexDocumentPath",type:{name:"String"}}}}},K={serializedName:"StorageError",type:{name:"Composite",className:"StorageError",modelProperties:{message:{serializedName:"Message",xmlName:"Message",type:{name:"String"}},copySourceStatusCode:{serializedName:"CopySourceStatusCode",xmlName:"CopySourceStatusCode",type:{name:"Number"}},copySourceErrorCode:{serializedName:"CopySourceErrorCode",xmlName:"CopySourceErrorCode",type:{name:"String"}},copySourceErrorMessage:{serializedName:"CopySourceErrorMessage",xmlName:"CopySourceErrorMessage",type:{name:"String"}},code:{serializedName:"Code",xmlName:"Code",type:{name:"String"}},authenticationErrorDetail:{serializedName:"AuthenticationErrorDetail",xmlName:"AuthenticationErrorDetail",type:{name:"String"}}}}},kq={serializedName:"BlobServiceStatistics",xmlName:"StorageServiceStats",type:{name:"Composite",className:"BlobServiceStatistics",modelProperties:{geoReplication:{serializedName:"GeoReplication",xmlName:"GeoReplication",type:{name:"Composite",className:"GeoReplication"}}}}},Htt={serializedName:"GeoReplication",type:{name:"Composite",className:"GeoReplication",modelProperties:{status:{serializedName:"Status",required:!0,xmlName:"Status",type:{name:"Enum",allowedValues:["live","bootstrap","unavailable"]}},lastSyncOn:{serializedName:"LastSyncTime",required:!0,xmlName:"LastSyncTime",type:{name:"DateTimeRfc1123"}}}}},Lq={serializedName:"ListContainersSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListContainersSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},containerItems:{serializedName:"ContainerItems",required:!0,xmlName:"Containers",xmlIsWrapped:!0,xmlElementName:"Container",type:{name:"Sequence",element:{type:{name:"Composite",className:"ContainerItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},ztt={serializedName:"ContainerItem",xmlName:"Container",type:{name:"Composite",className:"ContainerItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},deleted:{serializedName:"Deleted",xmlName:"Deleted",type:{name:"Boolean"}},version:{serializedName:"Version",xmlName:"Version",type:{name:"String"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"ContainerProperties"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}}}}},Vtt={serializedName:"ContainerProperties",type:{name:"Composite",className:"ContainerProperties",modelProperties:{lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},publicAccess:{serializedName:"PublicAccess",xmlName:"PublicAccess",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"HasImmutabilityPolicy",xmlName:"HasImmutabilityPolicy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"HasLegalHold",xmlName:"HasLegalHold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"DefaultEncryptionScope",xmlName:"DefaultEncryptionScope",type:{name:"String"}},preventEncryptionScopeOverride:{serializedName:"DenyEncryptionScopeOverride",xmlName:"DenyEncryptionScopeOverride",type:{name:"Boolean"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},isImmutableStorageWithVersioningEnabled:{serializedName:"ImmutableStorageWithVersioningEnabled",xmlName:"ImmutableStorageWithVersioningEnabled",type:{name:"Boolean"}}}}},Oq={serializedName:"KeyInfo",type:{name:"Composite",className:"KeyInfo",modelProperties:{startsOn:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",required:!0,xmlName:"Expiry",type:{name:"String"}}}}},Mq={serializedName:"UserDelegationKey",type:{name:"Composite",className:"UserDelegationKey",modelProperties:{signedObjectId:{serializedName:"SignedOid",required:!0,xmlName:"SignedOid",type:{name:"String"}},signedTenantId:{serializedName:"SignedTid",required:!0,xmlName:"SignedTid",type:{name:"String"}},signedStartsOn:{serializedName:"SignedStart",required:!0,xmlName:"SignedStart",type:{name:"String"}},signedExpiresOn:{serializedName:"SignedExpiry",required:!0,xmlName:"SignedExpiry",type:{name:"String"}},signedService:{serializedName:"SignedService",required:!0,xmlName:"SignedService",type:{name:"String"}},signedVersion:{serializedName:"SignedVersion",required:!0,xmlName:"SignedVersion",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},nI={serializedName:"FilterBlobSegment",xmlName:"EnumerationResults",type:{name:"Composite",className:"FilterBlobSegment",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},where:{serializedName:"Where",required:!0,xmlName:"Where",type:{name:"String"}},blobs:{serializedName:"Blobs",required:!0,xmlName:"Blobs",xmlIsWrapped:!0,xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"FilterBlobItem"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},Ytt={serializedName:"FilterBlobItem",xmlName:"Blob",type:{name:"Composite",className:"FilterBlobItem",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",type:{name:"String"}},tags:{serializedName:"Tags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}}}}},sI={serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags",modelProperties:{blobTagSet:{serializedName:"BlobTagSet",required:!0,xmlName:"TagSet",xmlIsWrapped:!0,xmlElementName:"Tag",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobTag"}}}}}}},Wtt={serializedName:"BlobTag",xmlName:"Tag",type:{name:"Composite",className:"BlobTag",modelProperties:{key:{serializedName:"Key",required:!0,xmlName:"Key",type:{name:"String"}},value:{serializedName:"Value",required:!0,xmlName:"Value",type:{name:"String"}}}}},jtt={serializedName:"SignedIdentifier",xmlName:"SignedIdentifier",type:{name:"Composite",className:"SignedIdentifier",modelProperties:{id:{serializedName:"Id",required:!0,xmlName:"Id",type:{name:"String"}},accessPolicy:{serializedName:"AccessPolicy",xmlName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy"}}}}},Jtt={serializedName:"AccessPolicy",type:{name:"Composite",className:"AccessPolicy",modelProperties:{startsOn:{serializedName:"Start",xmlName:"Start",type:{name:"String"}},expiresOn:{serializedName:"Expiry",xmlName:"Expiry",type:{name:"String"}},permissions:{serializedName:"Permission",xmlName:"Permission",type:{name:"String"}}}}},Fq={serializedName:"ListBlobsFlatSegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsFlatSegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},Ktt={serializedName:"BlobFlatListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobFlatListSegment",modelProperties:{blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},Xtt={serializedName:"BlobItemInternal",xmlName:"Blob",type:{name:"Composite",className:"BlobItemInternal",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}},deleted:{serializedName:"Deleted",required:!0,xmlName:"Deleted",type:{name:"Boolean"}},snapshot:{serializedName:"Snapshot",required:!0,xmlName:"Snapshot",type:{name:"String"}},versionId:{serializedName:"VersionId",xmlName:"VersionId",type:{name:"String"}},isCurrentVersion:{serializedName:"IsCurrentVersion",xmlName:"IsCurrentVersion",type:{name:"Boolean"}},properties:{serializedName:"Properties",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal"}},metadata:{serializedName:"Metadata",xmlName:"Metadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},blobTags:{serializedName:"BlobTags",xmlName:"Tags",type:{name:"Composite",className:"BlobTags"}},objectReplicationMetadata:{serializedName:"ObjectReplicationMetadata",xmlName:"OrMetadata",type:{name:"Dictionary",value:{type:{name:"String"}}}},hasVersionsOnly:{serializedName:"HasVersionsOnly",xmlName:"HasVersionsOnly",type:{name:"Boolean"}}}}},Ztt={serializedName:"BlobName",type:{name:"Composite",className:"BlobName",modelProperties:{encoded:{serializedName:"Encoded",xmlName:"Encoded",xmlIsAttribute:!0,type:{name:"Boolean"}},content:{serializedName:"content",xmlName:"content",xmlIsMsText:!0,type:{name:"String"}}}}},ert={serializedName:"BlobPropertiesInternal",xmlName:"Properties",type:{name:"Composite",className:"BlobPropertiesInternal",modelProperties:{createdOn:{serializedName:"Creation-Time",xmlName:"Creation-Time",type:{name:"DateTimeRfc1123"}},lastModified:{serializedName:"Last-Modified",required:!0,xmlName:"Last-Modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"Etag",required:!0,xmlName:"Etag",type:{name:"String"}},contentLength:{serializedName:"Content-Length",xmlName:"Content-Length",type:{name:"Number"}},contentType:{serializedName:"Content-Type",xmlName:"Content-Type",type:{name:"String"}},contentEncoding:{serializedName:"Content-Encoding",xmlName:"Content-Encoding",type:{name:"String"}},contentLanguage:{serializedName:"Content-Language",xmlName:"Content-Language",type:{name:"String"}},contentMD5:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}},contentDisposition:{serializedName:"Content-Disposition",xmlName:"Content-Disposition",type:{name:"String"}},cacheControl:{serializedName:"Cache-Control",xmlName:"Cache-Control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"BlobType",xmlName:"BlobType",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},leaseStatus:{serializedName:"LeaseStatus",xmlName:"LeaseStatus",type:{name:"Enum",allowedValues:["locked","unlocked"]}},leaseState:{serializedName:"LeaseState",xmlName:"LeaseState",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseDuration:{serializedName:"LeaseDuration",xmlName:"LeaseDuration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},copyId:{serializedName:"CopyId",xmlName:"CopyId",type:{name:"String"}},copyStatus:{serializedName:"CopyStatus",xmlName:"CopyStatus",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},copySource:{serializedName:"CopySource",xmlName:"CopySource",type:{name:"String"}},copyProgress:{serializedName:"CopyProgress",xmlName:"CopyProgress",type:{name:"String"}},copyCompletedOn:{serializedName:"CopyCompletionTime",xmlName:"CopyCompletionTime",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"CopyStatusDescription",xmlName:"CopyStatusDescription",type:{name:"String"}},serverEncrypted:{serializedName:"ServerEncrypted",xmlName:"ServerEncrypted",type:{name:"Boolean"}},incrementalCopy:{serializedName:"IncrementalCopy",xmlName:"IncrementalCopy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"DestinationSnapshot",xmlName:"DestinationSnapshot",type:{name:"String"}},deletedOn:{serializedName:"DeletedTime",xmlName:"DeletedTime",type:{name:"DateTimeRfc1123"}},remainingRetentionDays:{serializedName:"RemainingRetentionDays",xmlName:"RemainingRetentionDays",type:{name:"Number"}},accessTier:{serializedName:"AccessTier",xmlName:"AccessTier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}},accessTierInferred:{serializedName:"AccessTierInferred",xmlName:"AccessTierInferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"ArchiveStatus",xmlName:"ArchiveStatus",type:{name:"Enum",allowedValues:["rehydrate-pending-to-hot","rehydrate-pending-to-cool","rehydrate-pending-to-cold"]}},customerProvidedKeySha256:{serializedName:"CustomerProvidedKeySha256",xmlName:"CustomerProvidedKeySha256",type:{name:"String"}},encryptionScope:{serializedName:"EncryptionScope",xmlName:"EncryptionScope",type:{name:"String"}},accessTierChangedOn:{serializedName:"AccessTierChangeTime",xmlName:"AccessTierChangeTime",type:{name:"DateTimeRfc1123"}},tagCount:{serializedName:"TagCount",xmlName:"TagCount",type:{name:"Number"}},expiresOn:{serializedName:"Expiry-Time",xmlName:"Expiry-Time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"Sealed",xmlName:"Sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"RehydratePriority",xmlName:"RehydratePriority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessedOn:{serializedName:"LastAccessTime",xmlName:"LastAccessTime",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"ImmutabilityPolicyUntilDate",xmlName:"ImmutabilityPolicyUntilDate",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"ImmutabilityPolicyMode",xmlName:"ImmutabilityPolicyMode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"LegalHold",xmlName:"LegalHold",type:{name:"Boolean"}}}}},Uq={serializedName:"ListBlobsHierarchySegmentResponse",xmlName:"EnumerationResults",type:{name:"Composite",className:"ListBlobsHierarchySegmentResponse",modelProperties:{serviceEndpoint:{serializedName:"ServiceEndpoint",required:!0,xmlName:"ServiceEndpoint",xmlIsAttribute:!0,type:{name:"String"}},containerName:{serializedName:"ContainerName",required:!0,xmlName:"ContainerName",xmlIsAttribute:!0,type:{name:"String"}},prefix:{serializedName:"Prefix",xmlName:"Prefix",type:{name:"String"}},marker:{serializedName:"Marker",xmlName:"Marker",type:{name:"String"}},maxPageSize:{serializedName:"MaxResults",xmlName:"MaxResults",type:{name:"Number"}},delimiter:{serializedName:"Delimiter",xmlName:"Delimiter",type:{name:"String"}},segment:{serializedName:"Segment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment"}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},trt={serializedName:"BlobHierarchyListSegment",xmlName:"Blobs",type:{name:"Composite",className:"BlobHierarchyListSegment",modelProperties:{blobPrefixes:{serializedName:"BlobPrefixes",xmlName:"BlobPrefixes",xmlElementName:"BlobPrefix",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobPrefix"}}}},blobItems:{serializedName:"BlobItems",required:!0,xmlName:"BlobItems",xmlElementName:"Blob",type:{name:"Sequence",element:{type:{name:"Composite",className:"BlobItemInternal"}}}}}}},rrt={serializedName:"BlobPrefix",type:{name:"Composite",className:"BlobPrefix",modelProperties:{name:{serializedName:"Name",xmlName:"Name",type:{name:"Composite",className:"BlobName"}}}}},qq={serializedName:"BlockLookupList",xmlName:"BlockList",type:{name:"Composite",className:"BlockLookupList",modelProperties:{committed:{serializedName:"Committed",xmlName:"Committed",xmlElementName:"Committed",type:{name:"Sequence",element:{type:{name:"String"}}}},uncommitted:{serializedName:"Uncommitted",xmlName:"Uncommitted",xmlElementName:"Uncommitted",type:{name:"Sequence",element:{type:{name:"String"}}}},latest:{serializedName:"Latest",xmlName:"Latest",xmlElementName:"Latest",type:{name:"Sequence",element:{type:{name:"String"}}}}}}},$q={serializedName:"BlockList",type:{name:"Composite",className:"BlockList",modelProperties:{committedBlocks:{serializedName:"CommittedBlocks",xmlName:"CommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}},uncommittedBlocks:{serializedName:"UncommittedBlocks",xmlName:"UncommittedBlocks",xmlIsWrapped:!0,xmlElementName:"Block",type:{name:"Sequence",element:{type:{name:"Composite",className:"Block"}}}}}}},nrt={serializedName:"Block",type:{name:"Composite",className:"Block",modelProperties:{name:{serializedName:"Name",required:!0,xmlName:"Name",type:{name:"String"}},size:{serializedName:"Size",required:!0,xmlName:"Size",type:{name:"Number"}}}}},PR={serializedName:"PageList",type:{name:"Composite",className:"PageList",modelProperties:{pageRange:{serializedName:"PageRange",xmlName:"PageRange",xmlElementName:"PageRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"PageRange"}}}},clearRange:{serializedName:"ClearRange",xmlName:"ClearRange",xmlElementName:"ClearRange",type:{name:"Sequence",element:{type:{name:"Composite",className:"ClearRange"}}}},continuationToken:{serializedName:"NextMarker",xmlName:"NextMarker",type:{name:"String"}}}}},srt={serializedName:"PageRange",xmlName:"PageRange",type:{name:"Composite",className:"PageRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},ort={serializedName:"ClearRange",xmlName:"ClearRange",type:{name:"Composite",className:"ClearRange",modelProperties:{start:{serializedName:"Start",required:!0,xmlName:"Start",type:{name:"Number"}},end:{serializedName:"End",required:!0,xmlName:"End",type:{name:"Number"}}}}},Gq={serializedName:"QueryRequest",xmlName:"QueryRequest",type:{name:"Composite",className:"QueryRequest",modelProperties:{queryType:{serializedName:"QueryType",required:!0,xmlName:"QueryType",type:{name:"String"}},expression:{serializedName:"Expression",required:!0,xmlName:"Expression",type:{name:"String"}},inputSerialization:{serializedName:"InputSerialization",xmlName:"InputSerialization",type:{name:"Composite",className:"QuerySerialization"}},outputSerialization:{serializedName:"OutputSerialization",xmlName:"OutputSerialization",type:{name:"Composite",className:"QuerySerialization"}}}}},irt={serializedName:"QuerySerialization",type:{name:"Composite",className:"QuerySerialization",modelProperties:{format:{serializedName:"Format",xmlName:"Format",type:{name:"Composite",className:"QueryFormat"}}}}},art={serializedName:"QueryFormat",type:{name:"Composite",className:"QueryFormat",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"Enum",allowedValues:["delimited","json","arrow","parquet"]}},delimitedTextConfiguration:{serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration"}},jsonTextConfiguration:{serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration"}},arrowConfiguration:{serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration"}},parquetTextConfiguration:{serializedName:"ParquetTextConfiguration",xmlName:"ParquetTextConfiguration",type:{name:"Dictionary",value:{type:{name:"any"}}}}}}},crt={serializedName:"DelimitedTextConfiguration",xmlName:"DelimitedTextConfiguration",type:{name:"Composite",className:"DelimitedTextConfiguration",modelProperties:{columnSeparator:{serializedName:"ColumnSeparator",xmlName:"ColumnSeparator",type:{name:"String"}},fieldQuote:{serializedName:"FieldQuote",xmlName:"FieldQuote",type:{name:"String"}},recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}},escapeChar:{serializedName:"EscapeChar",xmlName:"EscapeChar",type:{name:"String"}},headersPresent:{serializedName:"HeadersPresent",xmlName:"HasHeaders",type:{name:"Boolean"}}}}},lrt={serializedName:"JsonTextConfiguration",xmlName:"JsonTextConfiguration",type:{name:"Composite",className:"JsonTextConfiguration",modelProperties:{recordSeparator:{serializedName:"RecordSeparator",xmlName:"RecordSeparator",type:{name:"String"}}}}},urt={serializedName:"ArrowConfiguration",xmlName:"ArrowConfiguration",type:{name:"Composite",className:"ArrowConfiguration",modelProperties:{schema:{serializedName:"Schema",required:!0,xmlName:"Schema",xmlIsWrapped:!0,xmlElementName:"Field",type:{name:"Sequence",element:{type:{name:"Composite",className:"ArrowField"}}}}}}},drt={serializedName:"ArrowField",xmlName:"Field",type:{name:"Composite",className:"ArrowField",modelProperties:{type:{serializedName:"Type",required:!0,xmlName:"Type",type:{name:"String"}},name:{serializedName:"Name",xmlName:"Name",type:{name:"String"}},precision:{serializedName:"Precision",xmlName:"Precision",type:{name:"Number"}},scale:{serializedName:"Scale",xmlName:"Scale",type:{name:"Number"}}}}},Hq={serializedName:"Service_setPropertiesHeaders",type:{name:"Composite",className:"ServiceSetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},zq={serializedName:"Service_setPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceSetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Vq={serializedName:"Service_getPropertiesHeaders",type:{name:"Composite",className:"ServiceGetPropertiesHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Yq={serializedName:"Service_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ServiceGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Wq={serializedName:"Service_getStatisticsHeaders",type:{name:"Composite",className:"ServiceGetStatisticsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},jq={serializedName:"Service_getStatisticsExceptionHeaders",type:{name:"Composite",className:"ServiceGetStatisticsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Jq={serializedName:"Service_listContainersSegmentHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Kq={serializedName:"Service_listContainersSegmentExceptionHeaders",type:{name:"Composite",className:"ServiceListContainersSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Xq={serializedName:"Service_getUserDelegationKeyHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Zq={serializedName:"Service_getUserDelegationKeyExceptionHeaders",type:{name:"Composite",className:"ServiceGetUserDelegationKeyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},e$={serializedName:"Service_getAccountInfoHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},t$={serializedName:"Service_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ServiceGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},r$={serializedName:"Service_submitBatchHeaders",type:{name:"Composite",className:"ServiceSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},n$={serializedName:"Service_submitBatchExceptionHeaders",type:{name:"Composite",className:"ServiceSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},s$={serializedName:"Service_filterBlobsHeaders",type:{name:"Composite",className:"ServiceFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},o$={serializedName:"Service_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ServiceFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},i$={serializedName:"Container_createHeaders",type:{name:"Composite",className:"ContainerCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},a$={serializedName:"Container_createExceptionHeaders",type:{name:"Composite",className:"ContainerCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},c$={serializedName:"Container_getPropertiesHeaders",type:{name:"Composite",className:"ContainerGetPropertiesHeaders",modelProperties:{metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},hasImmutabilityPolicy:{serializedName:"x-ms-has-immutability-policy",xmlName:"x-ms-has-immutability-policy",type:{name:"Boolean"}},hasLegalHold:{serializedName:"x-ms-has-legal-hold",xmlName:"x-ms-has-legal-hold",type:{name:"Boolean"}},defaultEncryptionScope:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}},denyEncryptionScopeOverride:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}},isImmutableStorageWithVersioningEnabled:{serializedName:"x-ms-immutable-storage-with-versioning-enabled",xmlName:"x-ms-immutable-storage-with-versioning-enabled",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},l$={serializedName:"Container_getPropertiesExceptionHeaders",type:{name:"Composite",className:"ContainerGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},u$={serializedName:"Container_deleteHeaders",type:{name:"Composite",className:"ContainerDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},d$={serializedName:"Container_deleteExceptionHeaders",type:{name:"Composite",className:"ContainerDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},p$={serializedName:"Container_setMetadataHeaders",type:{name:"Composite",className:"ContainerSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},m$={serializedName:"Container_setMetadataExceptionHeaders",type:{name:"Composite",className:"ContainerSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},f$={serializedName:"Container_getAccessPolicyHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyHeaders",modelProperties:{blobPublicAccess:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},A$={serializedName:"Container_getAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},h$={serializedName:"Container_setAccessPolicyHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},g$={serializedName:"Container_setAccessPolicyExceptionHeaders",type:{name:"Composite",className:"ContainerSetAccessPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},y$={serializedName:"Container_restoreHeaders",type:{name:"Composite",className:"ContainerRestoreHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},E$={serializedName:"Container_restoreExceptionHeaders",type:{name:"Composite",className:"ContainerRestoreExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},C$={serializedName:"Container_renameHeaders",type:{name:"Composite",className:"ContainerRenameHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},I$={serializedName:"Container_renameExceptionHeaders",type:{name:"Composite",className:"ContainerRenameExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},x$={serializedName:"Container_submitBatchHeaders",type:{name:"Composite",className:"ContainerSubmitBatchHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}}}}},w$={serializedName:"Container_submitBatchExceptionHeaders",type:{name:"Composite",className:"ContainerSubmitBatchExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},b$={serializedName:"Container_filterBlobsHeaders",type:{name:"Composite",className:"ContainerFilterBlobsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},S$={serializedName:"Container_filterBlobsExceptionHeaders",type:{name:"Composite",className:"ContainerFilterBlobsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},B$={serializedName:"Container_acquireLeaseHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},R$={serializedName:"Container_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},N$={serializedName:"Container_releaseLeaseHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},T$={serializedName:"Container_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},P$={serializedName:"Container_renewLeaseHeaders",type:{name:"Composite",className:"ContainerRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},v$={serializedName:"Container_renewLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},_$={serializedName:"Container_breakLeaseHeaders",type:{name:"Composite",className:"ContainerBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},Q$={serializedName:"Container_breakLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},D$={serializedName:"Container_changeLeaseHeaders",type:{name:"Composite",className:"ContainerChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},k$={serializedName:"Container_changeLeaseExceptionHeaders",type:{name:"Composite",className:"ContainerChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},L$={serializedName:"Container_listBlobFlatSegmentHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},O$={serializedName:"Container_listBlobFlatSegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobFlatSegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},M$={serializedName:"Container_listBlobHierarchySegmentHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentHeaders",modelProperties:{contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},F$={serializedName:"Container_listBlobHierarchySegmentExceptionHeaders",type:{name:"Composite",className:"ContainerListBlobHierarchySegmentExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},U$={serializedName:"Container_getAccountInfoHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}}}}},q$={serializedName:"Container_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"ContainerGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},vR={serializedName:"Blob_downloadHeaders",type:{name:"Composite",className:"BlobDownloadHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},createdOn:{serializedName:"x-ms-creation-time",xmlName:"x-ms-creation-time",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",headerCollectionPrefix:"x-ms-or-",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},$$={serializedName:"Blob_downloadExceptionHeaders",type:{name:"Composite",className:"BlobDownloadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},G$={serializedName:"Blob_getPropertiesHeaders",type:{name:"Composite",className:"BlobGetPropertiesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},createdOn:{serializedName:"x-ms-creation-time",xmlName:"x-ms-creation-time",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},objectReplicationPolicyId:{serializedName:"x-ms-or-policy-id",xmlName:"x-ms-or-policy-id",type:{name:"String"}},objectReplicationRules:{serializedName:"x-ms-or",headerCollectionPrefix:"x-ms-or-",xmlName:"x-ms-or",type:{name:"Dictionary",value:{type:{name:"String"}}}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletedOn:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},isIncrementalCopy:{serializedName:"x-ms-incremental-copy",xmlName:"x-ms-incremental-copy",type:{name:"Boolean"}},destinationSnapshot:{serializedName:"x-ms-copy-destination-snapshot",xmlName:"x-ms-copy-destination-snapshot",type:{name:"String"}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},accessTier:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"String"}},accessTierInferred:{serializedName:"x-ms-access-tier-inferred",xmlName:"x-ms-access-tier-inferred",type:{name:"Boolean"}},archiveStatus:{serializedName:"x-ms-archive-status",xmlName:"x-ms-archive-status",type:{name:"String"}},accessTierChangedOn:{serializedName:"x-ms-access-tier-change-time",xmlName:"x-ms-access-tier-change-time",type:{name:"DateTimeRfc1123"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},isCurrentVersion:{serializedName:"x-ms-is-current-version",xmlName:"x-ms-is-current-version",type:{name:"Boolean"}},tagCount:{serializedName:"x-ms-tag-count",xmlName:"x-ms-tag-count",type:{name:"Number"}},expiresOn:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}},rehydratePriority:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}},lastAccessed:{serializedName:"x-ms-last-access-time",xmlName:"x-ms-last-access-time",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiresOn:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},H$={serializedName:"Blob_getPropertiesExceptionHeaders",type:{name:"Composite",className:"BlobGetPropertiesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},z$={serializedName:"Blob_deleteHeaders",type:{name:"Composite",className:"BlobDeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},V$={serializedName:"Blob_deleteExceptionHeaders",type:{name:"Composite",className:"BlobDeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Y$={serializedName:"Blob_undeleteHeaders",type:{name:"Composite",className:"BlobUndeleteHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},W$={serializedName:"Blob_undeleteExceptionHeaders",type:{name:"Composite",className:"BlobUndeleteExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},j$={serializedName:"Blob_setExpiryHeaders",type:{name:"Composite",className:"BlobSetExpiryHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},J$={serializedName:"Blob_setExpiryExceptionHeaders",type:{name:"Composite",className:"BlobSetExpiryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},K$={serializedName:"Blob_setHttpHeadersHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},X$={serializedName:"Blob_setHttpHeadersExceptionHeaders",type:{name:"Composite",className:"BlobSetHttpHeadersExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},Z$={serializedName:"Blob_setImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyExpiry:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}},immutabilityPolicyMode:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}}}},eG={serializedName:"Blob_setImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobSetImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},tG={serializedName:"Blob_deleteImmutabilityPolicyHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},rG={serializedName:"Blob_deleteImmutabilityPolicyExceptionHeaders",type:{name:"Composite",className:"BlobDeleteImmutabilityPolicyExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},nG={serializedName:"Blob_setLegalHoldHeaders",type:{name:"Composite",className:"BlobSetLegalHoldHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},legalHold:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}}}},sG={serializedName:"Blob_setLegalHoldExceptionHeaders",type:{name:"Composite",className:"BlobSetLegalHoldExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oG={serializedName:"Blob_setMetadataHeaders",type:{name:"Composite",className:"BlobSetMetadataHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},iG={serializedName:"Blob_setMetadataExceptionHeaders",type:{name:"Composite",className:"BlobSetMetadataExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},aG={serializedName:"Blob_acquireLeaseHeaders",type:{name:"Composite",className:"BlobAcquireLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},cG={serializedName:"Blob_acquireLeaseExceptionHeaders",type:{name:"Composite",className:"BlobAcquireLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},lG={serializedName:"Blob_releaseLeaseHeaders",type:{name:"Composite",className:"BlobReleaseLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},uG={serializedName:"Blob_releaseLeaseExceptionHeaders",type:{name:"Composite",className:"BlobReleaseLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},dG={serializedName:"Blob_renewLeaseHeaders",type:{name:"Composite",className:"BlobRenewLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},pG={serializedName:"Blob_renewLeaseExceptionHeaders",type:{name:"Composite",className:"BlobRenewLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},mG={serializedName:"Blob_changeLeaseHeaders",type:{name:"Composite",className:"BlobChangeLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},leaseId:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},fG={serializedName:"Blob_changeLeaseExceptionHeaders",type:{name:"Composite",className:"BlobChangeLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},AG={serializedName:"Blob_breakLeaseHeaders",type:{name:"Composite",className:"BlobBreakLeaseHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},leaseTime:{serializedName:"x-ms-lease-time",xmlName:"x-ms-lease-time",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}}}}},hG={serializedName:"Blob_breakLeaseExceptionHeaders",type:{name:"Composite",className:"BlobBreakLeaseExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},gG={serializedName:"Blob_createSnapshotHeaders",type:{name:"Composite",className:"BlobCreateSnapshotHeaders",modelProperties:{snapshot:{serializedName:"x-ms-snapshot",xmlName:"x-ms-snapshot",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},yG={serializedName:"Blob_createSnapshotExceptionHeaders",type:{name:"Composite",className:"BlobCreateSnapshotExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},EG={serializedName:"Blob_startCopyFromURLHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},CG={serializedName:"Blob_startCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobStartCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},IG={serializedName:"Blob_copyFromURLHeaders",type:{name:"Composite",className:"BlobCopyFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{defaultValue:"success",isConstant:!0,serializedName:"x-ms-copy-status",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},xG={serializedName:"Blob_copyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},wG={serializedName:"Blob_abortCopyFromURLHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},bG={serializedName:"Blob_abortCopyFromURLExceptionHeaders",type:{name:"Composite",className:"BlobAbortCopyFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},_R={serializedName:"Blob_setTierHeaders",type:{name:"Composite",className:"BlobSetTierHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},SG={serializedName:"Blob_setTierExceptionHeaders",type:{name:"Composite",className:"BlobSetTierExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},BG={serializedName:"Blob_getAccountInfoHeaders",type:{name:"Composite",className:"BlobGetAccountInfoHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},skuName:{serializedName:"x-ms-sku-name",xmlName:"x-ms-sku-name",type:{name:"Enum",allowedValues:["Standard_LRS","Standard_GRS","Standard_RAGRS","Standard_ZRS","Premium_LRS"]}},accountKind:{serializedName:"x-ms-account-kind",xmlName:"x-ms-account-kind",type:{name:"Enum",allowedValues:["Storage","BlobStorage","StorageV2","FileStorage","BlockBlobStorage"]}},isHierarchicalNamespaceEnabled:{serializedName:"x-ms-is-hns-enabled",xmlName:"x-ms-is-hns-enabled",type:{name:"Boolean"}}}}},RG={serializedName:"Blob_getAccountInfoExceptionHeaders",type:{name:"Composite",className:"BlobGetAccountInfoExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},QR={serializedName:"Blob_queryHeaders",type:{name:"Composite",className:"BlobQueryHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},metadata:{serializedName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",xmlName:"x-ms-meta",type:{name:"Dictionary",value:{type:{name:"String"}}}},contentLength:{serializedName:"content-length",xmlName:"content-length",type:{name:"Number"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},contentRange:{serializedName:"content-range",xmlName:"content-range",type:{name:"String"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},contentEncoding:{serializedName:"content-encoding",xmlName:"content-encoding",type:{name:"String"}},cacheControl:{serializedName:"cache-control",xmlName:"cache-control",type:{name:"String"}},contentDisposition:{serializedName:"content-disposition",xmlName:"content-disposition",type:{name:"String"}},contentLanguage:{serializedName:"content-language",xmlName:"content-language",type:{name:"String"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},blobType:{serializedName:"x-ms-blob-type",xmlName:"x-ms-blob-type",type:{name:"Enum",allowedValues:["BlockBlob","PageBlob","AppendBlob"]}},copyCompletionTime:{serializedName:"x-ms-copy-completion-time",xmlName:"x-ms-copy-completion-time",type:{name:"DateTimeRfc1123"}},copyStatusDescription:{serializedName:"x-ms-copy-status-description",xmlName:"x-ms-copy-status-description",type:{name:"String"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyProgress:{serializedName:"x-ms-copy-progress",xmlName:"x-ms-copy-progress",type:{name:"String"}},copySource:{serializedName:"x-ms-copy-source",xmlName:"x-ms-copy-source",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},leaseDuration:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Enum",allowedValues:["infinite","fixed"]}},leaseState:{serializedName:"x-ms-lease-state",xmlName:"x-ms-lease-state",type:{name:"Enum",allowedValues:["available","leased","expired","breaking","broken"]}},leaseStatus:{serializedName:"x-ms-lease-status",xmlName:"x-ms-lease-status",type:{name:"Enum",allowedValues:["locked","unlocked"]}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},acceptRanges:{serializedName:"accept-ranges",xmlName:"accept-ranges",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-server-encrypted",xmlName:"x-ms-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},blobContentMD5:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},contentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}}}},NG={serializedName:"Blob_queryExceptionHeaders",type:{name:"Composite",className:"BlobQueryExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},TG={serializedName:"Blob_getTagsHeaders",type:{name:"Composite",className:"BlobGetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},PG={serializedName:"Blob_getTagsExceptionHeaders",type:{name:"Composite",className:"BlobGetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},vG={serializedName:"Blob_setTagsHeaders",type:{name:"Composite",className:"BlobSetTagsHeaders",modelProperties:{clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},_G={serializedName:"Blob_setTagsExceptionHeaders",type:{name:"Composite",className:"BlobSetTagsExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},QG={serializedName:"PageBlob_createHeaders",type:{name:"Composite",className:"PageBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},DG={serializedName:"PageBlob_createExceptionHeaders",type:{name:"Composite",className:"PageBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},kG={serializedName:"PageBlob_uploadPagesHeaders",type:{name:"Composite",className:"PageBlobUploadPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},LG={serializedName:"PageBlob_uploadPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},OG={serializedName:"PageBlob_clearPagesHeaders",type:{name:"Composite",className:"PageBlobClearPagesHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},MG={serializedName:"PageBlob_clearPagesExceptionHeaders",type:{name:"Composite",className:"PageBlobClearPagesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},FG={serializedName:"PageBlob_uploadPagesFromURLHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},UG={serializedName:"PageBlob_uploadPagesFromURLExceptionHeaders",type:{name:"Composite",className:"PageBlobUploadPagesFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},qG={serializedName:"PageBlob_getPageRangesHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},$G={serializedName:"PageBlob_getPageRangesExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},GG={serializedName:"PageBlob_getPageRangesDiffHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},HG={serializedName:"PageBlob_getPageRangesDiffExceptionHeaders",type:{name:"Composite",className:"PageBlobGetPageRangesDiffExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},zG={serializedName:"PageBlob_resizeHeaders",type:{name:"Composite",className:"PageBlobResizeHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},VG={serializedName:"PageBlob_resizeExceptionHeaders",type:{name:"Composite",className:"PageBlobResizeExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},YG={serializedName:"PageBlob_updateSequenceNumberHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},blobSequenceNumber:{serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},WG={serializedName:"PageBlob_updateSequenceNumberExceptionHeaders",type:{name:"Composite",className:"PageBlobUpdateSequenceNumberExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},jG={serializedName:"PageBlob_copyIncrementalHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},copyId:{serializedName:"x-ms-copy-id",xmlName:"x-ms-copy-id",type:{name:"String"}},copyStatus:{serializedName:"x-ms-copy-status",xmlName:"x-ms-copy-status",type:{name:"Enum",allowedValues:["pending","success","aborted","failed"]}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},JG={serializedName:"PageBlob_copyIncrementalExceptionHeaders",type:{name:"Composite",className:"PageBlobCopyIncrementalExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},KG={serializedName:"AppendBlob_createHeaders",type:{name:"Composite",className:"AppendBlobCreateHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},XG={serializedName:"AppendBlob_createExceptionHeaders",type:{name:"Composite",className:"AppendBlobCreateExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},ZG={serializedName:"AppendBlob_appendBlockHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},eH={serializedName:"AppendBlob_appendBlockExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},tH={serializedName:"AppendBlob_appendBlockFromUrlHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},blobAppendOffset:{serializedName:"x-ms-blob-append-offset",xmlName:"x-ms-blob-append-offset",type:{name:"String"}},blobCommittedBlockCount:{serializedName:"x-ms-blob-committed-block-count",xmlName:"x-ms-blob-committed-block-count",type:{name:"Number"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},rH={serializedName:"AppendBlob_appendBlockFromUrlExceptionHeaders",type:{name:"Composite",className:"AppendBlobAppendBlockFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},nH={serializedName:"AppendBlob_sealHeaders",type:{name:"Composite",className:"AppendBlobSealHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isSealed:{serializedName:"x-ms-blob-sealed",xmlName:"x-ms-blob-sealed",type:{name:"Boolean"}}}}},sH={serializedName:"AppendBlob_sealExceptionHeaders",type:{name:"Composite",className:"AppendBlobSealExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},oH={serializedName:"BlockBlob_uploadHeaders",type:{name:"Composite",className:"BlockBlobUploadHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},iH={serializedName:"BlockBlob_uploadExceptionHeaders",type:{name:"Composite",className:"BlockBlobUploadExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},aH={serializedName:"BlockBlob_putBlobFromUrlHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},cH={serializedName:"BlockBlob_putBlobFromUrlExceptionHeaders",type:{name:"Composite",className:"BlockBlobPutBlobFromUrlExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},lH={serializedName:"BlockBlob_stageBlockHeaders",type:{name:"Composite",className:"BlockBlobStageBlockHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},uH={serializedName:"BlockBlob_stageBlockExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},dH={serializedName:"BlockBlob_stageBlockFromURLHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLHeaders",modelProperties:{contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},pH={serializedName:"BlockBlob_stageBlockFromURLExceptionHeaders",type:{name:"Composite",className:"BlockBlobStageBlockFromURLExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}},copySourceErrorCode:{serializedName:"x-ms-copy-source-error-code",xmlName:"x-ms-copy-source-error-code",type:{name:"String"}},copySourceStatusCode:{serializedName:"x-ms-copy-source-status-code",xmlName:"x-ms-copy-source-status-code",type:{name:"Number"}}}}},mH={serializedName:"BlockBlob_commitBlockListHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListHeaders",modelProperties:{etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},contentMD5:{serializedName:"content-md5",xmlName:"content-md5",type:{name:"ByteArray"}},xMsContentCrc64:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},versionId:{serializedName:"x-ms-version-id",xmlName:"x-ms-version-id",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},isServerEncrypted:{serializedName:"x-ms-request-server-encrypted",xmlName:"x-ms-request-server-encrypted",type:{name:"Boolean"}},encryptionKeySha256:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}},encryptionScope:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},fH={serializedName:"BlockBlob_commitBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobCommitBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},AH={serializedName:"BlockBlob_getBlockListHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListHeaders",modelProperties:{lastModified:{serializedName:"last-modified",xmlName:"last-modified",type:{name:"DateTimeRfc1123"}},etag:{serializedName:"etag",xmlName:"etag",type:{name:"String"}},contentType:{serializedName:"content-type",xmlName:"content-type",type:{name:"String"}},blobContentLength:{serializedName:"x-ms-blob-content-length",xmlName:"x-ms-blob-content-length",type:{name:"Number"}},clientRequestId:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}},requestId:{serializedName:"x-ms-request-id",xmlName:"x-ms-request-id",type:{name:"String"}},version:{serializedName:"x-ms-version",xmlName:"x-ms-version",type:{name:"String"}},date:{serializedName:"date",xmlName:"date",type:{name:"DateTimeRfc1123"}},errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}},hH={serializedName:"BlockBlob_getBlockListExceptionHeaders",type:{name:"Composite",className:"BlockBlobGetBlockListExceptionHeaders",modelProperties:{errorCode:{serializedName:"x-ms-error-code",xmlName:"x-ms-error-code",type:{name:"String"}}}}};var pc={parameterPath:["options","contentType"],mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},Wpe={parameterPath:"blobServiceProperties",mapper:rI},Ei={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},Z={parameterPath:"url",mapper:{serializedName:"url",required:!0,xmlName:"url",type:{name:"String"}},skipEncoding:!0},oI={parameterPath:"restype",mapper:{defaultValue:"service",isConstant:!0,serializedName:"restype",type:{name:"String"}}},Ci={parameterPath:"comp",mapper:{defaultValue:"properties",isConstant:!0,serializedName:"comp",type:{name:"String"}}},ee={parameterPath:["options","timeoutInSeconds"],mapper:{constraints:{InclusiveMinimum:0},serializedName:"timeout",xmlName:"timeout",type:{name:"Number"}}},te={parameterPath:"version",mapper:{defaultValue:"2026-02-06",isConstant:!0,serializedName:"x-ms-version",type:{name:"String"}}},re={parameterPath:["options","requestId"],mapper:{serializedName:"x-ms-client-request-id",xmlName:"x-ms-client-request-id",type:{name:"String"}}},me={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},jpe={parameterPath:"comp",mapper:{defaultValue:"stats",isConstant:!0,serializedName:"comp",type:{name:"String"}}},iI={parameterPath:"comp",mapper:{defaultValue:"list",isConstant:!0,serializedName:"comp",type:{name:"String"}}},aI={parameterPath:["options","prefix"],mapper:{serializedName:"prefix",xmlName:"prefix",type:{name:"String"}}},mc={parameterPath:["options","marker"],mapper:{serializedName:"marker",xmlName:"marker",type:{name:"String"}}},fc={parameterPath:["options","maxPageSize"],mapper:{constraints:{InclusiveMinimum:1},serializedName:"maxresults",xmlName:"maxresults",type:{name:"Number"}}},Jpe={parameterPath:["options","include"],mapper:{serializedName:"include",xmlName:"include",xmlElementName:"ListContainersIncludeType",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["metadata","deleted","system"]}}}},collectionFormat:"CSV"},Kpe={parameterPath:"keyInfo",mapper:Oq},Xpe={parameterPath:"comp",mapper:{defaultValue:"userdelegationkey",isConstant:!0,serializedName:"comp",type:{name:"String"}}},_h={parameterPath:"restype",mapper:{defaultValue:"account",isConstant:!0,serializedName:"restype",type:{name:"String"}}},DR={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},kR={parameterPath:"comp",mapper:{defaultValue:"batch",isConstant:!0,serializedName:"comp",type:{name:"String"}}},gn={parameterPath:"contentLength",mapper:{serializedName:"Content-Length",required:!0,xmlName:"Content-Length",type:{name:"Number"}}},LR={parameterPath:"multipartContentType",mapper:{serializedName:"Content-Type",required:!0,xmlName:"Content-Type",type:{name:"String"}}},OR={parameterPath:"comp",mapper:{defaultValue:"blobs",isConstant:!0,serializedName:"comp",type:{name:"String"}}},MR={parameterPath:["options","where"],mapper:{serializedName:"where",xmlName:"where",type:{name:"String"}}},yn={parameterPath:"restype",mapper:{defaultValue:"container",isConstant:!0,serializedName:"restype",type:{name:"String"}}},Yn={parameterPath:["options","metadata"],mapper:{serializedName:"x-ms-meta",xmlName:"x-ms-meta",headerCollectionPrefix:"x-ms-meta-",type:{name:"Dictionary",value:{type:{name:"String"}}}}},gH={parameterPath:["options","access"],mapper:{serializedName:"x-ms-blob-public-access",xmlName:"x-ms-blob-public-access",type:{name:"Enum",allowedValues:["container","blob"]}}},Zpe={parameterPath:["options","containerEncryptionScope","defaultEncryptionScope"],mapper:{serializedName:"x-ms-default-encryption-scope",xmlName:"x-ms-default-encryption-scope",type:{name:"String"}}},eme={parameterPath:["options","containerEncryptionScope","preventEncryptionScopeOverride"],mapper:{serializedName:"x-ms-deny-encryption-scope-override",xmlName:"x-ms-deny-encryption-scope-override",type:{name:"Boolean"}}},it={parameterPath:["options","leaseAccessConditions","leaseId"],mapper:{serializedName:"x-ms-lease-id",xmlName:"x-ms-lease-id",type:{name:"String"}}},et={parameterPath:["options","modifiedAccessConditions","ifModifiedSince"],mapper:{serializedName:"If-Modified-Since",xmlName:"If-Modified-Since",type:{name:"DateTimeRfc1123"}}},tt={parameterPath:["options","modifiedAccessConditions","ifUnmodifiedSince"],mapper:{serializedName:"If-Unmodified-Since",xmlName:"If-Unmodified-Since",type:{name:"DateTimeRfc1123"}}},FR={parameterPath:"comp",mapper:{defaultValue:"metadata",isConstant:!0,serializedName:"comp",type:{name:"String"}}},yH={parameterPath:"comp",mapper:{defaultValue:"acl",isConstant:!0,serializedName:"comp",type:{name:"String"}}},tme={parameterPath:["options","containerAcl"],mapper:{serializedName:"containerAcl",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier",type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}}}},UR={parameterPath:"comp",mapper:{defaultValue:"undelete",isConstant:!0,serializedName:"comp",type:{name:"String"}}},rme={parameterPath:["options","deletedContainerName"],mapper:{serializedName:"x-ms-deleted-container-name",xmlName:"x-ms-deleted-container-name",type:{name:"String"}}},nme={parameterPath:["options","deletedContainerVersion"],mapper:{serializedName:"x-ms-deleted-container-version",xmlName:"x-ms-deleted-container-version",type:{name:"String"}}},sme={parameterPath:"comp",mapper:{defaultValue:"rename",isConstant:!0,serializedName:"comp",type:{name:"String"}}},ome={parameterPath:"sourceContainerName",mapper:{serializedName:"x-ms-source-container-name",required:!0,xmlName:"x-ms-source-container-name",type:{name:"String"}}},ime={parameterPath:["options","sourceLeaseId"],mapper:{serializedName:"x-ms-source-lease-id",xmlName:"x-ms-source-lease-id",type:{name:"String"}}},Ii={parameterPath:"comp",mapper:{defaultValue:"lease",isConstant:!0,serializedName:"comp",type:{name:"String"}}},qR={parameterPath:"action",mapper:{defaultValue:"acquire",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},$R={parameterPath:["options","duration"],mapper:{serializedName:"x-ms-lease-duration",xmlName:"x-ms-lease-duration",type:{name:"Number"}}},GR={parameterPath:["options","proposedLeaseId"],mapper:{serializedName:"x-ms-proposed-lease-id",xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},HR={parameterPath:"action",mapper:{defaultValue:"release",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},Nd={parameterPath:"leaseId",mapper:{serializedName:"x-ms-lease-id",required:!0,xmlName:"x-ms-lease-id",type:{name:"String"}}},zR={parameterPath:"action",mapper:{defaultValue:"renew",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},VR={parameterPath:"action",mapper:{defaultValue:"break",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},YR={parameterPath:["options","breakPeriod"],mapper:{serializedName:"x-ms-lease-break-period",xmlName:"x-ms-lease-break-period",type:{name:"Number"}}},WR={parameterPath:"action",mapper:{defaultValue:"change",isConstant:!0,serializedName:"x-ms-lease-action",type:{name:"String"}}},jR={parameterPath:"proposedLeaseId",mapper:{serializedName:"x-ms-proposed-lease-id",required:!0,xmlName:"x-ms-proposed-lease-id",type:{name:"String"}}},EH={parameterPath:["options","include"],mapper:{serializedName:"include",xmlName:"include",xmlElementName:"ListBlobsIncludeItem",type:{name:"Sequence",element:{type:{name:"Enum",allowedValues:["copy","deleted","metadata","snapshots","uncommittedblobs","versions","tags","immutabilitypolicy","legalhold","deletedwithversions"]}}}},collectionFormat:"CSV"},CH={parameterPath:["options","startFrom"],mapper:{serializedName:"startFrom",xmlName:"startFrom",type:{name:"String"}}},ame={parameterPath:"delimiter",mapper:{serializedName:"delimiter",required:!0,xmlName:"delimiter",type:{name:"String"}}},xs={parameterPath:["options","snapshot"],mapper:{serializedName:"snapshot",xmlName:"snapshot",type:{name:"String"}}},Ac={parameterPath:["options","versionId"],mapper:{serializedName:"versionid",xmlName:"versionid",type:{name:"String"}}},Tm={parameterPath:["options","range"],mapper:{serializedName:"x-ms-range",xmlName:"x-ms-range",type:{name:"String"}}},cme={parameterPath:["options","rangeGetContentMD5"],mapper:{serializedName:"x-ms-range-get-content-md5",xmlName:"x-ms-range-get-content-md5",type:{name:"Boolean"}}},lme={parameterPath:["options","rangeGetContentCRC64"],mapper:{serializedName:"x-ms-range-get-content-crc64",xmlName:"x-ms-range-get-content-crc64",type:{name:"Boolean"}}},wr={parameterPath:["options","cpkInfo","encryptionKey"],mapper:{serializedName:"x-ms-encryption-key",xmlName:"x-ms-encryption-key",type:{name:"String"}}},br={parameterPath:["options","cpkInfo","encryptionKeySha256"],mapper:{serializedName:"x-ms-encryption-key-sha256",xmlName:"x-ms-encryption-key-sha256",type:{name:"String"}}},Sr={parameterPath:["options","cpkInfo","encryptionAlgorithm"],mapper:{serializedName:"x-ms-encryption-algorithm",xmlName:"x-ms-encryption-algorithm",type:{name:"String"}}},gt={parameterPath:["options","modifiedAccessConditions","ifMatch"],mapper:{serializedName:"If-Match",xmlName:"If-Match",type:{name:"String"}}},yt={parameterPath:["options","modifiedAccessConditions","ifNoneMatch"],mapper:{serializedName:"If-None-Match",xmlName:"If-None-Match",type:{name:"String"}}},pt={parameterPath:["options","modifiedAccessConditions","ifTags"],mapper:{serializedName:"x-ms-if-tags",xmlName:"x-ms-if-tags",type:{name:"String"}}},ume={parameterPath:["options","deleteSnapshots"],mapper:{serializedName:"x-ms-delete-snapshots",xmlName:"x-ms-delete-snapshots",type:{name:"Enum",allowedValues:["include","only"]}}},dme={parameterPath:["options","blobDeleteType"],mapper:{serializedName:"deletetype",xmlName:"deletetype",type:{name:"String"}}},pme={parameterPath:"comp",mapper:{defaultValue:"expiry",isConstant:!0,serializedName:"comp",type:{name:"String"}}},mme={parameterPath:"expiryOptions",mapper:{serializedName:"x-ms-expiry-option",required:!0,xmlName:"x-ms-expiry-option",type:{name:"String"}}},fme={parameterPath:["options","expiresOn"],mapper:{serializedName:"x-ms-expiry-time",xmlName:"x-ms-expiry-time",type:{name:"String"}}},hc={parameterPath:["options","blobHttpHeaders","blobCacheControl"],mapper:{serializedName:"x-ms-blob-cache-control",xmlName:"x-ms-blob-cache-control",type:{name:"String"}}},gc={parameterPath:["options","blobHttpHeaders","blobContentType"],mapper:{serializedName:"x-ms-blob-content-type",xmlName:"x-ms-blob-content-type",type:{name:"String"}}},yc={parameterPath:["options","blobHttpHeaders","blobContentMD5"],mapper:{serializedName:"x-ms-blob-content-md5",xmlName:"x-ms-blob-content-md5",type:{name:"ByteArray"}}},Ec={parameterPath:["options","blobHttpHeaders","blobContentEncoding"],mapper:{serializedName:"x-ms-blob-content-encoding",xmlName:"x-ms-blob-content-encoding",type:{name:"String"}}},Cc={parameterPath:["options","blobHttpHeaders","blobContentLanguage"],mapper:{serializedName:"x-ms-blob-content-language",xmlName:"x-ms-blob-content-language",type:{name:"String"}}},Ic={parameterPath:["options","blobHttpHeaders","blobContentDisposition"],mapper:{serializedName:"x-ms-blob-content-disposition",xmlName:"x-ms-blob-content-disposition",type:{name:"String"}}},IH={parameterPath:"comp",mapper:{defaultValue:"immutabilityPolicies",isConstant:!0,serializedName:"comp",type:{name:"String"}}},da={parameterPath:["options","immutabilityPolicyExpiry"],mapper:{serializedName:"x-ms-immutability-policy-until-date",xmlName:"x-ms-immutability-policy-until-date",type:{name:"DateTimeRfc1123"}}},pa={parameterPath:["options","immutabilityPolicyMode"],mapper:{serializedName:"x-ms-immutability-policy-mode",xmlName:"x-ms-immutability-policy-mode",type:{name:"Enum",allowedValues:["Mutable","Unlocked","Locked"]}}},Ame={parameterPath:"comp",mapper:{defaultValue:"legalhold",isConstant:!0,serializedName:"comp",type:{name:"String"}}},hme={parameterPath:"legalHold",mapper:{serializedName:"x-ms-legal-hold",required:!0,xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},jr={parameterPath:["options","encryptionScope"],mapper:{serializedName:"x-ms-encryption-scope",xmlName:"x-ms-encryption-scope",type:{name:"String"}}},gme={parameterPath:"comp",mapper:{defaultValue:"snapshot",isConstant:!0,serializedName:"comp",type:{name:"String"}}},eu={parameterPath:["options","tier"],mapper:{serializedName:"x-ms-access-tier",xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}}},xH={parameterPath:["options","rehydratePriority"],mapper:{serializedName:"x-ms-rehydrate-priority",xmlName:"x-ms-rehydrate-priority",type:{name:"Enum",allowedValues:["High","Standard"]}}},xc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfModifiedSince"],mapper:{serializedName:"x-ms-source-if-modified-since",xmlName:"x-ms-source-if-modified-since",type:{name:"DateTimeRfc1123"}}},wc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfUnmodifiedSince"],mapper:{serializedName:"x-ms-source-if-unmodified-since",xmlName:"x-ms-source-if-unmodified-since",type:{name:"DateTimeRfc1123"}}},bc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfMatch"],mapper:{serializedName:"x-ms-source-if-match",xmlName:"x-ms-source-if-match",type:{name:"String"}}},Sc={parameterPath:["options","sourceModifiedAccessConditions","sourceIfNoneMatch"],mapper:{serializedName:"x-ms-source-if-none-match",xmlName:"x-ms-source-if-none-match",type:{name:"String"}}},JR={parameterPath:["options","sourceModifiedAccessConditions","sourceIfTags"],mapper:{serializedName:"x-ms-source-if-tags",xmlName:"x-ms-source-if-tags",type:{name:"String"}}},Pm={parameterPath:"copySource",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},ma={parameterPath:["options","blobTagsString"],mapper:{serializedName:"x-ms-tags",xmlName:"x-ms-tags",type:{name:"String"}}},yme={parameterPath:["options","sealBlob"],mapper:{serializedName:"x-ms-seal-blob",xmlName:"x-ms-seal-blob",type:{name:"Boolean"}}},Bc={parameterPath:["options","legalHold"],mapper:{serializedName:"x-ms-legal-hold",xmlName:"x-ms-legal-hold",type:{name:"Boolean"}}},Eme={parameterPath:"xMsRequiresSync",mapper:{defaultValue:"true",isConstant:!0,serializedName:"x-ms-requires-sync",type:{name:"String"}}},tu={parameterPath:["options","sourceContentMD5"],mapper:{serializedName:"x-ms-source-content-md5",xmlName:"x-ms-source-content-md5",type:{name:"ByteArray"}}},ru={parameterPath:["options","copySourceAuthorization"],mapper:{serializedName:"x-ms-copy-source-authorization",xmlName:"x-ms-copy-source-authorization",type:{name:"String"}}},KR={parameterPath:["options","copySourceTags"],mapper:{serializedName:"x-ms-copy-source-tag-option",xmlName:"x-ms-copy-source-tag-option",type:{name:"Enum",allowedValues:["REPLACE","COPY"]}}},nu={parameterPath:["options","fileRequestIntent"],mapper:{serializedName:"x-ms-file-request-intent",xmlName:"x-ms-file-request-intent",type:{name:"String"}}},Cme={parameterPath:"comp",mapper:{defaultValue:"copy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Ime={parameterPath:"copyActionAbortConstant",mapper:{defaultValue:"abort",isConstant:!0,serializedName:"x-ms-copy-action",type:{name:"String"}}},xme={parameterPath:"copyId",mapper:{serializedName:"copyid",required:!0,xmlName:"copyid",type:{name:"String"}}},wme={parameterPath:"comp",mapper:{defaultValue:"tier",isConstant:!0,serializedName:"comp",type:{name:"String"}}},bme={parameterPath:"tier",mapper:{serializedName:"x-ms-access-tier",required:!0,xmlName:"x-ms-access-tier",type:{name:"Enum",allowedValues:["P4","P6","P10","P15","P20","P30","P40","P50","P60","P70","P80","Hot","Cool","Archive","Cold"]}}},Sme={parameterPath:["options","queryRequest"],mapper:Gq},Bme={parameterPath:"comp",mapper:{defaultValue:"query",isConstant:!0,serializedName:"comp",type:{name:"String"}}},wH={parameterPath:"comp",mapper:{defaultValue:"tags",isConstant:!0,serializedName:"comp",type:{name:"String"}}},bH={parameterPath:["options","blobModifiedAccessConditions","ifModifiedSince"],mapper:{serializedName:"x-ms-blob-if-modified-since",xmlName:"x-ms-blob-if-modified-since",type:{name:"DateTimeRfc1123"}}},SH={parameterPath:["options","blobModifiedAccessConditions","ifUnmodifiedSince"],mapper:{serializedName:"x-ms-blob-if-unmodified-since",xmlName:"x-ms-blob-if-unmodified-since",type:{name:"DateTimeRfc1123"}}},BH={parameterPath:["options","blobModifiedAccessConditions","ifMatch"],mapper:{serializedName:"x-ms-blob-if-match",xmlName:"x-ms-blob-if-match",type:{name:"String"}}},RH={parameterPath:["options","blobModifiedAccessConditions","ifNoneMatch"],mapper:{serializedName:"x-ms-blob-if-none-match",xmlName:"x-ms-blob-if-none-match",type:{name:"String"}}},Rme={parameterPath:["options","tags"],mapper:sI},xi={parameterPath:["options","transactionalContentMD5"],mapper:{serializedName:"Content-MD5",xmlName:"Content-MD5",type:{name:"ByteArray"}}},Rc={parameterPath:["options","transactionalContentCrc64"],mapper:{serializedName:"x-ms-content-crc64",xmlName:"x-ms-content-crc64",type:{name:"ByteArray"}}},Nme={parameterPath:"blobType",mapper:{defaultValue:"PageBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},NH={parameterPath:"blobContentLength",mapper:{serializedName:"x-ms-blob-content-length",required:!0,xmlName:"x-ms-blob-content-length",type:{name:"Number"}}},TH={parameterPath:["options","blobSequenceNumber"],mapper:{defaultValue:0,serializedName:"x-ms-blob-sequence-number",xmlName:"x-ms-blob-sequence-number",type:{name:"Number"}}},vm={parameterPath:["options","contentType"],mapper:{defaultValue:"application/octet-stream",isConstant:!0,serializedName:"Content-Type",type:{name:"String"}}},_m={parameterPath:"body",mapper:{serializedName:"body",required:!0,xmlName:"body",type:{name:"Stream"}}},Qm={parameterPath:"accept",mapper:{defaultValue:"application/xml",isConstant:!0,serializedName:"Accept",type:{name:"String"}}},XR={parameterPath:"comp",mapper:{defaultValue:"page",isConstant:!0,serializedName:"comp",type:{name:"String"}}},PH={parameterPath:"pageWrite",mapper:{defaultValue:"update",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},ZR={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThanOrEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-le",xmlName:"x-ms-if-sequence-number-le",type:{name:"Number"}}},eN={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberLessThan"],mapper:{serializedName:"x-ms-if-sequence-number-lt",xmlName:"x-ms-if-sequence-number-lt",type:{name:"Number"}}},tN={parameterPath:["options","sequenceNumberAccessConditions","ifSequenceNumberEqualTo"],mapper:{serializedName:"x-ms-if-sequence-number-eq",xmlName:"x-ms-if-sequence-number-eq",type:{name:"Number"}}},Tme={parameterPath:"pageWrite",mapper:{defaultValue:"clear",isConstant:!0,serializedName:"x-ms-page-write",type:{name:"String"}}},Qh={parameterPath:"sourceUrl",mapper:{serializedName:"x-ms-copy-source",required:!0,xmlName:"x-ms-copy-source",type:{name:"String"}}},Pme={parameterPath:"sourceRange",mapper:{serializedName:"x-ms-source-range",required:!0,xmlName:"x-ms-source-range",type:{name:"String"}}},Dh={parameterPath:["options","sourceContentCrc64"],mapper:{serializedName:"x-ms-source-content-crc64",xmlName:"x-ms-source-content-crc64",type:{name:"ByteArray"}}},vme={parameterPath:"range",mapper:{serializedName:"x-ms-range",required:!0,xmlName:"x-ms-range",type:{name:"String"}}},vH={parameterPath:"comp",mapper:{defaultValue:"pagelist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},_me={parameterPath:["options","prevsnapshot"],mapper:{serializedName:"prevsnapshot",xmlName:"prevsnapshot",type:{name:"String"}}},Qme={parameterPath:["options","prevSnapshotUrl"],mapper:{serializedName:"x-ms-previous-snapshot-url",xmlName:"x-ms-previous-snapshot-url",type:{name:"String"}}},Dme={parameterPath:"sequenceNumberAction",mapper:{serializedName:"x-ms-sequence-number-action",required:!0,xmlName:"x-ms-sequence-number-action",type:{name:"Enum",allowedValues:["max","update","increment"]}}},kme={parameterPath:"comp",mapper:{defaultValue:"incrementalcopy",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Lme={parameterPath:"blobType",mapper:{defaultValue:"AppendBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},_H={parameterPath:"comp",mapper:{defaultValue:"appendblock",isConstant:!0,serializedName:"comp",type:{name:"String"}}},QH={parameterPath:["options","appendPositionAccessConditions","maxSize"],mapper:{serializedName:"x-ms-blob-condition-maxsize",xmlName:"x-ms-blob-condition-maxsize",type:{name:"Number"}}},rN={parameterPath:["options","appendPositionAccessConditions","appendPosition"],mapper:{serializedName:"x-ms-blob-condition-appendpos",xmlName:"x-ms-blob-condition-appendpos",type:{name:"Number"}}},nN={parameterPath:["options","sourceRange"],mapper:{serializedName:"x-ms-source-range",xmlName:"x-ms-source-range",type:{name:"String"}}},Ome={parameterPath:"comp",mapper:{defaultValue:"seal",isConstant:!0,serializedName:"comp",type:{name:"String"}}},DH={parameterPath:"blobType",mapper:{defaultValue:"BlockBlob",isConstant:!0,serializedName:"x-ms-blob-type",type:{name:"String"}}},Mme={parameterPath:["options","copySourceBlobProperties"],mapper:{serializedName:"x-ms-copy-source-blob-properties",xmlName:"x-ms-copy-source-blob-properties",type:{name:"Boolean"}}},kH={parameterPath:"comp",mapper:{defaultValue:"block",isConstant:!0,serializedName:"comp",type:{name:"String"}}},LH={parameterPath:"blockId",mapper:{serializedName:"blockid",required:!0,xmlName:"blockid",type:{name:"String"}}},Fme={parameterPath:"blocks",mapper:qq},OH={parameterPath:"comp",mapper:{defaultValue:"blocklist",isConstant:!0,serializedName:"comp",type:{name:"String"}}},Ume={parameterPath:"listType",mapper:{defaultValue:"committed",serializedName:"blocklisttype",required:!0,xmlName:"blocklisttype",type:{name:"Enum",allowedValues:["committed","uncommitted","all"]}}};var sN=class{static{i(this,"ServiceImpl")}client;constructor(e){this.client=e}setProperties(e,r){return this.client.sendOperationRequest({blobServiceProperties:e,options:r},prt)}getProperties(e){return this.client.sendOperationRequest({options:e},mrt)}getStatistics(e){return this.client.sendOperationRequest({options:e},frt)}listContainersSegment(e){return this.client.sendOperationRequest({options:e},Art)}getUserDelegationKey(e,r){return this.client.sendOperationRequest({keyInfo:e,options:r},hrt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},grt)}submitBatch(e,r,n,s){return this.client.sendOperationRequest({contentLength:e,multipartContentType:r,body:n,options:s},yrt)}filterBlobs(e){return this.client.sendOperationRequest({options:e},Ert)}},Td=Lo(Mo,!0),prt={path:"/",httpMethod:"PUT",responses:{202:{headersMapper:Hq},default:{bodyMapper:K,headersMapper:zq}},requestBody:Wpe,queryParameters:[oI,Ci,ee],urlParameters:[Z],headerParameters:[pc,Ei,te,re],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Td},mrt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:rI,headersMapper:Vq},default:{bodyMapper:K,headersMapper:Yq}},queryParameters:[oI,Ci,ee],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:Td},frt={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:kq,headersMapper:Wq},default:{bodyMapper:K,headersMapper:jq}},queryParameters:[oI,ee,jpe],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:Td},Art={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:Lq,headersMapper:Jq},default:{bodyMapper:K,headersMapper:Kq}},queryParameters:[ee,iI,aI,mc,fc,Jpe],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:Td},hrt={path:"/",httpMethod:"POST",responses:{200:{bodyMapper:Mq,headersMapper:Xq},default:{bodyMapper:K,headersMapper:Zq}},requestBody:Kpe,queryParameters:[oI,ee,Xpe],urlParameters:[Z],headerParameters:[pc,Ei,te,re],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Td},grt={path:"/",httpMethod:"GET",responses:{200:{headersMapper:e$},default:{bodyMapper:K,headersMapper:t$}},queryParameters:[Ci,ee,_h],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:Td},yrt={path:"/",httpMethod:"POST",responses:{202:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:r$},default:{bodyMapper:K,headersMapper:n$}},requestBody:DR,queryParameters:[ee,kR],urlParameters:[Z],headerParameters:[Ei,te,re,gn,LR],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Td},Ert={path:"/",httpMethod:"GET",responses:{200:{bodyMapper:nI,headersMapper:s$},default:{bodyMapper:K,headersMapper:o$}},queryParameters:[ee,mc,fc,OR,MR],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:Td};var oN=class{static{i(this,"ContainerImpl")}client;constructor(e){this.client=e}create(e){return this.client.sendOperationRequest({options:e},Crt)}getProperties(e){return this.client.sendOperationRequest({options:e},Irt)}delete(e){return this.client.sendOperationRequest({options:e},xrt)}setMetadata(e){return this.client.sendOperationRequest({options:e},wrt)}getAccessPolicy(e){return this.client.sendOperationRequest({options:e},brt)}setAccessPolicy(e){return this.client.sendOperationRequest({options:e},Srt)}restore(e){return this.client.sendOperationRequest({options:e},Brt)}rename(e,r){return this.client.sendOperationRequest({sourceContainerName:e,options:r},Rrt)}submitBatch(e,r,n,s){return this.client.sendOperationRequest({contentLength:e,multipartContentType:r,body:n,options:s},Nrt)}filterBlobs(e){return this.client.sendOperationRequest({options:e},Trt)}acquireLease(e){return this.client.sendOperationRequest({options:e},Prt)}releaseLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},vrt)}renewLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},_rt)}breakLease(e){return this.client.sendOperationRequest({options:e},Qrt)}changeLease(e,r,n){return this.client.sendOperationRequest({leaseId:e,proposedLeaseId:r,options:n},Drt)}listBlobFlatSegment(e){return this.client.sendOperationRequest({options:e},krt)}listBlobHierarchySegment(e,r){return this.client.sendOperationRequest({delimiter:e,options:r},Lrt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},Ort)}},En=Lo(Mo,!0),Crt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:i$},default:{bodyMapper:K,headersMapper:a$}},queryParameters:[ee,yn],urlParameters:[Z],headerParameters:[te,re,me,Yn,gH,Zpe,eme],isXML:!0,serializer:En},Irt={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:c$},default:{bodyMapper:K,headersMapper:l$}},queryParameters:[ee,yn],urlParameters:[Z],headerParameters:[te,re,me,it],isXML:!0,serializer:En},xrt={path:"/{containerName}",httpMethod:"DELETE",responses:{202:{headersMapper:u$},default:{bodyMapper:K,headersMapper:d$}},queryParameters:[ee,yn],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt],isXML:!0,serializer:En},wrt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:p$},default:{bodyMapper:K,headersMapper:m$}},queryParameters:[ee,yn,FR],urlParameters:[Z],headerParameters:[te,re,me,Yn,it,et],isXML:!0,serializer:En},brt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Sequence",element:{type:{name:"Composite",className:"SignedIdentifier"}}},serializedName:"SignedIdentifiers",xmlName:"SignedIdentifiers",xmlIsWrapped:!0,xmlElementName:"SignedIdentifier"},headersMapper:f$},default:{bodyMapper:K,headersMapper:A$}},queryParameters:[ee,yn,yH],urlParameters:[Z],headerParameters:[te,re,me,it],isXML:!0,serializer:En},Srt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:h$},default:{bodyMapper:K,headersMapper:g$}},requestBody:tme,queryParameters:[ee,yn,yH],urlParameters:[Z],headerParameters:[pc,Ei,te,re,gH,it,et,tt],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:En},Brt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:y$},default:{bodyMapper:K,headersMapper:E$}},queryParameters:[ee,yn,UR],urlParameters:[Z],headerParameters:[te,re,me,rme,nme],isXML:!0,serializer:En},Rrt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:C$},default:{bodyMapper:K,headersMapper:I$}},queryParameters:[ee,yn,sme],urlParameters:[Z],headerParameters:[te,re,me,ome,ime],isXML:!0,serializer:En},Nrt={path:"/{containerName}",httpMethod:"POST",responses:{202:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:x$},default:{bodyMapper:K,headersMapper:w$}},requestBody:DR,queryParameters:[ee,kR,yn],urlParameters:[Z],headerParameters:[Ei,te,re,gn,LR],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:En},Trt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:nI,headersMapper:b$},default:{bodyMapper:K,headersMapper:S$}},queryParameters:[ee,mc,fc,OR,MR,yn],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:En},Prt={path:"/{containerName}",httpMethod:"PUT",responses:{201:{headersMapper:B$},default:{bodyMapper:K,headersMapper:R$}},queryParameters:[ee,yn,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,qR,$R,GR],isXML:!0,serializer:En},vrt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:N$},default:{bodyMapper:K,headersMapper:T$}},queryParameters:[ee,yn,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,HR,Nd],isXML:!0,serializer:En},_rt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:P$},default:{bodyMapper:K,headersMapper:v$}},queryParameters:[ee,yn,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,Nd,zR],isXML:!0,serializer:En},Qrt={path:"/{containerName}",httpMethod:"PUT",responses:{202:{headersMapper:_$},default:{bodyMapper:K,headersMapper:Q$}},queryParameters:[ee,yn,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,VR,YR],isXML:!0,serializer:En},Drt={path:"/{containerName}",httpMethod:"PUT",responses:{200:{headersMapper:D$},default:{bodyMapper:K,headersMapper:k$}},queryParameters:[ee,yn,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,Nd,WR,jR],isXML:!0,serializer:En},krt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:Fq,headersMapper:L$},default:{bodyMapper:K,headersMapper:O$}},queryParameters:[ee,iI,aI,mc,fc,yn,EH,CH],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:En},Lrt={path:"/{containerName}",httpMethod:"GET",responses:{200:{bodyMapper:Uq,headersMapper:M$},default:{bodyMapper:K,headersMapper:F$}},queryParameters:[ee,iI,aI,mc,fc,yn,EH,CH,ame],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:En},Ort={path:"/{containerName}",httpMethod:"GET",responses:{200:{headersMapper:U$},default:{bodyMapper:K,headersMapper:q$}},queryParameters:[Ci,ee,_h],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:En};var iN=class{static{i(this,"BlobImpl")}client;constructor(e){this.client=e}download(e){return this.client.sendOperationRequest({options:e},Mrt)}getProperties(e){return this.client.sendOperationRequest({options:e},Frt)}delete(e){return this.client.sendOperationRequest({options:e},Urt)}undelete(e){return this.client.sendOperationRequest({options:e},qrt)}setExpiry(e,r){return this.client.sendOperationRequest({expiryOptions:e,options:r},$rt)}setHttpHeaders(e){return this.client.sendOperationRequest({options:e},Grt)}setImmutabilityPolicy(e){return this.client.sendOperationRequest({options:e},Hrt)}deleteImmutabilityPolicy(e){return this.client.sendOperationRequest({options:e},zrt)}setLegalHold(e,r){return this.client.sendOperationRequest({legalHold:e,options:r},Vrt)}setMetadata(e){return this.client.sendOperationRequest({options:e},Yrt)}acquireLease(e){return this.client.sendOperationRequest({options:e},Wrt)}releaseLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},jrt)}renewLease(e,r){return this.client.sendOperationRequest({leaseId:e,options:r},Jrt)}changeLease(e,r,n){return this.client.sendOperationRequest({leaseId:e,proposedLeaseId:r,options:n},Krt)}breakLease(e){return this.client.sendOperationRequest({options:e},Xrt)}createSnapshot(e){return this.client.sendOperationRequest({options:e},Zrt)}startCopyFromURL(e,r){return this.client.sendOperationRequest({copySource:e,options:r},ent)}copyFromURL(e,r){return this.client.sendOperationRequest({copySource:e,options:r},tnt)}abortCopyFromURL(e,r){return this.client.sendOperationRequest({copyId:e,options:r},rnt)}setTier(e,r){return this.client.sendOperationRequest({tier:e,options:r},nnt)}getAccountInfo(e){return this.client.sendOperationRequest({options:e},snt)}query(e){return this.client.sendOperationRequest({options:e},ont)}getTags(e){return this.client.sendOperationRequest({options:e},int)}setTags(e){return this.client.sendOperationRequest({options:e},ant)}},nr=Lo(Mo,!0),Mrt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:vR},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:vR},default:{bodyMapper:K,headersMapper:$$}},queryParameters:[ee,xs,Ac],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,Tm,cme,lme,wr,br,Sr,gt,yt,pt],isXML:!0,serializer:nr},Frt={path:"/{containerName}/{blob}",httpMethod:"HEAD",responses:{200:{headersMapper:G$},default:{bodyMapper:K,headersMapper:H$}},queryParameters:[ee,xs,Ac],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,wr,br,Sr,gt,yt,pt],isXML:!0,serializer:nr},Urt={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{202:{headersMapper:z$},default:{bodyMapper:K,headersMapper:V$}},queryParameters:[ee,xs,Ac,dme],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,gt,yt,pt,ume],isXML:!0,serializer:nr},qrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:Y$},default:{bodyMapper:K,headersMapper:W$}},queryParameters:[ee,UR],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:nr},$rt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:j$},default:{bodyMapper:K,headersMapper:J$}},queryParameters:[ee,pme],urlParameters:[Z],headerParameters:[te,re,me,mme,fme],isXML:!0,serializer:nr},Grt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:K$},default:{bodyMapper:K,headersMapper:X$}},queryParameters:[Ci,ee],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic],isXML:!0,serializer:nr},Hrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:Z$},default:{bodyMapper:K,headersMapper:eG}},queryParameters:[ee,xs,Ac,IH],urlParameters:[Z],headerParameters:[te,re,me,tt,da,pa],isXML:!0,serializer:nr},zrt={path:"/{containerName}/{blob}",httpMethod:"DELETE",responses:{200:{headersMapper:tG},default:{bodyMapper:K,headersMapper:rG}},queryParameters:[ee,xs,Ac,IH],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:nr},Vrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:nG},default:{bodyMapper:K,headersMapper:sG}},queryParameters:[ee,xs,Ac,Ame],urlParameters:[Z],headerParameters:[te,re,me,hme],isXML:!0,serializer:nr},Yrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:oG},default:{bodyMapper:K,headersMapper:iG}},queryParameters:[ee,FR],urlParameters:[Z],headerParameters:[te,re,me,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,jr],isXML:!0,serializer:nr},Wrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:aG},default:{bodyMapper:K,headersMapper:cG}},queryParameters:[ee,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,qR,$R,GR,gt,yt,pt],isXML:!0,serializer:nr},jrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:lG},default:{bodyMapper:K,headersMapper:uG}},queryParameters:[ee,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,HR,Nd,gt,yt,pt],isXML:!0,serializer:nr},Jrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:dG},default:{bodyMapper:K,headersMapper:pG}},queryParameters:[ee,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,Nd,zR,gt,yt,pt],isXML:!0,serializer:nr},Krt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:mG},default:{bodyMapper:K,headersMapper:fG}},queryParameters:[ee,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,Nd,WR,jR,gt,yt,pt],isXML:!0,serializer:nr},Xrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:AG},default:{bodyMapper:K,headersMapper:hG}},queryParameters:[ee,Ii],urlParameters:[Z],headerParameters:[te,re,me,et,tt,VR,YR,gt,yt,pt],isXML:!0,serializer:nr},Zrt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:gG},default:{bodyMapper:K,headersMapper:yG}},queryParameters:[ee,gme],urlParameters:[Z],headerParameters:[te,re,me,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,jr],isXML:!0,serializer:nr},ent={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:EG},default:{bodyMapper:K,headersMapper:CG}},queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,me,Yn,it,et,tt,gt,yt,pt,da,pa,eu,xH,xc,wc,bc,Sc,JR,Pm,ma,yme,Bc],isXML:!0,serializer:nr},tnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:IG},default:{bodyMapper:K,headersMapper:xG}},queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,me,Yn,it,et,tt,gt,yt,pt,da,pa,jr,eu,xc,wc,bc,Sc,Pm,ma,Bc,Eme,tu,ru,KR,nu],isXML:!0,serializer:nr},rnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:wG},default:{bodyMapper:K,headersMapper:bG}},queryParameters:[ee,Cme,xme],urlParameters:[Z],headerParameters:[te,re,me,it,Ime],isXML:!0,serializer:nr},nnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:_R},202:{headersMapper:_R},default:{bodyMapper:K,headersMapper:SG}},queryParameters:[ee,xs,Ac,wme],urlParameters:[Z],headerParameters:[te,re,me,it,pt,xH,bme],isXML:!0,serializer:nr},snt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{headersMapper:BG},default:{bodyMapper:K,headersMapper:RG}},queryParameters:[Ci,ee,_h],urlParameters:[Z],headerParameters:[te,re,me],isXML:!0,serializer:nr},ont={path:"/{containerName}/{blob}",httpMethod:"POST",responses:{200:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:QR},206:{bodyMapper:{type:{name:"Stream"},serializedName:"parsedResponse"},headersMapper:QR},default:{bodyMapper:K,headersMapper:NG}},requestBody:Sme,queryParameters:[ee,xs,Bme],urlParameters:[Z],headerParameters:[pc,Ei,te,re,it,et,tt,wr,br,Sr,gt,yt,pt],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:nr},int={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:sI,headersMapper:TG},default:{bodyMapper:K,headersMapper:PG}},queryParameters:[ee,xs,Ac,wH],urlParameters:[Z],headerParameters:[te,re,me,it,pt,bH,SH,BH,RH],isXML:!0,serializer:nr},ant={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{204:{headersMapper:vG},default:{bodyMapper:K,headersMapper:_G}},requestBody:Rme,queryParameters:[ee,Ac,wH],urlParameters:[Z],headerParameters:[pc,Ei,te,re,it,pt,bH,SH,BH,RH,xi,Rc],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:nr};var aN=class{static{i(this,"PageBlobImpl")}client;constructor(e){this.client=e}create(e,r,n){return this.client.sendOperationRequest({contentLength:e,blobContentLength:r,options:n},cnt)}uploadPages(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},lnt)}clearPages(e,r){return this.client.sendOperationRequest({contentLength:e,options:r},unt)}uploadPagesFromURL(e,r,n,s,o){return this.client.sendOperationRequest({sourceUrl:e,sourceRange:r,contentLength:n,range:s,options:o},dnt)}getPageRanges(e){return this.client.sendOperationRequest({options:e},pnt)}getPageRangesDiff(e){return this.client.sendOperationRequest({options:e},mnt)}resize(e,r){return this.client.sendOperationRequest({blobContentLength:e,options:r},fnt)}updateSequenceNumber(e,r){return this.client.sendOperationRequest({sequenceNumberAction:e,options:r},Ant)}copyIncremental(e,r){return this.client.sendOperationRequest({copySource:e,options:r},hnt)}},su=Lo(Mo,!0),cnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:QG},default:{bodyMapper:K,headersMapper:DG}},queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,me,gn,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic,da,pa,jr,eu,ma,Bc,Nme,NH,TH],isXML:!0,serializer:su},lnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:kG},default:{bodyMapper:K,headersMapper:LG}},requestBody:_m,queryParameters:[ee,XR],urlParameters:[Z],headerParameters:[te,re,gn,it,et,tt,Tm,wr,br,Sr,gt,yt,pt,jr,xi,Rc,vm,Qm,PH,ZR,eN,tN],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:su},unt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:OG},default:{bodyMapper:K,headersMapper:MG}},queryParameters:[ee,XR],urlParameters:[Z],headerParameters:[te,re,me,gn,it,et,tt,Tm,wr,br,Sr,gt,yt,pt,jr,ZR,eN,tN,Tme],isXML:!0,serializer:su},dnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:FG},default:{bodyMapper:K,headersMapper:UG}},queryParameters:[ee,XR],urlParameters:[Z],headerParameters:[te,re,me,gn,it,et,tt,wr,br,Sr,gt,yt,pt,jr,xc,wc,bc,Sc,tu,ru,nu,PH,ZR,eN,tN,Qh,Pme,Dh,vme],isXML:!0,serializer:su},pnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:PR,headersMapper:qG},default:{bodyMapper:K,headersMapper:$G}},queryParameters:[ee,mc,fc,xs,vH],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,Tm,gt,yt,pt],isXML:!0,serializer:su},mnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:PR,headersMapper:GG},default:{bodyMapper:K,headersMapper:HG}},queryParameters:[ee,mc,fc,xs,vH,_me],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,Tm,gt,yt,pt,Qme],isXML:!0,serializer:su},fnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:zG},default:{bodyMapper:K,headersMapper:VG}},queryParameters:[Ci,ee],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,wr,br,Sr,gt,yt,pt,jr,NH],isXML:!0,serializer:su},Ant={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:YG},default:{bodyMapper:K,headersMapper:WG}},queryParameters:[Ci,ee],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,gt,yt,pt,TH,Dme],isXML:!0,serializer:su},hnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{202:{headersMapper:jG},default:{bodyMapper:K,headersMapper:JG}},queryParameters:[ee,kme],urlParameters:[Z],headerParameters:[te,re,me,et,tt,gt,yt,pt,Pm],isXML:!0,serializer:su};var cN=class{static{i(this,"AppendBlobImpl")}client;constructor(e){this.client=e}create(e,r){return this.client.sendOperationRequest({contentLength:e,options:r},gnt)}appendBlock(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},ynt)}appendBlockFromUrl(e,r,n){return this.client.sendOperationRequest({sourceUrl:e,contentLength:r,options:n},Ent)}seal(e){return this.client.sendOperationRequest({options:e},Cnt)}},lN=Lo(Mo,!0),gnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:KG},default:{bodyMapper:K,headersMapper:XG}},queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,me,gn,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic,da,pa,jr,ma,Bc,Lme],isXML:!0,serializer:lN},ynt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:ZG},default:{bodyMapper:K,headersMapper:eH}},requestBody:_m,queryParameters:[ee,_H],urlParameters:[Z],headerParameters:[te,re,gn,it,et,tt,wr,br,Sr,gt,yt,pt,jr,xi,Rc,vm,Qm,QH,rN],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:lN},Ent={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:tH},default:{bodyMapper:K,headersMapper:rH}},queryParameters:[ee,_H],urlParameters:[Z],headerParameters:[te,re,me,gn,it,et,tt,wr,br,Sr,gt,yt,pt,jr,xc,wc,bc,Sc,tu,ru,nu,xi,Qh,Dh,QH,rN,nN],isXML:!0,serializer:lN},Cnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{200:{headersMapper:nH},default:{bodyMapper:K,headersMapper:sH}},queryParameters:[ee,Ome],urlParameters:[Z],headerParameters:[te,re,me,it,et,tt,gt,yt,rN],isXML:!0,serializer:lN};var uN=class{static{i(this,"BlockBlobImpl")}client;constructor(e){this.client=e}upload(e,r,n){return this.client.sendOperationRequest({contentLength:e,body:r,options:n},Int)}putBlobFromUrl(e,r,n){return this.client.sendOperationRequest({contentLength:e,copySource:r,options:n},xnt)}stageBlock(e,r,n,s){return this.client.sendOperationRequest({blockId:e,contentLength:r,body:n,options:s},wnt)}stageBlockFromURL(e,r,n,s){return this.client.sendOperationRequest({blockId:e,contentLength:r,sourceUrl:n,options:s},bnt)}commitBlockList(e,r){return this.client.sendOperationRequest({blocks:e,options:r},Snt)}getBlockList(e,r){return this.client.sendOperationRequest({listType:e,options:r},Bnt)}},Lh=Lo(Mo,!0),Int={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:oH},default:{bodyMapper:K,headersMapper:iH}},requestBody:_m,queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,gn,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic,da,pa,jr,eu,ma,Bc,xi,Rc,vm,Qm,DH],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:Lh},xnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:aH},default:{bodyMapper:K,headersMapper:cH}},queryParameters:[ee],urlParameters:[Z],headerParameters:[te,re,me,gn,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic,jr,eu,xc,wc,bc,Sc,JR,Pm,ma,tu,ru,KR,nu,xi,DH,Mme],isXML:!0,serializer:Lh},wnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:lH},default:{bodyMapper:K,headersMapper:uH}},requestBody:_m,queryParameters:[ee,kH,LH],urlParameters:[Z],headerParameters:[te,re,gn,it,wr,br,Sr,jr,xi,Rc,vm,Qm],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"binary",serializer:Lh},bnt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:dH},default:{bodyMapper:K,headersMapper:pH}},queryParameters:[ee,kH,LH],urlParameters:[Z],headerParameters:[te,re,me,gn,it,wr,br,Sr,jr,xc,wc,bc,Sc,tu,ru,nu,Qh,Dh,nN],isXML:!0,serializer:Lh},Snt={path:"/{containerName}/{blob}",httpMethod:"PUT",responses:{201:{headersMapper:mH},default:{bodyMapper:K,headersMapper:fH}},requestBody:Fme,queryParameters:[ee,OH],urlParameters:[Z],headerParameters:[pc,Ei,te,re,Yn,it,et,tt,wr,br,Sr,gt,yt,pt,hc,gc,yc,Ec,Cc,Ic,da,pa,jr,eu,ma,Bc,xi,Rc],isXML:!0,contentType:"application/xml; charset=utf-8",mediaType:"xml",serializer:Lh},Bnt={path:"/{containerName}/{blob}",httpMethod:"GET",responses:{200:{bodyMapper:$q,headersMapper:AH},default:{bodyMapper:K,headersMapper:hH}},queryParameters:[ee,xs,OH,Ume],urlParameters:[Z],headerParameters:[te,re,me,it,pt],isXML:!0,serializer:Lh};var cI=class extends $C{static{i(this,"StorageClient")}url;version;constructor(e,r){if(e===void 0)throw new Error("'url' cannot be null");r||(r={});let n={requestContentType:"application/json; charset=utf-8"},s="azsdk-js-azure-storage-blob/12.30.0",o=r.userAgentOptions&&r.userAgentOptions.userAgentPrefix?`${r.userAgentOptions.userAgentPrefix} ${s}`:`${s}`,a={...n,...r,userAgentOptions:{userAgentPrefix:o},endpoint:r.endpoint??r.baseUri??"{url}"};super(a),this.url=e,this.version=r.version||"2026-02-06",this.service=new sN(this),this.container=new oN(this),this.blob=new iN(this),this.pageBlob=new aN(this),this.appendBlob=new cN(this),this.blockBlob=new uN(this)}service;container;blob;pageBlob;appendBlob;blockBlob};var lI=class extends cI{static{i(this,"StorageContextClient")}async sendOperationRequest(e,r){let n={...r};return(n.path==="/{containerName}"||n.path==="/{containerName}/{blob}")&&(n.path=""),super.sendOperationRequest(e,n)}};function $me(t){let e=new URL(t),r=e.pathname;return r=r||"/",r=Nnt(r),e.pathname=r,e.toString()}i($me,"escapeURLPath");function Rnt(t){let e="";if(t.search("DevelopmentStorageProxyUri=")!==-1){let r=t.split(";");for(let n of r)n.trim().startsWith("DevelopmentStorageProxyUri=")&&(e=n.trim().match("DevelopmentStorageProxyUri=(.*)")[1])}return e}i(Rnt,"getProxyUriFromDevConnString");function Dm(t,e){let r=t.split(";");for(let n of r)if(n.trim().startsWith(e))return n.trim().match(e+"=(.*)")[1];return""}i(Dm,"getValueInConnString");function km(t){let e="";t.startsWith("UseDevelopmentStorage=true")&&(e=Rnt(t),t=Ope);let r=Dm(t,"BlobEndpoint");if(r=r.endsWith("/")?r.slice(0,-1):r,t.search("DefaultEndpointsProtocol=")!==-1&&t.search("AccountKey=")!==-1){let n="",s="",o=Buffer.from("accountKey","base64"),a="";if(s=Dm(t,"AccountName"),o=Buffer.from(Dm(t,"AccountKey"),"base64"),!r){n=Dm(t,"DefaultEndpointsProtocol");let c=n.toLowerCase();if(c!=="https"&&c!=="http")throw new Error("Invalid DefaultEndpointsProtocol in the provided Connection String. Expecting 'https' or 'http'");if(a=Dm(t,"EndpointSuffix"),!a)throw new Error("Invalid EndpointSuffix in the provided Connection String");r=`${n}://${s}.blob.${a}`}if(s){if(o.length===0)throw new Error("Invalid AccountKey in the provided Connection String")}else throw new Error("Invalid AccountName in the provided Connection String");return{kind:"AccountConnString",url:r,accountName:s,accountKey:o,proxyUri:e}}else{let n=Dm(t,"SharedAccessSignature"),s=Dm(t,"AccountName");if(s||(s=qH(r)),r){if(!n)throw new Error("Invalid SharedAccessSignature in the provided SAS Connection String")}else throw new Error("Invalid BlobEndpoint in the provided SAS Connection String");return n.startsWith("?")&&(n=n.substring(1)),{kind:"SASConnString",url:r,accountName:s,accountSas:n}}}i(km,"extractConnectionStringParts");function Nnt(t){return encodeURIComponent(t).replace(/%2F/g,"/").replace(/'/g,"%27").replace(/\+/g,"%20").replace(/%25/g,"%")}i(Nnt,"escape");function on(t,e){let r=new URL(t),n=r.pathname;return n=n?n.endsWith("/")?`${n}${e}`:`${n}/${e}`:e,r.pathname=n,r.toString()}i(on,"appendToURLPath");function Oh(t,e,r){let n=new URL(t),s=encodeURIComponent(e),o=r?encodeURIComponent(r):void 0,a=n.search===""?"?":n.search,c=[];for(let l of a.slice(1).split("&"))if(l){let[u]=l.split("=",2);u!==s&&c.push(l)}return o&&c.push(`${s}=${o}`),n.search=c.length?`?${c.join("&")}`:"",n.toString()}i(Oh,"setURLParameter");function MH(t,e){return new URL(t).searchParams.get(e)??void 0}i(MH,"getURLParameter");function Gme(t){try{let e=new URL(t);return e.protocol.endsWith(":")?e.protocol.slice(0,-1):e.protocol}catch{return}}i(Gme,"getURLScheme");function uI(t,e){let r=new URL(t),n=r.search;return n?n+="&"+e:n=e,r.search=n,r.toString()}i(uI,"appendToURLQuery");function Nt(t,e=!0){let r=t.toISOString();return e?r.substring(0,r.length-1)+"0000Z":r.substring(0,r.length-5)+"Z"}i(Nt,"truncatedISO8061Date");function Tnt(t){return Rt?Buffer.from(t).toString("base64"):btoa(t)}i(Tnt,"base64encode");function FH(t,e){t.length>42&&(t=t.slice(0,42));let o=t+Pnt(e.toString(),48-t.length,"0");return Tnt(o)}i(FH,"generateBlockID");function Pnt(t,e,r=" "){return String.prototype.padStart?t.padStart(e,r):(r=r||" ",t.length>e?t:(e=e-t.length,e>r.length&&(r+=r.repeat(e/r.length)),r.slice(0,e)+t))}i(Pnt,"padStart");function UH(t,e){return t.toLocaleLowerCase()===e.toLocaleLowerCase()}i(UH,"iEqual");function qH(t){let e=new URL(t),r;try{return e.hostname.split(".")[1]==="blob"?r=e.hostname.split(".")[0]:dN(e)?r=e.pathname.split("/")[1]:r="",r}catch{throw new Error("Unable to extract accountName with provided information.")}}i(qH,"getAccountNameFromUrl");function dN(t){let e=t.host;return/^.*:.*:.*$|^(localhost|host.docker.internal)(:[0-9]+)?$|^(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])(\.(\d|[1-9]\d|1\d\d|2[0-4]\d|25[0-5])){3}(:[0-9]+)?$/.test(e)||!!t.port&&$pe.includes(t.port)}i(dN,"isIpEndpointStyle");function Pd(t){if(t===void 0)return;let e=[];for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];e.push(`${encodeURIComponent(r)}=${encodeURIComponent(n)}`)}return e.join("&")}i(Pd,"toBlobTagsString");function Hme(t){if(t===void 0)return;let e={blobTagSet:[]};for(let r in t)if(Object.prototype.hasOwnProperty.call(t,r)){let n=t[r];e.blobTagSet.push({key:r,value:n})}return e}i(Hme,"toBlobTags");function pN(t){if(t===void 0)return;let e={};for(let r of t.blobTagSet)e[r.key]=r.value;return e}i(pN,"toTags");function $H(t){if(t!==void 0)switch(t.kind){case"csv":return{format:{type:"delimited",delimitedTextConfiguration:{columnSeparator:t.columnSeparator||",",fieldQuote:t.fieldQuote||"",recordSeparator:t.recordSeparator,escapeChar:t.escapeCharacter||"",headersPresent:t.hasHeaders||!1}}};case"json":return{format:{type:"json",jsonTextConfiguration:{recordSeparator:t.recordSeparator}}};case"arrow":return{format:{type:"arrow",arrowConfiguration:{schema:t.schema}}};case"parquet":return{format:{type:"parquet"}};default:throw Error("Invalid BlobQueryTextConfiguration.")}}i($H,"toQuerySerialization");function mN(t){if(!t||"policy-id"in t)return;let e=[];for(let r in t){let n=r.split("_"),s="or-";n[0].startsWith(s)&&(n[0]=n[0].substring(s.length));let o={ruleId:n[1],replicationStatus:t[r]},a=e.findIndex(c=>c.policyId===n[0]);a>-1?e[a].rules.push(o):e.push({policyId:n[0],rules:[o]})}return e}i(mN,"parseObjectReplicationRecord");function Mh(t){return t?t.scheme+" "+t.value:void 0}i(Mh,"httpAuthorizationToString");function*GH(t){let e=[],r=[];t.pageRange&&(e=t.pageRange),t.clearRange&&(r=t.clearRange);let n=0,s=0;for(;n0&&n.length>0&&e.push(`${r}=${n}`))}};function dI(t,e,r){return pI(t,e,r).sasQueryParameters}i(dI,"generateBlobSASQueryParameters");function pI(t,e,r){let n=t.version?t.version:NR,s=e instanceof xr?e:void 0,o;if(s===void 0&&r!==void 0&&(o=new BR(r,e)),s===void 0&&o===void 0)throw TypeError("Invalid sharedKeyCredential, userDelegationKey or accountName.");if(n>="2020-12-06")return s!==void 0?Qnt(t,s):n>="2025-07-05"?Ont(t,o):Lnt(t,o);if(n>="2018-11-09")return s!==void 0?_nt(t,s):n>="2020-02-10"?knt(t,o):Dnt(t,o);if(n>="2015-04-05"){if(s!==void 0)return vnt(t,s);throw new RangeError("'version' must be >= '2018-11-09' when generating user delegation SAS using user delegation key.")}throw new RangeError("'version' must be >= '2015-04-05'.")}i(pI,"generateBlobSASQueryParametersInternal");function vnt(t,e){if(t=Om(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c";t.blobName&&(r="b");let n;t.permissions&&(t.blobName?n=Nc.parse(t.permissions.toString()).toString():n=Tc.parse(t.permissions.toString()).toString());let s=[n||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` +`),o=e.computeHMACSHA256(s);return{sasQueryParameters:new Aa(t.version,o,n,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:s}}i(vnt,"generateBlobSASQueryParameters20150405");function _nt(t,e){if(t=Om(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType),stringToSign:o}}i(_nt,"generateBlobSASQueryParameters20181109");function Qnt(t,e){if(t=Om(t),!t.identifier&&!(t.permissions&&t.expiresOn))throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when 'identifier' is not provided.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),t.identifier,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl?t.cacheControl:"",t.contentDisposition?t.contentDisposition:"",t.contentEncoding?t.contentEncoding:"",t.contentLanguage?t.contentLanguage:"",t.contentType?t.contentType:""].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,void 0,void 0,void 0,t.encryptionScope),stringToSign:o}}i(Qnt,"generateBlobSASQueryParameters20201206");function Dnt(t,e){if(t=Om(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Nt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Nt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey),stringToSign:o}}i(Dnt,"generateBlobSASQueryParametersUDK20181109");function knt(t,e){if(t=Om(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Nt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Nt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId),stringToSign:o}}i(knt,"generateBlobSASQueryParametersUDK20200210");function Lnt(t,e){if(t=Om(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Nt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Nt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope),stringToSign:o}}i(Lnt,"generateBlobSASQueryParametersUDK20201206");function Ont(t,e){if(t=Om(t),!t.permissions||!t.expiresOn)throw new RangeError("Must provide 'permissions' and 'expiresOn' for Blob SAS generation when generating user delegation SAS.");let r="c",n=t.snapshotTime;t.blobName&&(r="b",t.snapshotTime?r="bs":t.versionId&&(r="bv",n=t.versionId));let s;t.permissions&&(t.blobName?s=Nc.parse(t.permissions.toString()).toString():s=Tc.parse(t.permissions.toString()).toString());let o=[s||"",t.startsOn?Nt(t.startsOn,!1):"",t.expiresOn?Nt(t.expiresOn,!1):"",Lm(e.accountName,t.containerName,t.blobName),e.userDelegationKey.signedObjectId,e.userDelegationKey.signedTenantId,e.userDelegationKey.signedStartsOn?Nt(e.userDelegationKey.signedStartsOn,!1):"",e.userDelegationKey.signedExpiresOn?Nt(e.userDelegationKey.signedExpiresOn,!1):"",e.userDelegationKey.signedService,e.userDelegationKey.signedVersion,t.preauthorizedAgentObjectId,void 0,t.correlationId,void 0,t.delegatedUserObjectId,t.ipRange?fa(t.ipRange):"",t.protocol?t.protocol:"",t.version,r,n,t.encryptionScope,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType].join(` +`),a=e.computeHMACSHA256(o);return{sasQueryParameters:new Aa(t.version,a,s,void 0,void 0,t.protocol,t.startsOn,t.expiresOn,t.ipRange,t.identifier,r,t.cacheControl,t.contentDisposition,t.contentEncoding,t.contentLanguage,t.contentType,e.userDelegationKey,t.preauthorizedAgentObjectId,t.correlationId,t.encryptionScope,t.delegatedUserObjectId),stringToSign:o}}i(Ont,"generateBlobSASQueryParametersUDK20250705");function Lm(t,e,r){let n=[`/blob/${t}/${e}`];return r&&n.push(`/${r}`),n.join("")}i(Lm,"getCanonicalName");function Om(t){let e=t.version?t.version:NR;if(t.snapshotTime&&e<"2018-11-09")throw RangeError("'version' must be >= '2018-11-09' when providing 'snapshotTime'.");if(t.blobName===void 0&&t.snapshotTime)throw RangeError("Must provide 'blobName' when providing 'snapshotTime'.");if(t.versionId&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'versionId'.");if(t.blobName===void 0&&t.versionId)throw RangeError("Must provide 'blobName' when providing 'versionId'.");if(t.permissions&&t.permissions.setImmutabilityPolicy&&e<"2020-08-04")throw RangeError("'version' must be >= '2020-08-04' when provided 'i' permission.");if(t.permissions&&t.permissions.deleteVersion&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'x' permission.");if(t.permissions&&t.permissions.permanentDelete&&e<"2019-10-10")throw RangeError("'version' must be >= '2019-10-10' when providing 'y' permission.");if(t.permissions&&t.permissions.tag&&e<"2019-12-12")throw RangeError("'version' must be >= '2019-12-12' when providing 't' permission.");if(e<"2020-02-10"&&t.permissions&&(t.permissions.move||t.permissions.execute))throw RangeError("'version' must be >= '2020-02-10' when providing the 'm' or 'e' permission.");if(e<"2021-04-10"&&t.permissions&&t.permissions.filterByTags)throw RangeError("'version' must be >= '2021-04-10' when providing the 'f' permission.");if(e<"2020-02-10"&&(t.preauthorizedAgentObjectId||t.correlationId))throw RangeError("'version' must be >= '2020-02-10' when providing 'preauthorizedAgentObjectId' or 'correlationId'.");if(t.encryptionScope&&e<"2020-12-06")throw RangeError("'version' must be >= '2020-12-06' when provided 'encryptionScope' in SAS.");return t.version=e,t}i(Om,"SASSignatureValuesSanityCheckAndAutofill");var mI=class{static{i(this,"BlobLeaseClient")}_leaseId;_url;_containerOrBlobOperation;_isContainer;get leaseId(){return this._leaseId}get url(){return this._url}constructor(e,r){let n=e.storageClientContext;this._url=e.url,e.name===void 0?(this._isContainer=!0,this._containerOrBlobOperation=n.container):(this._isContainer=!1,this._containerOrBlobOperation=n.blob),r||(r=wh()),this._leaseId=r}async acquireLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==ua||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==ua||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return he.withSpan("BlobLeaseClient-acquireLease",r,async n=>Te(await this._containerOrBlobOperation.acquireLease({abortSignal:r.abortSignal,duration:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},proposedLeaseId:this._leaseId,tracingOptions:n.tracingOptions})))}async changeLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==ua||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==ua||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return he.withSpan("BlobLeaseClient-changeLease",r,async n=>{let s=Te(await this._containerOrBlobOperation.changeLease(this._leaseId,e,{abortSignal:r.abortSignal,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return this._leaseId=e,s})}async releaseLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==ua||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==ua||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return he.withSpan("BlobLeaseClient-releaseLease",e,async r=>Te(await this._containerOrBlobOperation.releaseLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async renewLease(e={}){if(this._isContainer&&(e.conditions?.ifMatch&&e.conditions?.ifMatch!==ua||e.conditions?.ifNoneMatch&&e.conditions?.ifNoneMatch!==ua||e.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return he.withSpan("BlobLeaseClient-renewLease",e,async r=>this._containerOrBlobOperation.renewLease(this._leaseId,{abortSignal:e.abortSignal,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions}))}async breakLease(e,r={}){if(this._isContainer&&(r.conditions?.ifMatch&&r.conditions?.ifMatch!==ua||r.conditions?.ifNoneMatch&&r.conditions?.ifNoneMatch!==ua||r.conditions?.tagConditions))throw new RangeError("The IfMatch, IfNoneMatch and tags access conditions are ignored by the service. Values other than undefined or their default values are not acceptable.");return he.withSpan("BlobLeaseClient-breakLease",r,async n=>{let s={abortSignal:r.abortSignal,breakPeriod:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions};return Te(await this._containerOrBlobOperation.breakLease(s))})}};var Vme=require("node:stream");var fN=class extends Vme.Readable{static{i(this,"RetriableReadableStream")}start;offset;end;getter;source;retries=0;maxRetryRequests;onProgress;options;constructor(e,r,n,s,o={}){super({highWaterMark:o.highWaterMark}),this.getter=r,this.source=e,this.start=n,this.offset=n,this.end=n+s-1,this.maxRetryRequests=o.maxRetryRequests&&o.maxRetryRequests>=0?o.maxRetryRequests:0,this.onProgress=o.onProgress,this.options=o,this.setSourceEventHandlers()}_read(){this.source.resume()}setSourceEventHandlers(){this.source.on("data",this.sourceDataHandler),this.source.on("end",this.sourceErrorOrEndHandler),this.source.on("error",this.sourceErrorOrEndHandler),this.source.on("aborted",this.sourceAbortedHandler)}removeSourceEventHandlers(){this.source.removeListener("data",this.sourceDataHandler),this.source.removeListener("end",this.sourceErrorOrEndHandler),this.source.removeListener("error",this.sourceErrorOrEndHandler),this.source.removeListener("aborted",this.sourceAbortedHandler)}sourceDataHandler=i(e=>{if(this.options.doInjectErrorOnce){this.options.doInjectErrorOnce=void 0,this.source.pause(),this.sourceErrorOrEndHandler(),this.source.destroy();return}this.offset+=e.length,this.onProgress&&this.onProgress({loadedBytes:this.offset-this.start}),this.push(e)||this.source.pause()},"sourceDataHandler");sourceAbortedHandler=i(()=>{let e=new Do("The operation was aborted.");this.destroy(e)},"sourceAbortedHandler");sourceErrorOrEndHandler=i(e=>{if(e&&e.name==="AbortError"){this.destroy(e);return}this.removeSourceEventHandlers(),this.offset-1===this.end?this.push(null):this.offset<=this.end?this.retries{this.source=r,this.setSourceEventHandlers()}).catch(r=>{this.destroy(r)})):this.destroy(new Error(`Data corruption failure: received less data than required and reached maxRetires limitation. Received data offset: ${this.offset-1}, data needed offset: ${this.end}, retries: ${this.retries}, max retries: ${this.maxRetryRequests}`)):this.destroy(new Error(`Data corruption failure: Received more data than original request, data needed offset is ${this.end}, received offset: ${this.offset-1}`))},"sourceErrorOrEndHandler");_destroy(e,r){this.removeSourceEventHandlers(),this.source.destroy(),r(e===null?void 0:e)}};var AN=class{static{i(this,"BlobDownloadResponse")}get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){return this.originalResponse.copyCompletedOn}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get tagCount(){return this.originalResponse.tagCount}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get lastAccessed(){return this.originalResponse.lastAccessed}get createdOn(){return this.originalResponse.createdOn}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get versionId(){return this.originalResponse.versionId}get isCurrentVersion(){return this.originalResponse.isCurrentVersion}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get objectReplicationDestinationPolicyId(){return this.originalResponse.objectReplicationDestinationPolicyId}get objectReplicationSourceProperties(){return this.originalResponse.objectReplicationSourceProperties}get isSealed(){return this.originalResponse.isSealed}get immutabilityPolicyExpiresOn(){return this.originalResponse.immutabilityPolicyExpiresOn}get immutabilityPolicyMode(){return this.originalResponse.immutabilityPolicyMode}get legalHold(){return this.originalResponse.legalHold}get contentAsBlob(){return this.originalResponse.blobBody}get readableStreamBody(){return Rt?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,r,n,s,o={}){this.originalResponse=e,this.blobDownloadStream=new fN(this.originalResponse.readableStreamBody,r,n,s,o)}};var Xme=require("node:stream");var HH=new Uint8Array([79,98,106,1]),Yme="avro.codec",Wme="avro.schema";var mr=class t{static{i(this,"AvroParser")}static async readFixedBytes(e,r,n={}){let s=await e.read(r,{abortSignal:n.abortSignal});if(s.length!==r)throw new Error("Hit stream end.");return s}static async readByte(e,r={}){return(await t.readFixedBytes(e,1,r))[0]}static async readZigZagLong(e,r={}){let n=0,s=0,o,a,c;do o=await t.readByte(e,r),a=o&128,n|=(o&127)<Number.MAX_SAFE_INTEGER)throw new Error("Integer overflow.");return l}return n>>1^-(n&1)}static async readLong(e,r={}){return t.readZigZagLong(e,r)}static async readInt(e,r={}){return t.readZigZagLong(e,r)}static async readNull(){return null}static async readBoolean(e,r={}){let n=await t.readByte(e,r);if(n===1)return!0;if(n===0)return!1;throw new Error("Byte was not a boolean.")}static async readFloat(e,r={}){let n=await t.readFixedBytes(e,4,r);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat32(0,!0)}static async readDouble(e,r={}){let n=await t.readFixedBytes(e,8,r);return new DataView(n.buffer,n.byteOffset,n.byteLength).getFloat64(0,!0)}static async readBytes(e,r={}){let n=await t.readLong(e,r);if(n<0)throw new Error("Bytes size was negative.");return e.read(n,{abortSignal:r.abortSignal})}static async readString(e,r={}){let n=await t.readBytes(e,r);return new TextDecoder().decode(n)}static async readMapPair(e,r,n={}){let s=await t.readString(e,n),o=await r(e,n);return{key:s,value:o}}static async readMap(e,r,n={}){let s=i((c,l={})=>t.readMapPair(c,r,l),"readPairMethod"),o=await t.readArray(e,s,n),a={};for(let c of o)a[c.key]=c.value;return a}static async readArray(e,r,n={}){let s=[];for(let o=await t.readLong(e,n);o!==0;o=await t.readLong(e,n))for(o<0&&(await t.readLong(e,n),o=-o);o--;){let a=await r(e,n);s.push(a)}return s}},Mm;(function(t){t.RECORD="record",t.ENUM="enum",t.ARRAY="array",t.MAP="map",t.UNION="union",t.FIXED="fixed"})(Mm||(Mm={}));var Cn;(function(t){t.NULL="null",t.BOOLEAN="boolean",t.INT="int",t.LONG="long",t.FLOAT="float",t.DOUBLE="double",t.BYTES="bytes",t.STRING="string"})(Cn||(Cn={}));var ou=class t{static{i(this,"AvroType")}static fromSchema(e){return typeof e=="string"?t.fromStringSchema(e):Array.isArray(e)?t.fromArraySchema(e):t.fromObjectSchema(e)}static fromStringSchema(e){switch(e){case Cn.NULL:case Cn.BOOLEAN:case Cn.INT:case Cn.LONG:case Cn.FLOAT:case Cn.DOUBLE:case Cn.BYTES:case Cn.STRING:return new zH(e);default:throw new Error(`Unexpected Avro type ${e}`)}}static fromArraySchema(e){return new YH(e.map(t.fromSchema))}static fromObjectSchema(e){let r=e.type;try{return t.fromStringSchema(r)}catch{}switch(r){case Mm.RECORD:if(e.aliases)throw new Error(`aliases currently is not supported, schema: ${e}`);if(!e.name)throw new Error(`Required attribute 'name' doesn't exist on schema: ${e}`);let n={};if(!e.fields)throw new Error(`Required attribute 'fields' doesn't exist on schema: ${e}`);for(let s of e.fields)n[s.name]=t.fromSchema(s.type);return new jH(n,e.name);case Mm.ENUM:if(e.aliases)throw new Error(`aliases currently is not supported, schema: ${e}`);if(!e.symbols)throw new Error(`Required attribute 'symbols' doesn't exist on schema: ${e}`);return new VH(e.symbols);case Mm.MAP:if(!e.values)throw new Error(`Required attribute 'values' doesn't exist on schema: ${e}`);return new WH(t.fromSchema(e.values));case Mm.ARRAY:case Mm.FIXED:default:throw new Error(`Unexpected Avro type ${r} in ${e}`)}}},zH=class extends ou{static{i(this,"AvroPrimitiveType")}_primitive;constructor(e){super(),this._primitive=e}read(e,r={}){switch(this._primitive){case Cn.NULL:return mr.readNull();case Cn.BOOLEAN:return mr.readBoolean(e,r);case Cn.INT:return mr.readInt(e,r);case Cn.LONG:return mr.readLong(e,r);case Cn.FLOAT:return mr.readFloat(e,r);case Cn.DOUBLE:return mr.readDouble(e,r);case Cn.BYTES:return mr.readBytes(e,r);case Cn.STRING:return mr.readString(e,r);default:throw new Error("Unknown Avro Primitive")}}},VH=class extends ou{static{i(this,"AvroEnumType")}_symbols;constructor(e){super(),this._symbols=e}async read(e,r={}){let n=await mr.readInt(e,r);return this._symbols[n]}},YH=class extends ou{static{i(this,"AvroUnionType")}_types;constructor(e){super(),this._types=e}async read(e,r={}){let n=await mr.readInt(e,r);return this._types[n].read(e,r)}},WH=class extends ou{static{i(this,"AvroMapType")}_itemType;constructor(e){super(),this._itemType=e}read(e,r={}){let n=i((s,o)=>this._itemType.read(s,o),"readItemMethod");return mr.readMap(e,n,r)}},jH=class extends ou{static{i(this,"AvroRecordType")}_name;_fields;constructor(e,r){super(),this._fields=e,this._name=r}async read(e,r={}){let n={};n.$schema=this._name;for(let s in this._fields)Object.prototype.hasOwnProperty.call(this._fields,s)&&(n[s]=await this._fields[s].read(e,r));return n}};function JH(t,e){if(t===e)return!0;if(t==null||e==null||t.length!==e.length)return!1;for(let r=0;r0)for(let o=0;o0}async*parseObjects(e={}){for(this._initialized||await this.initialize(e);this.hasNext();){let r=await this._itemType.read(this._dataStream,{abortSignal:e.abortSignal});if(this._itemsRemainingInBlock--,this._objectIndex++,this._itemsRemainingInBlock===0){let n=await mr.readFixedBytes(this._dataStream,16,{abortSignal:e.abortSignal});if(this._blockOffset=this._initialBlockOffset+this._dataStream.position,this._objectIndex=0,!JH(this._syncMarker,n))throw new Error("Stream is not a valid Avro file.");try{this._itemsRemainingInBlock=await mr.readLong(this._dataStream,{abortSignal:e.abortSignal})}catch{this._itemsRemainingInBlock=0}this._itemsRemainingInBlock>0&&await mr.readLong(this._dataStream,{abortSignal:e.abortSignal})}yield r}}};var AI=class{static{i(this,"AvroReadable")}};var Kme=require("buffer");var Jme=new Do("Reading from the avro stream was aborted."),hI=class extends AI{static{i(this,"AvroReadableFromStream")}_position;_readable;toUint8Array(e){return typeof e=="string"?Kme.Buffer.from(e):e}constructor(e){super(),this._readable=e,this._position=0}get position(){return this._position}async read(e,r={}){if(r.abortSignal?.aborted)throw Jme;if(e<0)throw new Error(`size parameter should be positive: ${e}`);if(e===0)return new Uint8Array;if(!this._readable.readable)throw new Error("Stream no longer readable.");let n=this._readable.read(e);return n?(this._position+=n.length,this.toUint8Array(n)):new Promise((s,o)=>{let a=i(()=>{this._readable.removeListener("readable",c),this._readable.removeListener("error",l),this._readable.removeListener("end",l),this._readable.removeListener("close",l),r.abortSignal&&r.abortSignal.removeEventListener("abort",u)},"cleanUp"),c=i(()=>{let d=this._readable.read(e);d&&(this._position+=d.length,a(),s(this.toUint8Array(d)))},"readableCallback"),l=i(()=>{a(),o()},"rejectCallback"),u=i(()=>{a(),o(Jme)},"abortHandler");this._readable.on("readable",c),this._readable.once("error",l),this._readable.once("end",l),this._readable.once("close",l),r.abortSignal&&r.abortSignal.addEventListener("abort",u)})}};var hN=class extends Xme.Readable{static{i(this,"BlobQuickQueryStream")}source;avroReader;avroIter;avroPaused=!0;onProgress;onError;constructor(e,r={}){super(),this.source=e,this.onProgress=r.onProgress,this.onError=r.onError,this.avroReader=new fI(new hI(this.source)),this.avroIter=this.avroReader.parseObjects({abortSignal:r.abortSignal})}_read(){this.avroPaused&&this.readInternal().catch(e=>{this.emit("error",e)})}async readInternal(){this.avroPaused=!1;let e;do{if(e=await this.avroIter.next(),e.done)break;let r=e.value,n=r.$schema;if(typeof n!="string")throw Error("Missing schema in avro record.");switch(n){case"com.microsoft.azure.storage.queryBlobContents.resultData":{let s=r.data;if(!(s instanceof Uint8Array))throw Error("Invalid data in avro result record.");this.push(Buffer.from(s))||(this.avroPaused=!0)}break;case"com.microsoft.azure.storage.queryBlobContents.progress":{let s=r.bytesScanned;if(typeof s!="number")throw Error("Invalid bytesScanned in avro progress record.");this.onProgress&&this.onProgress({loadedBytes:s})}break;case"com.microsoft.azure.storage.queryBlobContents.end":if(this.onProgress){let s=r.totalBytes;if(typeof s!="number")throw Error("Invalid totalBytes in avro end record.");this.onProgress({loadedBytes:s})}this.push(null);break;case"com.microsoft.azure.storage.queryBlobContents.error":if(this.onError){let s=r.fatal;if(typeof s!="boolean")throw Error("Invalid fatal in avro error record.");let o=r.name;if(typeof o!="string")throw Error("Invalid name in avro error record.");let a=r.description;if(typeof a!="string")throw Error("Invalid description in avro error record.");let c=r.position;if(typeof c!="number")throw Error("Invalid position in avro error record.");this.onError({position:c,name:o,isFatal:s,description:a})}break;default:throw Error(`Unknown schema ${n} in avro progress record.`)}}while(!e.done&&!this.avroPaused)}};var gN=class{static{i(this,"BlobQueryResponse")}get acceptRanges(){return this.originalResponse.acceptRanges}get cacheControl(){return this.originalResponse.cacheControl}get contentDisposition(){return this.originalResponse.contentDisposition}get contentEncoding(){return this.originalResponse.contentEncoding}get contentLanguage(){return this.originalResponse.contentLanguage}get blobSequenceNumber(){return this.originalResponse.blobSequenceNumber}get blobType(){return this.originalResponse.blobType}get contentLength(){return this.originalResponse.contentLength}get contentMD5(){return this.originalResponse.contentMD5}get contentRange(){return this.originalResponse.contentRange}get contentType(){return this.originalResponse.contentType}get copyCompletedOn(){}get copyId(){return this.originalResponse.copyId}get copyProgress(){return this.originalResponse.copyProgress}get copySource(){return this.originalResponse.copySource}get copyStatus(){return this.originalResponse.copyStatus}get copyStatusDescription(){return this.originalResponse.copyStatusDescription}get leaseDuration(){return this.originalResponse.leaseDuration}get leaseState(){return this.originalResponse.leaseState}get leaseStatus(){return this.originalResponse.leaseStatus}get date(){return this.originalResponse.date}get blobCommittedBlockCount(){return this.originalResponse.blobCommittedBlockCount}get etag(){return this.originalResponse.etag}get errorCode(){return this.originalResponse.errorCode}get isServerEncrypted(){return this.originalResponse.isServerEncrypted}get blobContentMD5(){return this.originalResponse.blobContentMD5}get lastModified(){return this.originalResponse.lastModified}get metadata(){return this.originalResponse.metadata}get requestId(){return this.originalResponse.requestId}get clientRequestId(){return this.originalResponse.clientRequestId}get version(){return this.originalResponse.version}get encryptionKeySha256(){return this.originalResponse.encryptionKeySha256}get contentCrc64(){return this.originalResponse.contentCrc64}get blobBody(){}get readableStreamBody(){return Rt?this.blobDownloadStream:void 0}get _response(){return this.originalResponse._response}originalResponse;blobDownloadStream;constructor(e,r={}){this.originalResponse=e,this.blobDownloadStream=new hN(this.originalResponse.readableStreamBody,r)}};var KH;(function(t){t.Hot="Hot",t.Cool="Cool",t.Cold="Cold",t.Archive="Archive"})(KH||(KH={}));var XH;(function(t){t.P4="P4",t.P6="P6",t.P10="P10",t.P15="P15",t.P20="P20",t.P30="P30",t.P40="P40",t.P50="P50",t.P60="P60",t.P70="P70",t.P80="P80"})(XH||(XH={}));function vd(t){if(t!==void 0)return t}i(vd,"toAccessTier");function an(t,e){if(t&&!e)throw new RangeError("Customer-provided encryption key must be used over HTTPS.");t&&!t.encryptionAlgorithm&&(t.encryptionAlgorithm=Lpe)}i(an,"ensureCpkIfSpecified");var ZH;(function(t){t.StorageOAuthScopes="https://storage.azure.com/.default",t.DiskComputeOAuthScopes="https://disk.compute.azure.com/.default"})(ZH||(ZH={}));function yN(t){let e=(t._response.parsedBody.pageRange||[]).map(n=>({offset:n.start,count:n.end-n.start})),r=(t._response.parsedBody.clearRange||[]).map(n=>({offset:n.start,count:n.end-n.start}));return{...t,pageRange:e,clearRange:r,_response:{...t._response,parsedBody:{pageRange:e,clearRange:r}}}}i(yN,"rangeResponseFromModel");var Ofe=D(Lfe(),1);var NN=class extends Ofe.Poller{static{i(this,"BlobBeginCopyFromUrlPoller")}intervalInMs;constructor(e){let{blobClient:r,copySource:n,intervalInMs:s=15e3,onProgress:o,resumeFrom:a,startCopyFromURLOptions:c}=e,l;a&&(l=JSON.parse(a).state);let u=CI({...l,blobClient:r,copySource:n,startCopyFromURLOptions:c});super(u),typeof o=="function"&&this.onProgress(o),this.intervalInMs=s}delay(){return _C(this.intervalInMs)}},Ist=i(async function(e={}){let r=this.state,{copyId:n}=r;return r.isCompleted?CI(r):n?(await r.blobClient.abortCopyFromURL(n,{abortSignal:e.abortSignal}),r.isCancelled=!0,CI(r)):(r.isCancelled=!0,CI(r))},"cancel"),xst=i(async function(e={}){let r=this.state,{blobClient:n,copySource:s,startCopyFromURLOptions:o}=r;if(r.isStarted){if(!r.isCompleted)try{let a=await r.blobClient.getProperties({abortSignal:e.abortSignal}),{copyStatus:c,copyProgress:l}=a,u=r.copyProgress;l&&(r.copyProgress=l),c==="pending"&&l!==u&&typeof e.fireProgress=="function"?e.fireProgress(r):c==="success"?(r.result=a,r.isCompleted=!0):c==="failed"&&(r.error=new Error(`Blob copy failed with reason: "${a.copyStatusDescription||"unknown"}"`),r.isCompleted=!0)}catch(a){r.error=a,r.isCompleted=!0}}else{r.isStarted=!0;let a=await n.startCopyFromURL(s,o);r.copyId=a.copyId,a.copyStatus==="success"&&(r.result=a,r.isCompleted=!0)}return CI(r)},"update"),wst=i(function(){return JSON.stringify({state:this.state},(e,r)=>{if(e!=="blobClient")return r})},"toString");function CI(t){return{state:{...t},cancel:Ist,toString:wst,update:xst}}i(CI,"makeBlobBeginCopyFromURLPollOperation");function Xs(t){if(t.offset<0)throw new RangeError("Range.offset cannot be smaller than 0.");if(t.count&&t.count<=0)throw new RangeError("Range.count must be larger than 0. Leave it undefined if you want a range from offset to the end.");return t.count?`bytes=${t.offset}-${t.offset+t.count-1}`:`bytes=${t.offset}-`}i(Xs,"rangeToString");var Mfe=require("events");var II;(function(t){t[t.Good=0]="Good",t[t.Error=1]="Error"})(II||(II={}));var xI=class{static{i(this,"Batch")}concurrency;actives=0;completed=0;offset=0;operations=[];state=II.Good;emitter;constructor(e=5){if(e<1)throw new RangeError("concurrency must be larger than 0");this.concurrency=e,this.emitter=new Mfe.EventEmitter}addOperation(e){this.operations.push(async()=>{try{this.actives++,await e(),this.actives--,this.completed++,this.parallelExecute()}catch(r){this.emitter.emit("error",r)}})}async do(){return this.operations.length===0?Promise.resolve():(this.parallelExecute(),new Promise((e,r)=>{this.emitter.on("finish",e),this.emitter.on("error",n=>{this.state=II.Error,r(n)})}))}nextOperation(){return this.offset=this.operations.length){this.emitter.emit("finish");return}for(;this.actives{let u=setTimeout(()=>l(new Error("The operation cannot be completed in timeout.")),1e5);t.on("readable",()=>{if(o>=a){clearTimeout(u),c();return}let d=t.read();if(!d)return;typeof d=="string"&&(d=Buffer.from(d,s));let p=o+d.length>a?a-o:d.length;e.fill(d.slice(0,p),r+o,r+o+p),o+=p}),t.on("end",()=>{clearTimeout(u),o{clearTimeout(u),l(d)})})}i(Ufe,"streamToBuffer");async function qfe(t,e){return new Promise((r,n)=>{let s=TN.default.createWriteStream(e);t.on("error",o=>{n(o)}),s.on("error",o=>{n(o)}),s.on("close",r),t.pipe(s)})}i(qfe,"readStreamToLocalFile");var $fe=Ffe.default.promisify(TN.default.stat),Gfe=TN.default.createReadStream;var iu=class t extends Fh{static{i(this,"BlobClient")}blobContext;_name;_containerName;_versionId;_snapshot;get name(){return this._name}get containerName(){return this._containerName}constructor(e,r,n,s){s=s||{};let o,a;if(Zl(r))a=e,o=r;else if(Rt&&r instanceof xr||r instanceof rr||ko(r))a=e,s=n,o=Lr(r,s);else if(!r&&typeof r!="string")a=e,n&&typeof n!="string"&&(s=n),o=Lr(new rr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let c=r,l=n,u=km(e);if(u.kind==="AccountConnString")if(Rt){let d=new xr(u.accountName,u.accountKey);a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l)),s.proxyOptions||(s.proxyOptions=xd(u.proxyUri)),o=Lr(d,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(u.kind==="SASConnString")a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l))+"?"+u.accountSas,o=Lr(new rr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(a,o),{blobName:this._name,containerName:this._containerName}=this.getBlobAndContainerNamesFromUrl(),this.blobContext=this.storageClientContext.blob,this._snapshot=MH(this.url,Xl.Parameters.SNAPSHOT),this._versionId=MH(this.url,Xl.Parameters.VERSIONID)}withSnapshot(e){return new t(Oh(this.url,Xl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}withVersion(e){return new t(Oh(this.url,Xl.Parameters.VERSIONID,e.length===0?void 0:e),this.pipeline)}getAppendBlobClient(){return new vN(this.url,this.pipeline)}getBlockBlobClient(){return new $h(this.url,this.pipeline)}getPageBlobClient(){return new _N(this.url,this.pipeline)}async download(e=0,r,n={}){return n.conditions=n.conditions||{},n.conditions=n.conditions||{},an(n.customerProvidedKey,this.isHttps),he.withSpan("BlobClient-download",n,async s=>{let o=Te(await this.blobContext.download({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onDownloadProgress:Rt?void 0:n.onProgress},range:e===0&&!r?void 0:Xs({offset:e,count:r}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey,tracingOptions:s.tracingOptions})),a={...o,_response:o._response,objectReplicationDestinationPolicyId:o.objectReplicationPolicyId,objectReplicationSourceProperties:mN(o.objectReplicationRules)};if(!Rt)return a;if((n.maxRetryRequests===void 0||n.maxRetryRequests<0)&&(n.maxRetryRequests=5),o.contentLength===void 0)throw new RangeError("File download response doesn't contain valid content length header");if(!o.etag)throw new RangeError("File download response doesn't contain valid etag header");return new AN(a,async c=>{let l={leaseAccessConditions:n.conditions,modifiedAccessConditions:{ifMatch:n.conditions.ifMatch||o.etag,ifModifiedSince:n.conditions.ifModifiedSince,ifNoneMatch:n.conditions.ifNoneMatch,ifUnmodifiedSince:n.conditions.ifUnmodifiedSince,ifTags:n.conditions?.tagConditions},range:Xs({count:e+o.contentLength-c,offset:c}),rangeGetContentMD5:n.rangeGetContentMD5,rangeGetContentCRC64:n.rangeGetContentCrc64,snapshot:n.snapshot,cpkInfo:n.customerProvidedKey};return(await this.blobContext.download({abortSignal:n.abortSignal,...l})).readableStreamBody},e,o.contentLength,{maxRetryRequests:n.maxRetryRequests,onProgress:n.onProgress})})}async exists(e={}){return he.withSpan("BlobClient-exists",e,async r=>{try{return an(e.customerProvidedKey,this.isHttps),await this.getProperties({abortSignal:e.abortSignal,customerProvidedKey:e.customerProvidedKey,conditions:e.conditions,tracingOptions:r.tracingOptions}),!0}catch(n){if(n.statusCode===404)return!1;if(n.statusCode===409&&(n.details.errorCode===Upe||n.details.errorCode===qpe))return!0;throw n}})}async getProperties(e={}){return e.conditions=e.conditions||{},an(e.customerProvidedKey,this.isHttps),he.withSpan("BlobClient-getProperties",e,async r=>{let n=Te(await this.blobContext.getProperties({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,tracingOptions:r.tracingOptions}));return{...n,_response:n._response,objectReplicationDestinationPolicyId:n.objectReplicationPolicyId,objectReplicationSourceProperties:mN(n.objectReplicationRules)}})}async delete(e={}){return e.conditions=e.conditions||{},he.withSpan("BlobClient-delete",e,async r=>Te(await this.blobContext.delete({abortSignal:e.abortSignal,deleteSnapshots:e.deleteSnapshots,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async deleteIfExists(e={}){return he.withSpan("BlobClient-deleteIfExists",e,async r=>{try{let n=Te(await this.delete(r));return{succeeded:!0,...n,_response:n._response}}catch(n){if(n.details?.errorCode==="BlobNotFound")return{succeeded:!1,...n.response?.parsedHeaders,_response:n.response};throw n}})}async undelete(e={}){return he.withSpan("BlobClient-undelete",e,async r=>Te(await this.blobContext.undelete({abortSignal:e.abortSignal,tracingOptions:r.tracingOptions})))}async setHTTPHeaders(e,r={}){return r.conditions=r.conditions||{},an(r.customerProvidedKey,this.isHttps),he.withSpan("BlobClient-setHTTPHeaders",r,async n=>Te(await this.blobContext.setHttpHeaders({abortSignal:r.abortSignal,blobHttpHeaders:e,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}async setMetadata(e,r={}){return r.conditions=r.conditions||{},an(r.customerProvidedKey,this.isHttps),he.withSpan("BlobClient-setMetadata",r,async n=>Te(await this.blobContext.setMetadata({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,metadata:e,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,tracingOptions:n.tracingOptions})))}async setTags(e,r={}){return he.withSpan("BlobClient-setTags",r,async n=>Te(await this.blobContext.setTags({abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},blobModifiedAccessConditions:r.conditions,tracingOptions:n.tracingOptions,tags:Hme(e)})))}async getTags(e={}){return he.withSpan("BlobClient-getTags",e,async r=>{let n=Te(await this.blobContext.getTags({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},blobModifiedAccessConditions:e.conditions,tracingOptions:r.tracingOptions}));return{...n,_response:n._response,tags:pN({blobTagSet:n.blobTagSet})||{}}})}getBlobLeaseClient(e){return new mI(this,e)}async createSnapshot(e={}){return e.conditions=e.conditions||{},an(e.customerProvidedKey,this.isHttps),he.withSpan("BlobClient-createSnapshot",e,async r=>Te(await this.blobContext.createSnapshot({abortSignal:e.abortSignal,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,tracingOptions:r.tracingOptions})))}async beginCopyFromURL(e,r={}){let n={abortCopyFromURL:i((...o)=>this.abortCopyFromURL(...o),"abortCopyFromURL"),getProperties:i((...o)=>this.getProperties(...o),"getProperties"),startCopyFromURL:i((...o)=>this.startCopyFromURL(...o),"startCopyFromURL")},s=new NN({blobClient:n,copySource:e,intervalInMs:r.intervalInMs,onProgress:r.onProgress,resumeFrom:r.resumeFrom,startCopyFromURLOptions:r});return await s.poll(),s}async abortCopyFromURL(e,r={}){return he.withSpan("BlobClient-abortCopyFromURL",r,async n=>Te(await this.blobContext.abortCopyFromURL(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,tracingOptions:n.tracingOptions})))}async syncCopyFromURL(e,r={}){return r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},he.withSpan("BlobClient-syncCopyFromURL",r,async n=>Te(await this.blobContext.copyFromURL(e,{abortSignal:r.abortSignal,metadata:r.metadata,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince},sourceContentMD5:r.sourceContentMD5,copySourceAuthorization:Mh(r.sourceAuthorization),tier:vd(r.tier),blobTagsString:Pd(r.tags),immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,encryptionScope:r.encryptionScope,copySourceTags:r.copySourceTags,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async setAccessTier(e,r={}){return he.withSpan("BlobClient-setAccessTier",r,async n=>Te(await this.blobContext.setTier(vd(e),{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},rehydratePriority:r.rehydratePriority,tracingOptions:n.tracingOptions})))}async downloadToBuffer(e,r,n,s={}){let o,a=0,c=0,l=s;e instanceof Buffer?(o=e,a=r||0,c=typeof n=="number"?n:0):(a=typeof e=="number"?e:0,c=typeof r=="number"?r:0,l=n||{});let u=l.blockSize??0;if(u<0)throw new RangeError("blockSize option must be >= 0");if(u===0&&(u=4194304),a<0)throw new RangeError("offset option must be >= 0");if(c&&c<=0)throw new RangeError("count option must be greater than 0");return l.conditions||(l.conditions={}),he.withSpan("BlobClient-downloadToBuffer",l,async d=>{if(!c){let f=await this.getProperties({...l,tracingOptions:d.tracingOptions});if(c=f.contentLength-a,c<0)throw new RangeError(`offset ${a} shouldn't be larger than blob size ${f.contentLength}`)}if(!o)try{o=Buffer.alloc(c)}catch(f){throw new Error(`Unable to allocate the buffer of size: ${c}(in bytes). Please try passing your own buffer to the "downloadToBuffer" method or try using other methods like "download" or "downloadToFile". ${f.message}`)}if(o.length{let g=a+c;f+u{let a=await this.download(r,n,{...s,tracingOptions:o.tracingOptions});return a.readableStreamBody&&await qfe(a.readableStreamBody,e),a.blobDownloadStream=void 0,a})}getBlobAndContainerNamesFromUrl(){let e,r;try{let n=new URL(this.url);if(n.host.split(".")[1]==="blob"){let s=n.pathname.match("/([^/]*)(/(.*))?");e=s[1],r=s[3]}else if(dN(n)){let s=n.pathname.match("/([^/]*)/([^/]*)(/(.*))?");e=s[2],r=s[4]}else{let s=n.pathname.match("/([^/]*)(/(.*))?");e=s[1],r=s[3]}if(e=decodeURIComponent(e),r=decodeURIComponent(r),r=r.replace(/\\/g,"/"),!e)throw new Error("Provided containerName is invalid.");return{blobName:r,containerName:e}}catch{throw new Error("Unable to extract blobName and containerName with provided information.")}}async startCopyFromURL(e,r={}){return he.withSpan("BlobClient-startCopyFromURL",r,async n=>(r.conditions=r.conditions||{},r.sourceConditions=r.sourceConditions||{},Te(await this.blobContext.startCopyFromURL(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions.ifMatch,sourceIfModifiedSince:r.sourceConditions.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions.ifUnmodifiedSince,sourceIfTags:r.sourceConditions.tagConditions},immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,rehydratePriority:r.rehydratePriority,tier:vd(r.tier),blobTagsString:Pd(r.tags),sealBlob:r.sealBlob,tracingOptions:n.tracingOptions}))))}generateSasUrl(e){return new Promise(r=>{if(!(this.credential instanceof xr))throw new RangeError("Can only generate the SAS when the client is initialized with a shared key credential");let n=dI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).toString();r(uI(this.url,n))})}generateSasStringToSign(e){if(!(this.credential instanceof xr))throw new RangeError("Can only generate the SAS when the client is initialized with a shared key credential");return pI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},this.credential).stringToSign}generateUserDelegationSasUrl(e,r){return new Promise(n=>{let s=dI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},r,this.accountName).toString();n(uI(this.url,s))})}generateUserDelegationSasStringToSign(e,r){return pI({containerName:this._containerName,blobName:this._name,snapshotTime:this._snapshot,versionId:this._versionId,...e},r,this.accountName).stringToSign}async deleteImmutabilityPolicy(e={}){return he.withSpan("BlobClient-deleteImmutabilityPolicy",e,async r=>Te(await this.blobContext.deleteImmutabilityPolicy({tracingOptions:r.tracingOptions})))}async setImmutabilityPolicy(e,r={}){return he.withSpan("BlobClient-setImmutabilityPolicy",r,async n=>Te(await this.blobContext.setImmutabilityPolicy({immutabilityPolicyExpiry:e.expiriesOn,immutabilityPolicyMode:e.policyMode,tracingOptions:n.tracingOptions})))}async setLegalHold(e,r={}){return he.withSpan("BlobClient-setLegalHold",r,async n=>Te(await this.blobContext.setLegalHold(e,{tracingOptions:n.tracingOptions})))}async getAccountInfo(e={}){return he.withSpan("BlobClient-getAccountInfo",e,async r=>Te(await this.blobContext.getAccountInfo({abortSignal:e.abortSignal,tracingOptions:r.tracingOptions})))}},vN=class t extends iu{static{i(this,"AppendBlobClient")}appendBlobContext;constructor(e,r,n,s){let o,a;if(s=s||{},Zl(r))a=e,o=r;else if(Rt&&r instanceof xr||r instanceof rr||ko(r))a=e,s=n,o=Lr(r,s);else if(!r&&typeof r!="string")a=e,o=Lr(new rr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let c=r,l=n,u=km(e);if(u.kind==="AccountConnString")if(Rt){let d=new xr(u.accountName,u.accountKey);a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l)),s.proxyOptions||(s.proxyOptions=xd(u.proxyUri)),o=Lr(d,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(u.kind==="SASConnString")a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l))+"?"+u.accountSas,o=Lr(new rr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(a,o),this.appendBlobContext=this.storageClientContext.appendBlob}withSnapshot(e){return new t(Oh(this.url,Xl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async create(e={}){return e.conditions=e.conditions||{},an(e.customerProvidedKey,this.isHttps),he.withSpan("AppendBlobClient-create",e,async r=>Te(await this.appendBlobContext.create(0,{abortSignal:e.abortSignal,blobHttpHeaders:e.blobHTTPHeaders,leaseAccessConditions:e.conditions,metadata:e.metadata,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},cpkInfo:e.customerProvidedKey,encryptionScope:e.encryptionScope,immutabilityPolicyExpiry:e.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:e.immutabilityPolicy?.policyMode,legalHold:e.legalHold,blobTagsString:Pd(e.tags),tracingOptions:r.tracingOptions})))}async createIfNotExists(e={}){let r={ifNoneMatch:_q};return he.withSpan("AppendBlobClient-createIfNotExists",e,async n=>{try{let s=Te(await this.create({...n,conditions:r}));return{succeeded:!0,...s,_response:s._response}}catch(s){if(s.details?.errorCode==="BlobAlreadyExists")return{succeeded:!1,...s.response?.parsedHeaders,_response:s.response};throw s}})}async seal(e={}){return e.conditions=e.conditions||{},he.withSpan("AppendBlobClient-seal",e,async r=>Te(await this.appendBlobContext.seal({abortSignal:e.abortSignal,appendPositionAccessConditions:e.conditions,leaseAccessConditions:e.conditions,modifiedAccessConditions:{...e.conditions,ifTags:e.conditions?.tagConditions},tracingOptions:r.tracingOptions})))}async appendBlock(e,r,n={}){return n.conditions=n.conditions||{},an(n.customerProvidedKey,this.isHttps),he.withSpan("AppendBlobClient-appendBlock",n,async s=>Te(await this.appendBlobContext.appendBlock(r,e,{abortSignal:n.abortSignal,appendPositionAccessConditions:n.conditions,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},transactionalContentMD5:n.transactionalContentMD5,transactionalContentCrc64:n.transactionalContentCrc64,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:s.tracingOptions})))}async appendBlockFromURL(e,r,n,s={}){return s.conditions=s.conditions||{},s.sourceConditions=s.sourceConditions||{},an(s.customerProvidedKey,this.isHttps),he.withSpan("AppendBlobClient-appendBlockFromURL",s,async o=>Te(await this.appendBlobContext.appendBlockFromUrl(e,0,{abortSignal:s.abortSignal,sourceRange:Xs({offset:r,count:n}),sourceContentMD5:s.sourceContentMD5,sourceContentCrc64:s.sourceContentCrc64,leaseAccessConditions:s.conditions,appendPositionAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:s.sourceConditions?.ifMatch,sourceIfModifiedSince:s.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:s.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:s.sourceConditions?.ifUnmodifiedSince},copySourceAuthorization:Mh(s.sourceAuthorization),cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,fileRequestIntent:s.sourceShareTokenIntent,tracingOptions:o.tracingOptions})))}},$h=class t extends iu{static{i(this,"BlockBlobClient")}_blobContext;blockBlobContext;constructor(e,r,n,s){let o,a;if(s=s||{},Zl(r))a=e,o=r;else if(Rt&&r instanceof xr||r instanceof rr||ko(r))a=e,s=n,o=Lr(r,s);else if(!r&&typeof r!="string")a=e,n&&typeof n!="string"&&(s=n),o=Lr(new rr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let c=r,l=n,u=km(e);if(u.kind==="AccountConnString")if(Rt){let d=new xr(u.accountName,u.accountKey);a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l)),s.proxyOptions||(s.proxyOptions=xd(u.proxyUri)),o=Lr(d,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(u.kind==="SASConnString")a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l))+"?"+u.accountSas,o=Lr(new rr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(a,o),this.blockBlobContext=this.storageClientContext.blockBlob,this._blobContext=this.storageClientContext.blob}withSnapshot(e){return new t(Oh(this.url,Xl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async query(e,r={}){if(an(r.customerProvidedKey,this.isHttps),!Rt)throw new Error("This operation currently is only supported in Node.js.");return he.withSpan("BlockBlobClient-query",r,async n=>{let s=Te(await this._blobContext.query({abortSignal:r.abortSignal,queryRequest:{queryType:"SQL",expression:e,inputSerialization:$H(r.inputTextConfiguration),outputSerialization:$H(r.outputTextConfiguration)},leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,tracingOptions:n.tracingOptions}));return new gN(s,{abortSignal:r.abortSignal,onProgress:r.onProgress,onError:r.onError})})}async upload(e,r,n={}){return n.conditions=n.conditions||{},an(n.customerProvidedKey,this.isHttps),he.withSpan("BlockBlobClient-upload",n,async s=>Te(await this.blockBlobContext.upload(r,e,{abortSignal:n.abortSignal,blobHttpHeaders:n.blobHTTPHeaders,leaseAccessConditions:n.conditions,metadata:n.metadata,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},requestOptions:{onUploadProgress:n.onProgress},cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,immutabilityPolicyExpiry:n.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:n.immutabilityPolicy?.policyMode,legalHold:n.legalHold,tier:vd(n.tier),blobTagsString:Pd(n.tags),tracingOptions:s.tracingOptions})))}async syncUploadFromURL(e,r={}){return r.conditions=r.conditions||{},an(r.customerProvidedKey,this.isHttps),he.withSpan("BlockBlobClient-syncUploadFromURL",r,async n=>Te(await this.blockBlobContext.putBlobFromUrl(0,e,{...r,blobHttpHeaders:r.blobHTTPHeaders,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:r.sourceConditions?.ifMatch,sourceIfModifiedSince:r.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:r.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:r.sourceConditions?.ifUnmodifiedSince,sourceIfTags:r.sourceConditions?.tagConditions},cpkInfo:r.customerProvidedKey,copySourceAuthorization:Mh(r.sourceAuthorization),tier:vd(r.tier),blobTagsString:Pd(r.tags),copySourceTags:r.copySourceTags,fileRequestIntent:r.sourceShareTokenIntent,tracingOptions:n.tracingOptions})))}async stageBlock(e,r,n,s={}){return an(s.customerProvidedKey,this.isHttps),he.withSpan("BlockBlobClient-stageBlock",s,async o=>Te(await this.blockBlobContext.stageBlock(e,n,r,{abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,requestOptions:{onUploadProgress:s.onProgress},transactionalContentMD5:s.transactionalContentMD5,transactionalContentCrc64:s.transactionalContentCrc64,cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions})))}async stageBlockFromURL(e,r,n=0,s,o={}){return an(o.customerProvidedKey,this.isHttps),he.withSpan("BlockBlobClient-stageBlockFromURL",o,async a=>Te(await this.blockBlobContext.stageBlockFromURL(e,0,r,{abortSignal:o.abortSignal,leaseAccessConditions:o.conditions,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,sourceRange:n===0&&!s?void 0:Xs({offset:n,count:s}),cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:Mh(o.sourceAuthorization),fileRequestIntent:o.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async commitBlockList(e,r={}){return r.conditions=r.conditions||{},an(r.customerProvidedKey,this.isHttps),he.withSpan("BlockBlobClient-commitBlockList",r,async n=>Te(await this.blockBlobContext.commitBlockList({latest:e},{abortSignal:r.abortSignal,blobHttpHeaders:r.blobHTTPHeaders,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,tier:vd(r.tier),blobTagsString:Pd(r.tags),tracingOptions:n.tracingOptions})))}async getBlockList(e,r={}){return he.withSpan("BlockBlobClient-getBlockList",r,async n=>{let s=Te(await this.blockBlobContext.getBlockList(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions}));return s.committedBlocks||(s.committedBlocks=[]),s.uncommittedBlocks||(s.uncommittedBlocks=[]),s})}async uploadData(e,r={}){return he.withSpan("BlockBlobClient-uploadData",r,async n=>{if(Rt){let s;return e instanceof Buffer?s=e:e instanceof ArrayBuffer?s=Buffer.from(e):(e=e,s=Buffer.from(e.buffer,e.byteOffset,e.byteLength)),this.uploadSeekableInternal((o,a)=>s.slice(o,o+a),s.byteLength,n)}else{let s=new Blob([e]);return this.uploadSeekableInternal((o,a)=>s.slice(o,o+a),s.size,n)}})}async uploadBrowserData(e,r={}){return he.withSpan("BlockBlobClient-uploadBrowserData",r,async n=>{let s=new Blob([e]);return this.uploadSeekableInternal((o,a)=>s.slice(o,o+a),s.size,n)})}async uploadSeekableInternal(e,r,n={}){let s=n.blockSize??0;if(s<0||s>4194304e3)throw new RangeError(`blockSize option must be >= 0 and <= ${4194304e3}`);let o=n.maxSingleShotSize??268435456;if(o<0||o>268435456)throw new RangeError(`maxSingleShotSize option must be >= 0 and <= ${268435456}`);if(s===0){if(r>4194304e3*5e4)throw new RangeError(`${r} is too larger to upload to a block blob.`);r>o&&(s=Math.ceil(r/5e4),s<4194304&&(s=4194304))}return n.blobHTTPHeaders||(n.blobHTTPHeaders={}),n.conditions||(n.conditions={}),he.withSpan("BlockBlobClient-uploadSeekableInternal",n,async a=>{if(r<=o)return Te(await this.upload(e(0,r),r,a));let c=Math.floor((r-1)/s)+1;if(c>5e4)throw new RangeError(`The buffer's size is too big or the BlockSize is too small;the number of blocks must be <= ${5e4}`);let l=[],u=wh(),d=0,p=new xI(n.concurrency);for(let m=0;m{let f=FH(u,m),g=s*m,x=(m===c-1?r:g+s)-g;l.push(f),await this.stageBlock(f,e(g,x),x,{abortSignal:n.abortSignal,conditions:n.conditions,encryptionScope:n.encryptionScope,tracingOptions:a.tracingOptions}),d+=x,n.onProgress&&n.onProgress({loadedBytes:d})});return await p.do(),this.commitBlockList(l,a)})}async uploadFile(e,r={}){return he.withSpan("BlockBlobClient-uploadFile",r,async n=>{let s=(await $fe(e)).size;return this.uploadSeekableInternal((o,a)=>()=>Gfe(e,{autoClose:!0,end:a?o+a-1:1/0,start:o}),s,{...r,tracingOptions:n.tracingOptions})})}async uploadStream(e,r=8388608,n=5,s={}){return s.blobHTTPHeaders||(s.blobHTTPHeaders={}),s.conditions||(s.conditions={}),he.withSpan("BlockBlobClient-uploadStream",s,async o=>{let a=0,c=wh(),l=0,u=[];return await new CR(e,r,n,async(p,m)=>{let f=FH(c,a);u.push(f),a++,await this.stageBlock(f,p,m,{customerProvidedKey:s.customerProvidedKey,conditions:s.conditions,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions}),l+=m,s.onProgress&&s.onProgress({loadedBytes:l})},Math.ceil(n/4*3)).do(),Te(await this.commitBlockList(u,{...s,tracingOptions:o.tracingOptions}))})}},_N=class t extends iu{static{i(this,"PageBlobClient")}pageBlobContext;constructor(e,r,n,s){let o,a;if(s=s||{},Zl(r))a=e,o=r;else if(Rt&&r instanceof xr||r instanceof rr||ko(r))a=e,s=n,o=Lr(r,s);else if(!r&&typeof r!="string")a=e,o=Lr(new rr,s);else if(r&&typeof r=="string"&&n&&typeof n=="string"){let c=r,l=n,u=km(e);if(u.kind==="AccountConnString")if(Rt){let d=new xr(u.accountName,u.accountKey);a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l)),s.proxyOptions||(s.proxyOptions=xd(u.proxyUri)),o=Lr(d,s)}else throw new Error("Account connection string is only supported in Node.js environment");else if(u.kind==="SASConnString")a=on(on(u.url,encodeURIComponent(c)),encodeURIComponent(l))+"?"+u.accountSas,o=Lr(new rr,s);else throw new Error("Connection string must be either an Account connection string or a SAS connection string")}else throw new Error("Expecting non-empty strings for containerName and blobName parameters");super(a,o),this.pageBlobContext=this.storageClientContext.pageBlob}withSnapshot(e){return new t(Oh(this.url,Xl.Parameters.SNAPSHOT,e.length===0?void 0:e),this.pipeline)}async create(e,r={}){return r.conditions=r.conditions||{},an(r.customerProvidedKey,this.isHttps),he.withSpan("PageBlobClient-create",r,async n=>Te(await this.pageBlobContext.create(0,e,{abortSignal:r.abortSignal,blobHttpHeaders:r.blobHTTPHeaders,blobSequenceNumber:r.blobSequenceNumber,leaseAccessConditions:r.conditions,metadata:r.metadata,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},cpkInfo:r.customerProvidedKey,encryptionScope:r.encryptionScope,immutabilityPolicyExpiry:r.immutabilityPolicy?.expiriesOn,immutabilityPolicyMode:r.immutabilityPolicy?.policyMode,legalHold:r.legalHold,tier:vd(r.tier),blobTagsString:Pd(r.tags),tracingOptions:n.tracingOptions})))}async createIfNotExists(e,r={}){return he.withSpan("PageBlobClient-createIfNotExists",r,async n=>{try{let s={ifNoneMatch:_q},o=Te(await this.create(e,{...r,conditions:s,tracingOptions:n.tracingOptions}));return{succeeded:!0,...o,_response:o._response}}catch(s){if(s.details?.errorCode==="BlobAlreadyExists")return{succeeded:!1,...s.response?.parsedHeaders,_response:s.response};throw s}})}async uploadPages(e,r,n,s={}){return s.conditions=s.conditions||{},an(s.customerProvidedKey,this.isHttps),he.withSpan("PageBlobClient-uploadPages",s,async o=>Te(await this.pageBlobContext.uploadPages(n,e,{abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},requestOptions:{onUploadProgress:s.onProgress},range:Xs({offset:r,count:n}),sequenceNumberAccessConditions:s.conditions,transactionalContentMD5:s.transactionalContentMD5,transactionalContentCrc64:s.transactionalContentCrc64,cpkInfo:s.customerProvidedKey,encryptionScope:s.encryptionScope,tracingOptions:o.tracingOptions})))}async uploadPagesFromURL(e,r,n,s,o={}){return o.conditions=o.conditions||{},o.sourceConditions=o.sourceConditions||{},an(o.customerProvidedKey,this.isHttps),he.withSpan("PageBlobClient-uploadPagesFromURL",o,async a=>Te(await this.pageBlobContext.uploadPagesFromURL(e,Xs({offset:r,count:s}),0,Xs({offset:n,count:s}),{abortSignal:o.abortSignal,sourceContentMD5:o.sourceContentMD5,sourceContentCrc64:o.sourceContentCrc64,leaseAccessConditions:o.conditions,sequenceNumberAccessConditions:o.conditions,modifiedAccessConditions:{...o.conditions,ifTags:o.conditions?.tagConditions},sourceModifiedAccessConditions:{sourceIfMatch:o.sourceConditions?.ifMatch,sourceIfModifiedSince:o.sourceConditions?.ifModifiedSince,sourceIfNoneMatch:o.sourceConditions?.ifNoneMatch,sourceIfUnmodifiedSince:o.sourceConditions?.ifUnmodifiedSince},cpkInfo:o.customerProvidedKey,encryptionScope:o.encryptionScope,copySourceAuthorization:Mh(o.sourceAuthorization),fileRequestIntent:o.sourceShareTokenIntent,tracingOptions:a.tracingOptions})))}async clearPages(e=0,r,n={}){return n.conditions=n.conditions||{},he.withSpan("PageBlobClient-clearPages",n,async s=>Te(await this.pageBlobContext.clearPages(0,{abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:Xs({offset:e,count:r}),sequenceNumberAccessConditions:n.conditions,cpkInfo:n.customerProvidedKey,encryptionScope:n.encryptionScope,tracingOptions:s.tracingOptions})))}async getPageRanges(e=0,r,n={}){return n.conditions=n.conditions||{},he.withSpan("PageBlobClient-getPageRanges",n,async s=>{let o=Te(await this.pageBlobContext.getPageRanges({abortSignal:n.abortSignal,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},range:Xs({offset:e,count:r}),tracingOptions:s.tracingOptions}));return yN(o)})}async listPageRangesSegment(e=0,r,n,s={}){return he.withSpan("PageBlobClient-getPageRangesSegment",s,async o=>Te(await this.pageBlobContext.getPageRanges({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},range:Xs({offset:e,count:r}),marker:n,maxPageSize:s.maxPageSize,tracingOptions:o.tracingOptions})))}async*listPageRangeItemSegments(e=0,r,n,s={}){let o;if(n||n===void 0)do o=await this.listPageRangesSegment(e,r,n,s),n=o.continuationToken,yield await o;while(n)}async*listPageRangeItems(e=0,r,n={}){let s;for await(let o of this.listPageRangeItemSegments(e,r,s,n))yield*GH(o)}listPageRanges(e=0,r,n={}){n.conditions=n.conditions||{};let s=this.listPageRangeItems(e,r,n);return{next(){return s.next()},[Symbol.asyncIterator](){return this},byPage:i((o={})=>this.listPageRangeItemSegments(e,r,o.continuationToken,{maxPageSize:o.maxPageSize,...n}),"byPage")}}async getPageRangesDiff(e,r,n,s={}){return s.conditions=s.conditions||{},he.withSpan("PageBlobClient-getPageRangesDiff",s,async o=>{let a=Te(await this.pageBlobContext.getPageRangesDiff({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},prevsnapshot:n,range:Xs({offset:e,count:r}),tracingOptions:o.tracingOptions}));return yN(a)})}async listPageRangesDiffSegment(e,r,n,s,o={}){return he.withSpan("PageBlobClient-getPageRangesDiffSegment",o,async a=>Te(await this.pageBlobContext.getPageRangesDiff({abortSignal:o?.abortSignal,leaseAccessConditions:o?.conditions,modifiedAccessConditions:{...o?.conditions,ifTags:o?.conditions?.tagConditions},prevsnapshot:n,range:Xs({offset:e,count:r}),marker:s,maxPageSize:o?.maxPageSize,tracingOptions:a.tracingOptions})))}async*listPageRangeDiffItemSegments(e,r,n,s,o){let a;if(s||s===void 0)do a=await this.listPageRangesDiffSegment(e,r,n,s,o),s=a.continuationToken,yield await a;while(s)}async*listPageRangeDiffItems(e,r,n,s){let o;for await(let a of this.listPageRangeDiffItemSegments(e,r,n,o,s))yield*GH(a)}listPageRangesDiff(e,r,n,s={}){s.conditions=s.conditions||{};let o=this.listPageRangeDiffItems(e,r,n,{...s});return{next(){return o.next()},[Symbol.asyncIterator](){return this},byPage:i((a={})=>this.listPageRangeDiffItemSegments(e,r,n,a.continuationToken,{maxPageSize:a.maxPageSize,...s}),"byPage")}}async getPageRangesDiffForManagedDisks(e,r,n,s={}){return s.conditions=s.conditions||{},he.withSpan("PageBlobClient-GetPageRangesDiffForManagedDisks",s,async o=>{let a=Te(await this.pageBlobContext.getPageRangesDiff({abortSignal:s.abortSignal,leaseAccessConditions:s.conditions,modifiedAccessConditions:{...s.conditions,ifTags:s.conditions?.tagConditions},prevSnapshotUrl:n,range:Xs({offset:e,count:r}),tracingOptions:o.tracingOptions}));return yN(a)})}async resize(e,r={}){return r.conditions=r.conditions||{},he.withSpan("PageBlobClient-resize",r,async n=>Te(await this.pageBlobContext.resize(e,{abortSignal:r.abortSignal,leaseAccessConditions:r.conditions,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},encryptionScope:r.encryptionScope,tracingOptions:n.tracingOptions})))}async updateSequenceNumber(e,r,n={}){return n.conditions=n.conditions||{},he.withSpan("PageBlobClient-updateSequenceNumber",n,async s=>Te(await this.pageBlobContext.updateSequenceNumber(e,{abortSignal:n.abortSignal,blobSequenceNumber:r,leaseAccessConditions:n.conditions,modifiedAccessConditions:{...n.conditions,ifTags:n.conditions?.tagConditions},tracingOptions:s.tracingOptions})))}async startCopyIncremental(e,r={}){return he.withSpan("PageBlobClient-startCopyIncremental",r,async n=>Te(await this.pageBlobContext.copyIncremental(e,{abortSignal:r.abortSignal,modifiedAccessConditions:{...r.conditions,ifTags:r.conditions?.tagConditions},tracingOptions:n.tracingOptions})))}};var Hfe;(function(t){t[t.LOCKED=0]="LOCKED",t[t.UNLOCKED=1]="UNLOCKED"})(Hfe||(Hfe={}));var zfe;(function(t){t.AES256="AES256"})(zfe||(zfe={}));var QN=class extends Error{static{i(this,"InvalidResponseError")}constructor(e){super(e),this.name="InvalidResponseError"}};var Gh=class extends Error{static{i(this,"NetworkError")}constructor(e){let r=`Unable to make request: ${e} +If you are using self-hosted runners, please make sure your runner has access to all GitHub endpoints: https://docs.github.com/en/actions/hosting-your-own-runners/managing-self-hosted-runners/about-self-hosted-runners#communication-between-self-hosted-runners-and-github`;super(r),this.code=e,this.name="NetworkError"}};Gh.isNetworkErrorCode=t=>t?["ECONNRESET","ENOTFOUND","ETIMEDOUT","ECONNREFUSED","EHOSTUNREACH"].includes(t):!1;var qm=class extends Error{static{i(this,"UsageError")}constructor(){super(`Cache storage quota has been hit. Unable to upload any new cache entries. +More info on storage limits: https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions#calculating-minute-and-storage-spending`),this.name="UsageError"}};qm.isUsageErrorMessage=t=>t?t.includes("insufficient usage"):!1;var wI=class extends Error{static{i(this,"RateLimitError")}constructor(e){super(e),this.name="RateLimitError"}};var Dst=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},Cz=class{static{i(this,"UploadProgress")}constructor(e){this.contentLength=e,this.sentBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}setSentBytes(e){this.sentBytes=e}getTransferredBytes(){return this.sentBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.sentBytes,r=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,s=(e/(1024*1024)/(n/1e3)).toFixed(1);Ke(`Sent ${e} of ${this.contentLength} (${r}%), ${s} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setSentBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let r=i(()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(r,e))},"displayCallback");this.timeoutHandle=setTimeout(r,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}};function Vfe(t,e,r){return Dst(this,void 0,void 0,function*(){var n;let s=new iu(t),o=s.getBlockBlobClient(),a=new Cz((n=r?.archiveSizeBytes)!==null&&n!==void 0?n:0),c={blockSize:r?.uploadChunkSize,concurrency:r?.uploadConcurrency,maxSingleShotSize:128*1024*1024,onProgress:a.onProgress()};try{a.startDisplayTimer(),G(`BlobClient: ${s.name}:${s.accountName}:${s.containerName}`);let l=yield o.uploadFile(e,c);if(l._response.status>=400)throw new QN(`uploadCacheArchiveSDK: upload failed with status code ${l._response.status}`);return l}catch(l){throw Qr(`uploadCacheArchiveSDK: internal error uploading cache archive: ${l.message}`),l}finally{a.stopDisplayTimer()}})}i(Vfe,"uploadCacheArchiveSDK");var Wfe=D(require("buffer"),1),Pc=D(require("fs"),1),jfe=D(require("stream"),1),Jfe=D(require("util"),1);var DN=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function kN(t){return t?t>=200&&t<300:!1}i(kN,"isSuccessStatusCode");function kst(t){return t?t>=500:!0}i(kst,"isServerErrorStatusCode");function Lst(t){return t?[Ir.BadGateway,Ir.ServiceUnavailable,Ir.GatewayTimeout].includes(t):!1}i(Lst,"isRetryableStatusCode");function Ost(t){return DN(this,void 0,void 0,function*(){return new Promise(e=>setTimeout(e,t))})}i(Ost,"sleep");function Yfe(t,e,r){return DN(this,arguments,void 0,function*(n,s,o,a=iB,c=aB,l=void 0){let u="",d=1;for(;d<=a;){let p,m,f=!1;try{p=yield s()}catch(g){l&&(p=l(g)),f=!0,u=g.message}if(p&&(m=o(p),!kst(m)))return p;if(m&&(f=Lst(m),u=`Cache service responded with ${m}`),G(`${n} - Attempt ${d} of ${a} failed with error: ${u}`),!f){G(`${n} - Error is not retryable`);break}yield Ost(c),d++}throw Error(`${n} failed: ${u}`)})}i(Yfe,"retry");function bI(t,e){return DN(this,arguments,void 0,function*(r,n,s=iB,o=aB){return yield Yfe(r,n,a=>a.statusCode,s,o,a=>{if(a instanceof rc)return{statusCode:a.statusCode,result:null,headers:{},error:a}})})}i(bI,"retryTypedResponse");function Hh(t,e){return DN(this,arguments,void 0,function*(r,n,s=iB,o=aB){return yield Yfe(r,n,a=>a.message.statusCode,s,o)})}i(Hh,"retryHttpClientResponse");var wi=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function Mst(t,e){return wi(this,void 0,void 0,function*(){yield Jfe.promisify(jfe.pipeline)(t.message,e)})}i(Mst,"pipeResponseToStream");var LN=class{static{i(this,"DownloadProgress")}constructor(e){this.contentLength=e,this.segmentIndex=0,this.segmentSize=0,this.segmentOffset=0,this.receivedBytes=0,this.displayedComplete=!1,this.startTime=Date.now()}nextSegment(e){this.segmentOffset=this.segmentOffset+this.segmentSize,this.segmentIndex=this.segmentIndex+1,this.segmentSize=e,this.receivedBytes=0,G(`Downloading segment at offset ${this.segmentOffset} with length ${this.segmentSize}...`)}setReceivedBytes(e){this.receivedBytes=e}getTransferredBytes(){return this.segmentOffset+this.receivedBytes}isDone(){return this.getTransferredBytes()===this.contentLength}display(){if(this.displayedComplete)return;let e=this.segmentOffset+this.receivedBytes,r=(100*(e/this.contentLength)).toFixed(1),n=Date.now()-this.startTime,s=(e/(1024*1024)/(n/1e3)).toFixed(1);Ke(`Received ${e} of ${this.contentLength} (${r}%), ${s} MBs/sec`),this.isDone()&&(this.displayedComplete=!0)}onProgress(){return e=>{this.setReceivedBytes(e.loadedBytes)}}startDisplayTimer(e=1e3){let r=i(()=>{this.display(),this.isDone()||(this.timeoutHandle=setTimeout(r,e))},"displayCallback");this.timeoutHandle=setTimeout(r,e)}stopDisplayTimer(){this.timeoutHandle&&(clearTimeout(this.timeoutHandle),this.timeoutHandle=void 0),this.display()}};function ON(t,e){return wi(this,void 0,void 0,function*(){let r=Pc.createWriteStream(e),n=new Yl("actions/cache"),s=yield Hh("downloadCache",()=>wi(this,void 0,void 0,function*(){return n.get(t)}));s.message.socket.setTimeout(YU,()=>{s.message.destroy(),G(`Aborting download, socket timed out after ${YU} ms`)}),yield Mst(s,r);let o=s.message.headers["content-length"];if(o){let a=parseInt(o),c=tc(e);if(c!==a)throw new Error(`Incomplete download. Expected file size: ${a}, actual file size: ${c}`)}else G("Unable to validate download, no Content-Length header")})}i(ON,"downloadCacheHttpClient");function Kfe(t,e,r){return wi(this,void 0,void 0,function*(){var n;let s=yield Pc.promises.open(e,"w"),o=new Yl("actions/cache",void 0,{socketTimeout:r.timeoutInMs,keepAlive:!0});try{let c=(yield Hh("downloadCacheMetadata",()=>wi(this,void 0,void 0,function*(){return yield o.request("HEAD",t,null,{})}))).message.headers["content-length"];if(c==null)throw new Error("Content-Length not found on blob response");let l=parseInt(c);if(Number.isNaN(l))throw new Error(`Could not interpret Content-Length: ${l}`);let u=[],d=4*1024*1024;for(let S=0;Swi(this,void 0,void 0,function*(){return yield Fst(o,t,S,P)}),"promiseGetter")})}u.reverse();let p=0,m=0,f=new LN(l);f.startDisplayTimer();let g=f.onProgress(),E=[],x,w=i(()=>wi(this,void 0,void 0,function*(){let S=yield Promise.race(Object.values(E));yield s.write(S.buffer,0,S.count,S.offset),p--,delete E[S.offset],m+=S.count,g({loadedBytes:m})}),"waitAndWrite");for(;x=u.pop();)E[x.offset]=x.promiseGetter(),p++,p>=((n=r.downloadConcurrency)!==null&&n!==void 0?n:10)&&(yield w());for(;p>0;)yield w()}finally{o.dispose(),yield s.close()}})}i(Kfe,"downloadCacheHttpClientConcurrent");function Fst(t,e,r,n){return wi(this,void 0,void 0,function*(){let o=0;for(;;)try{let c=yield Zfe(3e4,Ust(t,e,r,n));if(typeof c=="string")throw new Error("downloadSegmentRetry failed due to timeout");return c}catch(a){if(o>=5)throw a;o++}})}i(Fst,"downloadSegmentRetry");function Ust(t,e,r,n){return wi(this,void 0,void 0,function*(){let s=yield Hh("downloadCachePart",()=>wi(this,void 0,void 0,function*(){return yield t.get(e,{Range:`bytes=${r}-${r+n-1}`})}));if(!s.readBodyBuffer)throw new Error("Expected HttpClientResponse to implement readBodyBuffer");return{offset:r,count:n,buffer:yield s.readBodyBuffer()}})}i(Ust,"downloadSegment");function Xfe(t,e,r){return wi(this,void 0,void 0,function*(){var n;let s=new $h(t,void 0,{retryOptions:{tryTimeoutInMs:r.timeoutInMs}}),a=(n=(yield s.getProperties()).contentLength)!==null&&n!==void 0?n:-1;if(a<0)G("Unable to determine content length, downloading file with http-client..."),yield ON(t,e);else{let c=Math.min(134217728,Wfe.constants.MAX_LENGTH),l=new LN(a),u=Pc.openSync(e,"w");try{l.startDisplayTimer();let d=new AbortController,p=d.signal;for(;!l.isDone();){let m=l.segmentOffset+l.segmentSize,f=Math.min(c,a-m);l.nextSegment(f);let g=yield Zfe(r.segmentTimeoutInMs||36e5,s.downloadToBuffer(m,f,{abortSignal:p,concurrency:r.downloadConcurrency,onProgress:l.onProgress()}));if(g==="timeout")throw d.abort(),new Error("Aborting cache download as the download time exceeded the timeout.");Buffer.isBuffer(g)&&Pc.writeFileSync(u,g)}}finally{l.stopDisplayTimer(),Pc.closeSync(u)}}})}i(Xfe,"downloadCacheStorageSDK");var Zfe=i((t,e)=>wi(void 0,void 0,void 0,function*(){let r,n=new Promise(s=>{r=setTimeout(()=>s("timeout"),t)});return Promise.race([e,n]).then(s=>(clearTimeout(r),s))}),"promiseWithTimeout");function Iz(t){let e={useAzureSdk:!1,uploadConcurrency:4,uploadChunkSize:33554432};return t&&(typeof t.useAzureSdk=="boolean"&&(e.useAzureSdk=t.useAzureSdk),typeof t.uploadConcurrency=="number"&&(e.uploadConcurrency=t.uploadConcurrency),typeof t.uploadChunkSize=="number"&&(e.uploadChunkSize=t.uploadChunkSize)),e.uploadConcurrency=isNaN(Number(process.env.CACHE_UPLOAD_CONCURRENCY))?e.uploadConcurrency:Math.min(32,Number(process.env.CACHE_UPLOAD_CONCURRENCY)),e.uploadChunkSize=isNaN(Number(process.env.CACHE_UPLOAD_CHUNK_SIZE))?e.uploadChunkSize:Math.min(128*1024*1024,Number(process.env.CACHE_UPLOAD_CHUNK_SIZE)*1024*1024),G(`Use Azure SDK: ${e.useAzureSdk}`),G(`Upload concurrency: ${e.uploadConcurrency}`),G(`Upload chunk size: ${e.uploadChunkSize}`),e}i(Iz,"getUploadOptions");function eAe(t){let e={useAzureSdk:!1,concurrentBlobDownloads:!0,downloadConcurrency:8,timeoutInMs:3e4,segmentTimeoutInMs:6e5,lookupOnly:!1};t&&(typeof t.useAzureSdk=="boolean"&&(e.useAzureSdk=t.useAzureSdk),typeof t.concurrentBlobDownloads=="boolean"&&(e.concurrentBlobDownloads=t.concurrentBlobDownloads),typeof t.downloadConcurrency=="number"&&(e.downloadConcurrency=t.downloadConcurrency),typeof t.timeoutInMs=="number"&&(e.timeoutInMs=t.timeoutInMs),typeof t.segmentTimeoutInMs=="number"&&(e.segmentTimeoutInMs=t.segmentTimeoutInMs),typeof t.lookupOnly=="boolean"&&(e.lookupOnly=t.lookupOnly));let r=process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS;return r&&!isNaN(Number(r))&&isFinite(Number(r))&&(e.segmentTimeoutInMs=Number(r)*60*1e3),G(`Use Azure SDK: ${e.useAzureSdk}`),G(`Download concurrency: ${e.downloadConcurrency}`),G(`Request timeout (ms): ${e.timeoutInMs}`),G(`Cache segment download timeout mins env var: ${process.env.SEGMENT_DOWNLOAD_TIMEOUT_MINS}`),G(`Segment download timeout (ms): ${e.segmentTimeoutInMs}`),G(`Lookup only: ${e.lookupOnly}`),e}i(eAe,"getDownloadOptions");function xz(){let e=new URL(process.env.GITHUB_SERVER_URL||"https://github.com").hostname.trimEnd().toUpperCase(),r=e==="GITHUB.COM",n=e.endsWith(".GHE.COM"),s=e.endsWith(".LOCALHOST");return!r&&!n&&!s}i(xz,"isGhes");function SI(){return xz()?"v1":process.env.ACTIONS_CACHE_SERVICE_V2?"v2":"v1"}i(SI,"getCacheServiceVersion");function MN(){let t=SI();switch(t){case"v1":return process.env.ACTIONS_CACHE_URL||process.env.ACTIONS_RESULTS_URL||"";case"v2":return process.env.ACTIONS_RESULTS_URL||"";default:throw new Error(`Unsupported cache service version: ${t}`)}}i(MN,"getCacheServiceURL");var sAe=D(nAe(),1);function FN(){return`@actions/cache-${sAe.version}`}i(FN,"getUserAgentString");var Zs=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function BI(t){let e=MN();if(!e)throw new Error("Cache Service Url not found, unable to restore cache.");let r=`${e}_apis/artifactcache/${t}`;return G(`Resource Url: ${r}`),r}i(BI,"getCacheApiUrl");function Gst(t,e){return`${t};api-version=${e}`}i(Gst,"createAcceptHeader");function Hst(){return{headers:{Accept:Gst("application/json","6.0-preview.1")}}}i(Hst,"getRequestOptions");function wz(){let t=process.env.ACTIONS_RUNTIME_TOKEN||"",e=new Ah(t);return new Yl(FN(),[e],Hst())}i(wz,"createHttpClient");function aAe(t,e,r){return Zs(this,void 0,void 0,function*(){let n=wz(),s=fh(e,r?.compressionMethod,r?.enableCrossOsArchive),o=`cache?keys=${encodeURIComponent(t.join(","))}&version=${s}`,a=yield bI("getCacheEntry",()=>Zs(this,void 0,void 0,function*(){return n.getJson(BI(o))}));if(a.statusCode===204)return cm()&&(yield zst(t[0],n,s)),null;if(!kN(a.statusCode))throw new Error(`Cache service responded with ${a.statusCode}`);let c=a.result,l=c?.archiveLocation;if(!l)throw new Error("Cache not found.");return Bo(l),G("Cache Result:"),G(JSON.stringify(c)),c})}i(aAe,"getCacheEntry");function zst(t,e,r){return Zs(this,void 0,void 0,function*(){let n=`caches?key=${encodeURIComponent(t)}`,s=yield bI("listCache",()=>Zs(this,void 0,void 0,function*(){return e.getJson(BI(n))}));if(s.statusCode===200){let o=s.result,a=o?.totalCount;if(a&&a>0){G(`No matching cache found for cache key '${t}', version '${r} and scope ${process.env.GITHUB_REF}. There exist one or more cache(s) with similar key but they have different version or scope. See more info on cache matching here: https://docs.github.com/en/actions/using-workflows/caching-dependencies-to-speed-up-workflows#matching-a-cache-key +Other caches with similar key:`);for(let c of o?.artifactCaches||[])G(`Cache Key: ${c?.cacheKey}, Cache Version: ${c?.cacheVersion}, Cache Scope: ${c?.scope}, Cache Created: ${c?.creationTime}`)}}})}i(zst,"printCachesListForDiagnostics");function bz(t,e,r){return Zs(this,void 0,void 0,function*(){let n=new iAe.URL(t),s=eAe(r);n.hostname.endsWith(".blob.core.windows.net")?s.useAzureSdk?yield Xfe(t,e,s):s.concurrentBlobDownloads?yield Kfe(t,e,s):yield ON(t,e):yield ON(t,e)})}i(bz,"downloadCache");function cAe(t,e,r){return Zs(this,void 0,void 0,function*(){let n=wz(),s=fh(e,r?.compressionMethod,r?.enableCrossOsArchive),o={key:t,version:s,cacheSize:r?.cacheSize};return yield bI("reserveCache",()=>Zs(this,void 0,void 0,function*(){return n.postJson(BI("caches"),o)}))})}i(cAe,"reserveCache");function oAe(t,e){return`bytes ${t}-${e}/*`}i(oAe,"getContentRange");function Vst(t,e,r,n,s){return Zs(this,void 0,void 0,function*(){G(`Uploading chunk of size ${s-n+1} bytes at offset ${n} with content range: ${oAe(n,s)}`);let o={"Content-Type":"application/octet-stream","Content-Range":oAe(n,s)},a=yield Hh(`uploadChunk (start: ${n}, end: ${s})`,()=>Zs(this,void 0,void 0,function*(){return t.sendStream("PATCH",e,r(),o)}));if(!kN(a.message.statusCode))throw new Error(`Cache service responded with ${a.message.statusCode} during upload chunk.`)})}i(Vst,"uploadChunk");function Yst(t,e,r,n){return Zs(this,void 0,void 0,function*(){let s=tc(r),o=BI(`caches/${e.toString()}`),a=zh.openSync(r,"r"),c=Iz(n),l=KU("uploadConcurrency",c.uploadConcurrency),u=KU("uploadChunkSize",c.uploadChunkSize),d=[...new Array(l).keys()];G("Awaiting all uploads");let p=0;try{yield Promise.all(d.map(()=>Zs(this,void 0,void 0,function*(){for(;pzh.createReadStream(r,{fd:a,start:f,end:g,autoClose:!1}).on("error",E=>{throw new Error(`Cache upload failed because file read failed with ${E.message}`)}),f,g)}})))}finally{zh.closeSync(a)}})}i(Yst,"uploadFile");function Wst(t,e,r){return Zs(this,void 0,void 0,function*(){let n={size:r};return yield bI("commitCache",()=>Zs(this,void 0,void 0,function*(){return t.postJson(BI(`caches/${e.toString()}`),n)}))})}i(Wst,"commitCache");function Sz(t,e,r,n){return Zs(this,void 0,void 0,function*(){if(Iz(n).useAzureSdk){if(!r)throw new Error("Azure Storage SDK can only be used when a signed URL is provided.");yield Vfe(r,e,n)}else{let o=wz();G("Upload cache"),yield Yst(o,t,e,n),G("Commiting cache");let a=tc(e);Ke(`Cache Size: ~${Math.round(a/(1024*1024))} MB (${a} B)`);let c=yield Wst(o,t,a);if(!kN(c.statusCode))throw new Error(`Cache service responded with ${c.statusCode} during commit cache.`);Ke("Cache saved successfully")}})}i(Sz,"saveCache");var rhe=D(jAe(),1),Fr=D(Mr(),1),Uo=D(Mr(),1),Vm=D(Mr(),1),Ym=D(Mr(),1),Wm=D(Mr(),1);var E3=D(Mr(),1),C3=D(Mr(),1),ZAe=D(Mr(),1),ehe=D(Mr(),1),the=D(Mr(),1);var h3=D(Mr(),1),g3=D(Mr(),1),JAe=D(Mr(),1),KAe=D(Mr(),1),XAe=D(Mr(),1);var y3=class extends XAe.MessageType{static{i(this,"CacheScope$Type")}constructor(){super("github.actions.results.entities.v1.CacheScope",[{no:1,name:"scope",kind:"scalar",T:9},{no:2,name:"permission",kind:"scalar",T:3}])}create(e){let r={scope:"",permission:"0"};return globalThis.Object.defineProperty(r,KAe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,JAe.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.posbT,"T")}])}create(e){let r={repositoryId:"0",scope:[]};return globalThis.Object.defineProperty(r,ehe.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,ZAe.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.poskc,"T")},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",version:""};return globalThis.Object.defineProperty(r,Ym.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,Vm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.poskc,"T")},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"size_bytes",kind:"scalar",T:3},{no:4,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",sizeBytes:"0",version:""};return globalThis.Object.defineProperty(r,Ym.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,Vm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.poskc,"T")},{no:2,name:"key",kind:"scalar",T:9},{no:3,name:"restore_keys",kind:"scalar",repeat:2,T:9},{no:4,name:"version",kind:"scalar",T:9}])}create(e){let r={key:"",restoreKeys:[],version:""};return globalThis.Object.defineProperty(r,Ym.MESSAGE_TYPE,{enumerable:!1,value:this}),e!==void 0&&(0,Vm.reflectionMergePartial)(this,r,e),r}internalBinaryRead(e,r,n,s){let o=s??this.create(),a=e.pos+r;for(;e.posT3.fromJson(s,{ignoreUnknownFields:!0}))}FinalizeCacheEntryUpload(e){let r=P3.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request("github.actions.results.api.v1.CacheService","FinalizeCacheEntryUpload","application/json",r).then(s=>v3.fromJson(s,{ignoreUnknownFields:!0}))}GetCacheEntryDownloadURL(e){let r=_3.toJson(e,{useProtoFieldName:!0,emitDefaultValues:!1});return this.rpc.request("github.actions.results.api.v1.CacheService","GetCacheEntryDownloadURL","application/json",r).then(s=>Q3.fromJson(s,{ignoreUnknownFields:!0}))}};function nhe(t){if(t)try{let r=new URL(t).searchParams.get("sig");r&&(Bo(r),Bo(encodeURIComponent(r)))}catch(e){G(`Failed to parse URL: ${t} ${e instanceof Error?e.message:String(e)}`)}}i(nhe,"maskSigUrl");function she(t){if(typeof t!="object"||t===null){G("body is not an object or is null");return}"signed_upload_url"in t&&typeof t.signed_upload_url=="string"&&nhe(t.signed_upload_url),"signed_download_url"in t&&typeof t.signed_download_url=="string"&&nhe(t.signed_download_url)}i(she,"maskSecretUrls");var BT=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},D3=class{static{i(this,"CacheServiceClient")}constructor(e,r,n,s){this.maxAttempts=5,this.baseRetryIntervalMilliseconds=3e3,this.retryMultiplier=1.5;let o=_le();this.baseUrl=MN(),r&&(this.maxAttempts=r),n&&(this.baseRetryIntervalMilliseconds=n),s&&(this.retryMultiplier=s),this.httpClient=new Yl(e,[new Ah(o)])}request(e,r,n,s){return BT(this,void 0,void 0,function*(){let o=new URL(`/twirp/${e}/${r}`,this.baseUrl).href;G(`[Request] ${r} ${o}`);let a={"Content-Type":n};try{let{body:c}=yield this.retryableRequest(()=>BT(this,void 0,void 0,function*(){return this.httpClient.post(o,JSON.stringify(s),a)}));return c}catch(c){throw new Error(`Failed to ${r}: ${c.message}`)}})}retryableRequest(e){return BT(this,void 0,void 0,function*(){let r=0,n="",s="";for(;r0&&Qr(`You've hit a rate limit, your rate limit will reset in ${p} seconds`)}throw new wI(`Rate limited: ${n}`)}}catch(c){if(c instanceof SyntaxError&&G(`Raw Body: ${s}`),c instanceof qm||c instanceof wI)throw c;if(Gh.isNetworkErrorCode(c?.code))throw new Gh(c?.code);o=!0,n=c.message}if(!o)throw new Error(`Received non-retryable error: ${n}`);if(r+1===this.maxAttempts)throw new Error(`Failed to make request after ${this.maxAttempts} attempts: ${n}`);let a=this.getExponentialRetryTimeMilliseconds(r);Ke(`Attempt ${r+1} of ${this.maxAttempts} failed with error: ${n}. Retrying request in ${a} ms...`),yield this.sleep(a),r++}throw new Error("Request failed")})}isSuccessStatusCode(e){return e?e>=200&&e<300:!1}isRetryableHttpStatusCode(e){return e?[Ir.BadGateway,Ir.GatewayTimeout,Ir.InternalServerError,Ir.ServiceUnavailable].includes(e):!1}sleep(e){return BT(this,void 0,void 0,function*(){return new Promise(r=>setTimeout(r,e))})}getExponentialRetryTimeMilliseconds(e){if(e<0)throw new Error("attempt should be a positive integer");if(e===0)return this.baseRetryIntervalMilliseconds;let r=this.baseRetryIntervalMilliseconds*Math.pow(this.retryMultiplier,e),n=r*this.retryMultiplier;return Math.trunc(Math.random()*(n-r)+r)}};function k3(t){let e=new D3(FN(),t?.maxAttempts,t?.retryIntervalMs,t?.retryMultiplier);return new ST(e)}i(k3,"internalCacheTwirpClient");var RT=require("fs"),qo=D(require("path"),1);var cu=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},kd=process.platform==="win32";function sat(){return cu(this,void 0,void 0,function*(){switch(process.platform){case"win32":{let t=yield vle(),e=Rle;if(t)return{path:t,type:To.GNU};if((0,RT.existsSync)(e))return{path:e,type:To.BSD};break}case"darwin":{let t=yield Gs("gtar",!1);return t?{path:t,type:To.GNU}:{path:yield Gs("tar",!0),type:To.BSD}}default:break}return{path:yield Gs("tar",!0),type:To.GNU}})}i(sat,"getTarPath");function oat(t,e,r){return cu(this,arguments,void 0,function*(n,s,o,a=""){let c=[`"${n.path}"`],l=yd(s),u="cache.tar",d=ohe(),p=n.type===To.BSD&&s!==ys.Gzip&&kd;switch(o){case"create":c.push("--posix","-cf",p?u:l.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),"--exclude",p?u:l.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),"-P","-C",d.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),"--files-from",jU);break;case"extract":c.push("-xf",p?u:a.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),"-P","-C",d.replace(new RegExp(`\\${qo.sep}`,"g"),"/"));break;case"list":c.push("-tf",p?u:a.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),"-P");break}if(n.type===To.GNU)switch(process.platform){case"win32":c.push("--force-local");break;case"darwin":c.push("--delay-directory-restore");break}return c})}i(oat,"getTarArgs");function L3(t,e){return cu(this,arguments,void 0,function*(r,n,s=""){let o,a=yield sat(),c=yield oat(a,r,n,s),l=n!=="create"?yield iat(a,r,s):yield aat(a,r),u=a.type===To.BSD&&r!==ys.Gzip&&kd;return u&&n!=="create"?o=[[...l].join(" "),[...c].join(" ")]:o=[[...c].join(" "),[...l].join(" ")],u?o:[o.join(" ")]})}i(L3,"getCommands");function ohe(){var t;return(t=process.env.GITHUB_WORKSPACE)!==null&&t!==void 0?t:process.cwd()}i(ohe,"getWorkingDirectory");function iat(t,e,r){return cu(this,void 0,void 0,function*(){let n=t.type===To.BSD&&e!==ys.Gzip&&kd;switch(e){case ys.Zstd:return n?["zstd -d --long=30 --force -o",IC,r.replace(new RegExp(`\\${qo.sep}`,"g"),"/")]:["--use-compress-program",kd?'"zstd -d --long=30"':"unzstd --long=30"];case ys.ZstdWithoutLong:return n?["zstd -d --force -o",IC,r.replace(new RegExp(`\\${qo.sep}`,"g"),"/")]:["--use-compress-program",kd?'"zstd -d"':"unzstd"];default:return["-z"]}})}i(iat,"getDecompressionProgram");function aat(t,e){return cu(this,void 0,void 0,function*(){let r=yd(e),n=t.type===To.BSD&&e!==ys.Gzip&&kd;switch(e){case ys.Zstd:return n?["zstd -T0 --long=30 --force -o",r.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),IC]:["--use-compress-program",kd?'"zstd -T0 --long=30"':"zstdmt --long=30"];case ys.ZstdWithoutLong:return n?["zstd -T0 --force -o",r.replace(new RegExp(`\\${qo.sep}`,"g"),"/"),IC]:["--use-compress-program",kd?'"zstd -T0"':"zstdmt"];default:return["-z"]}})}i(aat,"getCompressionProgram");function O3(t,e){return cu(this,void 0,void 0,function*(){for(let r of t)try{yield ud(r,void 0,{cwd:e,env:Object.assign(Object.assign({},process.env),{MSYS:"winsymlinks:nativestrict"})})}catch(n){throw new Error(`${r.split(" ")[0]} failed with error: ${n?.message}`)}})}i(O3,"execCommands");function qI(t,e){return cu(this,void 0,void 0,function*(){let r=yield L3(e,"list",t);yield O3(r)})}i(qI,"listTar");function M3(t,e){return cu(this,void 0,void 0,function*(){let r=ohe();yield am(r);let n=yield L3(e,"extract",t);yield O3(n)})}i(M3,"extractTar");function F3(t,e,r){return cu(this,void 0,void 0,function*(){(0,RT.writeFileSync)(qo.join(t,jU),e.join(` +`));let n=yield L3(r,"create");yield O3(n,t)})}i(F3,"createTar");var cg=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},ya=class t extends Error{static{i(this,"ValidationError")}constructor(e){super(e),this.name="ValidationError",Object.setPrototypeOf(this,t.prototype)}},ag=class t extends Error{static{i(this,"ReserveCacheError")}constructor(e){super(e),this.name="ReserveCacheError",Object.setPrototypeOf(this,t.prototype)}},NT=class t extends Error{static{i(this,"FinalizeCacheError")}constructor(e){super(e),this.name="FinalizeCacheError",Object.setPrototypeOf(this,t.prototype)}};function ihe(t){if(!t||t.length===0)throw new ya("Path Validation Error: At least one directory or file path is required")}i(ihe,"checkPaths");function U3(t){if(t.length>512)throw new ya(`Key Validation Error: ${t} cannot be larger than 512 characters.`);if(!/^[^,]*$/.test(t))throw new ya(`Key Validation Error: ${t} cannot contain commas.`)}i(U3,"checkKey");function q3(){return SI()==="v2"?!!process.env.ACTIONS_RESULTS_URL:!!process.env.ACTIONS_CACHE_URL}i(q3,"isFeatureAvailable");function ahe(t,e,r,n){return cg(this,arguments,void 0,function*(s,o,a,c,l=!1){let u=SI();return G(`Cache service version: ${u}`),ihe(s),u==="v2"?yield lat(s,o,a,c,l):yield cat(s,o,a,c,l)})}i(ahe,"restoreCache");function cat(t,e,r,n){return cg(this,arguments,void 0,function*(s,o,a,c,l=!1){a=a||[];let u=[o,...a];if(G("Resolved Keys:"),G(JSON.stringify(u)),u.length>10)throw new ya("Key Validation Error: Keys are limited to a maximum of 10.");for(let m of u)U3(m);let d=yield bC(),p="";try{let m=yield aAe(u,s,{compressionMethod:d,enableCrossOsArchive:l});if(!m?.archiveLocation)return;if(c?.lookupOnly)return Ke("Lookup only - skipping download"),m.cacheKey;p=$I.join(yield xC(),yd(d)),G(`Archive Path: ${p}`),yield bz(m.archiveLocation,p,c),cm()&&(yield qI(p,d));let f=tc(p);return Ke(`Cache Size: ~${Math.round(f/(1024*1024))} MB (${f} B)`),yield M3(p,d),Ke("Cache restored successfully"),m.cacheKey}catch(m){let f=m;if(f.name===ya.name)throw m;f instanceof rc&&typeof f.statusCode=="number"&&f.statusCode>=500?nh(`Failed to restore: ${m.message}`):Qr(`Failed to restore: ${m.message}`)}finally{try{yield wC(p)}catch(m){G(`Failed to delete archive: ${m}`)}}})}i(cat,"restoreCacheV1");function lat(t,e,r,n){return cg(this,arguments,void 0,function*(s,o,a,c,l=!1){c=Object.assign(Object.assign({},c),{useAzureSdk:!0}),a=a||[];let u=[o,...a];if(G("Resolved Keys:"),G(JSON.stringify(u)),u.length>10)throw new ya("Key Validation Error: Keys are limited to a maximum of 10.");for(let p of u)U3(p);let d="";try{let p=k3(),m=yield bC(),f={key:o,restoreKeys:a,version:fh(s,m,l)},g=yield p.GetCacheEntryDownloadURL(f);if(!g.ok){G(`Cache not found for version ${f.version} of keys: ${u.join(", ")}`);return}if(f.key!==g.matchedKey?Ke(`Cache hit for restore-key: ${g.matchedKey}`):Ke(`Cache hit for: ${g.matchedKey}`),c?.lookupOnly)return Ke("Lookup only - skipping download"),g.matchedKey;d=$I.join(yield xC(),yd(m)),G(`Archive path: ${d}`),G(`Starting download of archive to: ${d}`),yield bz(g.signedDownloadUrl,d,c);let x=tc(d);return Ke(`Cache Size: ~${Math.round(x/(1024*1024))} MB (${x} B)`),cm()&&(yield qI(d,m)),yield M3(d,m),Ke("Cache restored successfully"),g.matchedKey}catch(p){let m=p;if(m.name===ya.name)throw p;m instanceof rc&&typeof m.statusCode=="number"&&m.statusCode>=500?nh(`Failed to restore: ${p.message}`):Qr(`Failed to restore: ${p.message}`)}finally{try{d&&(yield wC(d))}catch(p){G(`Failed to delete archive: ${p}`)}}})}i(lat,"restoreCacheV2");function $3(t,e,r){return cg(this,arguments,void 0,function*(n,s,o,a=!1){let c=SI();return G(`Cache service version: ${c}`),ihe(n),U3(s),c==="v2"?yield dat(n,s,o,a):yield uat(n,s,o,a)})}i($3,"saveCache");function uat(t,e,r){return cg(this,arguments,void 0,function*(n,s,o,a=!1){var c,l,u,d,p;let m=yield bC(),f=-1,g=yield JU(n);if(G("Cache Paths:"),G(`${JSON.stringify(g)}`),g.length===0)throw new Error("Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.");let E=yield xC(),x=$I.join(E,yd(m));G(`Archive Path: ${x}`);try{yield F3(E,g,m),cm()&&(yield qI(x,m));let w=10*1024*1024*1024,S=tc(x);if(G(`File Size: ${S}`),S>w&&!xz())throw new Error(`Cache size of ~${Math.round(S/(1024*1024))} MB (${S} B) is over the 10GB limit, not saving cache.`);G("Reserving Cache");let P=yield cAe(s,n,{compressionMethod:m,enableCrossOsArchive:a,cacheSize:S});if(!((c=P?.result)===null||c===void 0)&&c.cacheId)f=(l=P?.result)===null||l===void 0?void 0:l.cacheId;else throw P?.statusCode===400?new Error((d=(u=P?.error)===null||u===void 0?void 0:u.message)!==null&&d!==void 0?d:`Cache size of ~${Math.round(S/(1024*1024))} MB (${S} B) is over the data cap limit, not saving cache.`):new ag(`Unable to reserve cache with key ${s}, another job may be creating this cache. More details: ${(p=P?.error)===null||p===void 0?void 0:p.message}`);G(`Saving Cache (ID: ${f})`),yield Sz(f,x,"",o)}catch(w){let S=w;if(S.name===ya.name)throw w;S.name===ag.name?Ke(`Failed to save: ${S.message}`):S instanceof rc&&typeof S.statusCode=="number"&&S.statusCode>=500?nh(`Failed to save: ${S.message}`):Qr(`Failed to save: ${S.message}`)}finally{try{yield wC(x)}catch(w){G(`Failed to delete archive: ${w}`)}}return f})}i(uat,"saveCacheV1");function dat(t,e,r){return cg(this,arguments,void 0,function*(n,s,o,a=!1){o=Object.assign(Object.assign({},o),{uploadChunkSize:64*1024*1024,uploadConcurrency:8,useAzureSdk:!0});let c=yield bC(),l=k3(),u=-1,d=yield JU(n);if(G("Cache Paths:"),G(`${JSON.stringify(d)}`),d.length===0)throw new Error("Path Validation Error: Path(s) specified in the action for caching do(es) not exist, hence no cache is being saved.");let p=yield xC(),m=$I.join(p,yd(c));G(`Archive Path: ${m}`);try{yield F3(p,d,c),cm()&&(yield qI(m,c));let f=tc(m);G(`File Size: ${f}`),o.archiveSizeBytes=f,G("Reserving Cache");let g=fh(n,c,a),E={key:s,version:g},x;try{let P=yield l.CreateCacheEntry(E);if(!P.ok)throw P.message&&Qr(`Cache reservation failed: ${P.message}`),new Error(P.message||"Response was not ok");x=P.signedUploadUrl}catch(P){throw G(`Failed to reserve cache: ${P}`),new ag(`Unable to reserve cache with key ${s}, another job may be creating this cache.`)}G(`Attempting to upload cache located at: ${m}`),yield Sz(u,m,x,o);let w={key:s,version:g,sizeBytes:`${f}`},S=yield l.FinalizeCacheEntryUpload(w);if(G(`FinalizeCacheEntryUploadResponse: ${S.ok}`),!S.ok)throw S.message?new NT(S.message):new Error(`Unable to finalize cache with key ${s}, another job may be finalizing this cache.`);u=parseInt(S.entryId)}catch(f){let g=f;if(g.name===ya.name)throw f;g.name===ag.name?Ke(`Failed to save: ${g.message}`):g.name===NT.name?Qr(g.message):g instanceof rc&&typeof g.statusCode=="number"&&g.statusCode>=500?nh(`Failed to save: ${g.message}`):Qr(`Failed to save: ${g.message}`)}finally{try{yield wC(m)}catch(f){G(`Failed to delete archive: ${f}`)}}return u})}i(dat,"saveCacheV2");var che=D(require("util"),1);var lg=class t{static{i(this,"Cache")}opts;ghaCacheKey;ghaNoCache;cacheDir;cachePath;static POST_CACHE_KEY="postCache";constructor(e){this.opts=e,this.ghaCacheKey=che.format("%s-%s-%s",this.opts.htcName,this.opts.htcVersion,this.platform()),this.ghaNoCache=this.opts.ghaNoCache,this.cacheDir=H3.default.join(this.opts.baseCacheDir,this.opts.htcVersion,this.platform()),this.cachePath=H3.default.join(this.cacheDir,this.opts.cacheFile),TT.default.existsSync(this.cacheDir)||TT.default.mkdirSync(this.cacheDir,{recursive:!0})}async save(e,r){G(`Cache.save ${e}`);let n=this.copyToCache(e),s=await mU(this.cacheDir,this.opts.htcName,this.opts.htcVersion,this.platform());if(G(`Cache.save cached to hosted tool cache ${s}`),!this.ghaNoCache&&q3())if(r)try{G(`Cache.save caching ${this.ghaCacheKey} to GitHub Actions cache`),await $3([this.cacheDir],this.ghaCacheKey)}catch(o){Qr(`Failed to save cache: ${o}`)}else G(`Cache.save sending ${this.ghaCacheKey} to post state`),lm(t.POST_CACHE_KEY,JSON.stringify({dir:this.cacheDir,key:this.ghaCacheKey}));return n}async find(){try{let e=tae(this.opts.htcName,this.opts.htcVersion,this.platform());if(e)return Ke(`Restored from hosted tool cache ${e}`),this.copyToCache(`${e}/${this.opts.cacheFile}`);if(!this.ghaNoCache&&q3()){if(G("GitHub Actions cache feature available"),await ahe([this.cacheDir],this.ghaCacheKey))return Ke(`Restored ${this.ghaCacheKey} from GitHub Actions cache`),e=await mU(this.cacheDir,this.opts.htcName,this.opts.htcVersion,this.platform()),Ke(`Cached to hosted tool cache ${e}`),this.copyToCache(`${e}/${this.opts.cacheFile}`)}else this.ghaNoCache?Ke("GitHub Actions cache disabled"):Ke("GitHub Actions cache feature not available")}catch(e){Qr(`Failed to restore cache: ${e}`)}return""}static async post(){let e=noe(t.POST_CACHE_KEY);if(!e)return Ke("State not set"),Promise.resolve(void 0);let r;try{r=JSON.parse(e)}catch(n){throw new Error(`Failed to parse cache post state: ${n}`)}if(!r.dir||!r.key)throw new Error(`Invalid cache post state: ${e}`);try{Ke(`Caching ${r.key} to GitHub Actions cache`),await $3([r.dir],r.key)}catch(n){Qr(`Failed to save cache: ${n}`)}return r}copyToCache(e){return Ke(`Copying ${e} to ${this.cachePath}`),TT.default.copyFileSync(e,this.cachePath),this.cachePath}platform(){let e=process.config.variables.arm_version;return`${G3.default.platform()}-${G3.default.arch()}${e?"v"+e:""}`}};var lhe=!!process.env.STATE_isPost;lhe||lm("isPost","true");async function uhe(t,e){if(lhe)e&&await e(),await XE("Post cache",async()=>{await lg.post()});else try{await t()}catch(r){roe(r.message)}}i(uhe,"run");var J4=D(require("path"),1);function Bhe(t){return typeof t>"u"||t===null}i(Bhe,"isNothing");function fat(t){return typeof t=="object"&&t!==null}i(fat,"isObject");function Aat(t){return Array.isArray(t)?t:Bhe(t)?[]:[t]}i(Aat,"toArray");function hat(t,e){var r,n,s,o;if(e)for(o=Object.keys(e),r=0,n=o.length;ra&&(o=" ... ",e=n-a+o.length),r-n>a&&(i=" ...",r=n+a-i.length),{str:o+t.slice(e,r).replace(/\t/g,"\u2192")+i,pos:n-e+o.length}}function z3(t,e){return ln.repeat(" ",e-t.length)+t}function wat(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],s=[],o,i=-1;o=r.exec(t.buffer);)s.push(o.index),n.push(o.index+o[0].length),t.position<=o.index&&i<0&&(i=n.length-2);i<0&&(i=n.length-1);var a="",c,l,u=Math.min(t.line+e.linesAfter,s.length).toString().length,d=e.maxLength-(e.indent+u+3);for(c=1;c<=e.linesBefore&&!(i-c<0);c++)l=H3(t.buffer,n[i-c],s[i-c],t.position-(n[i]-n[i-c]),d),a=ln.repeat(" ",e.indent)+z3((t.line-c+1).toString(),u)+" | "+l.str+` -`+a;for(l=H3(t.buffer,n[i],s[i],t.position,d),a+=ln.repeat(" ",e.indent)+z3((t.line+1).toString(),u)+" | "+l.str+` -`,a+=ln.repeat("-",e.indent+u+3+l.pos)+`^ -`,c=1;c<=e.linesAfter&&!(i+c>=s.length);c++)l=H3(t.buffer,n[i+c],s[i+c],t.position-(n[i]-n[i+c]),d),a+=ln.repeat(" ",e.indent)+z3((t.line+c+1).toString(),u)+" | "+l.str+` -`;return a.replace(/\n$/,"")}var bat=wat,Sat=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Bat=["scalar","sequence","mapping"];function Rat(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}function Nat(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(Sat.indexOf(r)===-1)throw new to('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=Rat(e.styleAliases||null),Bat.indexOf(this.kind)===-1)throw new to('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}var Yn=Nat;function uhe(t,e){var r=[];return t[e].forEach(function(n){var s=r.length;r.forEach(function(o,i){o.tag===n.tag&&o.kind===n.kind&&o.multi===n.multi&&(s=i)}),r[s]=n}),r}function Tat(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(s){s.multi?(t.multi[s.kind].push(s),t.multi.fallback.push(s)):t[s.kind][s.tag]=t.fallback[s.tag]=s}for(e=0,r=arguments.length;e=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},octal:function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},decimal:function(t){return t.toString(10)},hexadecimal:function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)}},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Jat=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Kat(t){return!(t===null||!Jat.test(t)||t[t.length-1]==="_")}function Xat(t){var e,r;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}var Zat=/^[-+]?[0-9]+e/;function ect(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(ln.isNegativeZero(t))return"-0.0";return r=t.toString(10),Zat.test(r)?r.replace("e",".e"):r}function tct(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||ln.isNegativeZero(t))}var rct=new Yn("tag:yaml.org,2002:float",{kind:"scalar",resolve:Kat,construct:Xat,predicate:tct,represent:ect,defaultStyle:"lowercase"}),nct=Dat.extend({implicit:[Mat,$at,jat,rct]}),sct=nct,Rhe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),Nhe=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 oct(t){return t===null?!1:Rhe.exec(t)!==null||Nhe.exec(t)!==null}function ict(t){var e,r,n,s,o,i,a,c=0,l=null,u,d,p;if(e=Rhe.exec(t),e===null&&(e=Nhe.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,s=+e[3],!e[4])return new Date(Date.UTC(r,n,s));if(o=+e[4],i=+e[5],a=+e[6],e[7]){for(c=e[7].slice(0,3);c.length<3;)c+="0";c=+c}return e[9]&&(u=+e[10],d=+(e[11]||0),l=(u*60+d)*6e4,e[9]==="-"&&(l=-l)),p=new Date(Date.UTC(r,n,s,o,i,a,c)),l&&p.setTime(p.getTime()-l),p}function act(t){return t.toISOString()}var cct=new Yn("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:oct,construct:ict,instanceOf:Date,represent:act});function lct(t){return t==="<<"||t===null}var uct=new Yn("tag:yaml.org,2002:merge",{kind:"scalar",resolve:lct}),X3=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= -\r`;function dct(t){if(t===null)return!1;var e,r,n=0,s=t.length,o=X3;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}function pct(t){var e,r,n=t.replace(/[\r\n=]/g,""),s=n.length,o=X3,i=0,a=[];for(e=0;e>16&255),a.push(i>>8&255),a.push(i&255)),i=i<<6|o.indexOf(n.charAt(e));return r=s%4*6,r===0?(a.push(i>>16&255),a.push(i>>8&255),a.push(i&255)):r===18?(a.push(i>>10&255),a.push(i>>2&255)):r===12&&a.push(i>>4&255),new Uint8Array(a)}function mct(t){var e="",r=0,n,s,o=t.length,i=X3;for(n=0;n>18&63],e+=i[r>>12&63],e+=i[r>>6&63],e+=i[r&63]),r=(r<<8)+t[n];return s=o%3,s===0?(e+=i[r>>18&63],e+=i[r>>12&63],e+=i[r>>6&63],e+=i[r&63]):s===2?(e+=i[r>>10&63],e+=i[r>>4&63],e+=i[r<<2&63],e+=i[64]):s===1&&(e+=i[r>>2&63],e+=i[r<<4&63],e+=i[64],e+=i[64]),e}function fct(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}var Act=new Yn("tag:yaml.org,2002:binary",{kind:"scalar",resolve:dct,construct:pct,predicate:fct,represent:mct}),hct=Object.prototype.hasOwnProperty,gct=Object.prototype.toString;function yct(t){if(t===null)return!0;var e=[],r,n,s,o,i,a=t;for(r=0,n=a.length;r>10)+55296,(t-65536&1023)+56320)}function Dhe(t,e,r){e==="__proto__"?Object.defineProperty(t,e,{configurable:!0,enumerable:!0,writable:!0,value:r}):t[e]=r}var khe=new Array(256),Lhe=new Array(256);for(Wm=0;Wm<256;Wm++)khe[Wm]=mhe(Wm)?1:0,Lhe[Wm]=mhe(Wm);var Wm;function Oct(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||The,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}function Ohe(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=bat(r),new to(e,r)}function be(t,e){throw Ohe(t,e)}function vT(t,e){t.onWarning&&t.onWarning.call(null,Ohe(t,e))}var fhe={YAML:function(e,r,n){var s,o,i;e.version!==null&&be(e,"duplication of %YAML directive"),n.length!==1&&be(e,"YAML directive accepts exactly one argument"),s=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),s===null&&be(e,"ill-formed argument of the YAML directive"),o=parseInt(s[1],10),i=parseInt(s[2],10),o!==1&&be(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=i<2,i!==1&&i!==2&&vT(e,"unsupported YAML version of the document")},TAG:function(e,r,n){var s,o;n.length!==2&&be(e,"TAG directive accepts exactly two arguments"),s=n[0],o=n[1],_he.test(s)||be(e,"ill-formed tag handle (first argument) of the TAG directive"),Ld.call(e.tagMap,s)&&be(e,'there is a previously declared suffix for "'+s+'" tag handle'),Qhe.test(o)||be(e,"ill-formed tag prefix (second argument) of the TAG directive");try{o=decodeURIComponent(o)}catch{be(e,"tag prefix is malformed: "+o)}e.tagMap[s]=o}};function kd(t,e,r,n){var s,o,i,a;if(e1&&(t.result+=ln.repeat(` -`,e-1))}function Mct(t,e,r){var n,s,o,i,a,c,l,u,d=t.kind,p=t.result,m;if(m=t.input.charCodeAt(t.position),ro(m)||ug(m)||m===35||m===38||m===42||m===33||m===124||m===62||m===39||m===34||m===37||m===64||m===96||(m===63||m===45)&&(s=t.input.charCodeAt(t.position+1),ro(s)||r&&ug(s)))return!1;for(t.kind="scalar",t.result="",o=i=t.position,a=!1;m!==0;){if(m===58){if(s=t.input.charCodeAt(t.position+1),ro(s)||r&&ug(s))break}else if(m===35){if(n=t.input.charCodeAt(t.position-1),ro(n))break}else{if(t.position===t.lineStart&&DT(t)||r&&ug(m))break;if(kc(m))if(c=t.line,l=t.lineStart,u=t.lineIndent,jr(t,!1,-1),t.lineIndent>=e){a=!0,m=t.input.charCodeAt(t.position);continue}else{t.position=i,t.line=c,t.lineStart=l,t.lineIndent=u;break}}a&&(kd(t,o,i,!1),eV(t,t.line-c),o=i=t.position,a=!1),jm(m)||(i=t.position+1),m=t.input.charCodeAt(++t.position)}return kd(t,o,i,!1),t.result?!0:(t.kind=d,t.result=p,!1)}function Fct(t,e){var r,n,s;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=s=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(kd(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,s=t.position;else return!0;else kc(r)?(kd(t,n,s,!0),eV(t,jr(t,!1,e)),n=s=t.position):t.position===t.lineStart&&DT(t)?be(t,"unexpected end of the document within a single quoted scalar"):(t.position++,s=t.position);be(t,"unexpected end of the stream within a single quoted scalar")}function Uct(t,e){var r,n,s,o,i,a;if(a=t.input.charCodeAt(t.position),a!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(a=t.input.charCodeAt(t.position))!==0;){if(a===34)return kd(t,r,t.position,!0),t.position++,!0;if(a===92){if(kd(t,r,t.position,!0),a=t.input.charCodeAt(++t.position),kc(a))jr(t,!1,e);else if(a<256&&khe[a])t.result+=Lhe[a],t.position++;else if((i=Dct(a))>0){for(s=i,o=0;s>0;s--)a=t.input.charCodeAt(++t.position),(i=Qct(a))>=0?o=(o<<4)+i:be(t,"expected hexadecimal character");t.result+=Lct(o),t.position++}else be(t,"unknown escape sequence");r=n=t.position}else kc(a)?(kd(t,r,n,!0),eV(t,jr(t,!1,e)),r=n=t.position):t.position===t.lineStart&&DT(t)?be(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}be(t,"unexpected end of the stream within a double quoted scalar")}function qct(t,e){var r=!0,n,s,o,i=t.tag,a,c=t.anchor,l,u,d,p,m,h=Object.create(null),y,I,x,b;if(b=t.input.charCodeAt(t.position),b===91)u=93,m=!1,a=[];else if(b===123)u=125,m=!0,a={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=a),b=t.input.charCodeAt(++t.position);b!==0;){if(jr(t,!0,e),b=t.input.charCodeAt(t.position),b===u)return t.position++,t.tag=i,t.anchor=c,t.kind=m?"mapping":"sequence",t.result=a,!0;r?b===44&&be(t,"expected the node content, but found ','"):be(t,"missed comma between flow collection entries"),I=y=x=null,d=p=!1,b===63&&(l=t.input.charCodeAt(t.position+1),ro(l)&&(d=p=!0,t.position++,jr(t,!0,e))),n=t.line,s=t.lineStart,o=t.position,pg(t,e,TT,!1,!0),I=t.tag,y=t.result,jr(t,!0,e),b=t.input.charCodeAt(t.position),(p||t.line===n)&&b===58&&(d=!0,b=t.input.charCodeAt(++t.position),jr(t,!0,e),pg(t,e,TT,!1,!0),x=t.result),m?dg(t,a,h,I,y,x,n,s,o):d?a.push(dg(t,null,h,I,y,x,n,s,o)):a.push(y),jr(t,!0,e),b=t.input.charCodeAt(t.position),b===44?(r=!0,b=t.input.charCodeAt(++t.position)):r=!1}be(t,"unexpected end of the stream within a flow collection")}function $ct(t,e){var r,n,s=V3,o=!1,i=!1,a=e,c=0,l=!1,u,d;if(d=t.input.charCodeAt(t.position),d===124)n=!1;else if(d===62)n=!0;else return!1;for(t.kind="scalar",t.result="";d!==0;)if(d=t.input.charCodeAt(++t.position),d===43||d===45)V3===s?s=d===43?dhe:Tct:be(t,"repeat of a chomping mode identifier");else if((u=kct(d))>=0)u===0?be(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):i?be(t,"repeat of an indentation width identifier"):(a=e+u-1,i=!0);else break;if(jm(d)){do d=t.input.charCodeAt(++t.position);while(jm(d));if(d===35)do d=t.input.charCodeAt(++t.position);while(!kc(d)&&d!==0)}for(;d!==0;){for(Z3(t),t.lineIndent=0,d=t.input.charCodeAt(t.position);(!i||t.lineIndenta&&(a=t.lineIndent),kc(d)){c++;continue}if(t.lineIndente)&&c!==0)be(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(I&&(i=t.line,a=t.lineStart,c=t.position),pg(t,e,PT,!0,s)&&(I?h=t.result:y=t.result),I||(dg(t,d,p,m,h,y,i,a,c),m=h=y=null),jr(t,!0,-1),b=t.input.charCodeAt(t.position)),(t.line===o||t.lineIndent>e)&&b!==0)be(t,"bad indentation of a mapping entry");else if(t.lineIndente?c=1:t.lineIndent===e?c=0:t.lineIndente?c=1:t.lineIndent===e?c=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),d=0,p=t.implicitTypes.length;d"),t.result!==null&&h.kind!==t.kind&&be(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+h.kind+'", not "'+t.kind+'"'),h.resolve(t.result,t.tag)?(t.result=h.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):be(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||u}function Yct(t){var e=t.position,r,n,s,o=!1,i;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(i=t.input.charCodeAt(t.position))!==0&&(jr(t,!0,-1),i=t.input.charCodeAt(t.position),!(t.lineIndent>0||i!==37));){for(o=!0,i=t.input.charCodeAt(++t.position),r=t.position;i!==0&&!ro(i);)i=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),s=[],n.length<1&&be(t,"directive name must not be less than one character in length");i!==0;){for(;jm(i);)i=t.input.charCodeAt(++t.position);if(i===35){do i=t.input.charCodeAt(++t.position);while(i!==0&&!kc(i));break}if(kc(i))break;for(r=t.position;i!==0&&!ro(i);)i=t.input.charCodeAt(++t.position);s.push(t.input.slice(r,t.position))}i!==0&&Z3(t),Ld.call(fhe,n)?fhe[n](t,n,s):vT(t,'unknown document directive "'+n+'"')}if(jr(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,jr(t,!0,-1)):o&&be(t,"directives end mark is expected"),pg(t,t.lineIndent-1,PT,!1,!0),jr(t,!0,-1),t.checkLineBreaks&&vct.test(t.input.slice(e,t.position))&&vT(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&DT(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,jr(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=Mhe(t,r);if(typeof e!="function")return n;for(var s=0,o=n.length;s=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}function Yhe(t){var e=/^\n* /;return e.test(t)}var Whe=1,J3=2,jhe=3,Jhe=4,lg=5;function wlt(t,e,r,n,s,o,i,a){var c,l=0,u=null,d=!1,p=!1,m=n!==-1,h=-1,y=Ilt(qI(t,0))&&xlt(qI(t,t.length-1));if(e||i)for(c=0;c=65536?c+=2:c++){if(l=qI(t,c),!zI(l))return lg;y=y&&Ehe(l,u,a),u=l}else{for(c=0;c=65536?c+=2:c++){if(l=qI(t,c),l===GI)d=!0,m&&(p=p||c-h-1>n&&t[h+1]!==" ",h=c);else if(!zI(l))return lg;y=y&&Ehe(l,u,a),u=l}p=p||m&&c-h-1>n&&t[h+1]!==" "}return!d&&!p?y&&!i&&!s(t)?Whe:o===HI?lg:J3:r>9&&Yhe(t)?lg:i?o===HI?lg:J3:p?Jhe:jhe}function blt(t,e,r,n,s){t.dump=(function(){if(e.length===0)return t.quotingType===HI?'""':"''";if(!t.noCompatMode&&(flt.indexOf(e)!==-1||Alt.test(e)))return t.quotingType===HI?'"'+e+'"':"'"+e+"'";var o=t.indent*Math.max(1,r),i=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-o),a=n||t.flowLevel>-1&&r>=t.flowLevel;function c(l){return Clt(t,l)}switch(wlt(e,a,t.indent,i,c,t.quotingType,t.forceQuotes&&!n,s)){case Whe:return e;case J3:return"'"+e.replace(/'/g,"''")+"'";case jhe:return"|"+Che(e,t.indent)+Ihe(ghe(e,o));case Jhe:return">"+Che(e,t.indent)+Ihe(ghe(Slt(e,i),o));case lg:return'"'+Blt(e)+'"';default:throw new to("impossible error: invalid scalar style")}})()}function Che(t,e){var r=Yhe(t)?String(e):"",n=t[t.length-1]===` +`+t.mark.snippet),n+" "+r):n}i(Rhe,"formatError");function HI(t,e){Error.call(this),this.name="YAMLException",this.reason=t,this.mark=e,this.message=Rhe(this,!1),Error.captureStackTrace?Error.captureStackTrace(this,this.constructor):this.stack=new Error().stack||""}i(HI,"YAMLException$1");HI.prototype=Object.create(Error.prototype);HI.prototype.constructor=HI;HI.prototype.toString=i(function(e){return this.name+": "+Rhe(this,e)},"toString");var ro=HI;function z3(t,e,r,n,s){var o="",a="",c=Math.floor(s/2)-1;return n-e>c&&(o=" ... ",e=n-c+o.length),r-n>c&&(a=" ...",r=n+c-a.length),{str:o+t.slice(e,r).replace(/\t/g,"\u2192")+a,pos:n-e+o.length}}i(z3,"getLine");function V3(t,e){return un.repeat(" ",e-t.length)+t}i(V3,"padStart");function Sat(t,e){if(e=Object.create(e||null),!t.buffer)return null;e.maxLength||(e.maxLength=79),typeof e.indent!="number"&&(e.indent=1),typeof e.linesBefore!="number"&&(e.linesBefore=3),typeof e.linesAfter!="number"&&(e.linesAfter=2);for(var r=/\r?\n|\r|\0/g,n=[0],s=[],o,a=-1;o=r.exec(t.buffer);)s.push(o.index),n.push(o.index+o[0].length),t.position<=o.index&&a<0&&(a=n.length-2);a<0&&(a=n.length-1);var c="",l,u,d=Math.min(t.line+e.linesAfter,s.length).toString().length,p=e.maxLength-(e.indent+d+3);for(l=1;l<=e.linesBefore&&!(a-l<0);l++)u=z3(t.buffer,n[a-l],s[a-l],t.position-(n[a]-n[a-l]),p),c=un.repeat(" ",e.indent)+V3((t.line-l+1).toString(),d)+" | "+u.str+` +`+c;for(u=z3(t.buffer,n[a],s[a],t.position,p),c+=un.repeat(" ",e.indent)+V3((t.line+1).toString(),d)+" | "+u.str+` +`,c+=un.repeat("-",e.indent+d+3+u.pos)+`^ +`,l=1;l<=e.linesAfter&&!(a+l>=s.length);l++)u=z3(t.buffer,n[a+l],s[a+l],t.position-(n[a]-n[a+l]),p),c+=un.repeat(" ",e.indent)+V3((t.line+l+1).toString(),d)+" | "+u.str+` +`;return c.replace(/\n$/,"")}i(Sat,"makeSnippet");var Bat=Sat,Rat=["kind","multi","resolve","construct","instanceOf","predicate","represent","representName","defaultStyle","styleAliases"],Nat=["scalar","sequence","mapping"];function Tat(t){var e={};return t!==null&&Object.keys(t).forEach(function(r){t[r].forEach(function(n){e[String(n)]=r})}),e}i(Tat,"compileStyleAliases");function Pat(t,e){if(e=e||{},Object.keys(e).forEach(function(r){if(Rat.indexOf(r)===-1)throw new ro('Unknown option "'+r+'" is met in definition of "'+t+'" YAML type.')}),this.options=e,this.tag=t,this.kind=e.kind||null,this.resolve=e.resolve||function(){return!0},this.construct=e.construct||function(r){return r},this.instanceOf=e.instanceOf||null,this.predicate=e.predicate||null,this.represent=e.represent||null,this.representName=e.representName||null,this.defaultStyle=e.defaultStyle||null,this.multi=e.multi||!1,this.styleAliases=Tat(e.styleAliases||null),Nat.indexOf(this.kind)===-1)throw new ro('Unknown kind "'+this.kind+'" is specified for "'+t+'" YAML type.')}i(Pat,"Type$1");var Wn=Pat;function dhe(t,e){var r=[];return t[e].forEach(function(n){var s=r.length;r.forEach(function(o,a){o.tag===n.tag&&o.kind===n.kind&&o.multi===n.multi&&(s=a)}),r[s]=n}),r}i(dhe,"compileList");function vat(){var t={scalar:{},sequence:{},mapping:{},fallback:{},multi:{scalar:[],sequence:[],mapping:[],fallback:[]}},e,r;function n(s){s.multi?(t.multi[s.kind].push(s),t.multi.fallback.push(s)):t[s.kind][s.tag]=t.fallback[s.tag]=s}for(i(n,"collectType"),e=0,r=arguments.length;e=0?"0b"+t.toString(2):"-0b"+t.toString(2).slice(1)},"binary"),octal:i(function(t){return t>=0?"0o"+t.toString(8):"-0o"+t.toString(8).slice(1)},"octal"),decimal:i(function(t){return t.toString(10)},"decimal"),hexadecimal:i(function(t){return t>=0?"0x"+t.toString(16).toUpperCase():"-0x"+t.toString(16).toUpperCase().slice(1)},"hexadecimal")},defaultStyle:"decimal",styleAliases:{binary:[2,"bin"],octal:[8,"oct"],decimal:[10,"dec"],hexadecimal:[16,"hex"]}}),Xat=new RegExp("^(?:[-+]?(?:[0-9][0-9_]*)(?:\\.[0-9_]*)?(?:[eE][-+]?[0-9]+)?|\\.[0-9_]+(?:[eE][-+]?[0-9]+)?|[-+]?\\.(?:inf|Inf|INF)|\\.(?:nan|NaN|NAN))$");function Zat(t){return!(t===null||!Xat.test(t)||t[t.length-1]==="_")}i(Zat,"resolveYamlFloat");function ect(t){var e,r;return e=t.replace(/_/g,"").toLowerCase(),r=e[0]==="-"?-1:1,"+-".indexOf(e[0])>=0&&(e=e.slice(1)),e===".inf"?r===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:e===".nan"?NaN:r*parseFloat(e,10)}i(ect,"constructYamlFloat");var tct=/^[-+]?[0-9]+e/;function rct(t,e){var r;if(isNaN(t))switch(e){case"lowercase":return".nan";case"uppercase":return".NAN";case"camelcase":return".NaN"}else if(Number.POSITIVE_INFINITY===t)switch(e){case"lowercase":return".inf";case"uppercase":return".INF";case"camelcase":return".Inf"}else if(Number.NEGATIVE_INFINITY===t)switch(e){case"lowercase":return"-.inf";case"uppercase":return"-.INF";case"camelcase":return"-.Inf"}else if(un.isNegativeZero(t))return"-0.0";return r=t.toString(10),tct.test(r)?r.replace("e",".e"):r}i(rct,"representYamlFloat");function nct(t){return Object.prototype.toString.call(t)==="[object Number]"&&(t%1!==0||un.isNegativeZero(t))}i(nct,"isFloat");var sct=new Wn("tag:yaml.org,2002:float",{kind:"scalar",resolve:Zat,construct:ect,predicate:nct,represent:rct,defaultStyle:"lowercase"}),oct=Lat.extend({implicit:[Uat,Hat,Kat,sct]}),ict=oct,Nhe=new RegExp("^([0-9][0-9][0-9][0-9])-([0-9][0-9])-([0-9][0-9])$"),The=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 act(t){return t===null?!1:Nhe.exec(t)!==null||The.exec(t)!==null}i(act,"resolveYamlTimestamp");function cct(t){var e,r,n,s,o,a,c,l=0,u=null,d,p,m;if(e=Nhe.exec(t),e===null&&(e=The.exec(t)),e===null)throw new Error("Date resolve error");if(r=+e[1],n=+e[2]-1,s=+e[3],!e[4])return new Date(Date.UTC(r,n,s));if(o=+e[4],a=+e[5],c=+e[6],e[7]){for(l=e[7].slice(0,3);l.length<3;)l+="0";l=+l}return e[9]&&(d=+e[10],p=+(e[11]||0),u=(d*60+p)*6e4,e[9]==="-"&&(u=-u)),m=new Date(Date.UTC(r,n,s,o,a,c,l)),u&&m.setTime(m.getTime()-u),m}i(cct,"constructYamlTimestamp");function lct(t){return t.toISOString()}i(lct,"representYamlTimestamp");var uct=new Wn("tag:yaml.org,2002:timestamp",{kind:"scalar",resolve:act,construct:cct,instanceOf:Date,represent:lct});function dct(t){return t==="<<"||t===null}i(dct,"resolveYamlMerge");var pct=new Wn("tag:yaml.org,2002:merge",{kind:"scalar",resolve:dct}),Z3=`ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/= +\r`;function mct(t){if(t===null)return!1;var e,r,n=0,s=t.length,o=Z3;for(r=0;r64)){if(e<0)return!1;n+=6}return n%8===0}i(mct,"resolveYamlBinary");function fct(t){var e,r,n=t.replace(/[\r\n=]/g,""),s=n.length,o=Z3,a=0,c=[];for(e=0;e>16&255),c.push(a>>8&255),c.push(a&255)),a=a<<6|o.indexOf(n.charAt(e));return r=s%4*6,r===0?(c.push(a>>16&255),c.push(a>>8&255),c.push(a&255)):r===18?(c.push(a>>10&255),c.push(a>>2&255)):r===12&&c.push(a>>4&255),new Uint8Array(c)}i(fct,"constructYamlBinary");function Act(t){var e="",r=0,n,s,o=t.length,a=Z3;for(n=0;n>18&63],e+=a[r>>12&63],e+=a[r>>6&63],e+=a[r&63]),r=(r<<8)+t[n];return s=o%3,s===0?(e+=a[r>>18&63],e+=a[r>>12&63],e+=a[r>>6&63],e+=a[r&63]):s===2?(e+=a[r>>10&63],e+=a[r>>4&63],e+=a[r<<2&63],e+=a[64]):s===1&&(e+=a[r>>2&63],e+=a[r<<4&63],e+=a[64],e+=a[64]),e}i(Act,"representYamlBinary");function hct(t){return Object.prototype.toString.call(t)==="[object Uint8Array]"}i(hct,"isBinary");var gct=new Wn("tag:yaml.org,2002:binary",{kind:"scalar",resolve:mct,construct:fct,predicate:hct,represent:Act}),yct=Object.prototype.hasOwnProperty,Ect=Object.prototype.toString;function Cct(t){if(t===null)return!0;var e=[],r,n,s,o,a,c=t;for(r=0,n=c.length;r>10)+55296,(t-65536&1023)+56320)}i(Mct,"charFromCodepoint");function khe(t,e,r){e==="__proto__"?Object.defineProperty(t,e,{configurable:!0,enumerable:!0,writable:!0,value:r}):t[e]=r}i(khe,"setProperty");var Lhe=new Array(256),Ohe=new Array(256);for(jm=0;jm<256;jm++)Lhe[jm]=fhe(jm)?1:0,Ohe[jm]=fhe(jm);var jm;function Fct(t,e){this.input=t,this.filename=e.filename||null,this.schema=e.schema||Phe,this.onWarning=e.onWarning||null,this.legacy=e.legacy||!1,this.json=e.json||!1,this.listener=e.listener||null,this.implicitTypes=this.schema.compiledImplicit,this.typeMap=this.schema.compiledTypeMap,this.length=t.length,this.position=0,this.line=0,this.lineStart=0,this.lineIndent=0,this.firstTabInLine=-1,this.documents=[]}i(Fct,"State$1");function Mhe(t,e){var r={name:t.filename,buffer:t.input.slice(0,-1),position:t.position,line:t.line,column:t.position-t.lineStart};return r.snippet=Bat(r),new ro(e,r)}i(Mhe,"generateError");function Se(t,e){throw Mhe(t,e)}i(Se,"throwError");function _T(t,e){t.onWarning&&t.onWarning.call(null,Mhe(t,e))}i(_T,"throwWarning");var Ahe={YAML:i(function(e,r,n){var s,o,a;e.version!==null&&Se(e,"duplication of %YAML directive"),n.length!==1&&Se(e,"YAML directive accepts exactly one argument"),s=/^([0-9]+)\.([0-9]+)$/.exec(n[0]),s===null&&Se(e,"ill-formed argument of the YAML directive"),o=parseInt(s[1],10),a=parseInt(s[2],10),o!==1&&Se(e,"unacceptable YAML version of the document"),e.version=n[0],e.checkLineBreaks=a<2,a!==1&&a!==2&&_T(e,"unsupported YAML version of the document")},"handleYamlDirective"),TAG:i(function(e,r,n){var s,o;n.length!==2&&Se(e,"TAG directive accepts exactly two arguments"),s=n[0],o=n[1],Qhe.test(s)||Se(e,"ill-formed tag handle (first argument) of the TAG directive"),Od.call(e.tagMap,s)&&Se(e,'there is a previously declared suffix for "'+s+'" tag handle'),Dhe.test(o)||Se(e,"ill-formed tag prefix (second argument) of the TAG directive");try{o=decodeURIComponent(o)}catch{Se(e,"tag prefix is malformed: "+o)}e.tagMap[s]=o},"handleTagDirective")};function Ld(t,e,r,n){var s,o,a,c;if(e1&&(t.result+=un.repeat(` +`,e-1))}i(tV,"writeFoldedLines");function Uct(t,e,r){var n,s,o,a,c,l,u,d,p=t.kind,m=t.result,f;if(f=t.input.charCodeAt(t.position),no(f)||dg(f)||f===35||f===38||f===42||f===33||f===124||f===62||f===39||f===34||f===37||f===64||f===96||(f===63||f===45)&&(s=t.input.charCodeAt(t.position+1),no(s)||r&&dg(s)))return!1;for(t.kind="scalar",t.result="",o=a=t.position,c=!1;f!==0;){if(f===58){if(s=t.input.charCodeAt(t.position+1),no(s)||r&&dg(s))break}else if(f===35){if(n=t.input.charCodeAt(t.position-1),no(n))break}else{if(t.position===t.lineStart&&kT(t)||r&&dg(f))break;if(Lc(f))if(l=t.line,u=t.lineStart,d=t.lineIndent,Jr(t,!1,-1),t.lineIndent>=e){c=!0,f=t.input.charCodeAt(t.position);continue}else{t.position=a,t.line=l,t.lineStart=u,t.lineIndent=d;break}}c&&(Ld(t,o,a,!1),tV(t,t.line-l),o=a=t.position,c=!1),Jm(f)||(a=t.position+1),f=t.input.charCodeAt(++t.position)}return Ld(t,o,a,!1),t.result?!0:(t.kind=p,t.result=m,!1)}i(Uct,"readPlainScalar");function qct(t,e){var r,n,s;if(r=t.input.charCodeAt(t.position),r!==39)return!1;for(t.kind="scalar",t.result="",t.position++,n=s=t.position;(r=t.input.charCodeAt(t.position))!==0;)if(r===39)if(Ld(t,n,t.position,!0),r=t.input.charCodeAt(++t.position),r===39)n=t.position,t.position++,s=t.position;else return!0;else Lc(r)?(Ld(t,n,s,!0),tV(t,Jr(t,!1,e)),n=s=t.position):t.position===t.lineStart&&kT(t)?Se(t,"unexpected end of the document within a single quoted scalar"):(t.position++,s=t.position);Se(t,"unexpected end of the stream within a single quoted scalar")}i(qct,"readSingleQuotedScalar");function $ct(t,e){var r,n,s,o,a,c;if(c=t.input.charCodeAt(t.position),c!==34)return!1;for(t.kind="scalar",t.result="",t.position++,r=n=t.position;(c=t.input.charCodeAt(t.position))!==0;){if(c===34)return Ld(t,r,t.position,!0),t.position++,!0;if(c===92){if(Ld(t,r,t.position,!0),c=t.input.charCodeAt(++t.position),Lc(c))Jr(t,!1,e);else if(c<256&&Lhe[c])t.result+=Ohe[c],t.position++;else if((a=Lct(c))>0){for(s=a,o=0;s>0;s--)c=t.input.charCodeAt(++t.position),(a=kct(c))>=0?o=(o<<4)+a:Se(t,"expected hexadecimal character");t.result+=Mct(o),t.position++}else Se(t,"unknown escape sequence");r=n=t.position}else Lc(c)?(Ld(t,r,n,!0),tV(t,Jr(t,!1,e)),r=n=t.position):t.position===t.lineStart&&kT(t)?Se(t,"unexpected end of the document within a double quoted scalar"):(t.position++,n=t.position)}Se(t,"unexpected end of the stream within a double quoted scalar")}i($ct,"readDoubleQuotedScalar");function Gct(t,e){var r=!0,n,s,o,a=t.tag,c,l=t.anchor,u,d,p,m,f,g=Object.create(null),E,x,w,S;if(S=t.input.charCodeAt(t.position),S===91)d=93,f=!1,c=[];else if(S===123)d=125,f=!0,c={};else return!1;for(t.anchor!==null&&(t.anchorMap[t.anchor]=c),S=t.input.charCodeAt(++t.position);S!==0;){if(Jr(t,!0,e),S=t.input.charCodeAt(t.position),S===d)return t.position++,t.tag=a,t.anchor=l,t.kind=f?"mapping":"sequence",t.result=c,!0;r?S===44&&Se(t,"expected the node content, but found ','"):Se(t,"missed comma between flow collection entries"),x=E=w=null,p=m=!1,S===63&&(u=t.input.charCodeAt(t.position+1),no(u)&&(p=m=!0,t.position++,Jr(t,!0,e))),n=t.line,s=t.lineStart,o=t.position,mg(t,e,PT,!1,!0),x=t.tag,E=t.result,Jr(t,!0,e),S=t.input.charCodeAt(t.position),(m||t.line===n)&&S===58&&(p=!0,S=t.input.charCodeAt(++t.position),Jr(t,!0,e),mg(t,e,PT,!1,!0),w=t.result),f?pg(t,c,g,x,E,w,n,s,o):p?c.push(pg(t,null,g,x,E,w,n,s,o)):c.push(E),Jr(t,!0,e),S=t.input.charCodeAt(t.position),S===44?(r=!0,S=t.input.charCodeAt(++t.position)):r=!1}Se(t,"unexpected end of the stream within a flow collection")}i(Gct,"readFlowCollection");function Hct(t,e){var r,n,s=Y3,o=!1,a=!1,c=e,l=0,u=!1,d,p;if(p=t.input.charCodeAt(t.position),p===124)n=!1;else if(p===62)n=!0;else return!1;for(t.kind="scalar",t.result="";p!==0;)if(p=t.input.charCodeAt(++t.position),p===43||p===45)Y3===s?s=p===43?phe:vct:Se(t,"repeat of a chomping mode identifier");else if((d=Oct(p))>=0)d===0?Se(t,"bad explicit indentation width of a block scalar; it cannot be less than one"):a?Se(t,"repeat of an indentation width identifier"):(c=e+d-1,a=!0);else break;if(Jm(p)){do p=t.input.charCodeAt(++t.position);while(Jm(p));if(p===35)do p=t.input.charCodeAt(++t.position);while(!Lc(p)&&p!==0)}for(;p!==0;){for(eV(t),t.lineIndent=0,p=t.input.charCodeAt(t.position);(!a||t.lineIndentc&&(c=t.lineIndent),Lc(p)){l++;continue}if(t.lineIndente)&&l!==0)Se(t,"bad indentation of a sequence entry");else if(t.lineIndente)&&(x&&(a=t.line,c=t.lineStart,l=t.position),mg(t,e,vT,!0,s)&&(x?g=t.result:E=t.result),x||(pg(t,p,m,f,g,E,a,c,l),f=g=E=null),Jr(t,!0,-1),S=t.input.charCodeAt(t.position)),(t.line===o||t.lineIndent>e)&&S!==0)Se(t,"bad indentation of a mapping entry");else if(t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndente?l=1:t.lineIndent===e?l=0:t.lineIndent tag; it should be "scalar", not "'+t.kind+'"'),p=0,m=t.implicitTypes.length;p"),t.result!==null&&g.kind!==t.kind&&Se(t,"unacceptable node kind for !<"+t.tag+'> tag; it should be "'+g.kind+'", not "'+t.kind+'"'),g.resolve(t.result,t.tag)?(t.result=g.construct(t.result,t.tag),t.anchor!==null&&(t.anchorMap[t.anchor]=t.result)):Se(t,"cannot resolve a node with !<"+t.tag+"> explicit tag")}return t.listener!==null&&t.listener("close",t),t.tag!==null||t.anchor!==null||d}i(mg,"composeNode");function jct(t){var e=t.position,r,n,s,o=!1,a;for(t.version=null,t.checkLineBreaks=t.legacy,t.tagMap=Object.create(null),t.anchorMap=Object.create(null);(a=t.input.charCodeAt(t.position))!==0&&(Jr(t,!0,-1),a=t.input.charCodeAt(t.position),!(t.lineIndent>0||a!==37));){for(o=!0,a=t.input.charCodeAt(++t.position),r=t.position;a!==0&&!no(a);)a=t.input.charCodeAt(++t.position);for(n=t.input.slice(r,t.position),s=[],n.length<1&&Se(t,"directive name must not be less than one character in length");a!==0;){for(;Jm(a);)a=t.input.charCodeAt(++t.position);if(a===35){do a=t.input.charCodeAt(++t.position);while(a!==0&&!Lc(a));break}if(Lc(a))break;for(r=t.position;a!==0&&!no(a);)a=t.input.charCodeAt(++t.position);s.push(t.input.slice(r,t.position))}a!==0&&eV(t),Od.call(Ahe,n)?Ahe[n](t,n,s):_T(t,'unknown document directive "'+n+'"')}if(Jr(t,!0,-1),t.lineIndent===0&&t.input.charCodeAt(t.position)===45&&t.input.charCodeAt(t.position+1)===45&&t.input.charCodeAt(t.position+2)===45?(t.position+=3,Jr(t,!0,-1)):o&&Se(t,"directives end mark is expected"),mg(t,t.lineIndent-1,vT,!1,!0),Jr(t,!0,-1),t.checkLineBreaks&&Qct.test(t.input.slice(e,t.position))&&_T(t,"non-ASCII line breaks are interpreted as content"),t.documents.push(t.result),t.position===t.lineStart&&kT(t)){t.input.charCodeAt(t.position)===46&&(t.position+=3,Jr(t,!0,-1));return}if(t.position"u"&&(r=e,e=null);var n=Fhe(t,r);if(typeof e!="function")return n;for(var s=0,o=n.length;s=55296&&r<=56319&&e+1=56320&&n<=57343)?(r-55296)*1024+n-56320+65536:r}i(GI,"codePointAt");function Whe(t){var e=/^\n* /;return e.test(t)}i(Whe,"needIndentIndicator");var jhe=1,K3=2,Jhe=3,Khe=4,ug=5;function Slt(t,e,r,n,s,o,a,c){var l,u=0,d=null,p=!1,m=!1,f=n!==-1,g=-1,E=wlt(GI(t,0))&&blt(GI(t,t.length-1));if(e||a)for(l=0;l=65536?l+=2:l++){if(u=GI(t,l),!YI(u))return ug;E=E&&Che(u,d,c),d=u}else{for(l=0;l=65536?l+=2:l++){if(u=GI(t,l),u===zI)p=!0,f&&(m=m||l-g-1>n&&t[g+1]!==" ",g=l);else if(!YI(u))return ug;E=E&&Che(u,d,c),d=u}m=m||f&&l-g-1>n&&t[g+1]!==" "}return!p&&!m?E&&!a&&!s(t)?jhe:o===VI?ug:K3:r>9&&Whe(t)?ug:a?o===VI?ug:K3:m?Khe:Jhe}i(Slt,"chooseScalarStyle");function Blt(t,e,r,n,s){t.dump=(function(){if(e.length===0)return t.quotingType===VI?'""':"''";if(!t.noCompatMode&&(hlt.indexOf(e)!==-1||glt.test(e)))return t.quotingType===VI?'"'+e+'"':"'"+e+"'";var o=t.indent*Math.max(1,r),a=t.lineWidth===-1?-1:Math.max(Math.min(t.lineWidth,40),t.lineWidth-o),c=n||t.flowLevel>-1&&r>=t.flowLevel;function l(u){return xlt(t,u)}switch(i(l,"testAmbiguity"),Slt(e,c,t.indent,a,l,t.quotingType,t.forceQuotes&&!n,s)){case jhe:return e;case K3:return"'"+e.replace(/'/g,"''")+"'";case Jhe:return"|"+Ihe(e,t.indent)+xhe(yhe(e,o));case Khe:return">"+Ihe(e,t.indent)+xhe(yhe(Rlt(e,a),o));case ug:return'"'+Nlt(e)+'"';default:throw new ro("impossible error: invalid scalar style")}})()}i(Blt,"writeScalar");function Ihe(t,e){var r=Whe(t)?String(e):"",n=t[t.length-1]===` `,s=n&&(t[t.length-2]===` `||t===` `),o=s?"+":n?"":"-";return r+o+` -`}function Ihe(t){return t[t.length-1]===` -`?t.slice(0,-1):t}function Slt(t,e){for(var r=/(\n+)([^\n]*)/g,n=(function(){var l=t.indexOf(` -`);return l=l!==-1?l:t.length,r.lastIndex=l,xhe(t.slice(0,l),e)})(),s=t[0]===` -`||t[0]===" ",o,i;i=r.exec(t);){var a=i[1],c=i[2];o=c[0]===" ",n+=a+(!s&&!o&&c!==""?` -`:"")+xhe(c,e),s=o}return n}function xhe(t,e){if(t===""||t[0]===" ")return t;for(var r=/ [^ ]/g,n,s=0,o,i=0,a=0,c="";n=r.exec(t);)a=n.index,a-s>e&&(o=i>s?i:a,c+=` -`+t.slice(s,o),s=o+1),i=a;return c+=` -`,t.length-s>e&&i>s?c+=t.slice(s,i)+` -`+t.slice(i+1):c+=t.slice(s),c.slice(1)}function Blt(t){for(var e="",r=0,n,s=0;s=65536?s+=2:s++)r=qI(t,s),n=Wn[r],!n&&zI(r)?(e+=t[s],r>=65536&&(e+=t[s+1])):e+=n||glt(r);return e}function Rlt(t,e,r){var n="",s=t.tag,o,i,a;for(o=0,i=r.length;o"u"&&cu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=s,t.dump="["+n+"]"}function whe(t,e,r,n){var s="",o=t.tag,i,a,c;for(i=0,a=r.length;i"u"&&cu(t,e+1,null,!0,!0,!1,!0))&&((!n||s!=="")&&(s+=j3(t,e)),t.dump&&GI===t.dump.charCodeAt(0)?s+="-":s+="- ",s+=t.dump);t.tag=o,t.dump=s||"[]"}function Nlt(t,e,r){var n="",s=t.tag,o=Object.keys(r),i,a,c,l,u;for(i=0,a=o.length;i1024&&(u+="? "),u+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),cu(t,e,l,!1,!1)&&(u+=t.dump,n+=u));t.tag=s,t.dump="{"+n+"}"}function Tlt(t,e,r,n){var s="",o=t.tag,i=Object.keys(r),a,c,l,u,d,p;if(t.sortKeys===!0)i.sort();else if(typeof t.sortKeys=="function")i.sort(t.sortKeys);else if(t.sortKeys)throw new to("sortKeys must be a boolean or a function");for(a=0,c=i.length;a1024,d&&(t.dump&&GI===t.dump.charCodeAt(0)?p+="?":p+="? "),p+=t.dump,d&&(p+=j3(t,e)),cu(t,e+1,u,!0,d)&&(t.dump&&GI===t.dump.charCodeAt(0)?p+=":":p+=": ",p+=t.dump,s+=p));t.tag=o,t.dump=s||"{}"}function bhe(t,e,r){var n,s,o,i,a,c;for(s=r?t.explicitTypes:t.implicitTypes,o=0,i=s.length;o tag resolver accepts not "'+c+'" style');t.dump=n}return!0}return!1}function cu(t,e,r,n,s,o,i){t.tag=null,t.dump=r,bhe(t,r,!1)||bhe(t,r,!0);var a=Uhe.call(t.dump),c=n,l;n&&(n=t.flowLevel<0||t.flowLevel>e);var u=a==="[object Object]"||a==="[object Array]",d,p;if(u&&(d=t.duplicates.indexOf(r),p=d!==-1),(t.tag!==null&&t.tag!=="?"||p||t.indent!==2&&e>0)&&(s=!1),p&&t.usedDuplicates[d])t.dump="*ref_"+d;else{if(u&&p&&!t.usedDuplicates[d]&&(t.usedDuplicates[d]=!0),a==="[object Object]")n&&Object.keys(t.dump).length!==0?(Tlt(t,e,t.dump,s),p&&(t.dump="&ref_"+d+t.dump)):(Nlt(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(a==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!i&&e>0?whe(t,e-1,t.dump,s):whe(t,e,t.dump,s),p&&(t.dump="&ref_"+d+t.dump)):(Rlt(t,e,t.dump),p&&(t.dump="&ref_"+d+" "+t.dump));else if(a==="[object String]")t.tag!=="?"&&blt(t,t.dump,e,o,c);else{if(a==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new to("unacceptable kind of an object to dump "+a)}t.tag!==null&&t.tag!=="?"&&(l=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?l="!"+l:l.slice(0,18)==="tag:yaml.org,2002:"?l="!!"+l.slice(18):l="!<"+l+">",t.dump=l+" "+t.dump)}return!0}function Plt(t,e){var r=[],n=[],s,o;for(K3(t,r,n),s=0,o=n.length;s0){let n=r[0].toLowerCase();if(n=n.slice(0,n.lastIndexOf("://")),!(n in t.supportedProtos))throw new Error(`Invalid protocol: ${n}`);return t.fromURL(new URL(e))}throw new Error("Unknown protocol")}static fromURL(e){let r=new URL(e.toString());r.hash="";let n;return(e.username||e.password)&&(n={username:e.username,password:e.password,passwordSet:e.password!==""}),{scheme:e.protocol.slice(0,-1),user:n,host:`${e.hostname}${e.port?":"+e.port:""}`,path:e.pathname,fragment:t.splitGitFragment(e.hash),remote:r.toString()}}static splitGitFragment(e){if(e==="")return;let[r,n]=e.slice(1).split(":");return{ref:r,subdir:n}}static parseRef(e){let r={},n;if(e.startsWith("./")||e.startsWith("../"))throw new Error("Invalid argument");if(e.startsWith("github.com/"))r.indistinguishableFromLocal=!0,n=t.fromURL(new URL("https://"+e));else if(n=t.parseURL(e),["http","git"].includes(n.scheme)&&(r.unencryptedTCP=!0),["http","https"].includes(n.scheme)&&!n.path.endsWith(".git"))throw new Error("Invalid argument");r.remote=n.remote,r.indistinguishableFromLocal&&(r.remote=r.remote.split("://")[1]),n.fragment&&(r.commit=n.fragment.ref,r.subDir=n.fragment.subdir);let s=r.remote.split("/");return r.shortName=s[s.length-1].replace(".git",""),r}};var S4=Q(require("fs"),1),cIe=Q(require("os"),1),px=Q(require("path"),1);var NV=Q(require("fs"),1),aEe=Q(require("os"),1),cEe=Q(require("path"),1),lEe=Q(iEe(),1),JT=class t{static _tmpDir=NV.default.mkdtempSync(cEe.default.join(t.ensureDirExists(process.env.RUNNER_TEMP||aEe.default.tmpdir()),"docker-actions-toolkit-"));static ensureDirExists(e){return NV.default.mkdirSync(e,{recursive:!0}),e}static tmpDir(){return t._tmpDir}static tmpName(e){return lEe.tmpNameSync(e)}};var uu=class{static async exec(e,r,n){return $(`Exec.exec: ${e} ${r?.join(" ")}`),ld(e,r,n)}static async getExecOutput(e,r,n){return $(`Exec.getExecOutput: ${e} ${r?.join(" ")}`),WE(e,r,n)}};var b4=Q(require("crypto"),1),iIe=Q(require("fs"),1),dx=Q(require("path"),1),aIe=Q(ZCe(),1);var yt=class t extends Error{constructor(e,r,n,...s){Array.isArray(r)&&(r=r.join(" ").trim()),super(r),Error.captureStackTrace!==void 0&&Error.captureStackTrace(this,t),this.code=e;for(let o of s)for(let i in o){let a=o[i];this[i]=Buffer.isBuffer(a)?a.toString(n.encoding):a==null?a:JSON.parse(JSON.stringify(a))}}};var eIe=function(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)};var DP=function(t){let e=[];for(let r=0,n=t.length;r=this.size&&(this.resize(),r>=this.size))throw Error("INVALID_BUFFER_STATE");let n=this.buf;this.buf=Buffer.allocUnsafe(this.size),e.copy(this.buf,0),n.copy(this.buf,e.length),this.length+=e.length}else{let r=this.length++;r===this.size&&this.resize();let n=this.clone();this.buf[0]=e,n.copy(this.buf,1,0,r)}}append(e){let r=this.length++;r===this.size&&this.resize(),this.buf[r]=e}clone(){return Buffer.from(this.buf.slice(0,this.length))}resize(){let e=this.length;this.size=this.size*2;let r=Buffer.allocUnsafe(this.size);this.buf.copy(r,0,0,e),this.buf=r}toString(e){return e?this.buf.slice(0,this.length).toString(e):Uint8Array.prototype.slice.call(this.buf.slice(0,this.length))}toJSON(){return this.toString("utf8")}reset(){this.length=0}},x4=I4;var KAt=12,XAt=13,ZAt=10,eht=32,tht=9,tIe=function(t){return{bomSkipped:!1,bufBytesStart:0,castField:t.cast_function,commenting:!1,error:void 0,enabled:t.from_line===1,escaping:!1,escapeIsQuote:Buffer.isBuffer(t.escape)&&Buffer.isBuffer(t.quote)&&Buffer.compare(t.escape,t.quote)===0,expectedRecordLength:Array.isArray(t.columns)?t.columns.length:void 0,field:new x4(20),firstLineToHeaders:t.cast_first_line_to_header,needMoreDataSize:Math.max(t.comment!==null?t.comment.length:0,...t.delimiter.map(e=>e.length),t.quote!==null?t.quote.length:0),previousBuf:void 0,quoting:!1,stop:!1,rawBuffer:new x4(100),record:[],recordHasError:!1,record_length:0,recordDelimiterMaxLength:t.record_delimiter.length===0?0:Math.max(...t.record_delimiter.map(e=>e.length)),trimChars:[Buffer.from(" ",t.encoding)[0],Buffer.from(" ",t.encoding)[0]],wasQuoting:!1,wasRowDelimiter:!1,timchars:[Buffer.from(Buffer.from([XAt],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([ZAt],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([KAt],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([eht],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([tht],"utf8").toString(),t.encoding)]}};var rIe=function(t){return t.replace(/([A-Z])/g,function(e,r){return"_"+r.toLowerCase()})};var w4=function(t){let e={};for(let n in t)e[rIe(n)]=t[n];if(e.encoding===void 0||e.encoding===!0)e.encoding="utf8";else if(e.encoding===null||e.encoding===!1)e.encoding=null;else if(typeof e.encoding!="string"&&e.encoding!==null)throw new yt("CSV_INVALID_OPTION_ENCODING",["Invalid option encoding:","encoding must be a string or null to return a buffer,",`got ${JSON.stringify(e.encoding)}`],e);if(e.bom===void 0||e.bom===null||e.bom===!1)e.bom=!1;else if(e.bom!==!0)throw new yt("CSV_INVALID_OPTION_BOM",["Invalid option bom:","bom must be true,",`got ${JSON.stringify(e.bom)}`],e);if(e.cast_function=null,e.cast===void 0||e.cast===null||e.cast===!1||e.cast==="")e.cast=void 0;else if(typeof e.cast=="function")e.cast_function=e.cast,e.cast=!0;else if(e.cast!==!0)throw new yt("CSV_INVALID_OPTION_CAST",["Invalid option cast:","cast must be true or a function,",`got ${JSON.stringify(e.cast)}`],e);if(e.cast_date===void 0||e.cast_date===null||e.cast_date===!1||e.cast_date==="")e.cast_date=!1;else if(e.cast_date===!0)e.cast_date=function(n){let s=Date.parse(n);return isNaN(s)?n:new Date(s)};else if(typeof e.cast_date!="function")throw new yt("CSV_INVALID_OPTION_CAST_DATE",["Invalid option cast_date:","cast_date must be true or a function,",`got ${JSON.stringify(e.cast_date)}`],e);if(e.cast_first_line_to_header=void 0,e.columns===!0)e.cast_first_line_to_header=void 0;else if(typeof e.columns=="function")e.cast_first_line_to_header=e.columns,e.columns=!0;else if(Array.isArray(e.columns))e.columns=DP(e.columns);else if(e.columns===void 0||e.columns===null||e.columns===!1)e.columns=!1;else throw new yt("CSV_INVALID_OPTION_COLUMNS",["Invalid option columns:","expect an array, a function or true,",`got ${JSON.stringify(e.columns)}`],e);if(e.group_columns_by_name===void 0||e.group_columns_by_name===null||e.group_columns_by_name===!1)e.group_columns_by_name=!1;else{if(e.group_columns_by_name!==!0)throw new yt("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","expect an boolean,",`got ${JSON.stringify(e.group_columns_by_name)}`],e);if(e.columns===!1)throw new yt("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","the `columns` mode must be activated."],e)}if(e.comment===void 0||e.comment===null||e.comment===!1||e.comment==="")e.comment=null;else if(typeof e.comment=="string"&&(e.comment=Buffer.from(e.comment,e.encoding)),!Buffer.isBuffer(e.comment))throw new yt("CSV_INVALID_OPTION_COMMENT",["Invalid option comment:","comment must be a buffer or a string,",`got ${JSON.stringify(e.comment)}`],e);if(e.comment_no_infix===void 0||e.comment_no_infix===null||e.comment_no_infix===!1)e.comment_no_infix=!1;else if(e.comment_no_infix!==!0)throw new yt("CSV_INVALID_OPTION_COMMENT",["Invalid option comment_no_infix:","value must be a boolean,",`got ${JSON.stringify(e.comment_no_infix)}`],e);let r=JSON.stringify(e.delimiter);if(Array.isArray(e.delimiter)||(e.delimiter=[e.delimiter]),e.delimiter.length===0)throw new yt("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${r}`],e);if(e.delimiter=e.delimiter.map(function(n){if(n==null||n===!1)return Buffer.from(",",e.encoding);if(typeof n=="string"&&(n=Buffer.from(n,e.encoding)),!Buffer.isBuffer(n)||n.length===0)throw new yt("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${r}`],e);return n}),e.escape===void 0||e.escape===!0?e.escape=Buffer.from('"',e.encoding):typeof e.escape=="string"?e.escape=Buffer.from(e.escape,e.encoding):(e.escape===null||e.escape===!1)&&(e.escape=null),e.escape!==null&&!Buffer.isBuffer(e.escape))throw new Error(`Invalid Option: escape must be a buffer, a string or a boolean, got ${JSON.stringify(e.escape)}`);if(e.from===void 0||e.from===null)e.from=1;else if(typeof e.from=="string"&&/\d+/.test(e.from)&&(e.from=parseInt(e.from)),Number.isInteger(e.from)){if(e.from<0)throw new Error(`Invalid Option: from must be a positive integer, got ${JSON.stringify(t.from)}`)}else throw new Error(`Invalid Option: from must be an integer, got ${JSON.stringify(e.from)}`);if(e.from_line===void 0||e.from_line===null)e.from_line=1;else if(typeof e.from_line=="string"&&/\d+/.test(e.from_line)&&(e.from_line=parseInt(e.from_line)),Number.isInteger(e.from_line)){if(e.from_line<=0)throw new Error(`Invalid Option: from_line must be a positive integer greater than 0, got ${JSON.stringify(t.from_line)}`)}else throw new Error(`Invalid Option: from_line must be an integer, got ${JSON.stringify(t.from_line)}`);if(e.ignore_last_delimiters===void 0||e.ignore_last_delimiters===null)e.ignore_last_delimiters=!1;else if(typeof e.ignore_last_delimiters=="number")e.ignore_last_delimiters=Math.floor(e.ignore_last_delimiters),e.ignore_last_delimiters===0&&(e.ignore_last_delimiters=!1);else if(typeof e.ignore_last_delimiters!="boolean")throw new yt("CSV_INVALID_OPTION_IGNORE_LAST_DELIMITERS",["Invalid option `ignore_last_delimiters`:","the value must be a boolean value or an integer,",`got ${JSON.stringify(e.ignore_last_delimiters)}`],e);if(e.ignore_last_delimiters===!0&&e.columns===!1)throw new yt("CSV_IGNORE_LAST_DELIMITERS_REQUIRES_COLUMNS",["The option `ignore_last_delimiters`","requires the activation of the `columns` option"],e);if(e.info===void 0||e.info===null||e.info===!1)e.info=!1;else if(e.info!==!0)throw new Error(`Invalid Option: info must be true, got ${JSON.stringify(e.info)}`);if(e.max_record_size===void 0||e.max_record_size===null||e.max_record_size===!1)e.max_record_size=0;else if(!(Number.isInteger(e.max_record_size)&&e.max_record_size>=0))if(typeof e.max_record_size=="string"&&/\d+/.test(e.max_record_size))e.max_record_size=parseInt(e.max_record_size);else throw new Error(`Invalid Option: max_record_size must be a positive integer, got ${JSON.stringify(e.max_record_size)}`);if(e.objname===void 0||e.objname===null||e.objname===!1)e.objname=void 0;else if(Buffer.isBuffer(e.objname)){if(e.objname.length===0)throw new Error("Invalid Option: objname must be a non empty buffer");e.encoding===null||(e.objname=e.objname.toString(e.encoding))}else if(typeof e.objname=="string"){if(e.objname.length===0)throw new Error("Invalid Option: objname must be a non empty string")}else if(typeof e.objname!="number")throw new Error(`Invalid Option: objname must be a string or a buffer, got ${e.objname}`);if(e.objname!==void 0){if(typeof e.objname=="number"){if(e.columns!==!1)throw Error("Invalid Option: objname index cannot be combined with columns or be defined as a field")}else if(e.columns===!1)throw Error("Invalid Option: objname field must be combined with columns or be defined as an index")}if(e.on_record===void 0||e.on_record===null)e.on_record=void 0;else if(typeof e.on_record!="function")throw new yt("CSV_INVALID_OPTION_ON_RECORD",["Invalid option `on_record`:","expect a function,",`got ${JSON.stringify(e.on_record)}`],e);if(e.on_skip!==void 0&&e.on_skip!==null&&typeof e.on_skip!="function")throw new Error(`Invalid Option: on_skip must be a function, got ${JSON.stringify(e.on_skip)}`);if(e.quote===null||e.quote===!1||e.quote==="")e.quote=null;else if(e.quote===void 0||e.quote===!0?e.quote=Buffer.from('"',e.encoding):typeof e.quote=="string"&&(e.quote=Buffer.from(e.quote,e.encoding)),!Buffer.isBuffer(e.quote))throw new Error(`Invalid Option: quote must be a buffer or a string, got ${JSON.stringify(e.quote)}`);if(e.raw===void 0||e.raw===null||e.raw===!1)e.raw=!1;else if(e.raw!==!0)throw new Error(`Invalid Option: raw must be true, got ${JSON.stringify(e.raw)}`);if(e.record_delimiter===void 0)e.record_delimiter=[];else if(typeof e.record_delimiter=="string"||Buffer.isBuffer(e.record_delimiter)){if(e.record_delimiter.length===0)throw new yt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer,",`got ${JSON.stringify(e.record_delimiter)}`],e);e.record_delimiter=[e.record_delimiter]}else if(!Array.isArray(e.record_delimiter))throw new yt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer,",`got ${JSON.stringify(e.record_delimiter)}`],e);if(e.record_delimiter=e.record_delimiter.map(function(n,s){if(typeof n!="string"&&!Buffer.isBuffer(n))throw new yt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer",`at index ${s},`,`got ${JSON.stringify(n)}`],e);if(n.length===0)throw new yt("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer",`at index ${s},`,`got ${JSON.stringify(n)}`],e);return typeof n=="string"&&(n=Buffer.from(n,e.encoding)),n}),typeof e.relax_column_count!="boolean")if(e.relax_column_count===void 0||e.relax_column_count===null)e.relax_column_count=!1;else throw new Error(`Invalid Option: relax_column_count must be a boolean, got ${JSON.stringify(e.relax_column_count)}`);if(typeof e.relax_column_count_less!="boolean")if(e.relax_column_count_less===void 0||e.relax_column_count_less===null)e.relax_column_count_less=!1;else throw new Error(`Invalid Option: relax_column_count_less must be a boolean, got ${JSON.stringify(e.relax_column_count_less)}`);if(typeof e.relax_column_count_more!="boolean")if(e.relax_column_count_more===void 0||e.relax_column_count_more===null)e.relax_column_count_more=!1;else throw new Error(`Invalid Option: relax_column_count_more must be a boolean, got ${JSON.stringify(e.relax_column_count_more)}`);if(typeof e.relax_quotes!="boolean")if(e.relax_quotes===void 0||e.relax_quotes===null)e.relax_quotes=!1;else throw new Error(`Invalid Option: relax_quotes must be a boolean, got ${JSON.stringify(e.relax_quotes)}`);if(typeof e.skip_empty_lines!="boolean")if(e.skip_empty_lines===void 0||e.skip_empty_lines===null)e.skip_empty_lines=!1;else throw new Error(`Invalid Option: skip_empty_lines must be a boolean, got ${JSON.stringify(e.skip_empty_lines)}`);if(typeof e.skip_records_with_empty_values!="boolean")if(e.skip_records_with_empty_values===void 0||e.skip_records_with_empty_values===null)e.skip_records_with_empty_values=!1;else throw new Error(`Invalid Option: skip_records_with_empty_values must be a boolean, got ${JSON.stringify(e.skip_records_with_empty_values)}`);if(typeof e.skip_records_with_error!="boolean")if(e.skip_records_with_error===void 0||e.skip_records_with_error===null)e.skip_records_with_error=!1;else throw new Error(`Invalid Option: skip_records_with_error must be a boolean, got ${JSON.stringify(e.skip_records_with_error)}`);if(e.rtrim===void 0||e.rtrim===null||e.rtrim===!1)e.rtrim=!1;else if(e.rtrim!==!0)throw new Error(`Invalid Option: rtrim must be a boolean, got ${JSON.stringify(e.rtrim)}`);if(e.ltrim===void 0||e.ltrim===null||e.ltrim===!1)e.ltrim=!1;else if(e.ltrim!==!0)throw new Error(`Invalid Option: ltrim must be a boolean, got ${JSON.stringify(e.ltrim)}`);if(e.trim===void 0||e.trim===null||e.trim===!1)e.trim=!1;else if(e.trim!==!0)throw new Error(`Invalid Option: trim must be a boolean, got ${JSON.stringify(e.trim)}`);if(e.trim===!0&&t.ltrim!==!1?e.ltrim=!0:e.ltrim!==!0&&(e.ltrim=!1),e.trim===!0&&t.rtrim!==!1?e.rtrim=!0:e.rtrim!==!0&&(e.rtrim=!1),e.to===void 0||e.to===null)e.to=-1;else if(e.to!==-1)if(typeof e.to=="string"&&/\d+/.test(e.to)&&(e.to=parseInt(e.to)),Number.isInteger(e.to)){if(e.to<=0)throw new Error(`Invalid Option: to must be a positive integer greater than 0, got ${JSON.stringify(t.to)}`)}else throw new Error(`Invalid Option: to must be an integer, got ${JSON.stringify(t.to)}`);if(e.to_line===void 0||e.to_line===null)e.to_line=-1;else if(e.to_line!==-1)if(typeof e.to_line=="string"&&/\d+/.test(e.to_line)&&(e.to_line=parseInt(e.to_line)),Number.isInteger(e.to_line)){if(e.to_line<=0)throw new Error(`Invalid Option: to_line must be a positive integer greater than 0, got ${JSON.stringify(t.to_line)}`)}else throw new Error(`Invalid Option: to_line must be an integer, got ${JSON.stringify(t.to_line)}`);return e};var nIe=function(t){return t.every(e=>e==null||e.toString&&e.toString().trim()==="")},rht=13,nht=10,Rg={utf8:Buffer.from([239,187,191]),utf16le:Buffer.from([255,254])},sIe=function(t={}){let e={bytes:0,bytes_records:0,comment_lines:0,empty_lines:0,invalid_field_length:0,lines:1,records:0},r=w4(t);return{info:e,original_options:t,options:r,state:tIe(r),__needMoreData:function(n,s,o){if(o)return!1;let{encoding:i,escape:a,quote:c}=this.options,{quoting:l,needMoreDataSize:u,recordDelimiterMaxLength:d}=this.state,p=s-n-1,m=Math.max(u,d===0?Buffer.from(`\r -`,i).length:d,l?(a===null?0:a.length)+c.length:0,l?c.length+d:0);return pb){this.state.stop=!0,i();return}this.state.quoting===!1&&O.length===0&&this.__autoDiscoverRecordDelimiter(ne,G)&&(O=this.options.record_delimiter);let se=ne[G];if(m===!0&&De.append(se),(se===rht||se===nht)&&this.state.wasRowDelimiter===!1&&(this.state.wasRowDelimiter=!0),this.state.escaping===!0)this.state.escaping=!1;else{if(_!==null&&this.state.quoting===!0&&this.__isEscape(ne,G,se)&&G+_.lengthRg[Xo].equals(this.state.field.toString())?Xo:!1).filter(Boolean)[0],as=this.__error(new yt("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(vt.column)} at line ${vt.lines}, value is ${JSON.stringify(this.state.field.toString(l))}`,is?`(${is} bom)`:void 0],this.options,vt,{field:this.state.field}));if(as!==void 0)return as}}else{this.state.quoting=!0,G+=U.length-1;continue}if(this.state.quoting===!1){let vt=this.__isRecordDelimiter(se,ne,G);if(vt!==0){if(this.state.commenting&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0)this.info.comment_lines++;else{if(this.state.enabled===!1&&this.info.lines+(this.state.wasRowDelimiter===!0?1:0)>=u){this.state.enabled=!0,this.__resetField(),this.__resetRecord(),G+=vt-1;continue}if(I===!0&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0){this.info.empty_lines++,G+=vt-1;continue}this.info.bytes=this.state.bufBytesStart+G;let Xo=this.__onField();if(Xo!==void 0)return Xo;this.info.bytes=this.state.bufBytesStart+G+vt;let Rl=this.__onRecord(o);if(Rl!==void 0)return Rl;if(x!==-1&&this.info.records>=x){this.state.stop=!0,i();return}}this.state.commenting=!1,G+=vt-1;continue}if(this.state.commenting)continue;if(T!==null&&(c===!1||this.state.record.length===0&&this.state.field.length===0)&&this.__compareBytes(T,ne,G,se)!==0){this.state.commenting=!0;continue}let is=this.__isDelimiter(ne,G,se);if(is!==0){this.info.bytes=this.state.bufBytesStart+G;let as=this.__onField();if(as!==void 0)return as;G+=is-1;continue}}}if(this.state.commenting===!1&&p!==0&&this.state.record_length+this.state.field.length>p)return this.__error(new yt("CSV_MAX_RECORD_SIZE",["Max Record Size:","record exceed the maximum number of tolerated bytes",`of ${p}`,`at line ${this.info.lines}`],this.options,this.__infoField()));let Ct=d===!1||this.state.quoting===!0||this.state.field.length!==0||!this.__isCharTrimable(ne,G),it=y===!1||this.state.wasQuoting===!1;if(Ct===!0&&it===!0)this.state.field.append(se);else{if(y===!0&&!this.__isCharTrimable(ne,G))return this.__error(new yt("CSV_NON_TRIMABLE_CHAR_AFTER_CLOSING_QUOTE",["Invalid Closing Quote:","found non trimable byte after quote",`at line ${this.info.lines}`],this.options,this.__infoField()));Ct===!1&&(G+=this.__isCharTrimable(ne,G)-1);continue}}if(s===!0)if(this.state.quoting===!0){let se=this.__error(new yt("CSV_QUOTE_NOT_CLOSED",["Quote Not Closed:",`the parsing is finished with an opening quote at line ${this.info.lines}`],this.options,this.__infoField()));if(se!==void 0)return se}else if(this.state.wasQuoting===!0||this.state.record.length!==0||this.state.field.length!==0){this.info.bytes=this.state.bufBytesStart+G;let se=this.__onField();if(se!==void 0)return se;let Ct=this.__onRecord(o);if(Ct!==void 0)return Ct}else this.state.wasRowDelimiter===!0?this.info.empty_lines++:this.state.commenting===!0&&this.info.comment_lines++;else this.state.bufBytesStart+=G,this.state.previousBuf=ne.slice(G);this.state.wasRowDelimiter===!0&&(this.info.lines++,this.state.wasRowDelimiter=!1)},__onRecord:function(n){let{columns:s,group_columns_by_name:o,encoding:i,info:a,from:c,relax_column_count:l,relax_column_count_less:u,relax_column_count_more:d,raw:p,skip_records_with_empty_values:m}=this.options,{enabled:h,record:y}=this.state;if(h===!1)return this.__resetRecord();let I=y.length;if(s===!0){if(m===!0&&nIe(y)){this.__resetRecord();return}return this.__firstLineToColumns(y)}if(s===!1&&this.info.records===0&&(this.state.expectedRecordLength=I),I!==this.state.expectedRecordLength){let x=s===!1?new yt("CSV_RECORD_INCONSISTENT_FIELDS_LENGTH",["Invalid Record Length:",`expect ${this.state.expectedRecordLength},`,`got ${I} on line ${this.info.lines}`],this.options,this.__infoField(),{record:y}):new yt("CSV_RECORD_INCONSISTENT_COLUMNS",["Invalid Record Length:",`columns length is ${s.length},`,`got ${I} on line ${this.info.lines}`],this.options,this.__infoField(),{record:y});if(l===!0||u===!0&&Ithis.state.expectedRecordLength)this.info.invalid_field_length++,this.state.error=x;else{let b=this.__error(x);if(b)return b}}if(m===!0&&nIe(y)){this.__resetRecord();return}if(this.state.recordHasError===!0){this.__resetRecord(),this.state.recordHasError=!1;return}if(this.info.records++,c===1||this.info.records>=c){let{objname:x}=this.options;if(s!==!1){let b={};for(let T=0,_=y.length;T<_;T++)s[T]===void 0||s[T].disabled||(o===!0&&b[s[T].name]!==void 0?Array.isArray(b[s[T].name])?b[s[T].name]=b[s[T].name].concat(y[T]):b[s[T].name]=[b[s[T].name],y[T]]:b[s[T].name]=y[T]);if(p===!0||a===!0){let T=Object.assign({record:b},p===!0?{raw:this.state.rawBuffer.toString(i)}:{},a===!0?{info:this.__infoRecord()}:{}),_=this.__push(x===void 0?T:[b[x],T],n);if(_)return _}else{let T=this.__push(x===void 0?b:[b[x],b],n);if(T)return T}}else if(p===!0||a===!0){let b=Object.assign({record:y},p===!0?{raw:this.state.rawBuffer.toString(i)}:{},a===!0?{info:this.__infoRecord()}:{}),T=this.__push(x===void 0?b:[y[x],b],n);if(T)return T}else{let b=this.__push(x===void 0?y:[y[x],y],n);if(b)return b}}this.__resetRecord()},__firstLineToColumns:function(n){let{firstLineToHeaders:s}=this.state;try{let o=s===void 0?n:s.call(null,n);if(!Array.isArray(o))return this.__error(new yt("CSV_INVALID_COLUMN_MAPPING",["Invalid Column Mapping:","expect an array from column function,",`got ${JSON.stringify(o)}`],this.options,this.__infoField(),{headers:o}));let i=DP(o);this.state.expectedRecordLength=i.length,this.options.columns=i,this.__resetRecord();return}catch(o){return o}},__resetRecord:function(){this.options.raw===!0&&this.state.rawBuffer.reset(),this.state.error=void 0,this.state.record=[],this.state.record_length=0},__onField:function(){let{cast:n,encoding:s,rtrim:o,max_record_size:i}=this.options,{enabled:a,wasQuoting:c}=this.state;if(a===!1)return this.__resetField();let l=this.state.field.toString(s);if(o===!0&&c===!1&&(l=l.trimRight()),n===!0){let[u,d]=this.__cast(l);if(u!==void 0)return u;l=d}this.state.record.push(l),i!==0&&typeof l=="string"&&(this.state.record_length+=l.length),this.__resetField()},__resetField:function(){this.state.field.reset(),this.state.wasQuoting=!1},__push:function(n,s){let{on_record:o}=this.options;if(o!==void 0){let i=this.__infoRecord();try{n=o.call(null,n,i)}catch(a){return a}if(n==null)return}this.info.bytes_records+=this.info.bytes,s(n)},__cast:function(n){let{columns:s,relax_column_count:o}=this.options;if(Array.isArray(s)===!0&&o&&this.options.columns.length<=this.state.record.length)return[void 0,void 0];if(this.state.castField!==null)try{let a=this.__infoField();return[void 0,this.state.castField.call(null,n,a)]}catch(a){return[a]}if(this.__isFloat(n))return[void 0,parseFloat(n)];if(this.options.cast_date!==!1){let a=this.__infoField();return[void 0,this.options.cast_date.call(null,n,a)]}return[void 0,n]},__isCharTrimable:function(n,s){return((i,a)=>{let{timchars:c}=this.state;e:for(let l=0;l=0},__compareBytes:function(n,s,o,i){if(n[0]!==i)return 0;let a=n.length;for(let c=1;ce&&(o=a>s?a:c,l+=` +`+t.slice(s,o),s=o+1),a=c;return l+=` +`,t.length-s>e&&a>s?l+=t.slice(s,a)+` +`+t.slice(a+1):l+=t.slice(s),l.slice(1)}i(whe,"foldLine");function Nlt(t){for(var e="",r=0,n,s=0;s=65536?s+=2:s++)r=GI(t,s),n=jn[r],!n&&YI(r)?(e+=t[s],r>=65536&&(e+=t[s+1])):e+=n||Elt(r);return e}i(Nlt,"escapeString");function Tlt(t,e,r){var n="",s=t.tag,o,a,c;for(o=0,a=r.length;o"u"&&lu(t,e,null,!1,!1))&&(n!==""&&(n+=","+(t.condenseFlow?"":" ")),n+=t.dump);t.tag=s,t.dump="["+n+"]"}i(Tlt,"writeFlowSequence");function bhe(t,e,r,n){var s="",o=t.tag,a,c,l;for(a=0,c=r.length;a"u"&&lu(t,e+1,null,!0,!0,!1,!0))&&((!n||s!=="")&&(s+=J3(t,e)),t.dump&&zI===t.dump.charCodeAt(0)?s+="-":s+="- ",s+=t.dump);t.tag=o,t.dump=s||"[]"}i(bhe,"writeBlockSequence");function Plt(t,e,r){var n="",s=t.tag,o=Object.keys(r),a,c,l,u,d;for(a=0,c=o.length;a1024&&(d+="? "),d+=t.dump+(t.condenseFlow?'"':"")+":"+(t.condenseFlow?"":" "),lu(t,e,u,!1,!1)&&(d+=t.dump,n+=d));t.tag=s,t.dump="{"+n+"}"}i(Plt,"writeFlowMapping");function vlt(t,e,r,n){var s="",o=t.tag,a=Object.keys(r),c,l,u,d,p,m;if(t.sortKeys===!0)a.sort();else if(typeof t.sortKeys=="function")a.sort(t.sortKeys);else if(t.sortKeys)throw new ro("sortKeys must be a boolean or a function");for(c=0,l=a.length;c1024,p&&(t.dump&&zI===t.dump.charCodeAt(0)?m+="?":m+="? "),m+=t.dump,p&&(m+=J3(t,e)),lu(t,e+1,d,!0,p)&&(t.dump&&zI===t.dump.charCodeAt(0)?m+=":":m+=": ",m+=t.dump,s+=m));t.tag=o,t.dump=s||"{}"}i(vlt,"writeBlockMapping");function She(t,e,r){var n,s,o,a,c,l;for(s=r?t.explicitTypes:t.implicitTypes,o=0,a=s.length;o tag resolver accepts not "'+l+'" style');t.dump=n}return!0}return!1}i(She,"detectType");function lu(t,e,r,n,s,o,a){t.tag=null,t.dump=r,She(t,r,!1)||She(t,r,!0);var c=qhe.call(t.dump),l=n,u;n&&(n=t.flowLevel<0||t.flowLevel>e);var d=c==="[object Object]"||c==="[object Array]",p,m;if(d&&(p=t.duplicates.indexOf(r),m=p!==-1),(t.tag!==null&&t.tag!=="?"||m||t.indent!==2&&e>0)&&(s=!1),m&&t.usedDuplicates[p])t.dump="*ref_"+p;else{if(d&&m&&!t.usedDuplicates[p]&&(t.usedDuplicates[p]=!0),c==="[object Object]")n&&Object.keys(t.dump).length!==0?(vlt(t,e,t.dump,s),m&&(t.dump="&ref_"+p+t.dump)):(Plt(t,e,t.dump),m&&(t.dump="&ref_"+p+" "+t.dump));else if(c==="[object Array]")n&&t.dump.length!==0?(t.noArrayIndent&&!a&&e>0?bhe(t,e-1,t.dump,s):bhe(t,e,t.dump,s),m&&(t.dump="&ref_"+p+t.dump)):(Tlt(t,e,t.dump),m&&(t.dump="&ref_"+p+" "+t.dump));else if(c==="[object String]")t.tag!=="?"&&Blt(t,t.dump,e,o,l);else{if(c==="[object Undefined]")return!1;if(t.skipInvalid)return!1;throw new ro("unacceptable kind of an object to dump "+c)}t.tag!==null&&t.tag!=="?"&&(u=encodeURI(t.tag[0]==="!"?t.tag.slice(1):t.tag).replace(/!/g,"%21"),t.tag[0]==="!"?u="!"+u:u.slice(0,18)==="tag:yaml.org,2002:"?u="!!"+u.slice(18):u="!<"+u+">",t.dump=u+" "+t.dump)}return!0}i(lu,"writeNode");function _lt(t,e){var r=[],n=[],s,o;for(X3(t,r,n),s=0,o=n.length;s0){let n=r[0].toLowerCase();if(n=n.slice(0,n.lastIndexOf("://")),!(n in t.supportedProtos))throw new Error(`Invalid protocol: ${n}`);return t.fromURL(new URL(e))}throw new Error("Unknown protocol")}static fromURL(e){let r=new URL(e.toString());r.hash="";let n;return(e.username||e.password)&&(n={username:e.username,password:e.password,passwordSet:e.password!==""}),{scheme:e.protocol.slice(0,-1),user:n,host:`${e.hostname}${e.port?":"+e.port:""}`,path:e.pathname,fragment:t.splitGitFragment(e.hash),remote:r.toString()}}static splitGitFragment(e){if(e==="")return;let[r,n]=e.slice(1).split(":");return{ref:r,subdir:n}}static parseRef(e){let r={},n;if(e.startsWith("./")||e.startsWith("../"))throw new Error("Invalid argument");if(e.startsWith("github.com/"))r.indistinguishableFromLocal=!0,n=t.fromURL(new URL("https://"+e));else if(n=t.parseURL(e),["http","git"].includes(n.scheme)&&(r.unencryptedTCP=!0),["http","https"].includes(n.scheme)&&!n.path.endsWith(".git"))throw new Error("Invalid argument");r.remote=n.remote,r.indistinguishableFromLocal&&(r.remote=r.remote.split("://")[1]),n.fragment&&(r.commit=n.fragment.ref,r.subDir=n.fragment.subdir);let s=r.remote.split("/");return r.shortName=s[s.length-1].replace(".git",""),r}};var B4=D(require("fs"),1),lIe=D(require("os"),1),fx=D(require("path"),1);var TV=D(require("fs"),1),cEe=D(require("os"),1),lEe=D(require("path"),1),uEe=D(aEe(),1);var KT=class t{static{i(this,"Context")}static _tmpDir=TV.default.mkdtempSync(lEe.default.join(t.ensureDirExists(process.env.RUNNER_TEMP||cEe.default.tmpdir()),"docker-actions-toolkit-"));static ensureDirExists(e){return TV.default.mkdirSync(e,{recursive:!0}),e}static tmpDir(){return t._tmpDir}static tmpName(e){return uEe.tmpNameSync(e)}};var du=class{static{i(this,"Exec")}static async exec(e,r,n){return G(`Exec.exec: ${e} ${r?.join(" ")}`),ud(e,r,n)}static async getExecOutput(e,r,n){return G(`Exec.getExecOutput: ${e} ${r?.join(" ")}`),JE(e,r,n)}};var S4=D(require("crypto"),1),aIe=D(require("fs"),1),mx=D(require("path"),1),cIe=D(eIe(),1);var Et=class t extends Error{static{i(this,"CsvError")}constructor(e,r,n,...s){Array.isArray(r)&&(r=r.join(" ").trim()),super(r),Error.captureStackTrace!==void 0&&Error.captureStackTrace(this,t),this.code=e;for(let o of s)for(let a in o){let c=o[a];this[a]=Buffer.isBuffer(c)?c.toString(n.encoding):c==null?c:JSON.parse(JSON.stringify(c))}}};var tIe=i(function(t){return typeof t=="object"&&t!==null&&!Array.isArray(t)},"is_object");var kP=i(function(t){let e=[];for(let r=0,n=t.length;r=this.size&&(this.resize(),r>=this.size))throw Error("INVALID_BUFFER_STATE");let n=this.buf;this.buf=Buffer.allocUnsafe(this.size),e.copy(this.buf,0),n.copy(this.buf,e.length),this.length+=e.length}else{let r=this.length++;r===this.size&&this.resize();let n=this.clone();this.buf[0]=e,n.copy(this.buf,1,0,r)}}append(e){let r=this.length++;r===this.size&&this.resize(),this.buf[r]=e}clone(){return Buffer.from(this.buf.slice(0,this.length))}resize(){let e=this.length;this.size=this.size*2;let r=Buffer.allocUnsafe(this.size);this.buf.copy(r,0,0,e),this.buf=r}toString(e){return e?this.buf.slice(0,this.length).toString(e):Uint8Array.prototype.slice.call(this.buf.slice(0,this.length))}toJSON(){return this.toString("utf8")}reset(){this.length=0}},w4=x4;var ZAt=12,eht=13,tht=10,rht=32,nht=9,rIe=i(function(t){return{bomSkipped:!1,bufBytesStart:0,castField:t.cast_function,commenting:!1,error:void 0,enabled:t.from_line===1,escaping:!1,escapeIsQuote:Buffer.isBuffer(t.escape)&&Buffer.isBuffer(t.quote)&&Buffer.compare(t.escape,t.quote)===0,expectedRecordLength:Array.isArray(t.columns)?t.columns.length:void 0,field:new w4(20),firstLineToHeaders:t.cast_first_line_to_header,needMoreDataSize:Math.max(t.comment!==null?t.comment.length:0,...t.delimiter.map(e=>e.length),t.quote!==null?t.quote.length:0),previousBuf:void 0,quoting:!1,stop:!1,rawBuffer:new w4(100),record:[],recordHasError:!1,record_length:0,recordDelimiterMaxLength:t.record_delimiter.length===0?0:Math.max(...t.record_delimiter.map(e=>e.length)),trimChars:[Buffer.from(" ",t.encoding)[0],Buffer.from(" ",t.encoding)[0]],wasQuoting:!1,wasRowDelimiter:!1,timchars:[Buffer.from(Buffer.from([eht],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([tht],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([ZAt],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([rht],"utf8").toString(),t.encoding),Buffer.from(Buffer.from([nht],"utf8").toString(),t.encoding)]}},"init_state");var nIe=i(function(t){return t.replace(/([A-Z])/g,function(e,r){return"_"+r.toLowerCase()})},"underscore");var b4=i(function(t){let e={};for(let n in t)e[nIe(n)]=t[n];if(e.encoding===void 0||e.encoding===!0)e.encoding="utf8";else if(e.encoding===null||e.encoding===!1)e.encoding=null;else if(typeof e.encoding!="string"&&e.encoding!==null)throw new Et("CSV_INVALID_OPTION_ENCODING",["Invalid option encoding:","encoding must be a string or null to return a buffer,",`got ${JSON.stringify(e.encoding)}`],e);if(e.bom===void 0||e.bom===null||e.bom===!1)e.bom=!1;else if(e.bom!==!0)throw new Et("CSV_INVALID_OPTION_BOM",["Invalid option bom:","bom must be true,",`got ${JSON.stringify(e.bom)}`],e);if(e.cast_function=null,e.cast===void 0||e.cast===null||e.cast===!1||e.cast==="")e.cast=void 0;else if(typeof e.cast=="function")e.cast_function=e.cast,e.cast=!0;else if(e.cast!==!0)throw new Et("CSV_INVALID_OPTION_CAST",["Invalid option cast:","cast must be true or a function,",`got ${JSON.stringify(e.cast)}`],e);if(e.cast_date===void 0||e.cast_date===null||e.cast_date===!1||e.cast_date==="")e.cast_date=!1;else if(e.cast_date===!0)e.cast_date=function(n){let s=Date.parse(n);return isNaN(s)?n:new Date(s)};else if(typeof e.cast_date!="function")throw new Et("CSV_INVALID_OPTION_CAST_DATE",["Invalid option cast_date:","cast_date must be true or a function,",`got ${JSON.stringify(e.cast_date)}`],e);if(e.cast_first_line_to_header=void 0,e.columns===!0)e.cast_first_line_to_header=void 0;else if(typeof e.columns=="function")e.cast_first_line_to_header=e.columns,e.columns=!0;else if(Array.isArray(e.columns))e.columns=kP(e.columns);else if(e.columns===void 0||e.columns===null||e.columns===!1)e.columns=!1;else throw new Et("CSV_INVALID_OPTION_COLUMNS",["Invalid option columns:","expect an array, a function or true,",`got ${JSON.stringify(e.columns)}`],e);if(e.group_columns_by_name===void 0||e.group_columns_by_name===null||e.group_columns_by_name===!1)e.group_columns_by_name=!1;else{if(e.group_columns_by_name!==!0)throw new Et("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","expect an boolean,",`got ${JSON.stringify(e.group_columns_by_name)}`],e);if(e.columns===!1)throw new Et("CSV_INVALID_OPTION_GROUP_COLUMNS_BY_NAME",["Invalid option group_columns_by_name:","the `columns` mode must be activated."],e)}if(e.comment===void 0||e.comment===null||e.comment===!1||e.comment==="")e.comment=null;else if(typeof e.comment=="string"&&(e.comment=Buffer.from(e.comment,e.encoding)),!Buffer.isBuffer(e.comment))throw new Et("CSV_INVALID_OPTION_COMMENT",["Invalid option comment:","comment must be a buffer or a string,",`got ${JSON.stringify(e.comment)}`],e);if(e.comment_no_infix===void 0||e.comment_no_infix===null||e.comment_no_infix===!1)e.comment_no_infix=!1;else if(e.comment_no_infix!==!0)throw new Et("CSV_INVALID_OPTION_COMMENT",["Invalid option comment_no_infix:","value must be a boolean,",`got ${JSON.stringify(e.comment_no_infix)}`],e);let r=JSON.stringify(e.delimiter);if(Array.isArray(e.delimiter)||(e.delimiter=[e.delimiter]),e.delimiter.length===0)throw new Et("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${r}`],e);if(e.delimiter=e.delimiter.map(function(n){if(n==null||n===!1)return Buffer.from(",",e.encoding);if(typeof n=="string"&&(n=Buffer.from(n,e.encoding)),!Buffer.isBuffer(n)||n.length===0)throw new Et("CSV_INVALID_OPTION_DELIMITER",["Invalid option delimiter:","delimiter must be a non empty string or buffer or array of string|buffer,",`got ${r}`],e);return n}),e.escape===void 0||e.escape===!0?e.escape=Buffer.from('"',e.encoding):typeof e.escape=="string"?e.escape=Buffer.from(e.escape,e.encoding):(e.escape===null||e.escape===!1)&&(e.escape=null),e.escape!==null&&!Buffer.isBuffer(e.escape))throw new Error(`Invalid Option: escape must be a buffer, a string or a boolean, got ${JSON.stringify(e.escape)}`);if(e.from===void 0||e.from===null)e.from=1;else if(typeof e.from=="string"&&/\d+/.test(e.from)&&(e.from=parseInt(e.from)),Number.isInteger(e.from)){if(e.from<0)throw new Error(`Invalid Option: from must be a positive integer, got ${JSON.stringify(t.from)}`)}else throw new Error(`Invalid Option: from must be an integer, got ${JSON.stringify(e.from)}`);if(e.from_line===void 0||e.from_line===null)e.from_line=1;else if(typeof e.from_line=="string"&&/\d+/.test(e.from_line)&&(e.from_line=parseInt(e.from_line)),Number.isInteger(e.from_line)){if(e.from_line<=0)throw new Error(`Invalid Option: from_line must be a positive integer greater than 0, got ${JSON.stringify(t.from_line)}`)}else throw new Error(`Invalid Option: from_line must be an integer, got ${JSON.stringify(t.from_line)}`);if(e.ignore_last_delimiters===void 0||e.ignore_last_delimiters===null)e.ignore_last_delimiters=!1;else if(typeof e.ignore_last_delimiters=="number")e.ignore_last_delimiters=Math.floor(e.ignore_last_delimiters),e.ignore_last_delimiters===0&&(e.ignore_last_delimiters=!1);else if(typeof e.ignore_last_delimiters!="boolean")throw new Et("CSV_INVALID_OPTION_IGNORE_LAST_DELIMITERS",["Invalid option `ignore_last_delimiters`:","the value must be a boolean value or an integer,",`got ${JSON.stringify(e.ignore_last_delimiters)}`],e);if(e.ignore_last_delimiters===!0&&e.columns===!1)throw new Et("CSV_IGNORE_LAST_DELIMITERS_REQUIRES_COLUMNS",["The option `ignore_last_delimiters`","requires the activation of the `columns` option"],e);if(e.info===void 0||e.info===null||e.info===!1)e.info=!1;else if(e.info!==!0)throw new Error(`Invalid Option: info must be true, got ${JSON.stringify(e.info)}`);if(e.max_record_size===void 0||e.max_record_size===null||e.max_record_size===!1)e.max_record_size=0;else if(!(Number.isInteger(e.max_record_size)&&e.max_record_size>=0))if(typeof e.max_record_size=="string"&&/\d+/.test(e.max_record_size))e.max_record_size=parseInt(e.max_record_size);else throw new Error(`Invalid Option: max_record_size must be a positive integer, got ${JSON.stringify(e.max_record_size)}`);if(e.objname===void 0||e.objname===null||e.objname===!1)e.objname=void 0;else if(Buffer.isBuffer(e.objname)){if(e.objname.length===0)throw new Error("Invalid Option: objname must be a non empty buffer");e.encoding===null||(e.objname=e.objname.toString(e.encoding))}else if(typeof e.objname=="string"){if(e.objname.length===0)throw new Error("Invalid Option: objname must be a non empty string")}else if(typeof e.objname!="number")throw new Error(`Invalid Option: objname must be a string or a buffer, got ${e.objname}`);if(e.objname!==void 0){if(typeof e.objname=="number"){if(e.columns!==!1)throw Error("Invalid Option: objname index cannot be combined with columns or be defined as a field")}else if(e.columns===!1)throw Error("Invalid Option: objname field must be combined with columns or be defined as an index")}if(e.on_record===void 0||e.on_record===null)e.on_record=void 0;else if(typeof e.on_record!="function")throw new Et("CSV_INVALID_OPTION_ON_RECORD",["Invalid option `on_record`:","expect a function,",`got ${JSON.stringify(e.on_record)}`],e);if(e.on_skip!==void 0&&e.on_skip!==null&&typeof e.on_skip!="function")throw new Error(`Invalid Option: on_skip must be a function, got ${JSON.stringify(e.on_skip)}`);if(e.quote===null||e.quote===!1||e.quote==="")e.quote=null;else if(e.quote===void 0||e.quote===!0?e.quote=Buffer.from('"',e.encoding):typeof e.quote=="string"&&(e.quote=Buffer.from(e.quote,e.encoding)),!Buffer.isBuffer(e.quote))throw new Error(`Invalid Option: quote must be a buffer or a string, got ${JSON.stringify(e.quote)}`);if(e.raw===void 0||e.raw===null||e.raw===!1)e.raw=!1;else if(e.raw!==!0)throw new Error(`Invalid Option: raw must be true, got ${JSON.stringify(e.raw)}`);if(e.record_delimiter===void 0)e.record_delimiter=[];else if(typeof e.record_delimiter=="string"||Buffer.isBuffer(e.record_delimiter)){if(e.record_delimiter.length===0)throw new Et("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer,",`got ${JSON.stringify(e.record_delimiter)}`],e);e.record_delimiter=[e.record_delimiter]}else if(!Array.isArray(e.record_delimiter))throw new Et("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer,",`got ${JSON.stringify(e.record_delimiter)}`],e);if(e.record_delimiter=e.record_delimiter.map(function(n,s){if(typeof n!="string"&&!Buffer.isBuffer(n))throw new Et("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a string, a buffer or array of string|buffer",`at index ${s},`,`got ${JSON.stringify(n)}`],e);if(n.length===0)throw new Et("CSV_INVALID_OPTION_RECORD_DELIMITER",["Invalid option `record_delimiter`:","value must be a non empty string or buffer",`at index ${s},`,`got ${JSON.stringify(n)}`],e);return typeof n=="string"&&(n=Buffer.from(n,e.encoding)),n}),typeof e.relax_column_count!="boolean")if(e.relax_column_count===void 0||e.relax_column_count===null)e.relax_column_count=!1;else throw new Error(`Invalid Option: relax_column_count must be a boolean, got ${JSON.stringify(e.relax_column_count)}`);if(typeof e.relax_column_count_less!="boolean")if(e.relax_column_count_less===void 0||e.relax_column_count_less===null)e.relax_column_count_less=!1;else throw new Error(`Invalid Option: relax_column_count_less must be a boolean, got ${JSON.stringify(e.relax_column_count_less)}`);if(typeof e.relax_column_count_more!="boolean")if(e.relax_column_count_more===void 0||e.relax_column_count_more===null)e.relax_column_count_more=!1;else throw new Error(`Invalid Option: relax_column_count_more must be a boolean, got ${JSON.stringify(e.relax_column_count_more)}`);if(typeof e.relax_quotes!="boolean")if(e.relax_quotes===void 0||e.relax_quotes===null)e.relax_quotes=!1;else throw new Error(`Invalid Option: relax_quotes must be a boolean, got ${JSON.stringify(e.relax_quotes)}`);if(typeof e.skip_empty_lines!="boolean")if(e.skip_empty_lines===void 0||e.skip_empty_lines===null)e.skip_empty_lines=!1;else throw new Error(`Invalid Option: skip_empty_lines must be a boolean, got ${JSON.stringify(e.skip_empty_lines)}`);if(typeof e.skip_records_with_empty_values!="boolean")if(e.skip_records_with_empty_values===void 0||e.skip_records_with_empty_values===null)e.skip_records_with_empty_values=!1;else throw new Error(`Invalid Option: skip_records_with_empty_values must be a boolean, got ${JSON.stringify(e.skip_records_with_empty_values)}`);if(typeof e.skip_records_with_error!="boolean")if(e.skip_records_with_error===void 0||e.skip_records_with_error===null)e.skip_records_with_error=!1;else throw new Error(`Invalid Option: skip_records_with_error must be a boolean, got ${JSON.stringify(e.skip_records_with_error)}`);if(e.rtrim===void 0||e.rtrim===null||e.rtrim===!1)e.rtrim=!1;else if(e.rtrim!==!0)throw new Error(`Invalid Option: rtrim must be a boolean, got ${JSON.stringify(e.rtrim)}`);if(e.ltrim===void 0||e.ltrim===null||e.ltrim===!1)e.ltrim=!1;else if(e.ltrim!==!0)throw new Error(`Invalid Option: ltrim must be a boolean, got ${JSON.stringify(e.ltrim)}`);if(e.trim===void 0||e.trim===null||e.trim===!1)e.trim=!1;else if(e.trim!==!0)throw new Error(`Invalid Option: trim must be a boolean, got ${JSON.stringify(e.trim)}`);if(e.trim===!0&&t.ltrim!==!1?e.ltrim=!0:e.ltrim!==!0&&(e.ltrim=!1),e.trim===!0&&t.rtrim!==!1?e.rtrim=!0:e.rtrim!==!0&&(e.rtrim=!1),e.to===void 0||e.to===null)e.to=-1;else if(e.to!==-1)if(typeof e.to=="string"&&/\d+/.test(e.to)&&(e.to=parseInt(e.to)),Number.isInteger(e.to)){if(e.to<=0)throw new Error(`Invalid Option: to must be a positive integer greater than 0, got ${JSON.stringify(t.to)}`)}else throw new Error(`Invalid Option: to must be an integer, got ${JSON.stringify(t.to)}`);if(e.to_line===void 0||e.to_line===null)e.to_line=-1;else if(e.to_line!==-1)if(typeof e.to_line=="string"&&/\d+/.test(e.to_line)&&(e.to_line=parseInt(e.to_line)),Number.isInteger(e.to_line)){if(e.to_line<=0)throw new Error(`Invalid Option: to_line must be a positive integer greater than 0, got ${JSON.stringify(t.to_line)}`)}else throw new Error(`Invalid Option: to_line must be an integer, got ${JSON.stringify(t.to_line)}`);return e},"normalize_options");var sIe=i(function(t){return t.every(e=>e==null||e.toString&&e.toString().trim()==="")},"isRecordEmpty"),sht=13,oht=10,Ng={utf8:Buffer.from([239,187,191]),utf16le:Buffer.from([255,254])},oIe=i(function(t={}){let e={bytes:0,bytes_records:0,comment_lines:0,empty_lines:0,invalid_field_length:0,lines:1,records:0},r=b4(t);return{info:e,original_options:t,options:r,state:rIe(r),__needMoreData:i(function(n,s,o){if(o)return!1;let{encoding:a,escape:c,quote:l}=this.options,{quoting:u,needMoreDataSize:d,recordDelimiterMaxLength:p}=this.state,m=s-n-1,f=Math.max(d,p===0?Buffer.from(`\r +`,a).length:p,u?(c===null?0:c.length)+l.length:0,u?l.length+p:0);return mS){this.state.stop=!0,a();return}this.state.quoting===!1&&M.length===0&&this.__autoDiscoverRecordDelimiter(se,H)&&(M=this.options.record_delimiter);let oe=se[H];if(f===!0&&ke.append(oe),(oe===sht||oe===oht)&&this.state.wasRowDelimiter===!1&&(this.state.wasRowDelimiter=!0),this.state.escaping===!0)this.state.escaping=!1;else{if(Q!==null&&this.state.quoting===!0&&this.__isEscape(se,H,oe)&&H+Q.lengthNg[Zo].equals(this.state.field.toString())?Zo:!1).filter(Boolean)[0],cs=this.__error(new Et("INVALID_OPENING_QUOTE",["Invalid Opening Quote:",`a quote is found on field ${JSON.stringify(_t.column)} at line ${_t.lines}, value is ${JSON.stringify(this.state.field.toString(u))}`,as?`(${as} bom)`:void 0],this.options,_t,{field:this.state.field}));if(cs!==void 0)return cs}}else{this.state.quoting=!0,H+=q.length-1;continue}if(this.state.quoting===!1){let _t=this.__isRecordDelimiter(oe,se,H);if(_t!==0){if(this.state.commenting&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0)this.info.comment_lines++;else{if(this.state.enabled===!1&&this.info.lines+(this.state.wasRowDelimiter===!0?1:0)>=d){this.state.enabled=!0,this.__resetField(),this.__resetRecord(),H+=_t-1;continue}if(x===!0&&this.state.wasQuoting===!1&&this.state.record.length===0&&this.state.field.length===0){this.info.empty_lines++,H+=_t-1;continue}this.info.bytes=this.state.bufBytesStart+H;let Zo=this.__onField();if(Zo!==void 0)return Zo;this.info.bytes=this.state.bufBytesStart+H+_t;let Nl=this.__onRecord(o);if(Nl!==void 0)return Nl;if(w!==-1&&this.info.records>=w){this.state.stop=!0,a();return}}this.state.commenting=!1,H+=_t-1;continue}if(this.state.commenting)continue;if(P!==null&&(l===!1||this.state.record.length===0&&this.state.field.length===0)&&this.__compareBytes(P,se,H,oe)!==0){this.state.commenting=!0;continue}let as=this.__isDelimiter(se,H,oe);if(as!==0){this.info.bytes=this.state.bufBytesStart+H;let cs=this.__onField();if(cs!==void 0)return cs;H+=as-1;continue}}}if(this.state.commenting===!1&&m!==0&&this.state.record_length+this.state.field.length>m)return this.__error(new Et("CSV_MAX_RECORD_SIZE",["Max Record Size:","record exceed the maximum number of tolerated bytes",`of ${m}`,`at line ${this.info.lines}`],this.options,this.__infoField()));let It=p===!1||this.state.quoting===!0||this.state.field.length!==0||!this.__isCharTrimable(se,H),at=E===!1||this.state.wasQuoting===!1;if(It===!0&&at===!0)this.state.field.append(oe);else{if(E===!0&&!this.__isCharTrimable(se,H))return this.__error(new Et("CSV_NON_TRIMABLE_CHAR_AFTER_CLOSING_QUOTE",["Invalid Closing Quote:","found non trimable byte after quote",`at line ${this.info.lines}`],this.options,this.__infoField()));It===!1&&(H+=this.__isCharTrimable(se,H)-1);continue}}if(s===!0)if(this.state.quoting===!0){let oe=this.__error(new Et("CSV_QUOTE_NOT_CLOSED",["Quote Not Closed:",`the parsing is finished with an opening quote at line ${this.info.lines}`],this.options,this.__infoField()));if(oe!==void 0)return oe}else if(this.state.wasQuoting===!0||this.state.record.length!==0||this.state.field.length!==0){this.info.bytes=this.state.bufBytesStart+H;let oe=this.__onField();if(oe!==void 0)return oe;let It=this.__onRecord(o);if(It!==void 0)return It}else this.state.wasRowDelimiter===!0?this.info.empty_lines++:this.state.commenting===!0&&this.info.comment_lines++;else this.state.bufBytesStart+=H,this.state.previousBuf=se.slice(H);this.state.wasRowDelimiter===!0&&(this.info.lines++,this.state.wasRowDelimiter=!1)},"parse"),__onRecord:i(function(n){let{columns:s,group_columns_by_name:o,encoding:a,info:c,from:l,relax_column_count:u,relax_column_count_less:d,relax_column_count_more:p,raw:m,skip_records_with_empty_values:f}=this.options,{enabled:g,record:E}=this.state;if(g===!1)return this.__resetRecord();let x=E.length;if(s===!0){if(f===!0&&sIe(E)){this.__resetRecord();return}return this.__firstLineToColumns(E)}if(s===!1&&this.info.records===0&&(this.state.expectedRecordLength=x),x!==this.state.expectedRecordLength){let w=s===!1?new Et("CSV_RECORD_INCONSISTENT_FIELDS_LENGTH",["Invalid Record Length:",`expect ${this.state.expectedRecordLength},`,`got ${x} on line ${this.info.lines}`],this.options,this.__infoField(),{record:E}):new Et("CSV_RECORD_INCONSISTENT_COLUMNS",["Invalid Record Length:",`columns length is ${s.length},`,`got ${x} on line ${this.info.lines}`],this.options,this.__infoField(),{record:E});if(u===!0||d===!0&&xthis.state.expectedRecordLength)this.info.invalid_field_length++,this.state.error=w;else{let S=this.__error(w);if(S)return S}}if(f===!0&&sIe(E)){this.__resetRecord();return}if(this.state.recordHasError===!0){this.__resetRecord(),this.state.recordHasError=!1;return}if(this.info.records++,l===1||this.info.records>=l){let{objname:w}=this.options;if(s!==!1){let S={};for(let P=0,Q=E.length;P{let{timchars:l}=this.state;e:for(let u=0;u=0},"__isFloat"),__compareBytes:i(function(n,s,o,a){if(n[0]!==a)return 0;let c=n.length;for(let l=1;lthis.state.record.length?n[this.state.record.length].name:null:this.state.record.length,quoting:this.state.wasQuoting}}}};var oIe=function(t,e={}){typeof t=="string"&&(t=Buffer.from(t));let r=e&&e.objname?{}:[],n=sIe(e),s=a=>{n.options.objname===void 0?r.push(a):r[a[0]]=a[1]},o=()=>{},i=n.parse(t,!0,s,o);if(i!==void 0)throw i;return r};var Ud=class t{static getInputList(e,r){return this.getList(oa(e,{trimWhitespace:r?.trimWhitespace!==!1}),r)}static getList(e,r){let n=[];if(e=="")return n;let s=oIe(e,{columns:!1,relaxQuotes:!0,comment:r?.comment,comment_no_infix:r?.commentNoInfix,relaxColumnCount:!0,skipEmptyLines:!0,quote:r?.quote});for(let o of s)o.length==1?r?.ignoreComma?n.push(o[0]):n.push(...o[0].split(",")):r?.ignoreComma?n.push(o.join(",")):n.push(...o);return n.filter(o=>o).map(o=>r?.trimWhitespace===!1?o:o.trim())}static getInputNumber(e){let r=oa(e);if(r)return parseInt(r)}static async asyncForEach(e,r){for(let n=0;nsetTimeout(r,e*1e3))}static hash(e){return b4.default.createHash("sha256").update(e).digest("hex")}static parseBool(e){if(e===void 0)return!1;switch(e){case"1":case"t":case"T":case"true":case"TRUE":case"True":return!0;case"0":case"f":case"F":case"false":case"FALSE":case"False":return!1;default:throw new Error(`parseBool syntax error: ${e}`)}}static parseBoolOrDefault(e,r=!1){try{return this.parseBool(e)}catch{return r}}static formatFileSize(e){if(e===0)return"0 Bytes";let r=1024,n=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],s=Math.floor(Math.log(e)/Math.log(r));return parseFloat((e/Math.pow(r,s)).toFixed(2))+" "+n[s]}static generateRandomString(e=10){return b4.default.randomBytes(Math.ceil(e/2)).toString("hex").slice(0,e)}static compileHandlebars(e,r,n){return aIe.default.compile(e,r)(n)}static stringToUnicodeEntities(e){return Array.from(e).map(r=>`&#x${r.charCodeAt(0).toString(16)};`).join("")}static countLines(e){return e.split(/\r\n|\r|\n/).length}static isPathRelativeTo(e,r){let n=dx.default.resolve(e);return dx.default.resolve(r).startsWith(n.endsWith(dx.default.sep)?n:`${n}${dx.default.sep}`)}static formatDuration(e){if(e===0)return"0s";let r=Math.floor(e/1e9),n=Math.floor(r/3600),s=Math.floor(r%3600/60),o=r%60,i=[];return n&&i.push(`${n}h`),s&&i.push(`${s}m`),(o||i.length===0)&&i.push(`${o}s`),i.join("")}};var qd=class t{static get configDir(){return process.env.DOCKER_CONFIG||px.default.join(cIe.default.homedir(),".docker")}static configFile(){let e=px.default.join(t.configDir,"config.json");if(S4.default.existsSync(e))return JSON.parse(S4.default.readFileSync(e,{encoding:"utf-8"}))}static async isAvailable(){return await $s("docker",!0).then(e=>($(`Docker.isAvailable ok: ${e}`),!0)).catch(e=>($(`Docker.isAvailable error: ${e}`),!1))}static async isDaemonRunning(){try{return await t.getExecOutput(["version"],{silent:!0}),!0}catch{return!1}}static async exec(e,r){return uu.exec("docker",e,t.execOptions(r))}static async getExecOutput(e,r){return uu.getExecOutput("docker",e,t.execOptions(r))}static execOptions(e){return e||(e={}),e.env?e.env.DOCKER_CONTENT_TRUST="false":e.env=Object.assign({},process.env,{DOCKER_CONTENT_TRUST:"false"}),e}static async context(e){let r=["context","inspect","--format","{{.Name}}"];return e&&r.push(e),await t.getExecOutput(r,{ignoreReturnCode:!0,silent:!0}).then(n=>{if(n.stderr.length>0&&n.exitCode!=0)throw new Error(n.stderr);return n.stdout.trim()})}static async contextInspect(e){let r=["context","inspect","--format=json"];return e&&r.push(e),await t.getExecOutput(r,{ignoreReturnCode:!0,silent:!0}).then(n=>{if(n.stderr.length>0&&n.exitCode!=0)throw new Error(n.stderr.trim());return JSON.parse(n.stdout.trim())[0]})}static async printVersion(){await t.exec(["version"])}static async printInfo(){await t.exec(["info"])}static parseRepoTag(e){let r,n=e.indexOf("@"),s=e.lastIndexOf(":");if(n>=0)r=n;else if(s>=0)r=s;else return{repository:e,tag:"latest"};let o=e.slice(r+1);return o.indexOf("/")===-1?{repository:e.slice(0,r),tag:o}:{repository:e,tag:"latest"}}static async pull(e,r){let n=t.parseRepoTag(e),s=n.repository.replace(/[^a-zA-Z0-9.]+/g,"--"),o=n.tag.replace(/[^a-zA-Z0-9.]+/g,"--"),i=new cg({htcName:s,htcVersion:o,baseCacheDir:px.default.join(t.configDir,".cache","images",s),cacheFile:"image.tar"}),a;r&&(a=await i.find(),a&&(Je(`Image found from cache in ${a}`),await t.getExecOutput(["load","-i",a],{ignoreReturnCode:!0}).then(l=>{l.stderr.length>0&&l.exitCode!=0&&_r(`Failed to load image from cache: ${l.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error"}`)})));let c=!0;if(await t.getExecOutput(["pull",e],{ignoreReturnCode:!0}).then(l=>{if(l.stderr.length>0&&l.exitCode!=0){c=!1;let u=l.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error";if(a)_r(`Failed to pull image, using one from cache: ${u}`);else throw new Error(u)}}),r&&c){let l=px.default.join(JT.tmpDir(),`${Ud.hash(e)}.tar`);await t.getExecOutput(["save","-o",l,e],{ignoreReturnCode:!0}).then(async u=>{if(u.stderr.length>0&&u.exitCode!=0)_r(`Failed to save image: ${u.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error"}`);else{let d=await i.save(l);Je(`Image cached to ${d}`)}})}}};var kP=require("fs"),lIe=require("os"),Ng=class{constructor(){var e,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,kP.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,kP.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let s=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${s} does not exist${lIe.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runAttempt=parseInt(process.env.GITHUB_RUN_ATTEMPT,10),this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(e=process.env.GITHUB_API_URL)!==null&&e!==void 0?e:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[e,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};var T4=Q(fIe(),1),AIe=Q(ZA(),1),hht=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})};function hIe(t,e){if(!t&&!e.auth)throw new Error("Parameter token or opts.auth is required");if(t&&e.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof e.auth=="string"?e.auth:`token ${t}`}function gIe(t){return new T4.HttpClient().getAgent(t)}function ght(t){return new T4.HttpClient().getAgentDispatcher(t)}function yIe(t){let e=ght(t);return(n,s)=>hht(this,void 0,void 0,function*(){return(0,AIe.fetch)(n,Object.assign(Object.assign({},s),{dispatcher:e}))})}function EIe(){return process.env.GITHUB_API_URL||"https://api.github.com"}function P4(t){var e;let r=(e=process.env.ACTIONS_ORCHESTRATION_ID)===null||e===void 0?void 0:e.trim();if(r){let s=`actions_orchestration_id/${r.replace(/[^a-z0-9_.-]/gi,"_")}`;return t?.includes(s)?t:`${t?`${t} `:""}${s}`}return t}function $d(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}function $P(t,e,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(e)?e.reverse().reduce((s,o)=>$P.bind(null,t,o,s,n),r)():Promise.resolve().then(()=>t.registry[e]?t.registry[e].reduce((s,o)=>o.hook.bind(null,s,n),r)():r(n))}function CIe(t,e,r,n){let s=n;t.registry[r]||(t.registry[r]=[]),e==="before"&&(n=(o,i)=>Promise.resolve().then(s.bind(null,i)).then(o.bind(null,i))),e==="after"&&(n=(o,i)=>{let a;return Promise.resolve().then(o.bind(null,i)).then(c=>(a=c,s(a,i))).then(()=>a)}),e==="error"&&(n=(o,i)=>Promise.resolve().then(o.bind(null,i)).catch(a=>s(a,i))),t.registry[r].push({hook:n,orig:s})}function IIe(t,e,r){if(!t.registry[e])return;let n=t.registry[e].map(s=>s.orig).indexOf(r);n!==-1&&t.registry[e].splice(n,1)}var xIe=Function.bind,wIe=xIe.bind(xIe);function bIe(t,e,r){let n=wIe(IIe,null).apply(null,r?[e,r]:[e]);t.api={remove:n},t.remove=n,["before","error","after","wrap"].forEach(s=>{let o=r?[e,s,r]:[e,s];t[s]=t.api[s]=wIe(CIe,null).apply(null,o)})}function Eht(){let t=Symbol("Singular"),e={registry:{}},r=$P.bind(null,e,t);return bIe(r,e,t),r}function Cht(){let t={registry:{}},e=$P.bind(null,t);return bIe(e,t),e}var SIe={Singular:Eht,Collection:Cht};var Iht="0.0.0-development",xht=`octokit-endpoint.js/${Iht} ${$d()}`,wht={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":xht},mediaType:{format:""}};function bht(t){return t?Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{}):{}}function Sht(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let r=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(t)}function NIe(t,e){let r=Object.assign({},t);return Object.keys(e).forEach(n=>{Sht(e[n])?n in t?r[n]=NIe(t[n],e[n]):Object.assign(r,{[n]:e[n]}):Object.assign(r,{[n]:e[n]})}),r}function BIe(t){for(let e in t)t[e]===void 0&&delete t[e];return t}function _4(t,e,r){if(typeof e=="string"){let[s,o]=e.split(" ");r=Object.assign(o?{method:s,url:o}:{url:s},r)}else r=Object.assign({},e);r.headers=bht(r.headers),BIe(r),BIe(r.headers);let n=NIe(t||{},r);return r.url==="/graphql"&&(t&&t.mediaType.previews?.length&&(n.mediaType.previews=t.mediaType.previews.filter(s=>!n.mediaType.previews.includes(s)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(s=>s.replace(/-preview/,""))),n}function Bht(t,e){let r=/\?/.test(t)?"&":"?",n=Object.keys(e);return n.length===0?t:t+r+n.map(s=>s==="q"?"q="+e.q.split("+").map(encodeURIComponent).join("+"):`${s}=${encodeURIComponent(e[s])}`).join("&")}var Rht=/\{[^{}}]+\}/g;function Nht(t){return t.replace(/(?:^\W+)|(?:(?r.concat(n),[]):[]}function RIe(t,e){let r={__proto__:null};for(let n of Object.keys(t))e.indexOf(n)===-1&&(r[n]=t[n]);return r}function TIe(t){return t.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return/%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}function Pg(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}function fx(t,e,r){return e=t==="+"||t==="#"?TIe(e):Pg(e),r?Pg(r)+"="+e:e}function Tg(t){return t!=null}function v4(t){return t===";"||t==="&"||t==="?"}function Pht(t,e,r,n){var s=t[r],o=[];if(Tg(s)&&s!=="")if(typeof s=="string"||typeof s=="number"||typeof s=="bigint"||typeof s=="boolean")s=s.toString(),n&&n!=="*"&&(s=s.substring(0,parseInt(n,10))),o.push(fx(e,s,v4(e)?r:""));else if(n==="*")Array.isArray(s)?s.filter(Tg).forEach(function(i){o.push(fx(e,i,v4(e)?r:""))}):Object.keys(s).forEach(function(i){Tg(s[i])&&o.push(fx(e,s[i],i))});else{let i=[];Array.isArray(s)?s.filter(Tg).forEach(function(a){i.push(fx(e,a))}):Object.keys(s).forEach(function(a){Tg(s[a])&&(i.push(Pg(a)),i.push(fx(e,s[a].toString())))}),v4(e)?o.push(Pg(r)+"="+i.join(",")):i.length!==0&&o.push(i.join(","))}else e===";"?Tg(s)&&o.push(Pg(r)):s===""&&(e==="&"||e==="?")?o.push(Pg(r)+"="):s===""&&o.push("");return o}function vht(t){return{expand:_ht.bind(null,t)}}function _ht(t,e){var r=["+","#",".","/",";","?","&"];return t=t.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,s,o){if(s){let a="",c=[];if(r.indexOf(s.charAt(0))!==-1&&(a=s.charAt(0),s=s.substr(1)),s.split(/,/g).forEach(function(l){var u=/([^:\*]*)(?::(\d+)|(\*))?/.exec(l);c.push(Pht(e,a,u[1],u[2]||u[3]))}),a&&a!=="+"){var i=",";return a==="?"?i="&":a!=="#"&&(i=a),(c.length!==0?a:"")+c.join(i)}else return c.join(",")}else return TIe(o)}),t==="/"?t:t.replace(/\/$/,"")}function PIe(t){let e=t.method.toUpperCase(),r=(t.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},t.headers),s,o=RIe(t,["method","baseUrl","url","headers","request","mediaType"]),i=Tht(r);r=vht(r).expand(o),/^http/.test(r)||(r=t.baseUrl+r);let a=Object.keys(t).filter(u=>i.includes(u)).concat("baseUrl"),c=RIe(o,a);if(!/application\/octet-stream/i.test(n.accept)&&(t.mediaType.format&&(n.accept=n.accept.split(/,/).map(u=>u.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${t.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&t.mediaType.previews?.length)){let u=n.accept.match(/(?{let p=t.mediaType.format?`.${t.mediaType.format}`:"+json";return`application/vnd.github.${d}-preview${p}`}).join(",")}return["GET","HEAD"].includes(e)?r=Bht(r,c):"data"in c?s=c.data:Object.keys(c).length&&(s=c),!n["content-type"]&&typeof s<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(e)&&typeof s>"u"&&(s=""),Object.assign({method:e,url:r,headers:n},typeof s<"u"?{body:s}:null,t.request?{request:t.request}:null)}function Qht(t,e,r){return PIe(_4(t,e,r))}function vIe(t,e){let r=_4(t,e),n=Qht.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:vIe.bind(null,r),merge:_4.bind(null,r),parse:PIe})}var _Ie=vIe(null,wht);var zIe=Q(LIe(),1);var Dht=/^-?\d+$/,FIe=/^-?\d+n+$/,Q4=JSON.stringify,OIe=JSON.parse,kht=/^-?\d+n$/,Lht=/([\[:])?"(-?\d+)n"($|([\\n]|\s)*(\s|[\\n])*[,\}\]])/g,Oht=/([\[:])?("-?\d+n+)n("$|"([\\n]|\s)*(\s|[\\n])*[,\}\]])/g,UIe=(t,e,r)=>"rawJSON"in JSON?Q4(t,(i,a)=>typeof a=="bigint"?JSON.rawJSON(a.toString()):typeof e=="function"?e(i,a):(Array.isArray(e)&&e.includes(i),a),r):t?Q4(t,(i,a)=>typeof a=="string"&&!!a.match(FIe)||typeof a=="bigint"?a.toString()+"n":typeof e=="function"?e(i,a):(Array.isArray(e)&&e.includes(i),a),r).replace(Lht,"$1$2$3").replace(Oht,"$1$2$3"):Q4(t,e,r),Mht=()=>JSON.parse("1",(t,e,r)=>!!r&&r.source==="1"),Fht=(t,e,r,n)=>typeof e=="string"&&e.match(kht)?BigInt(e.slice(0,-1)):typeof e=="string"&&e.match(FIe)?e.slice(0,-1):typeof n!="function"?e:n(t,e,r),Uht=(t,e)=>JSON.parse(t,(r,n,s)=>{let o=typeof n=="number"&&(n>Number.MAX_SAFE_INTEGER||n{if(!t)return OIe(t,e);if(Mht())return Uht(t,e);let r=t.replace(qht,(n,s,o,i)=>{let a=n[0]==='"';if(a&&!!n.match($ht))return n.substring(0,n.length-1)+'n"';let l=o||i,u=s&&(s.lengthFht(n,s,o,e))};var nf=class extends Error{name;status;request;response;constructor(e,r,n){super(e,{cause:n.cause}),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0);"response"in n&&(this.response=n.response);let s=Object.assign({},n.request);n.request.headers.authorization&&(s.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?"";async function HIe(t){let e=t.request?.fetch||globalThis.fetch;if(!e)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=t.request?.log||console,n=t.request?.parseSuccessResponseBody!==!1,s=zht(t.body)||Array.isArray(t.body)?UIe(t.body):t.body,o=Object.fromEntries(Object.entries(t.headers).map(([d,p])=>[d,String(p)])),i;try{i=await e(t.url,{method:t.method,body:s,redirect:t.request?.redirect,headers:o,signal:t.request?.signal,...t.body&&{duplex:"half"}})}catch(d){let p="Unknown Error";if(d instanceof Error){if(d.name==="AbortError")throw d.status=500,d;p=d.message,d.name==="TypeError"&&"cause"in d&&(d.cause instanceof Error?p=d.cause.message:typeof d.cause=="string"&&(p=d.cause))}let m=new nf(p,500,{request:t});throw m.cause=d,m}let a=i.status,c=i.url,l={};for(let[d,p]of i.headers)l[d]=p;let u={url:c,status:a,headers:l,data:""};if("deprecation"in l){let d=l.link&&l.link.match(/<([^<>]+)>; rel="deprecation"/),p=d&&d.pop();r.warn(`[@octokit/request] "${t.method} ${t.url}" is deprecated. It is scheduled to be removed on ${l.sunset}${p?`. See ${p}`:""}`)}if(a===204||a===205)return u;if(t.method==="HEAD"){if(a<400)return u;throw new nf(i.statusText,a,{response:u,request:t})}if(a===304)throw u.data=await D4(i),new nf("Not modified",a,{response:u,request:t});if(a>=400)throw u.data=await D4(i),new nf(Yht(u.data),a,{response:u,request:t});return u.data=n?await D4(i):i.body,u}async function D4(t){let e=t.headers.get("content-type");if(!e)return t.text().catch(GIe);let r=(0,zIe.safeParse)(e);if(Vht(r)){let n="";try{return n=await t.text(),$Ie(n)}catch{return n}}else return r.type.startsWith("text/")||r.parameters.charset?.toLowerCase()==="utf-8"?t.text().catch(GIe):t.arrayBuffer().catch(()=>new ArrayBuffer(0))}function Vht(t){return t.type==="application/json"||t.type==="application/scim+json"}function Yht(t){if(typeof t=="string")return t;if(t instanceof ArrayBuffer)return"Unknown error";if("message"in t){let e="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(r=>JSON.stringify(r)).join(", ")}${e}`:`${t.message}${e}`}return`Unknown error: ${JSON.stringify(t)}`}function k4(t,e){let r=t.defaults(e);return Object.assign(function(s,o){let i=r.merge(s,o);if(!i.request||!i.request.hook)return HIe(r.parse(i));let a=(c,l)=>HIe(r.parse(r.merge(c,l)));return Object.assign(a,{endpoint:r,defaults:k4.bind(null,r)}),i.request.hook(a,i)},{endpoint:r,defaults:k4.bind(null,r)})}var hx=k4(_Ie,Hht);var Wht="0.0.0-development";function jht(t){return`Request failed due to following response errors: +`,o),Buffer.from("\r",o)];e:for(let c=0;cthis.state.record.length?n[this.state.record.length].name:null:this.state.record.length,quoting:this.state.wasQuoting}},"__infoField")}},"transform");var iIe=i(function(t,e={}){typeof t=="string"&&(t=Buffer.from(t));let r=e&&e.objname?{}:[],n=oIe(e),s=i(c=>{n.options.objname===void 0?r.push(c):r[c[0]]=c[1]},"push"),o=i(()=>{},"close"),a=n.parse(t,!0,s,o);if(a!==void 0)throw a;return r},"parse");var qd=class t{static{i(this,"Util")}static getInputList(e,r){return this.getList(ia(e,{trimWhitespace:r?.trimWhitespace!==!1}),r)}static getList(e,r){let n=[];if(e=="")return n;let s=iIe(e,{columns:!1,relaxQuotes:!0,comment:r?.comment,comment_no_infix:r?.commentNoInfix,relaxColumnCount:!0,skipEmptyLines:!0,quote:r?.quote});for(let o of s)o.length==1?r?.ignoreComma?n.push(o[0]):n.push(...o[0].split(",")):r?.ignoreComma?n.push(o.join(",")):n.push(...o);return n.filter(o=>o).map(o=>r?.trimWhitespace===!1?o:o.trim())}static getInputNumber(e){let r=ia(e);if(r)return parseInt(r)}static async asyncForEach(e,r){for(let n=0;nsetTimeout(r,e*1e3))}static hash(e){return S4.default.createHash("sha256").update(e).digest("hex")}static parseBool(e){if(e===void 0)return!1;switch(e){case"1":case"t":case"T":case"true":case"TRUE":case"True":return!0;case"0":case"f":case"F":case"false":case"FALSE":case"False":return!1;default:throw new Error(`parseBool syntax error: ${e}`)}}static parseBoolOrDefault(e,r=!1){try{return this.parseBool(e)}catch{return r}}static formatFileSize(e){if(e===0)return"0 Bytes";let r=1024,n=["Bytes","KB","MB","GB","TB","PB","EB","ZB","YB"],s=Math.floor(Math.log(e)/Math.log(r));return parseFloat((e/Math.pow(r,s)).toFixed(2))+" "+n[s]}static generateRandomString(e=10){return S4.default.randomBytes(Math.ceil(e/2)).toString("hex").slice(0,e)}static compileHandlebars(e,r,n){return cIe.default.compile(e,r)(n)}static stringToUnicodeEntities(e){return Array.from(e).map(r=>`&#x${r.charCodeAt(0).toString(16)};`).join("")}static countLines(e){return e.split(/\r\n|\r|\n/).length}static isPathRelativeTo(e,r){let n=mx.default.resolve(e);return mx.default.resolve(r).startsWith(n.endsWith(mx.default.sep)?n:`${n}${mx.default.sep}`)}static formatDuration(e){if(e===0)return"0s";let r=Math.floor(e/1e9),n=Math.floor(r/3600),s=Math.floor(r%3600/60),o=r%60,a=[];return n&&a.push(`${n}h`),s&&a.push(`${s}m`),(o||a.length===0)&&a.push(`${o}s`),a.join("")}};var $d=class t{static{i(this,"Docker")}static get configDir(){return process.env.DOCKER_CONFIG||fx.default.join(lIe.default.homedir(),".docker")}static configFile(){let e=fx.default.join(t.configDir,"config.json");if(B4.default.existsSync(e))return JSON.parse(B4.default.readFileSync(e,{encoding:"utf-8"}))}static async isAvailable(){return await Gs("docker",!0).then(e=>(G(`Docker.isAvailable ok: ${e}`),!0)).catch(e=>(G(`Docker.isAvailable error: ${e}`),!1))}static async isDaemonRunning(){try{return await t.getExecOutput(["version"],{silent:!0}),!0}catch{return!1}}static async exec(e,r){return du.exec("docker",e,t.execOptions(r))}static async getExecOutput(e,r){return du.getExecOutput("docker",e,t.execOptions(r))}static execOptions(e){return e||(e={}),e.env?e.env.DOCKER_CONTENT_TRUST="false":e.env=Object.assign({},process.env,{DOCKER_CONTENT_TRUST:"false"}),e}static async context(e){let r=["context","inspect","--format","{{.Name}}"];return e&&r.push(e),await t.getExecOutput(r,{ignoreReturnCode:!0,silent:!0}).then(n=>{if(n.stderr.length>0&&n.exitCode!=0)throw new Error(n.stderr);return n.stdout.trim()})}static async contextInspect(e){let r=["context","inspect","--format=json"];return e&&r.push(e),await t.getExecOutput(r,{ignoreReturnCode:!0,silent:!0}).then(n=>{if(n.stderr.length>0&&n.exitCode!=0)throw new Error(n.stderr.trim());return JSON.parse(n.stdout.trim())[0]})}static async printVersion(){await t.exec(["version"])}static async printInfo(){await t.exec(["info"])}static parseRepoTag(e){let r,n=e.indexOf("@"),s=e.lastIndexOf(":");if(n>=0)r=n;else if(s>=0)r=s;else return{repository:e,tag:"latest"};let o=e.slice(r+1);return o.indexOf("/")===-1?{repository:e.slice(0,r),tag:o}:{repository:e,tag:"latest"}}static async pull(e,r){let n=t.parseRepoTag(e),s=n.repository.replace(/[^a-zA-Z0-9.]+/g,"--"),o=n.tag.replace(/[^a-zA-Z0-9.]+/g,"--"),a=new lg({htcName:s,htcVersion:o,baseCacheDir:fx.default.join(t.configDir,".cache","images",s),cacheFile:"image.tar"}),c;r&&(c=await a.find(),c&&(Ke(`Image found from cache in ${c}`),await t.getExecOutput(["load","-i",c],{ignoreReturnCode:!0}).then(u=>{u.stderr.length>0&&u.exitCode!=0&&Qr(`Failed to load image from cache: ${u.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error"}`)})));let l=!0;if(await t.getExecOutput(["pull",e],{ignoreReturnCode:!0}).then(u=>{if(u.stderr.length>0&&u.exitCode!=0){l=!1;let d=u.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error";if(c)Qr(`Failed to pull image, using one from cache: ${d}`);else throw new Error(d)}}),r&&l){let u=fx.default.join(KT.tmpDir(),`${qd.hash(e)}.tar`);await t.getExecOutput(["save","-o",u,e],{ignoreReturnCode:!0}).then(async d=>{if(d.stderr.length>0&&d.exitCode!=0)Qr(`Failed to save image: ${d.stderr.match(/(.*)\s*$/)?.[0]?.trim()??"unknown error"}`);else{let p=await a.save(u);Ke(`Image cached to ${p}`)}})}}};var LP=require("fs"),uIe=require("os");var Tg=class{static{i(this,"Context")}constructor(){var e,r,n;if(this.payload={},process.env.GITHUB_EVENT_PATH)if((0,LP.existsSync)(process.env.GITHUB_EVENT_PATH))this.payload=JSON.parse((0,LP.readFileSync)(process.env.GITHUB_EVENT_PATH,{encoding:"utf8"}));else{let s=process.env.GITHUB_EVENT_PATH;process.stdout.write(`GITHUB_EVENT_PATH ${s} does not exist${uIe.EOL}`)}this.eventName=process.env.GITHUB_EVENT_NAME,this.sha=process.env.GITHUB_SHA,this.ref=process.env.GITHUB_REF,this.workflow=process.env.GITHUB_WORKFLOW,this.action=process.env.GITHUB_ACTION,this.actor=process.env.GITHUB_ACTOR,this.job=process.env.GITHUB_JOB,this.runAttempt=parseInt(process.env.GITHUB_RUN_ATTEMPT,10),this.runNumber=parseInt(process.env.GITHUB_RUN_NUMBER,10),this.runId=parseInt(process.env.GITHUB_RUN_ID,10),this.apiUrl=(e=process.env.GITHUB_API_URL)!==null&&e!==void 0?e:"https://api.github.com",this.serverUrl=(r=process.env.GITHUB_SERVER_URL)!==null&&r!==void 0?r:"https://github.com",this.graphqlUrl=(n=process.env.GITHUB_GRAPHQL_URL)!==null&&n!==void 0?n:"https://api.github.com/graphql"}get issue(){let e=this.payload;return Object.assign(Object.assign({},this.repo),{number:(e.issue||e.pull_request||e).number})}get repo(){if(process.env.GITHUB_REPOSITORY){let[e,r]=process.env.GITHUB_REPOSITORY.split("/");return{owner:e,repo:r}}if(this.payload.repository)return{owner:this.payload.repository.owner.login,repo:this.payload.repository.name};throw new Error("context.repo requires a GITHUB_REPOSITORY environment variable like 'owner/repo'")}};var P4=D(AIe(),1),hIe=D(eh(),1);var yht=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})};function gIe(t,e){if(!t&&!e.auth)throw new Error("Parameter token or opts.auth is required");if(t&&e.auth)throw new Error("Parameters token and opts.auth may not both be specified");return typeof e.auth=="string"?e.auth:`token ${t}`}i(gIe,"getAuthString");function yIe(t){return new P4.HttpClient().getAgent(t)}i(yIe,"getProxyAgent");function Eht(t){return new P4.HttpClient().getAgentDispatcher(t)}i(Eht,"getProxyAgentDispatcher");function EIe(t){let e=Eht(t);return i((n,s)=>yht(this,void 0,void 0,function*(){return(0,hIe.fetch)(n,Object.assign(Object.assign({},s),{dispatcher:e}))}),"proxyFetch")}i(EIe,"getProxyFetch");function CIe(){return process.env.GITHUB_API_URL||"https://api.github.com"}i(CIe,"getApiBaseUrl");function v4(t){var e;let r=(e=process.env.ACTIONS_ORCHESTRATION_ID)===null||e===void 0?void 0:e.trim();if(r){let s=`actions_orchestration_id/${r.replace(/[^a-z0-9_.-]/gi,"_")}`;return t?.includes(s)?t:`${t?`${t} `:""}${s}`}return t}i(v4,"getUserAgentWithOrchestrationId");function Gd(){return typeof navigator=="object"&&"userAgent"in navigator?navigator.userAgent:typeof process=="object"&&process.version!==void 0?`Node.js/${process.version.substr(1)} (${process.platform}; ${process.arch})`:""}i(Gd,"getUserAgent");function GP(t,e,r,n){if(typeof r!="function")throw new Error("method for before hook must be a function");return n||(n={}),Array.isArray(e)?e.reverse().reduce((s,o)=>GP.bind(null,t,o,s,n),r)():Promise.resolve().then(()=>t.registry[e]?t.registry[e].reduce((s,o)=>o.hook.bind(null,s,n),r)():r(n))}i(GP,"register");function IIe(t,e,r,n){let s=n;t.registry[r]||(t.registry[r]=[]),e==="before"&&(n=i((o,a)=>Promise.resolve().then(s.bind(null,a)).then(o.bind(null,a)),"hook")),e==="after"&&(n=i((o,a)=>{let c;return Promise.resolve().then(o.bind(null,a)).then(l=>(c=l,s(c,a))).then(()=>c)},"hook")),e==="error"&&(n=i((o,a)=>Promise.resolve().then(o.bind(null,a)).catch(c=>s(c,a)),"hook")),t.registry[r].push({hook:n,orig:s})}i(IIe,"addHook");function xIe(t,e,r){if(!t.registry[e])return;let n=t.registry[e].map(s=>s.orig).indexOf(r);n!==-1&&t.registry[e].splice(n,1)}i(xIe,"removeHook");var wIe=Function.bind,bIe=wIe.bind(wIe);function SIe(t,e,r){let n=bIe(xIe,null).apply(null,r?[e,r]:[e]);t.api={remove:n},t.remove=n,["before","error","after","wrap"].forEach(s=>{let o=r?[e,s,r]:[e,s];t[s]=t.api[s]=bIe(IIe,null).apply(null,o)})}i(SIe,"bindApi");function Iht(){let t=Symbol("Singular"),e={registry:{}},r=GP.bind(null,e,t);return SIe(r,e,t),r}i(Iht,"Singular");function xht(){let t={registry:{}},e=GP.bind(null,t);return SIe(e,t),e}i(xht,"Collection");var BIe={Singular:Iht,Collection:xht};var wht="0.0.0-development",bht=`octokit-endpoint.js/${wht} ${Gd()}`,Sht={method:"GET",baseUrl:"https://api.github.com",headers:{accept:"application/vnd.github.v3+json","user-agent":bht},mediaType:{format:""}};function Bht(t){return t?Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{}):{}}i(Bht,"lowercaseKeys");function Rht(t){if(typeof t!="object"||t===null||Object.prototype.toString.call(t)!=="[object Object]")return!1;let e=Object.getPrototypeOf(t);if(e===null)return!0;let r=Object.prototype.hasOwnProperty.call(e,"constructor")&&e.constructor;return typeof r=="function"&&r instanceof r&&Function.prototype.call(r)===Function.prototype.call(t)}i(Rht,"isPlainObject");function TIe(t,e){let r=Object.assign({},t);return Object.keys(e).forEach(n=>{Rht(e[n])?n in t?r[n]=TIe(t[n],e[n]):Object.assign(r,{[n]:e[n]}):Object.assign(r,{[n]:e[n]})}),r}i(TIe,"mergeDeep");function RIe(t){for(let e in t)t[e]===void 0&&delete t[e];return t}i(RIe,"removeUndefinedProperties");function Q4(t,e,r){if(typeof e=="string"){let[s,o]=e.split(" ");r=Object.assign(o?{method:s,url:o}:{url:s},r)}else r=Object.assign({},e);r.headers=Bht(r.headers),RIe(r),RIe(r.headers);let n=TIe(t||{},r);return r.url==="/graphql"&&(t&&t.mediaType.previews?.length&&(n.mediaType.previews=t.mediaType.previews.filter(s=>!n.mediaType.previews.includes(s)).concat(n.mediaType.previews)),n.mediaType.previews=(n.mediaType.previews||[]).map(s=>s.replace(/-preview/,""))),n}i(Q4,"merge");function Nht(t,e){let r=/\?/.test(t)?"&":"?",n=Object.keys(e);return n.length===0?t:t+r+n.map(s=>s==="q"?"q="+e.q.split("+").map(encodeURIComponent).join("+"):`${s}=${encodeURIComponent(e[s])}`).join("&")}i(Nht,"addQueryParameters");var Tht=/\{[^{}}]+\}/g;function Pht(t){return t.replace(/(?:^\W+)|(?:(?r.concat(n),[]):[]}i(vht,"extractUrlVariableNames");function NIe(t,e){let r={__proto__:null};for(let n of Object.keys(t))e.indexOf(n)===-1&&(r[n]=t[n]);return r}i(NIe,"omit");function PIe(t){return t.split(/(%[0-9A-Fa-f]{2})/g).map(function(e){return/%[0-9A-Fa-f]/.test(e)||(e=encodeURI(e).replace(/%5B/g,"[").replace(/%5D/g,"]")),e}).join("")}i(PIe,"encodeReserved");function vg(t){return encodeURIComponent(t).replace(/[!'()*]/g,function(e){return"%"+e.charCodeAt(0).toString(16).toUpperCase()})}i(vg,"encodeUnreserved");function hx(t,e,r){return e=t==="+"||t==="#"?PIe(e):vg(e),r?vg(r)+"="+e:e}i(hx,"encodeValue");function Pg(t){return t!=null}i(Pg,"isDefined");function _4(t){return t===";"||t==="&"||t==="?"}i(_4,"isKeyOperator");function _ht(t,e,r,n){var s=t[r],o=[];if(Pg(s)&&s!=="")if(typeof s=="string"||typeof s=="number"||typeof s=="bigint"||typeof s=="boolean")s=s.toString(),n&&n!=="*"&&(s=s.substring(0,parseInt(n,10))),o.push(hx(e,s,_4(e)?r:""));else if(n==="*")Array.isArray(s)?s.filter(Pg).forEach(function(a){o.push(hx(e,a,_4(e)?r:""))}):Object.keys(s).forEach(function(a){Pg(s[a])&&o.push(hx(e,s[a],a))});else{let a=[];Array.isArray(s)?s.filter(Pg).forEach(function(c){a.push(hx(e,c))}):Object.keys(s).forEach(function(c){Pg(s[c])&&(a.push(vg(c)),a.push(hx(e,s[c].toString())))}),_4(e)?o.push(vg(r)+"="+a.join(",")):a.length!==0&&o.push(a.join(","))}else e===";"?Pg(s)&&o.push(vg(r)):s===""&&(e==="&"||e==="?")?o.push(vg(r)+"="):s===""&&o.push("");return o}i(_ht,"getValues");function Qht(t){return{expand:Dht.bind(null,t)}}i(Qht,"parseUrl");function Dht(t,e){var r=["+","#",".","/",";","?","&"];return t=t.replace(/\{([^\{\}]+)\}|([^\{\}]+)/g,function(n,s,o){if(s){let c="",l=[];if(r.indexOf(s.charAt(0))!==-1&&(c=s.charAt(0),s=s.substr(1)),s.split(/,/g).forEach(function(u){var d=/([^:\*]*)(?::(\d+)|(\*))?/.exec(u);l.push(_ht(e,c,d[1],d[2]||d[3]))}),c&&c!=="+"){var a=",";return c==="?"?a="&":c!=="#"&&(a=c),(l.length!==0?c:"")+l.join(a)}else return l.join(",")}else return PIe(o)}),t==="/"?t:t.replace(/\/$/,"")}i(Dht,"expand");function vIe(t){let e=t.method.toUpperCase(),r=(t.url||"/").replace(/:([a-z]\w+)/g,"{$1}"),n=Object.assign({},t.headers),s,o=NIe(t,["method","baseUrl","url","headers","request","mediaType"]),a=vht(r);r=Qht(r).expand(o),/^http/.test(r)||(r=t.baseUrl+r);let c=Object.keys(t).filter(d=>a.includes(d)).concat("baseUrl"),l=NIe(o,c);if(!/application\/octet-stream/i.test(n.accept)&&(t.mediaType.format&&(n.accept=n.accept.split(/,/).map(d=>d.replace(/application\/vnd(\.\w+)(\.v3)?(\.\w+)?(\+json)?$/,`application/vnd$1$2.${t.mediaType.format}`)).join(",")),r.endsWith("/graphql")&&t.mediaType.previews?.length)){let d=n.accept.match(/(?{let m=t.mediaType.format?`.${t.mediaType.format}`:"+json";return`application/vnd.github.${p}-preview${m}`}).join(",")}return["GET","HEAD"].includes(e)?r=Nht(r,l):"data"in l?s=l.data:Object.keys(l).length&&(s=l),!n["content-type"]&&typeof s<"u"&&(n["content-type"]="application/json; charset=utf-8"),["PATCH","PUT"].includes(e)&&typeof s>"u"&&(s=""),Object.assign({method:e,url:r,headers:n},typeof s<"u"?{body:s}:null,t.request?{request:t.request}:null)}i(vIe,"parse");function kht(t,e,r){return vIe(Q4(t,e,r))}i(kht,"endpointWithDefaults");function _Ie(t,e){let r=Q4(t,e),n=kht.bind(null,r);return Object.assign(n,{DEFAULTS:r,defaults:_Ie.bind(null,r),merge:Q4.bind(null,r),parse:vIe})}i(_Ie,"withDefaults");var QIe=_Ie(null,Sht);var VIe=D(OIe(),1);var Lht=/^-?\d+$/,UIe=/^-?\d+n+$/,D4=JSON.stringify,MIe=JSON.parse,Oht=/^-?\d+n$/,Mht=/([\[:])?"(-?\d+)n"($|([\\n]|\s)*(\s|[\\n])*[,\}\]])/g,Fht=/([\[:])?("-?\d+n+)n("$|"([\\n]|\s)*(\s|[\\n])*[,\}\]])/g,qIe=i((t,e,r)=>"rawJSON"in JSON?D4(t,(a,c)=>typeof c=="bigint"?JSON.rawJSON(c.toString()):typeof e=="function"?e(a,c):(Array.isArray(e)&&e.includes(a),c),r):t?D4(t,(a,c)=>typeof c=="string"&&!!c.match(UIe)||typeof c=="bigint"?c.toString()+"n":typeof e=="function"?e(a,c):(Array.isArray(e)&&e.includes(a),c),r).replace(Mht,"$1$2$3").replace(Fht,"$1$2$3"):D4(t,e,r),"JSONStringify"),Uht=i(()=>JSON.parse("1",(t,e,r)=>!!r&&r.source==="1"),"isContextSourceSupported"),qht=i((t,e,r,n)=>typeof e=="string"&&e.match(Oht)?BigInt(e.slice(0,-1)):typeof e=="string"&&e.match(UIe)?e.slice(0,-1):typeof n!="function"?e:n(t,e,r),"convertMarkedBigIntsReviver"),$ht=i((t,e)=>JSON.parse(t,(r,n,s)=>{let o=typeof n=="number"&&(n>Number.MAX_SAFE_INTEGER||n{if(!t)return MIe(t,e);if(Uht())return $ht(t,e);let r=t.replace(Ght,(n,s,o,a)=>{let c=n[0]==='"';if(c&&!!n.match(Hht))return n.substring(0,n.length-1)+'n"';let u=o||a,d=s&&(s.lengthqht(n,s,o,e))},"JSONParse");var sf=class extends Error{static{i(this,"RequestError")}name;status;request;response;constructor(e,r,n){super(e,{cause:n.cause}),this.name="HttpError",this.status=Number.parseInt(r),Number.isNaN(this.status)&&(this.status=0);"response"in n&&(this.response=n.response);let s=Object.assign({},n.request);n.request.headers.authorization&&(s.headers=Object.assign({},n.request.headers,{authorization:n.request.headers.authorization.replace(/(?"","noop");async function zIe(t){let e=t.request?.fetch||globalThis.fetch;if(!e)throw new Error("fetch is not set. Please pass a fetch implementation as new Octokit({ request: { fetch }}). Learn more at https://github.com/octokit/octokit.js/#fetch-missing");let r=t.request?.log||console,n=t.request?.parseSuccessResponseBody!==!1,s=Yht(t.body)||Array.isArray(t.body)?qIe(t.body):t.body,o=Object.fromEntries(Object.entries(t.headers).map(([p,m])=>[p,String(m)])),a;try{a=await e(t.url,{method:t.method,body:s,redirect:t.request?.redirect,headers:o,signal:t.request?.signal,...t.body&&{duplex:"half"}})}catch(p){let m="Unknown Error";if(p instanceof Error){if(p.name==="AbortError")throw p.status=500,p;m=p.message,p.name==="TypeError"&&"cause"in p&&(p.cause instanceof Error?m=p.cause.message:typeof p.cause=="string"&&(m=p.cause))}let f=new sf(m,500,{request:t});throw f.cause=p,f}let c=a.status,l=a.url,u={};for(let[p,m]of a.headers)u[p]=m;let d={url:l,status:c,headers:u,data:""};if("deprecation"in u){let p=u.link&&u.link.match(/<([^<>]+)>; rel="deprecation"/),m=p&&p.pop();r.warn(`[@octokit/request] "${t.method} ${t.url}" is deprecated. It is scheduled to be removed on ${u.sunset}${m?`. See ${m}`:""}`)}if(c===204||c===205)return d;if(t.method==="HEAD"){if(c<400)return d;throw new sf(a.statusText,c,{response:d,request:t})}if(c===304)throw d.data=await k4(a),new sf("Not modified",c,{response:d,request:t});if(c>=400)throw d.data=await k4(a),new sf(jht(d.data),c,{response:d,request:t});return d.data=n?await k4(a):a.body,d}i(zIe,"fetchWrapper");async function k4(t){let e=t.headers.get("content-type");if(!e)return t.text().catch(HIe);let r=(0,VIe.safeParse)(e);if(Wht(r)){let n="";try{return n=await t.text(),GIe(n)}catch{return n}}else return r.type.startsWith("text/")||r.parameters.charset?.toLowerCase()==="utf-8"?t.text().catch(HIe):t.arrayBuffer().catch(()=>new ArrayBuffer(0))}i(k4,"getResponseData");function Wht(t){return t.type==="application/json"||t.type==="application/scim+json"}i(Wht,"isJSONResponse");function jht(t){if(typeof t=="string")return t;if(t instanceof ArrayBuffer)return"Unknown error";if("message"in t){let e="documentation_url"in t?` - ${t.documentation_url}`:"";return Array.isArray(t.errors)?`${t.message}: ${t.errors.map(r=>JSON.stringify(r)).join(", ")}${e}`:`${t.message}${e}`}return`Unknown error: ${JSON.stringify(t)}`}i(jht,"toErrorMessage");function L4(t,e){let r=t.defaults(e);return Object.assign(i(function(s,o){let a=r.merge(s,o);if(!a.request||!a.request.hook)return zIe(r.parse(a));let c=i((l,u)=>zIe(r.parse(r.merge(l,u))),"request2");return Object.assign(c,{endpoint:r,defaults:L4.bind(null,r)}),a.request.hook(c,a)},"newApi"),{endpoint:r,defaults:L4.bind(null,r)})}i(L4,"withDefaults");var yx=L4(QIe,Vht);var Jht="0.0.0-development";function Kht(t){return`Request failed due to following response errors: `+t.errors.map(e=>` - ${e.message}`).join(` -`)}var Jht=class extends Error{constructor(t,e,r){super(jht(r)),this.request=t,this.headers=e,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Kht=["method","baseUrl","url","headers","request","query","mediaType","operationName"],Xht=["query","method","url"],VIe=/\/api\/v3\/?$/;function Zht(t,e,r){if(r){if(typeof e=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let i in r)if(Xht.includes(i))return Promise.reject(new Error(`[@octokit/graphql] "${i}" cannot be used as variable name`))}let n=typeof e=="string"?Object.assign({query:e},r):e,s=Object.keys(n).reduce((i,a)=>Kht.includes(a)?(i[a]=n[a],i):(i.variables||(i.variables={}),i.variables[a]=n[a],i),{}),o=n.baseUrl||t.endpoint.DEFAULTS.baseUrl;return VIe.test(o)&&(s.url=o.replace(VIe,"/api/graphql")),t(s).then(i=>{if(i.data.errors){let a={};for(let c of Object.keys(i.headers))a[c]=i.headers[c];throw new Jht(s,a,i.data)}return i.data.data})}function L4(t,e){let r=t.defaults(e);return Object.assign((s,o)=>Zht(r,s,o),{defaults:L4.bind(null,r),endpoint:r.endpoint})}var onr=L4(hx,{headers:{"user-agent":`octokit-graphql.js/${Wht} ${$d()}`},method:"POST",url:"/graphql"});function YIe(t){return L4(t,{method:"POST",url:"/graphql"})}var O4="(?:[a-zA-Z0-9_-]+)",WIe="\\.",jIe=new RegExp(`^${O4}${WIe}${O4}${WIe}${O4}$`),egt=jIe.test.bind(jIe);async function tgt(t){let e=egt(t),r=t.startsWith("v1.")||t.startsWith("ghs_"),n=t.startsWith("ghu_");return{type:"token",token:t,tokenType:e?"app":r?"installation":n?"user-to-server":"oauth"}}function rgt(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}async function ngt(t,e,r,n){let s=e.endpoint.merge(r,n);return s.headers.authorization=rgt(t),e(s)}var JIe=function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof e!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(tgt.bind(null,e),{hook:ngt.bind(null,e)})};var M4="7.0.6";var KIe=()=>{},sgt=console.warn.bind(console),ogt=console.error.bind(console);function igt(t={}){return typeof t.debug!="function"&&(t.debug=KIe),typeof t.info!="function"&&(t.info=KIe),typeof t.warn!="function"&&(t.warn=sgt),typeof t.error!="function"&&(t.error=ogt),t}var XIe=`octokit-core.js/${M4} ${$d()}`,VP=class{static VERSION=M4;static defaults(e){return class extends this{constructor(...n){let s=n[0]||{};if(typeof e=="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}}}static plugins=[];static plugin(...e){let r=this.plugins;return class extends this{static plugins=r.concat(e.filter(s=>!r.includes(s)))}}constructor(e={}){let r=new SIe.Collection,n={baseUrl:hx.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=e.userAgent?`${e.userAgent} ${XIe}`:XIe,e.baseUrl&&(n.baseUrl=e.baseUrl),e.previews&&(n.mediaType.previews=e.previews),e.timeZone&&(n.headers["time-zone"]=e.timeZone),this.request=hx.defaults(n),this.graphql=YIe(this.request).defaults(n),this.log=igt(e.log),this.hook=r,e.authStrategy){let{authStrategy:o,...i}=e,a=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:i},e.auth));r.wrap("request",a.hook),this.auth=a}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=JIe(e.auth);r.wrap("request",o.hook),this.auth=o}let s=this.constructor;for(let o=0;o({async next(){if(!a)return{done:!0};try{let c=await s({method:o,url:a,headers:i}),l=pgt(c);if(a=((l.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1],!a&&"total_commits"in l.data){let u=new URL(l.url),d=u.searchParams,p=parseInt(d.get("page")||"1",10),m=parseInt(d.get("per_page")||"250",10);p*m{if(s.done)return e;let o=!1;function i(){o=!0}return e=e.concat(n?n(s.value,i):s.value.data),o?e:txe(t,e,r,n)})}var Bnr=Object.assign(exe,{iterator:$4});function G4(t){return{paginate:Object.assign(exe.bind(null,t),{iterator:$4.bind(null,t)})}}G4.VERSION=dgt;var vnr=new Ng,H4=EIe(),mgt={baseUrl:H4,request:{agent:gIe(H4),fetch:yIe(H4)}},rxe=VP.plugin(q4,G4).defaults(mgt);function nxe(t,e){let r=Object.assign({},e||{}),n=hIe(t,r);n&&(r.auth=n);let s=P4(r.userAgent);return s&&(r.userAgent=s),r}var vg=new Ng;function sxe(t,e,...r){let n=rxe.plugin(...r);return new n(nxe(t,e))}var yx=Q(require("http"),1),W4=Q(require("https"),1);function z4(t){let e=t.protocol==="https:";if(Agt(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new YP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new YP(`http://${r}`)}else return}function Agt(t){if(!t.hostname)return!1;let e=t.hostname;if(hgt(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(i=>i.trim().toUpperCase()).filter(i=>i))if(o==="*"||s.some(i=>i===o||i.endsWith(`.${o}`)||o.startsWith(".")&&i.endsWith(`${o}`)))return!0;return!1}function hgt(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}var YP=class extends URL{constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var Gd=Q(zy(),1),oxe=Q(ZA(),1),Ur=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(i){i(o)})}return new(r||(r=Promise))(function(o,i){function a(u){try{l(n.next(u))}catch(d){i(d)}}function c(u){try{l(n.throw(u))}catch(d){i(d)}}function l(u){u.done?o(u.value):s(u.value).then(a,c)}l((n=n.apply(t,e||[])).next())})},vi;(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"})(vi||(vi={}));var Ns;(function(t){t.Accept="accept",t.ContentType="content-type"})(Ns||(Ns={}));var Au;(function(t){t.ApplicationJson="application/json"})(Au||(Au={}));var ygt=[vi.MovedPermanently,vi.ResourceMoved,vi.SeeOther,vi.TemporaryRedirect,vi.PermanentRedirect],Egt=[vi.BadGateway,vi.ServiceUnavailable,vi.GatewayTimeout],Cgt=["OPTIONS","GET","DELETE","HEAD"],Igt=10,xgt=5,V4=class t extends Error{constructor(e,r){super(e),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,t.prototype)}},Y4=class{constructor(e){this.message=e}readBody(){return Ur(this,void 0,void 0,function*(){return new Promise(e=>Ur(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return Ur(this,void 0,void 0,function*(){return new Promise(e=>Ur(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};var WP=class{constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return Ur(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return Ur(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return Ur(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return Ur(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return Ur(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return Ur(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return Ur(this,arguments,void 0,function*(r,n={}){n[Ns.Accept]=this._getExistingOrDefaultHeader(n,Ns.Accept,Au.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let a=yield this.post(n,i,o);return this._processResponse(a,this.requestOptions)})}putJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let a=yield this.put(n,i,o);return this._processResponse(a,this.requestOptions)})}patchJson(e,r){return Ur(this,arguments,void 0,function*(n,s,o={}){let i=JSON.stringify(s,null,2);o[Ns.Accept]=this._getExistingOrDefaultHeader(o,Ns.Accept,Au.ApplicationJson),o[Ns.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,Au.ApplicationJson);let a=yield this.patch(n,i,o);return this._processResponse(a,this.requestOptions)})}request(e,r,n,s){return Ur(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),i=this._prepareRequest(e,o,s),a=this._allowRetries&&Cgt.includes(e)?this._maxRetries+1:1,c=0,l;do{if(l=yield this.requestRaw(i,n),l&&l.message&&l.message.statusCode===vi.Unauthorized){let d;for(let p of this.handlers)if(p.canHandleAuthentication(l)){d=p;break}return d?d.handleAuthentication(this,i,n):l}let u=this._maxRedirects;for(;l.message.statusCode&&ygt.includes(l.message.statusCode)&&this._allowRedirects&&u>0;){let d=l.message.headers.location;if(!d)break;let p=new URL(d);if(o.protocol==="https:"&&o.protocol!==p.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 l.readBody(),p.hostname!==o.hostname)for(let m in s)m.toLowerCase()==="authorization"&&delete s[m];i=this._prepareRequest(e,p,s),l=yield this.requestRaw(i,n),u--}if(!l.message.statusCode||!Egt.includes(l.message.statusCode))return l;c+=1,c{function o(i,a){i?s(i):a?n(a):s(new Error("Unknown error"))}this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(c,l){s||(s=!0,n(c,l))}let i=e.httpModule.request(e.options,c=>{let l=new Y4(c);o(void 0,l)}),a;i.on("socket",c=>{a=c}),i.setTimeout(this._socketTimeout||3*6e4,()=>{a&&a.end(),o(new Error(`Request timeout: ${e.options.path}`))}),i.on("error",function(c){o(c)}),r&&typeof r=="string"&&i.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){i.end()}),r.pipe(i)):i.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=z4(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?W4:yx;let i=o?443:80;if(s.options={},s.options.host=s.parsedUrl.hostname,s.options.port=s.parsedUrl.port?parseInt(s.parsedUrl.port):i,s.options.path=(s.parsedUrl.pathname||"")+(s.parsedUrl.search||""),s.options.method=e,s.options.headers=this._mergeHeaders(n),this.userAgent!=null&&(s.options.headers["user-agent"]=this.userAgent),s.options.agent=this._getAgent(s.parsedUrl),this.handlers)for(let a of this.handlers)a.prepareRequest(s.options);return s}_mergeHeaders(e){return this.requestOptions&&this.requestOptions.headers?Object.assign({},gx(this.requestOptions.headers),gx(e||{})):gx(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let i=gx(this.requestOptions.headers)[r];i&&(s=typeof i=="number"?i.toString():i)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=gx(this.requestOptions.headers)[Ns.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[Ns.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=z4(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",i=100;if(this.requestOptions&&(i=this.requestOptions.maxSockets||yx.globalAgent.maxSockets),n&&n.hostname){let a={maxSockets:i,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},c,l=n.protocol==="https:";o?c=l?Gd.httpsOverHttps:Gd.httpsOverHttp:c=l?Gd.httpOverHttps:Gd.httpOverHttp,r=c(a),this._proxyAgent=r}if(!r){let a={keepAlive:this._keepAlive,maxSockets:i};r=o?new W4.Agent(a):new yx.Agent(a),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new oxe.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return Ur(this,void 0,void 0,function*(){e=Math.min(Igt,e);let r=xgt*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return Ur(this,void 0,void 0,function*(){return new Promise((n,s)=>Ur(this,void 0,void 0,function*(){let o=e.message.statusCode||0,i={statusCode:o,result:null,headers:{}};o===vi.NotFound&&n(i);function a(u,d){if(typeof d=="string"){let p=new Date(d);if(!isNaN(p.valueOf()))return p}return d}let c,l;try{l=yield e.readBody(),l&&l.length>0&&(r&&r.deserializeDates?c=JSON.parse(l,a):c=JSON.parse(l),i.result=c),i.headers=e.message.headers}catch{}if(o>299){let u;c&&c.message?u=c.message:l&&l.length>0?u=l:u=`Failed request: (${o})`;let d=new V4(u,o);d.result=i.result,s(d)}else n(i)}))})}},gx=t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{});var of=class extends Error{};of.prototype.name="InvalidTokenError";function bgt(t){return decodeURIComponent(atob(t).replace(/(.)/g,(e,r)=>{let n=r.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n}))}function Sgt(t){let e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw new Error("base64 string is not of the correct length")}try{return bgt(e)}catch{return atob(e)}}function ixe(t,e){if(typeof t!="string")throw new of("Invalid token specified: must be a string");e||(e={});let r=e.header===!0?0:1,n=t.split(".")[r];if(typeof n!="string")throw new of(`Invalid token specified: missing part #${r+1}`);let s;try{s=Sgt(n)}catch(o){throw new of(`Invalid token specified: invalid base64 for part #${r+1} (${o.message})`)}try{return JSON.parse(s)}catch(o){throw new of(`Invalid token specified: invalid json for part #${r+1} (${o.message})`)}}var _g=class t{githubToken;octokit;constructor(e){this.githubToken=e?.token||process.env.GITHUB_TOKEN,this.octokit=sxe(`${this.githubToken}`)}repoData(){return this.octokit.rest.repos.get({...vg.repo}).then(e=>e.data)}async releases(e,r){let n;try{n=await this.releasesRaw(e,r)}catch(s){if(!this.githubToken)throw s;n=await this.releasesRaw(e,r,this.githubToken)}return n}async releasesRaw(e,r,n){let s=`https://raw.githubusercontent.com/${r.owner}/${r.repo}/${r.ref}/${r.path}`,i=await new WP("docker-actions-toolkit").get(s,n?{Authorization:`token ${n}`}:void 0),a=await i.readBody(),c=i.message.statusCode||500;if(c>=400)throw new Error(`Failed to get ${e} releases from ${s} with status code ${c}: ${a}`);return JSON.parse(a)}static get context(){return vg}static get serverURL(){return process.env.GITHUB_SERVER_URL||"https://github.com"}static get apiURL(){return process.env.GITHUB_API_URL||"https://api.github.com"}static get isGHES(){let r=new URL(t.serverURL).hostname.trimEnd().toUpperCase(),n=r==="GITHUB.COM",s=r.endsWith(".GHE.COM"),o=r.endsWith(".LOCALHOST");return!n&&!s&&!o}static get repository(){return`${vg.repo.owner}/${vg.repo.repo}`}static get workspace(){return process.env.GITHUB_WORKSPACE||process.cwd()}static get runId(){return process.env.GITHUB_RUN_ID?+process.env.GITHUB_RUN_ID:vg.runId}static get runAttempt(){return process.env.GITHUB_RUN_ATTEMPT?+process.env.GITHUB_RUN_ATTEMPT:1}static workflowRunURL(e){return`${t.serverURL}/${t.repository}/actions/runs/${t.runId}${e?`/attempts/${t.runAttempt}`:""}`}static get actionsRuntimeToken(){let e=process.env.ACTIONS_RUNTIME_TOKEN||"";return e?ixe(e):void 0}static async printActionsRuntimeTokenACs(){let e;try{e=t.actionsRuntimeToken}catch(r){throw new Error(`Cannot parse GitHub Actions Runtime Token: ${r.message}`)}if(!e)throw new Error("ACTIONS_RUNTIME_TOKEN not set");try{JSON.parse(`${e.ac}`).forEach(r=>{let n;switch(r.Permission){case 1:n="read";break;case 2:n="write";break;case 3:n="read/write";break;default:n=`unimplemented (${r.Permission})`}Je(`${r.Scope}: ${n}`)})}catch(r){throw new Error(`Cannot parse GitHub Actions Runtime Token ACs: ${r.message}`)}}};var jP=class t{_version;_versionOnce;_standalone;static containerNamePrefix="buildx_buildkit_";constructor(e){this._standalone=e?.standalone,this._version="",this._versionOnce=!1}static get configDir(){return process.env.BUILDX_CONFIG||so.default.join(qd.configDir,"buildx")}static get refsDir(){return so.default.join(t.configDir,"refs")}static get refsGroupDir(){return so.default.join(t.refsDir,"__group__")}static get certsDir(){return so.default.join(t.configDir,"certs")}async isStandalone(){let e=this._standalone??!await qd.isAvailable();return $(`Buildx.isStandalone: ${e}`),e}async getCommand(e){let r=await this.isStandalone();return{command:r?"buildx":"docker",args:r?e:["buildx",...e]}}async isAvailable(){let e=await this.getCommand([]),r=await uu.getExecOutput(e.command,e.args,{ignoreReturnCode:!0,silent:!0}).then(n=>n.stderr.length>0&&n.exitCode!=0?($(`Buildx.isAvailable cmd err: ${n.stderr.trim()}`),!1):n.exitCode==0).catch(n=>($(`Buildx.isAvailable error: ${n}`),!1));return $(`Buildx.isAvailable: ${r}`),r}async version(){if(this._versionOnce)return this._version;this._versionOnce=!0;let e=await this.getCommand(["version"]);return this._version=await uu.getExecOutput(e.command,e.args,{ignoreReturnCode:!0,silent:!0}).then(r=>{if(r.stderr.length>0&&r.exitCode!=0)throw new Error(r.stderr.trim());return t.parseVersion(r.stdout.trim())}),this._version}async printVersion(){let e=await this.getCommand(["version"]);await uu.exec(e.command,e.args,{failOnStdErr:!1})}static parseVersion(e){let r=/\sv?([0-9a-f]{7}|[0-9.]+)/.exec(e);if(!r)throw new Error("Cannot parse buildx version");return r[1]}async versionSatisfies(e,r){let n=r??await this.version();if(!n)return $("Buildx.versionSatisfies false: undefined version"),!1;let s=axe.satisfies(n,e)||/^[0-9a-f]{7}$/.exec(n)!==null;return $(`Buildx.versionSatisfies ${n} statisfies ${e}: ${s}`),s}static resolveCertsDriverOpts(e,r,n){let s;try{s=new URL(r)}catch{return[]}if(s.protocol!="tcp:")return[];let o=[];if(Object.keys(n).length==0)return o;let i=s.hostname;if(s.port.length>0&&(i+=`-${s.port}`),n.cacert!==void 0){let a=so.default.join(t.certsDir,`cacert_${i}.pem`);_i.default.writeFileSync(a,n.cacert),o.push(`cacert=${a}`)}if(n.cert!==void 0){let a=so.default.join(t.certsDir,`cert_${i}.pem`);_i.default.writeFileSync(a,n.cert),o.push(`cert=${a}`)}if(n.key!==void 0){let a=so.default.join(t.certsDir,`key_${i}.pem`);_i.default.writeFileSync(a,n.key),o.push(`key=${a}`)}return e!="remote"?[]:o}static localState(e,r){let[n,s,o]=e.split("/");if(!n||!s||!o)throw new Error(`Invalid build reference: ${e}`);let i=so.default.join(r||t.refsDir,n,s,o);if(!_i.default.existsSync(i))throw new Error(`Local state not found in ${i}`);return t.fixLocalState(JSON.parse(_i.default.readFileSync(i,"utf8")))}static fixLocalState(e){let r=function(i){let a=i.match(/(.*)(https?:\/{1,2}\S+|ssh:\/{1,2}\S+|git:\/{1,2}\S+)/i);if(a&&a.length==3){let c=a[1],l=a[2];return l.startsWith("https:/")&&!l.startsWith("https://")&&(l=l.replace("https:/","https://")),l.startsWith("http:/")&&!l.startsWith("http://")&&(l=l.replace("http:/","http://")),l.startsWith("ssh:/")&&!l.startsWith("ssh://")&&(l=l.replace("ssh:/","ssh://")),l.startsWith("git:/")&&!l.startsWith("git://")&&(l=l.replace("git:/","git://")),[l,c,!0]}return[i,"",!1]},[n,s,o]=r(e.LocalPath);return o&&(e.LocalPath=n,e.DockerfilePath.indexOf(s)===0&&(e.DockerfilePath=e.DockerfilePath.substring(s.length))),e.LocalPath=e.LocalPath.endsWith("/-")?"-":e.LocalPath,e.DockerfilePath=e.DockerfilePath.endsWith("/-")?"-":e.DockerfilePath,e}static refs(e,r={}){let{dir:n,builderName:s,nodeName:o,since:i}=e,a=so.default.resolve(n);if(e.builderName&&(a=so.default.join(a,e.builderName)),e.nodeName&&(a=so.default.join(a,e.nodeName)),!_i.default.existsSync(a))return r;let c=_i.default.readdirSync(a);for(let l of c){let u=so.default.join(a,l),d=_i.default.statSync(u);if(d.isDirectory()){let p={...e};if(s)o||(p.nodeName=l);else{if(l==="__group__")continue;p.builderName=l}t.refs(p,r)}else{if(i&&d.mtimeatob(y)).join(" "),p=atob(c.short).replace(/\s\(line \d+\)$/,"");c.url&&(p+=` -More info: ${c.url}`);let m=c.range&&c.range.length>0?c.range[0]?.start.line:void 0,h=!1;for(let y of i)if(y.remote||y.path.endsWith(l)&&y.content===u){a.push({title:d,message:p,file:y.path,startLine:m}),h=!0;break}h||$(`Buildx.convertWarningsToGitHubAnnotations: skipping warning without matching Dockerfile ${l}: ${d}`)}return a}};function cxe(){return{registry:oa("registry"),username:oa("username"),password:oa("password"),scope:oa("scope"),ecr:oa("ecr"),logout:eoe("logout"),registryAuth:oa("registry-auth")}}function lxe(t){if(t.registryAuth&&(t.registry||t.username||t.password||t.scope||t.ecr))throw new Error("Cannot use registry-auth with other inputs");let e=[];if(t.registryAuth)e=Khe(t.registryAuth).map(r=>{So(r.password);let n=r.registry||"docker.io";return{registry:n,username:r.username,password:r.password,scope:r.scope,ecr:r.ecr||"auto",configDir:JP(n,r.scope)}});else{let r=t.registry||"docker.io";e.push({registry:r,username:t.username,password:t.password,scope:t.scope,ecr:t.ecr||"auto",configDir:JP(r,t.scope)})}if(e.length==0)throw new Error("No registry to login");return e}function JP(t,e){if(Bgt()||!e||e==="")return"";let r=j4.default.join(jP.configDir,"config",t==="docker.io"?"registry-1.docker.io":t);return e.startsWith("@")?r+=e:r=j4.default.join(r,e),r}function Bgt(){return process.env.DOCKER_LOGIN_SCOPE_DISABLED?Ud.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED):!1}var ZOe=Q(VLe(),1),eMe=Q(kOe(),1),F9=Q(Pu(),1);var FOe=Q(require("net"),1),UOe=Q(require("tls"),1),qOe=Q(Cm(),1),$Oe=require("events");var LOe=Q(require("net"),1),OOe=Q(require("http"),1),MOe=require("https"),Sl=Symbol("AgentBaseInternalState"),HL=class extends OOe.Agent{constructor(e){super(e),this[Sl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new LOe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?MOe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),i=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(a=>{if(this.decrementSockets(o,i),typeof a.addRequest=="function")try{return a.addRequest(e,s)}catch(c){return n(c)}this[Sl].currentSocket=a,super.createSocket(e,r,n)},a=>{this.decrementSockets(o,i),n(a)})}createConnection(){let e=this[Sl].currentSocket;if(this[Sl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Sl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Sl]&&(this[Sl].defaultPort=e)}get protocol(){return this[Sl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Sl]&&(this[Sl].protocol=e)}};var O9=require("url"),Hy=(0,qOe.default)("http-proxy-agent"),x0=class extends HL{constructor(e,r){super(r),this.proxy=typeof e=="string"?new O9.URL(e):e,this.proxyHeaders=r?.headers??{},Hy("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?JMt(r,"headers"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",i=`${s}//${o}`,a=new O9.URL(e.path,i);r.port!==80&&(a.port=String(r.port)),e.path=String(a);let c=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let l=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;c["Proxy-Authorization"]=`Basic ${Buffer.from(l).toString("base64")}`}c["Proxy-Connection"]||(c["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let l of Object.keys(c)){let u=c[l];u&&e.setHeader(l,u)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;Hy("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(Hy("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r +`)}i(Kht,"_buildMessageForResponseErrors");var Xht=class extends Error{static{i(this,"GraphqlResponseError")}constructor(t,e,r){super(Kht(r)),this.request=t,this.headers=e,this.response=r,this.errors=r.errors,this.data=r.data,Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}name="GraphqlResponseError";errors;data},Zht=["method","baseUrl","url","headers","request","query","mediaType","operationName"],egt=["query","method","url"],YIe=/\/api\/v3\/?$/;function tgt(t,e,r){if(r){if(typeof e=="string"&&"query"in r)return Promise.reject(new Error('[@octokit/graphql] "query" cannot be used as variable name'));for(let a in r)if(egt.includes(a))return Promise.reject(new Error(`[@octokit/graphql] "${a}" cannot be used as variable name`))}let n=typeof e=="string"?Object.assign({query:e},r):e,s=Object.keys(n).reduce((a,c)=>Zht.includes(c)?(a[c]=n[c],a):(a.variables||(a.variables={}),a.variables[c]=n[c],a),{}),o=n.baseUrl||t.endpoint.DEFAULTS.baseUrl;return YIe.test(o)&&(s.url=o.replace(YIe,"/api/graphql")),t(s).then(a=>{if(a.data.errors){let c={};for(let l of Object.keys(a.headers))c[l]=a.headers[l];throw new Xht(s,c,a.data)}return a.data.data})}i(tgt,"graphql");function O4(t,e){let r=t.defaults(e);return Object.assign(i((s,o)=>tgt(r,s,o),"newApi"),{defaults:O4.bind(null,r),endpoint:r.endpoint})}i(O4,"withDefaults");var Efr=O4(yx,{headers:{"user-agent":`octokit-graphql.js/${Jht} ${Gd()}`},method:"POST",url:"/graphql"});function WIe(t){return O4(t,{method:"POST",url:"/graphql"})}i(WIe,"withCustomRequest");var M4="(?:[a-zA-Z0-9_-]+)",jIe="\\.",JIe=new RegExp(`^${M4}${jIe}${M4}${jIe}${M4}$`),rgt=JIe.test.bind(JIe);async function ngt(t){let e=rgt(t),r=t.startsWith("v1.")||t.startsWith("ghs_"),n=t.startsWith("ghu_");return{type:"token",token:t,tokenType:e?"app":r?"installation":n?"user-to-server":"oauth"}}i(ngt,"auth");function sgt(t){return t.split(/\./).length===3?`bearer ${t}`:`token ${t}`}i(sgt,"withAuthorizationPrefix");async function ogt(t,e,r,n){let s=e.endpoint.merge(r,n);return s.headers.authorization=sgt(t),e(s)}i(ogt,"hook");var KIe=i(function(e){if(!e)throw new Error("[@octokit/auth-token] No token passed to createTokenAuth");if(typeof e!="string")throw new Error("[@octokit/auth-token] Token passed to createTokenAuth is not a string");return e=e.replace(/^(token|bearer) +/i,""),Object.assign(ngt.bind(null,e),{hook:ogt.bind(null,e)})},"createTokenAuth2");var F4="7.0.6";var XIe=i(()=>{},"noop"),igt=console.warn.bind(console),agt=console.error.bind(console);function cgt(t={}){return typeof t.debug!="function"&&(t.debug=XIe),typeof t.info!="function"&&(t.info=XIe),typeof t.warn!="function"&&(t.warn=igt),typeof t.error!="function"&&(t.error=agt),t}i(cgt,"createLogger");var ZIe=`octokit-core.js/${F4} ${Gd()}`,YP=class{static{i(this,"Octokit")}static VERSION=F4;static defaults(e){return class extends this{static{i(this,"OctokitWithDefaults")}constructor(...n){let s=n[0]||{};if(typeof e=="function"){super(e(s));return}super(Object.assign({},e,s,s.userAgent&&e.userAgent?{userAgent:`${s.userAgent} ${e.userAgent}`}:null))}}}static plugins=[];static plugin(...e){let r=this.plugins;return class extends this{static{i(this,"NewOctokit")}static plugins=r.concat(e.filter(s=>!r.includes(s)))}}constructor(e={}){let r=new BIe.Collection,n={baseUrl:yx.endpoint.DEFAULTS.baseUrl,headers:{},request:Object.assign({},e.request,{hook:r.bind(null,"request")}),mediaType:{previews:[],format:""}};if(n.headers["user-agent"]=e.userAgent?`${e.userAgent} ${ZIe}`:ZIe,e.baseUrl&&(n.baseUrl=e.baseUrl),e.previews&&(n.mediaType.previews=e.previews),e.timeZone&&(n.headers["time-zone"]=e.timeZone),this.request=yx.defaults(n),this.graphql=WIe(this.request).defaults(n),this.log=cgt(e.log),this.hook=r,e.authStrategy){let{authStrategy:o,...a}=e,c=o(Object.assign({request:this.request,log:this.log,octokit:this,octokitOptions:a},e.auth));r.wrap("request",c.hook),this.auth=c}else if(!e.auth)this.auth=async()=>({type:"unauthenticated"});else{let o=KIe(e.auth);r.wrap("request",o.hook),this.auth=o}let s=this.constructor;for(let o=0;o({async next(){if(!c)return{done:!0};try{let l=await s({method:o,url:c,headers:a}),u=fgt(l);if(c=((u.headers.link||"").match(/<([^<>]+)>;\s*rel="next"/)||[])[1],!c&&"total_commits"in u.data){let d=new URL(u.url),p=d.searchParams,m=parseInt(p.get("page")||"1",10),f=parseInt(p.get("per_page")||"250",10);m*f{if(s.done)return e;let o=!1;function a(){o=!0}return i(a,"done"),e=e.concat(n?n(s.value,a):s.value.data),o?e:rxe(t,e,r,n)})}i(rxe,"gather");var zfr=Object.assign(txe,{iterator:G4});function H4(t){return{paginate:Object.assign(txe.bind(null,t),{iterator:G4.bind(null,t)})}}i(H4,"paginateRest");H4.VERSION=mgt;var Kfr=new Tg,z4=CIe(),Agt={baseUrl:z4,request:{agent:yIe(z4),fetch:EIe(z4)}},nxe=YP.plugin($4,H4).defaults(Agt);function sxe(t,e){let r=Object.assign({},e||{}),n=gIe(t,r);n&&(r.auth=n);let s=v4(r.userAgent);return s&&(r.userAgent=s),r}i(sxe,"getOctokitOptions");var _g=new Tg;function oxe(t,e,...r){let n=nxe.plugin(...r);return new n(sxe(t,e))}i(oxe,"getOctokit");var Cx=D(require("http"),1),j4=D(require("https"),1);function V4(t){let e=t.protocol==="https:";if(ggt(t))return;let r=e?process.env.https_proxy||process.env.HTTPS_PROXY:process.env.http_proxy||process.env.HTTP_PROXY;if(r)try{return new WP(r)}catch{if(!r.startsWith("http://")&&!r.startsWith("https://"))return new WP(`http://${r}`)}else return}i(V4,"getProxyUrl");function ggt(t){if(!t.hostname)return!1;let e=t.hostname;if(ygt(e))return!0;let r=process.env.no_proxy||process.env.NO_PROXY||"";if(!r)return!1;let n;t.port?n=Number(t.port):t.protocol==="http:"?n=80:t.protocol==="https:"&&(n=443);let s=[t.hostname.toUpperCase()];typeof n=="number"&&s.push(`${s[0]}:${n}`);for(let o of r.split(",").map(a=>a.trim().toUpperCase()).filter(a=>a))if(o==="*"||s.some(a=>a===o||a.endsWith(`.${o}`)||o.startsWith(".")&&a.endsWith(`${o}`)))return!0;return!1}i(ggt,"checkBypass");function ygt(t){let e=t.toLowerCase();return e==="localhost"||e.startsWith("127.")||e.startsWith("[::1]")||e.startsWith("[0:0:0:0:0:0:0:1]")}i(ygt,"isLoopbackAddress");var WP=class extends URL{static{i(this,"DecodedURL")}constructor(e,r){super(e,r),this._decodedUsername=decodeURIComponent(super.username),this._decodedPassword=decodeURIComponent(super.password)}get username(){return this._decodedUsername}get password(){return this._decodedPassword}};var Hd=D(Yy(),1),ixe=D(eh(),1);var qr=function(t,e,r,n){function s(o){return o instanceof r?o:new r(function(a){a(o)})}return i(s,"adopt"),new(r||(r=Promise))(function(o,a){function c(d){try{u(n.next(d))}catch(p){a(p)}}i(c,"fulfilled");function l(d){try{u(n.throw(d))}catch(p){a(p)}}i(l,"rejected");function u(d){d.done?o(d.value):s(d.value).then(c,l)}i(u,"step"),u((n=n.apply(t,e||[])).next())})},_i;(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"})(_i||(_i={}));var Ts;(function(t){t.Accept="accept",t.ContentType="content-type"})(Ts||(Ts={}));var hu;(function(t){t.ApplicationJson="application/json"})(hu||(hu={}));var Cgt=[_i.MovedPermanently,_i.ResourceMoved,_i.SeeOther,_i.TemporaryRedirect,_i.PermanentRedirect],Igt=[_i.BadGateway,_i.ServiceUnavailable,_i.GatewayTimeout],xgt=["OPTIONS","GET","DELETE","HEAD"],wgt=10,bgt=5,Y4=class t extends Error{static{i(this,"HttpClientError")}constructor(e,r){super(e),this.name="HttpClientError",this.statusCode=r,Object.setPrototypeOf(this,t.prototype)}},W4=class{static{i(this,"HttpClientResponse")}constructor(e){this.message=e}readBody(){return qr(this,void 0,void 0,function*(){return new Promise(e=>qr(this,void 0,void 0,function*(){let r=Buffer.alloc(0);this.message.on("data",n=>{r=Buffer.concat([r,n])}),this.message.on("end",()=>{e(r.toString())})}))})}readBodyBuffer(){return qr(this,void 0,void 0,function*(){return new Promise(e=>qr(this,void 0,void 0,function*(){let r=[];this.message.on("data",n=>{r.push(n)}),this.message.on("end",()=>{e(Buffer.concat(r))})}))})}};var jP=class{static{i(this,"HttpClient")}constructor(e,r,n){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=r||[],this.requestOptions=n,n&&(n.ignoreSslError!=null&&(this._ignoreSslError=n.ignoreSslError),this._socketTimeout=n.socketTimeout,n.allowRedirects!=null&&(this._allowRedirects=n.allowRedirects),n.allowRedirectDowngrade!=null&&(this._allowRedirectDowngrade=n.allowRedirectDowngrade),n.maxRedirects!=null&&(this._maxRedirects=Math.max(n.maxRedirects,0)),n.keepAlive!=null&&(this._keepAlive=n.keepAlive),n.allowRetries!=null&&(this._allowRetries=n.allowRetries),n.maxRetries!=null&&(this._maxRetries=n.maxRetries))}options(e,r){return qr(this,void 0,void 0,function*(){return this.request("OPTIONS",e,null,r||{})})}get(e,r){return qr(this,void 0,void 0,function*(){return this.request("GET",e,null,r||{})})}del(e,r){return qr(this,void 0,void 0,function*(){return this.request("DELETE",e,null,r||{})})}post(e,r,n){return qr(this,void 0,void 0,function*(){return this.request("POST",e,r,n||{})})}patch(e,r,n){return qr(this,void 0,void 0,function*(){return this.request("PATCH",e,r,n||{})})}put(e,r,n){return qr(this,void 0,void 0,function*(){return this.request("PUT",e,r,n||{})})}head(e,r){return qr(this,void 0,void 0,function*(){return this.request("HEAD",e,null,r||{})})}sendStream(e,r,n,s){return qr(this,void 0,void 0,function*(){return this.request(e,r,n,s)})}getJson(e){return qr(this,arguments,void 0,function*(r,n={}){n[Ts.Accept]=this._getExistingOrDefaultHeader(n,Ts.Accept,hu.ApplicationJson);let s=yield this.get(r,n);return this._processResponse(s,this.requestOptions)})}postJson(e,r){return qr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ts.Accept]=this._getExistingOrDefaultHeader(o,Ts.Accept,hu.ApplicationJson),o[Ts.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,hu.ApplicationJson);let c=yield this.post(n,a,o);return this._processResponse(c,this.requestOptions)})}putJson(e,r){return qr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ts.Accept]=this._getExistingOrDefaultHeader(o,Ts.Accept,hu.ApplicationJson),o[Ts.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,hu.ApplicationJson);let c=yield this.put(n,a,o);return this._processResponse(c,this.requestOptions)})}patchJson(e,r){return qr(this,arguments,void 0,function*(n,s,o={}){let a=JSON.stringify(s,null,2);o[Ts.Accept]=this._getExistingOrDefaultHeader(o,Ts.Accept,hu.ApplicationJson),o[Ts.ContentType]=this._getExistingOrDefaultContentTypeHeader(o,hu.ApplicationJson);let c=yield this.patch(n,a,o);return this._processResponse(c,this.requestOptions)})}request(e,r,n,s){return qr(this,void 0,void 0,function*(){if(this._disposed)throw new Error("Client has already been disposed.");let o=new URL(r),a=this._prepareRequest(e,o,s),c=this._allowRetries&&xgt.includes(e)?this._maxRetries+1:1,l=0,u;do{if(u=yield this.requestRaw(a,n),u&&u.message&&u.message.statusCode===_i.Unauthorized){let p;for(let m of this.handlers)if(m.canHandleAuthentication(u)){p=m;break}return p?p.handleAuthentication(this,a,n):u}let d=this._maxRedirects;for(;u.message.statusCode&&Cgt.includes(u.message.statusCode)&&this._allowRedirects&&d>0;){let p=u.message.headers.location;if(!p)break;let m=new URL(p);if(o.protocol==="https:"&&o.protocol!==m.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 u.readBody(),m.hostname!==o.hostname)for(let f in s)f.toLowerCase()==="authorization"&&delete s[f];a=this._prepareRequest(e,m,s),u=yield this.requestRaw(a,n),d--}if(!u.message.statusCode||!Igt.includes(u.message.statusCode))return u;l+=1,l{function o(a,c){a?s(a):c?n(c):s(new Error("Unknown error"))}i(o,"callbackForResult"),this.requestRawWithCallback(e,r,o)})})}requestRawWithCallback(e,r,n){typeof r=="string"&&(e.options.headers||(e.options.headers={}),e.options.headers["Content-Length"]=Buffer.byteLength(r,"utf8"));let s=!1;function o(l,u){s||(s=!0,n(l,u))}i(o,"handleResult");let a=e.httpModule.request(e.options,l=>{let u=new W4(l);o(void 0,u)}),c;a.on("socket",l=>{c=l}),a.setTimeout(this._socketTimeout||3*6e4,()=>{c&&c.end(),o(new Error(`Request timeout: ${e.options.path}`))}),a.on("error",function(l){o(l)}),r&&typeof r=="string"&&a.write(r,"utf8"),r&&typeof r!="string"?(r.on("close",function(){a.end()}),r.pipe(a)):a.end()}getAgent(e){let r=new URL(e);return this._getAgent(r)}getAgentDispatcher(e){let r=new URL(e),n=V4(r);if(n&&n.hostname)return this._getProxyAgentDispatcher(r,n)}_prepareRequest(e,r,n){let s={};s.parsedUrl=r;let o=s.parsedUrl.protocol==="https:";s.httpModule=o?j4:Cx;let a=o?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(n),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({},Ex(this.requestOptions.headers),Ex(e||{})):Ex(e||{})}_getExistingOrDefaultHeader(e,r,n){let s;if(this.requestOptions&&this.requestOptions.headers){let a=Ex(this.requestOptions.headers)[r];a&&(s=typeof a=="number"?a.toString():a)}let o=e[r];return o!==void 0?typeof o=="number"?o.toString():o:s!==void 0?s:n}_getExistingOrDefaultContentTypeHeader(e,r){let n;if(this.requestOptions&&this.requestOptions.headers){let o=Ex(this.requestOptions.headers)[Ts.ContentType];o&&(typeof o=="number"?n=String(o):Array.isArray(o)?n=o.join(", "):n=o)}let s=e[Ts.ContentType];return s!==void 0?typeof s=="number"?String(s):Array.isArray(s)?s.join(", "):s:n!==void 0?n:r}_getAgent(e){let r,n=V4(e),s=n&&n.hostname;if(this._keepAlive&&s&&(r=this._proxyAgent),s||(r=this._agent),r)return r;let o=e.protocol==="https:",a=100;if(this.requestOptions&&(a=this.requestOptions.maxSockets||Cx.globalAgent.maxSockets),n&&n.hostname){let c={maxSockets:a,keepAlive:this._keepAlive,proxy:Object.assign(Object.assign({},(n.username||n.password)&&{proxyAuth:`${n.username}:${n.password}`}),{host:n.hostname,port:n.port})},l,u=n.protocol==="https:";o?l=u?Hd.httpsOverHttps:Hd.httpsOverHttp:l=u?Hd.httpOverHttps:Hd.httpOverHttp,r=l(c),this._proxyAgent=r}if(!r){let c={keepAlive:this._keepAlive,maxSockets:a};r=o?new j4.Agent(c):new Cx.Agent(c),this._agent=r}return o&&this._ignoreSslError&&(r.options=Object.assign(r.options||{},{rejectUnauthorized:!1})),r}_getProxyAgentDispatcher(e,r){let n;if(this._keepAlive&&(n=this._proxyAgentDispatcher),n)return n;let s=e.protocol==="https:";return n=new ixe.ProxyAgent(Object.assign({uri:r.href,pipelining:this._keepAlive?1:0},(r.username||r.password)&&{token:`Basic ${Buffer.from(`${r.username}:${r.password}`).toString("base64")}`})),this._proxyAgentDispatcher=n,s&&this._ignoreSslError&&(n.options=Object.assign(n.options.requestTls||{},{rejectUnauthorized:!1})),n}_getUserAgentWithOrchestrationId(e){let r=e||"actions/http-client",n=process.env.ACTIONS_ORCHESTRATION_ID;if(n){let s=n.replace(/[^a-z0-9_.-]/gi,"_");return`${r} actions_orchestration_id/${s}`}return r}_performExponentialBackoff(e){return qr(this,void 0,void 0,function*(){e=Math.min(wgt,e);let r=bgt*Math.pow(2,e);return new Promise(n=>setTimeout(()=>n(),r))})}_processResponse(e,r){return qr(this,void 0,void 0,function*(){return new Promise((n,s)=>qr(this,void 0,void 0,function*(){let o=e.message.statusCode||0,a={statusCode:o,result:null,headers:{}};o===_i.NotFound&&n(a);function c(d,p){if(typeof p=="string"){let m=new Date(p);if(!isNaN(m.valueOf()))return m}return p}i(c,"dateTimeDeserializer");let l,u;try{u=yield e.readBody(),u&&u.length>0&&(r&&r.deserializeDates?l=JSON.parse(u,c):l=JSON.parse(u),a.result=l),a.headers=e.message.headers}catch{}if(o>299){let d;l&&l.message?d=l.message:u&&u.length>0?d=u:d=`Failed request: (${o})`;let p=new Y4(d,o);p.result=a.result,s(p)}else n(a)}))})}},Ex=i(t=>Object.keys(t).reduce((e,r)=>(e[r.toLowerCase()]=t[r],e),{}),"lowercaseKeys");var af=class extends Error{static{i(this,"InvalidTokenError")}};af.prototype.name="InvalidTokenError";function Bgt(t){return decodeURIComponent(atob(t).replace(/(.)/g,(e,r)=>{let n=r.charCodeAt(0).toString(16).toUpperCase();return n.length<2&&(n="0"+n),"%"+n}))}i(Bgt,"b64DecodeUnicode");function Rgt(t){let e=t.replace(/-/g,"+").replace(/_/g,"/");switch(e.length%4){case 0:break;case 2:e+="==";break;case 3:e+="=";break;default:throw new Error("base64 string is not of the correct length")}try{return Bgt(e)}catch{return atob(e)}}i(Rgt,"base64UrlDecode");function axe(t,e){if(typeof t!="string")throw new af("Invalid token specified: must be a string");e||(e={});let r=e.header===!0?0:1,n=t.split(".")[r];if(typeof n!="string")throw new af(`Invalid token specified: missing part #${r+1}`);let s;try{s=Rgt(n)}catch(o){throw new af(`Invalid token specified: invalid base64 for part #${r+1} (${o.message})`)}try{return JSON.parse(s)}catch(o){throw new af(`Invalid token specified: invalid json for part #${r+1} (${o.message})`)}}i(axe,"jwtDecode");var Qg=class t{static{i(this,"GitHub")}githubToken;octokit;constructor(e){this.githubToken=e?.token||process.env.GITHUB_TOKEN,this.octokit=oxe(`${this.githubToken}`)}repoData(){return this.octokit.rest.repos.get({..._g.repo}).then(e=>e.data)}async releases(e,r){let n;try{n=await this.releasesRaw(e,r)}catch(s){if(!this.githubToken)throw s;n=await this.releasesRaw(e,r,this.githubToken)}return n}async releasesRaw(e,r,n){let s=`https://raw.githubusercontent.com/${r.owner}/${r.repo}/${r.ref}/${r.path}`,a=await new jP("docker-actions-toolkit").get(s,n?{Authorization:`token ${n}`}:void 0),c=await a.readBody(),l=a.message.statusCode||500;if(l>=400)throw new Error(`Failed to get ${e} releases from ${s} with status code ${l}: ${c}`);return JSON.parse(c)}static get context(){return _g}static get serverURL(){return process.env.GITHUB_SERVER_URL||"https://github.com"}static get apiURL(){return process.env.GITHUB_API_URL||"https://api.github.com"}static get isGHES(){let r=new URL(t.serverURL).hostname.trimEnd().toUpperCase(),n=r==="GITHUB.COM",s=r.endsWith(".GHE.COM"),o=r.endsWith(".LOCALHOST");return!n&&!s&&!o}static get repository(){return`${_g.repo.owner}/${_g.repo.repo}`}static get workspace(){return process.env.GITHUB_WORKSPACE||process.cwd()}static get runId(){return process.env.GITHUB_RUN_ID?+process.env.GITHUB_RUN_ID:_g.runId}static get runAttempt(){return process.env.GITHUB_RUN_ATTEMPT?+process.env.GITHUB_RUN_ATTEMPT:1}static workflowRunURL(e){return`${t.serverURL}/${t.repository}/actions/runs/${t.runId}${e?`/attempts/${t.runAttempt}`:""}`}static get actionsRuntimeToken(){let e=process.env.ACTIONS_RUNTIME_TOKEN||"";return e?axe(e):void 0}static async printActionsRuntimeTokenACs(){let e;try{e=t.actionsRuntimeToken}catch(r){throw new Error(`Cannot parse GitHub Actions Runtime Token: ${r.message}`)}if(!e)throw new Error("ACTIONS_RUNTIME_TOKEN not set");try{JSON.parse(`${e.ac}`).forEach(r=>{let n;switch(r.Permission){case 1:n="read";break;case 2:n="write";break;case 3:n="read/write";break;default:n=`unimplemented (${r.Permission})`}Ke(`${r.Scope}: ${n}`)})}catch(r){throw new Error(`Cannot parse GitHub Actions Runtime Token ACs: ${r.message}`)}}};var JP=class t{static{i(this,"Buildx")}_version;_versionOnce;_standalone;static containerNamePrefix="buildx_buildkit_";constructor(e){this._standalone=e?.standalone,this._version="",this._versionOnce=!1}static get configDir(){return process.env.BUILDX_CONFIG||oo.default.join($d.configDir,"buildx")}static get refsDir(){return oo.default.join(t.configDir,"refs")}static get refsGroupDir(){return oo.default.join(t.refsDir,"__group__")}static get certsDir(){return oo.default.join(t.configDir,"certs")}async isStandalone(){let e=this._standalone??!await $d.isAvailable();return G(`Buildx.isStandalone: ${e}`),e}async getCommand(e){let r=await this.isStandalone();return{command:r?"buildx":"docker",args:r?e:["buildx",...e]}}async isAvailable(){let e=await this.getCommand([]),r=await du.getExecOutput(e.command,e.args,{ignoreReturnCode:!0,silent:!0}).then(n=>n.stderr.length>0&&n.exitCode!=0?(G(`Buildx.isAvailable cmd err: ${n.stderr.trim()}`),!1):n.exitCode==0).catch(n=>(G(`Buildx.isAvailable error: ${n}`),!1));return G(`Buildx.isAvailable: ${r}`),r}async version(){if(this._versionOnce)return this._version;this._versionOnce=!0;let e=await this.getCommand(["version"]);return this._version=await du.getExecOutput(e.command,e.args,{ignoreReturnCode:!0,silent:!0}).then(r=>{if(r.stderr.length>0&&r.exitCode!=0)throw new Error(r.stderr.trim());return t.parseVersion(r.stdout.trim())}),this._version}async printVersion(){let e=await this.getCommand(["version"]);await du.exec(e.command,e.args,{failOnStdErr:!1})}static parseVersion(e){let r=/\sv?([0-9a-f]{7}|[0-9.]+)/.exec(e);if(!r)throw new Error("Cannot parse buildx version");return r[1]}async versionSatisfies(e,r){let n=r??await this.version();if(!n)return G("Buildx.versionSatisfies false: undefined version"),!1;let s=cxe.satisfies(n,e)||/^[0-9a-f]{7}$/.exec(n)!==null;return G(`Buildx.versionSatisfies ${n} statisfies ${e}: ${s}`),s}static resolveCertsDriverOpts(e,r,n){let s;try{s=new URL(r)}catch{return[]}if(s.protocol!="tcp:")return[];let o=[];if(Object.keys(n).length==0)return o;let a=s.hostname;if(s.port.length>0&&(a+=`-${s.port}`),n.cacert!==void 0){let c=oo.default.join(t.certsDir,`cacert_${a}.pem`);Qi.default.writeFileSync(c,n.cacert),o.push(`cacert=${c}`)}if(n.cert!==void 0){let c=oo.default.join(t.certsDir,`cert_${a}.pem`);Qi.default.writeFileSync(c,n.cert),o.push(`cert=${c}`)}if(n.key!==void 0){let c=oo.default.join(t.certsDir,`key_${a}.pem`);Qi.default.writeFileSync(c,n.key),o.push(`key=${c}`)}return e!="remote"?[]:o}static localState(e,r){let[n,s,o]=e.split("/");if(!n||!s||!o)throw new Error(`Invalid build reference: ${e}`);let a=oo.default.join(r||t.refsDir,n,s,o);if(!Qi.default.existsSync(a))throw new Error(`Local state not found in ${a}`);return t.fixLocalState(JSON.parse(Qi.default.readFileSync(a,"utf8")))}static fixLocalState(e){let r=i(function(a){let c=a.match(/(.*)(https?:\/{1,2}\S+|ssh:\/{1,2}\S+|git:\/{1,2}\S+)/i);if(c&&c.length==3){let l=c[1],u=c[2];return u.startsWith("https:/")&&!u.startsWith("https://")&&(u=u.replace("https:/","https://")),u.startsWith("http:/")&&!u.startsWith("http://")&&(u=u.replace("http:/","http://")),u.startsWith("ssh:/")&&!u.startsWith("ssh://")&&(u=u.replace("ssh:/","ssh://")),u.startsWith("git:/")&&!u.startsWith("git://")&&(u=u.replace("git:/","git://")),[u,l,!0]}return[a,"",!1]},"fnTrimToValidContext"),[n,s,o]=r(e.LocalPath);return o&&(e.LocalPath=n,e.DockerfilePath.indexOf(s)===0&&(e.DockerfilePath=e.DockerfilePath.substring(s.length))),e.LocalPath=e.LocalPath.endsWith("/-")?"-":e.LocalPath,e.DockerfilePath=e.DockerfilePath.endsWith("/-")?"-":e.DockerfilePath,e}static refs(e,r={}){let{dir:n,builderName:s,nodeName:o,since:a}=e,c=oo.default.resolve(n);if(e.builderName&&(c=oo.default.join(c,e.builderName)),e.nodeName&&(c=oo.default.join(c,e.nodeName)),!Qi.default.existsSync(c))return r;let l=Qi.default.readdirSync(c);for(let u of l){let d=oo.default.join(c,u),p=Qi.default.statSync(d);if(p.isDirectory()){let m={...e};if(s)o||(m.nodeName=u);else{if(u==="__group__")continue;m.builderName=u}t.refs(m,r)}else{if(a&&p.mtimeatob(E)).join(" "),m=atob(l.short).replace(/\s\(line \d+\)$/,"");l.url&&(m+=` +More info: ${l.url}`);let f=l.range&&l.range.length>0?l.range[0]?.start.line:void 0,g=!1;for(let E of a)if(E.remote||E.path.endsWith(u)&&E.content===d){c.push({title:p,message:m,file:E.path,startLine:f}),g=!0;break}g||G(`Buildx.convertWarningsToGitHubAnnotations: skipping warning without matching Dockerfile ${u}: ${p}`)}return c}};function lxe(){return{registry:ia("registry"),username:ia("username"),password:ia("password"),scope:ia("scope"),ecr:ia("ecr"),logout:toe("logout"),registryAuth:ia("registry-auth")}}i(lxe,"getInputs");function uxe(t){if(t.registryAuth&&(t.registry||t.username||t.password||t.scope||t.ecr))throw new Error("Cannot use registry-auth with other inputs");let e=[];if(t.registryAuth)e=Xhe(t.registryAuth).map(r=>{Bo(r.password);let n=r.registry||"docker.io";return{registry:n,username:r.username,password:r.password,scope:r.scope,ecr:r.ecr||"auto",configDir:KP(n,r.scope)}});else{let r=t.registry||"docker.io";e.push({registry:r,username:t.username,password:t.password,scope:t.scope,ecr:t.ecr||"auto",configDir:KP(r,t.scope)})}if(e.length==0)throw new Error("No registry to login");return e}i(uxe,"getAuthList");function KP(t,e){if(Ngt()||!e||e==="")return"";let r=J4.default.join(JP.configDir,"config",t==="docker.io"?"registry-1.docker.io":t);return e.startsWith("@")?r+=e:r=J4.default.join(r,e),r}i(KP,"scopeToConfigDir");function Ngt(){return process.env.DOCKER_LOGIN_SCOPE_DISABLED?qd.parseBool(process.env.DOCKER_LOGIN_SCOPE_DISABLED):!1}i(Ngt,"scopeDisabled");var tMe=D(WLe(),1),rMe=D(OOe(),1),U9=D(vu(),1);var qOe=D(require("net"),1),$Oe=D(require("tls"),1),GOe=D(Im(),1),HOe=require("events");var MOe=D(require("net"),1),FOe=D(require("http"),1),UOe=require("https");var Bl=Symbol("AgentBaseInternalState"),zL=class extends FOe.Agent{static{i(this,"Agent")}constructor(e){super(e),this[Bl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new MOe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?UOe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),typeof c.addRequest=="function")try{return c.addRequest(e,s)}catch(l){return n(l)}this[Bl].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[Bl].currentSocket;if(this[Bl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Bl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Bl]&&(this[Bl].defaultPort=e)}get protocol(){return this[Bl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Bl]&&(this[Bl].protocol=e)}};var M9=require("url");var zy=(0,GOe.default)("http-proxy-agent"),b0=class extends zL{static{i(this,"HttpProxyAgent")}constructor(e,r){super(r),this.proxy=typeof e=="string"?new M9.URL(e):e,this.proxyHeaders=r?.headers??{},zy("Creating new HttpProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={...r?KMt(r,"headers"):null,host:n,port:s}}addRequest(e,r){e._header=null,this.setRequestProps(e,r),super.addRequest(e,r)}setRequestProps(e,r){let{proxy:n}=this,s=r.secureEndpoint?"https:":"http:",o=e.getHeader("host")||"localhost",a=`${s}//${o}`,c=new M9.URL(e.path,a);r.port!==80&&(c.port=String(r.port)),e.path=String(c);let l=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders};if(n.username||n.password){let u=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;l["Proxy-Authorization"]=`Basic ${Buffer.from(u).toString("base64")}`}l["Proxy-Connection"]||(l["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let u of Object.keys(l)){let d=l[u];d&&e.setHeader(u,d)}}async connect(e,r){e._header=null,e.path.includes("://")||this.setRequestProps(e,r);let n,s;zy("Regenerating stored HTTP header string for request"),e._implicitHeader(),e.outputData&&e.outputData.length>0&&(zy("Patching connection write() output buffer with updated header"),n=e.outputData[0].data,s=n.indexOf(`\r \r -`)+4,e.outputData[0].data=e._header+n.substring(s),Hy("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(Hy("Creating `tls.Socket`: %o",this.connectOpts),o=UOe.connect(this.connectOpts)):(Hy("Creating `net.Socket`: %o",this.connectOpts),o=FOe.connect(this.connectOpts)),await(0,$Oe.once)(o,"connect"),o}};x0.protocols=["http","https"];function JMt(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}var _p=Q(require("net"),1),M9=Q(require("tls"),1),JOe=Q(require("assert"),1),KOe=Q(Cm(),1);var GOe=Q(require("net"),1),HOe=Q(require("http"),1),zOe=require("https"),Bl=Symbol("AgentBaseInternalState"),zL=class extends HOe.Agent{constructor(e){super(e),this[Bl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` -`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new GOe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?zOe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),i=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(a=>{if(this.decrementSockets(o,i),typeof a.addRequest=="function")try{return a.addRequest(e,s)}catch(c){return n(c)}this[Bl].currentSocket=a,super.createSocket(e,r,n)},a=>{this.decrementSockets(o,i),n(a)})}createConnection(){let e=this[Bl].currentSocket;if(this[Bl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Bl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Bl]&&(this[Bl].defaultPort=e)}get protocol(){return this[Bl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Bl]&&(this[Bl].protocol=e)}};var XOe=require("url");var VOe=Q(Cm(),1),VL=(0,VOe.default)("https-proxy-agent:parse-proxy-response");function YOe(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let u=t.read();u?l(u):t.once("readable",o)}function i(){t.removeListener("end",a),t.removeListener("error",c),t.removeListener("readable",o)}function a(){i(),VL("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}function c(u){i(),VL("onerror %o",u),r(u)}function l(u){s.push(u),n+=u.length;let d=Buffer.concat(s,n),p=d.indexOf(`\r +`)+4,e.outputData[0].data=e._header+n.substring(s),zy("Output buffer: %o",e.outputData[0].data));let o;return this.proxy.protocol==="https:"?(zy("Creating `tls.Socket`: %o",this.connectOpts),o=$Oe.connect(this.connectOpts)):(zy("Creating `net.Socket`: %o",this.connectOpts),o=qOe.connect(this.connectOpts)),await(0,HOe.once)(o,"connect"),o}};b0.protocols=["http","https"];function KMt(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(KMt,"omit");var Qp=D(require("net"),1),F9=D(require("tls"),1),XOe=D(require("assert"),1),ZOe=D(Im(),1);var zOe=D(require("net"),1),VOe=D(require("http"),1),YOe=require("https");var Rl=Symbol("AgentBaseInternalState"),VL=class extends VOe.Agent{static{i(this,"Agent")}constructor(e){super(e),this[Rl]={}}isSecureEndpoint(e){if(e){if(typeof e.secureEndpoint=="boolean")return e.secureEndpoint;if(typeof e.protocol=="string")return e.protocol==="https:"}let{stack:r}=new Error;return typeof r!="string"?!1:r.split(` +`).some(n=>n.indexOf("(https.js:")!==-1||n.indexOf("node:https:")!==-1)}incrementSockets(e){if(this.maxSockets===1/0&&this.maxTotalSockets===1/0)return null;this.sockets[e]||(this.sockets[e]=[]);let r=new zOe.Socket({writable:!1});return this.sockets[e].push(r),this.totalSocketCount++,r}decrementSockets(e,r){if(!this.sockets[e]||r===null)return;let n=this.sockets[e],s=n.indexOf(r);s!==-1&&(n.splice(s,1),this.totalSocketCount--,n.length===0&&delete this.sockets[e])}getName(e){return this.isSecureEndpoint(e)?YOe.Agent.prototype.getName.call(this,e):super.getName(e)}createSocket(e,r,n){let s={...r,secureEndpoint:this.isSecureEndpoint(r)},o=this.getName(s),a=this.incrementSockets(o);Promise.resolve().then(()=>this.connect(e,s)).then(c=>{if(this.decrementSockets(o,a),typeof c.addRequest=="function")try{return c.addRequest(e,s)}catch(l){return n(l)}this[Rl].currentSocket=c,super.createSocket(e,r,n)},c=>{this.decrementSockets(o,a),n(c)})}createConnection(){let e=this[Rl].currentSocket;if(this[Rl].currentSocket=void 0,!e)throw new Error("No socket was returned in the `connect()` function");return e}get defaultPort(){return this[Rl].defaultPort??(this.protocol==="https:"?443:80)}set defaultPort(e){this[Rl]&&(this[Rl].defaultPort=e)}get protocol(){return this[Rl].protocol??(this.isSecureEndpoint()?"https:":"http:")}set protocol(e){this[Rl]&&(this[Rl].protocol=e)}};var eMe=require("url");var WOe=D(Im(),1);var YL=(0,WOe.default)("https-proxy-agent:parse-proxy-response");function jOe(t){return new Promise((e,r)=>{let n=0,s=[];function o(){let d=t.read();d?u(d):t.once("readable",o)}i(o,"read");function a(){t.removeListener("end",c),t.removeListener("error",l),t.removeListener("readable",o)}i(a,"cleanup");function c(){a(),YL("onend"),r(new Error("Proxy connection ended before receiving CONNECT response"))}i(c,"onend");function l(d){a(),YL("onerror %o",d),r(d)}i(l,"onerror");function u(d){s.push(d),n+=d.length;let p=Buffer.concat(s,n),m=p.indexOf(`\r \r -`);if(p===-1){VL("have not received end of HTTP headers yet..."),o();return}let m=d.slice(0,p).toString("ascii").split(`\r -`),h=m.shift();if(!h)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let y=h.split(" "),I=+y[1],x=y.slice(2).join(" "),b={};for(let T of m){if(!T)continue;let _=T.indexOf(":");if(_===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${T}"`));let U=T.slice(0,_).toLowerCase(),O=T.slice(_+1).trimStart(),z=b[U];typeof z=="string"?b[U]=[z,O]:Array.isArray(z)?z.push(O):b[U]=O}VL("got proxy server response: %o %o",h,b),i(),e({connect:{statusCode:I,statusText:x,headers:b},buffered:d})}t.on("error",c),t.on("end",a),o()})}var w0=(0,KOe.default)("https-proxy-agent"),WOe=t=>t.servername===void 0&&t.host&&!_p.isIP(t.host)?{...t,servername:t.host}:t,b0=class extends zL{constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new XOe.URL(e):e,this.proxyHeaders=r?.headers??{},w0("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?jOe(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(w0("Creating `tls.Socket`: %o",this.connectOpts),s=M9.connect(WOe(this.connectOpts))):(w0("Creating `net.Socket`: %o",this.connectOpts),s=_p.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},i=_p.isIPv6(r.host)?`[${r.host}]`:r.host,a=`CONNECT ${i}:${r.port} HTTP/1.1\r -`;if(n.username||n.password){let p=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(p).toString("base64")}`}o.Host=`${i}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let p of Object.keys(o))a+=`${p}: ${o[p]}\r -`;let c=YOe(s);s.write(`${a}\r -`);let{connect:l,buffered:u}=await c;if(e.emit("proxyConnect",l),this.emit("proxyConnect",l,e),l.statusCode===200)return e.once("socket",KMt),r.secureEndpoint?(w0("Upgrading socket connection to TLS"),M9.connect({...jOe(WOe(r),"host","path","port"),socket:s})):s;s.destroy();let d=new _p.Socket({writable:!1});return d.readable=!0,e.once("socket",p=>{w0("Replaying proxy buffer for failed request"),(0,JOe.default)(p.listenerCount("data")>0),p.push(u),p.push(null)}),d}};b0.protocols=["http","https"];function KMt(t){t.resume()}function jOe(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}var U9=/^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/,XMt=/public\.ecr\.aws|ecr-public\.aws\.com/,tMe=t=>U9.test(t)||YL(t),YL=t=>XMt.test(t),ZMt=t=>{if(YL(t))return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1";let e=t.match(U9);return e?e[4]:""},eFt=t=>{if(YL(t))return[];let e=t.match(U9);if(!e)return[];let r=[e[2]];return process.env.AWS_ACCOUNT_IDS&&r.push(...process.env.AWS_ACCOUNT_IDS.split(",")),r.filter((n,s)=>r.indexOf(n)===s)},rMe=async(t,e,r)=>{let n=ZMt(t),s=eFt(t),o={};s.length>0&&($(`Requesting AWS ECR auth token for ${s.join(", ")}`),o.registryIds=s);let i,a=process.env.http_proxy||process.env.HTTP_PROXY||"";a&&($(`Using http proxy ${a}`),i=new x0(a));let c,l=process.env.https_proxy||process.env.HTTPS_PROXY||"";l&&($(`Using https proxy ${l}`),c=new b0(l));let u=e&&r?{accessKeyId:e,secretAccessKey:r}:void 0;if(YL(t)){Je(`AWS Public ECR detected with ${n} region`);let p=await new eMe.ECRPUBLIC({customUserAgent:"docker-login-action",credentials:u,region:n,requestHandler:new F9.NodeHttpHandler({httpAgent:i,httpsAgent:c})}).getAuthorizationToken(o);if(!p.authorizationData||!p.authorizationData.authorizationToken)throw new Error("Could not retrieve an authorization token from AWS Public ECR");let h=Buffer.from(p.authorizationData.authorizationToken,"base64").toString("utf-8").split(":",2);return So(h[0]),So(h[1]),[{registry:"public.ecr.aws",username:h[0],password:h[1]}]}else{Je(`AWS ECR detected with ${n} region`);let p=await new ZOe.ECR({customUserAgent:"docker-login-action",credentials:u,region:n,requestHandler:new F9.NodeHttpHandler({httpAgent:i,httpsAgent:c})}).getAuthorizationToken(o);if(!Array.isArray(p.authorizationData)||!p.authorizationData.length)throw new Error("Could not retrieve an authorization token from AWS ECR");let m=[];for(let h of p.authorizationData){let I=Buffer.from(h.authorizationToken||"","base64").toString("utf-8").split(":",2);So(I[0]),So(I[1]),m.push({registry:h.proxyEndpoint||"",username:I[0],password:I[1]})}return m}};async function q9(t){/true/i.test(t.ecr)||t.ecr=="auto"&&tMe(t.registry)?await nFt(t.registry,t.username,t.password,t.scope):await rFt(t.registry,t.username,t.password,t.scope)}async function nMe(t,e){let r;e!==""&&(r=Object.assign({},process.env,{DOCKER_CONFIG:e}),Je(`Alternative config dir: ${e}`)),await qd.getExecOutput(["logout",t],{ignoreReturnCode:!0,env:r}).then(n=>{n.stderr.length>0&&n.exitCode!=0&&_r(n.stderr.trim())})}async function rFt(t,e,r,n){if(!e&&!r)throw new Error("Username and password required");if(!e)throw new Error("Username required");if(!r)throw new Error("Password required");await sMe(t,e,r,n)}async function nFt(t,e,r,n){Je("Retrieving registries data through AWS SDK...");let s=await rMe(t,e,r);for(let o of s)await sMe(o.registry,o.username,o.password,n)}async function sMe(t,e,r,n){let s,o=JP(t,n);o!==""?(s=Object.assign({},process.env,{DOCKER_CONFIG:o}),Je(`Logging into ${t} (scope ${n})...`)):Je(`Logging into ${t}...`),await qd.getExecOutput(["login","--password-stdin","--username",e,t],{ignoreReturnCode:!0,silent:!0,input:Buffer.from(r),env:s}).then(i=>{if(i.stderr.length>0&&i.exitCode!=0)throw new Error(i.stderr.trim());Je("Login Succeeded!")})}var oMe=process.env.STATE_registries?JSON.parse(process.env.STATE_registries):[],iMe=/true/i.test(process.env.STATE_logout||"");function aMe(t){cm("registries",JSON.stringify(t))}function cMe(t){cm("logout",t)}async function lMe(){let t=cxe();cMe(t.logout);let e=lxe(t);if(aMe(Array.from(new Map(e.map(r=>[`${r.registry}|${r.configDir}`,{registry:r.registry,configDir:r.configDir}])).values())),e.length===1){await q9(e[0]);return}for(let r of e)await JE(`Login to ${r.registry}`,async()=>{await q9(r)})}async function iFt(){if(iMe)for(let t of oMe)await JE(`Logout from ${t.registry}`,async()=>{await nMe(t.registry,t.configDir)})}lhe(lMe,iFt);0&&(module.exports={main}); +`);if(m===-1){YL("have not received end of HTTP headers yet..."),o();return}let f=p.slice(0,m).toString("ascii").split(`\r +`),g=f.shift();if(!g)return t.destroy(),r(new Error("No header received from proxy CONNECT response"));let E=g.split(" "),x=+E[1],w=E.slice(2).join(" "),S={};for(let P of f){if(!P)continue;let Q=P.indexOf(":");if(Q===-1)return t.destroy(),r(new Error(`Invalid header from proxy CONNECT response: "${P}"`));let q=P.slice(0,Q).toLowerCase(),M=P.slice(Q+1).trimStart(),V=S[q];typeof V=="string"?S[q]=[V,M]:Array.isArray(V)?V.push(M):S[q]=M}YL("got proxy server response: %o %o",g,S),a(),e({connect:{statusCode:x,statusText:w,headers:S},buffered:p})}i(u,"ondata"),t.on("error",l),t.on("end",c),o()})}i(jOe,"parseProxyResponse");var S0=(0,ZOe.default)("https-proxy-agent"),JOe=i(t=>t.servername===void 0&&t.host&&!Qp.isIP(t.host)?{...t,servername:t.host}:t,"setServernameFromNonIpHost"),B0=class extends VL{static{i(this,"HttpsProxyAgent")}constructor(e,r){super(r),this.options={path:void 0},this.proxy=typeof e=="string"?new eMe.URL(e):e,this.proxyHeaders=r?.headers??{},S0("Creating new HttpsProxyAgent instance: %o",this.proxy.href);let n=(this.proxy.hostname||this.proxy.host).replace(/^\[|\]$/g,""),s=this.proxy.port?parseInt(this.proxy.port,10):this.proxy.protocol==="https:"?443:80;this.connectOpts={ALPNProtocols:["http/1.1"],...r?KOe(r,"headers"):null,host:n,port:s}}async connect(e,r){let{proxy:n}=this;if(!r.host)throw new TypeError('No "host" provided');let s;n.protocol==="https:"?(S0("Creating `tls.Socket`: %o",this.connectOpts),s=F9.connect(JOe(this.connectOpts))):(S0("Creating `net.Socket`: %o",this.connectOpts),s=Qp.connect(this.connectOpts));let o=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},a=Qp.isIPv6(r.host)?`[${r.host}]`:r.host,c=`CONNECT ${a}:${r.port} HTTP/1.1\r +`;if(n.username||n.password){let m=`${decodeURIComponent(n.username)}:${decodeURIComponent(n.password)}`;o["Proxy-Authorization"]=`Basic ${Buffer.from(m).toString("base64")}`}o.Host=`${a}:${r.port}`,o["Proxy-Connection"]||(o["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let m of Object.keys(o))c+=`${m}: ${o[m]}\r +`;let l=jOe(s);s.write(`${c}\r +`);let{connect:u,buffered:d}=await l;if(e.emit("proxyConnect",u),this.emit("proxyConnect",u,e),u.statusCode===200)return e.once("socket",XMt),r.secureEndpoint?(S0("Upgrading socket connection to TLS"),F9.connect({...KOe(JOe(r),"host","path","port"),socket:s})):s;s.destroy();let p=new Qp.Socket({writable:!1});return p.readable=!0,e.once("socket",m=>{S0("Replaying proxy buffer for failed request"),(0,XOe.default)(m.listenerCount("data")>0),m.push(d),m.push(null)}),p}};B0.protocols=["http","https"];function XMt(t){t.resume()}i(XMt,"resume");function KOe(t,...e){let r={},n;for(n in t)e.includes(n)||(r[n]=t[n]);return r}i(KOe,"omit");var q9=/^(([0-9]{12})\.(dkr\.ecr|dkr-ecr)\.(.+)\.(on\.aws|amazonaws\.(com(.cn)?|eu)))(\/([^:]+)(:.+)?)?$/,ZMt=/public\.ecr\.aws|ecr-public\.aws\.com/,nMe=i(t=>q9.test(t)||WL(t),"isECR"),WL=i(t=>ZMt.test(t),"isPubECR"),eFt=i(t=>{if(WL(t))return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1";let e=t.match(q9);return e?e[4]:""},"getRegion"),tFt=i(t=>{if(WL(t))return[];let e=t.match(q9);if(!e)return[];let r=[e[2]];return process.env.AWS_ACCOUNT_IDS&&r.push(...process.env.AWS_ACCOUNT_IDS.split(",")),r.filter((n,s)=>r.indexOf(n)===s)},"getAccountIDs"),sMe=i(async(t,e,r)=>{let n=eFt(t),s=tFt(t),o={};s.length>0&&(G(`Requesting AWS ECR auth token for ${s.join(", ")}`),o.registryIds=s);let a,c=process.env.http_proxy||process.env.HTTP_PROXY||"";c&&(G(`Using http proxy ${c}`),a=new b0(c));let l,u=process.env.https_proxy||process.env.HTTPS_PROXY||"";u&&(G(`Using https proxy ${u}`),l=new B0(u));let d=e&&r?{accessKeyId:e,secretAccessKey:r}:void 0;if(WL(t)){Ke(`AWS Public ECR detected with ${n} region`);let m=await new rMe.ECRPUBLIC({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new U9.NodeHttpHandler({httpAgent:a,httpsAgent:l})}).getAuthorizationToken(o);if(!m.authorizationData||!m.authorizationData.authorizationToken)throw new Error("Could not retrieve an authorization token from AWS Public ECR");let g=Buffer.from(m.authorizationData.authorizationToken,"base64").toString("utf-8").split(":",2);return Bo(g[0]),Bo(g[1]),[{registry:"public.ecr.aws",username:g[0],password:g[1]}]}else{Ke(`AWS ECR detected with ${n} region`);let m=await new tMe.ECR({customUserAgent:"docker-login-action",credentials:d,region:n,requestHandler:new U9.NodeHttpHandler({httpAgent:a,httpsAgent:l})}).getAuthorizationToken(o);if(!Array.isArray(m.authorizationData)||!m.authorizationData.length)throw new Error("Could not retrieve an authorization token from AWS ECR");let f=[];for(let g of m.authorizationData){let x=Buffer.from(g.authorizationToken||"","base64").toString("utf-8").split(":",2);Bo(x[0]),Bo(x[1]),f.push({registry:g.proxyEndpoint||"",username:x[0],password:x[1]})}return f}},"getRegistriesData");async function $9(t){/true/i.test(t.ecr)||t.ecr=="auto"&&nMe(t.registry)?await sFt(t.registry,t.username,t.password,t.scope):await nFt(t.registry,t.username,t.password,t.scope)}i($9,"login");async function oMe(t,e){let r;e!==""&&(r=Object.assign({},process.env,{DOCKER_CONFIG:e}),Ke(`Alternative config dir: ${e}`)),await $d.getExecOutput(["logout",t],{ignoreReturnCode:!0,env:r}).then(n=>{n.stderr.length>0&&n.exitCode!=0&&Qr(n.stderr.trim())})}i(oMe,"logout");async function nFt(t,e,r,n){if(!e&&!r)throw new Error("Username and password required");if(!e)throw new Error("Username required");if(!r)throw new Error("Password required");await iMe(t,e,r,n)}i(nFt,"loginStandard");async function sFt(t,e,r,n){Ke("Retrieving registries data through AWS SDK...");let s=await sMe(t,e,r);for(let o of s)await iMe(o.registry,o.username,o.password,n)}i(sFt,"loginECR");async function iMe(t,e,r,n){let s,o=KP(t,n);o!==""?(s=Object.assign({},process.env,{DOCKER_CONFIG:o}),Ke(`Logging into ${t} (scope ${n})...`)):Ke(`Logging into ${t}...`),await $d.getExecOutput(["login","--password-stdin","--username",e,t],{ignoreReturnCode:!0,silent:!0,input:Buffer.from(r),env:s}).then(a=>{if(a.stderr.length>0&&a.exitCode!=0)throw new Error(a.stderr.trim());Ke("Login Succeeded!")})}i(iMe,"loginExec");var aMe=process.env.STATE_registries?JSON.parse(process.env.STATE_registries):[],cMe=/true/i.test(process.env.STATE_logout||"");function lMe(t){lm("registries",JSON.stringify(t))}i(lMe,"setRegistries");function uMe(t){lm("logout",t)}i(uMe,"setLogout");async function dMe(){let t=lxe();uMe(t.logout);let e=uxe(t);if(lMe(Array.from(new Map(e.map(r=>[`${r.registry}|${r.configDir}`,{registry:r.registry,configDir:r.configDir}])).values())),e.length===1){await $9(e[0]);return}for(let r of e)await XE(`Login to ${r.registry}`,async()=>{await $9(r)})}i(dMe,"main");async function aFt(){if(cMe)for(let t of aMe)await XE(`Logout from ${t.registry}`,async()=>{await oMe(t.registry,t.configDir)})}i(aFt,"post");uhe(dMe,aFt);0&&(module.exports={main}); /*! Bundled license information: undici/lib/web/fetch/body.js: diff --git a/dist/index.cjs.map b/dist/index.cjs.map index 0148f9c..73d6521 100644 --- a/dist/index.cjs.map +++ b/dist/index.cjs.map @@ -2,6 +2,6 @@ "version": 3, "sources": ["../node_modules/tunnel/lib/tunnel.js", "../node_modules/tunnel/index.js", "../node_modules/undici/lib/core/symbols.js", "../node_modules/undici/lib/core/errors.js", "../node_modules/undici/lib/core/constants.js", "../node_modules/undici/lib/core/tree.js", "../node_modules/undici/lib/core/util.js", "../node_modules/undici/lib/core/diagnostics.js", "../node_modules/undici/lib/core/request.js", "../node_modules/undici/lib/dispatcher/dispatcher.js", "../node_modules/undici/lib/dispatcher/dispatcher-base.js", "../node_modules/undici/lib/util/timers.js", "../node_modules/undici/lib/core/connect.js", "../node_modules/undici/lib/llhttp/utils.js", "../node_modules/undici/lib/llhttp/constants.js", "../node_modules/undici/lib/llhttp/llhttp-wasm.js", "../node_modules/undici/lib/llhttp/llhttp_simd-wasm.js", "../node_modules/undici/lib/web/fetch/constants.js", "../node_modules/undici/lib/web/fetch/global.js", "../node_modules/undici/lib/web/fetch/data-url.js", "../node_modules/undici/lib/web/fetch/webidl.js", "../node_modules/undici/lib/web/fetch/util.js", "../node_modules/undici/lib/web/fetch/symbols.js", "../node_modules/undici/lib/web/fetch/file.js", "../node_modules/undici/lib/web/fetch/formdata.js", "../node_modules/undici/lib/web/fetch/formdata-parser.js", "../node_modules/undici/lib/web/fetch/body.js", "../node_modules/undici/lib/dispatcher/client-h1.js", "../node_modules/undici/lib/dispatcher/client-h2.js", "../node_modules/undici/lib/handler/redirect-handler.js", "../node_modules/undici/lib/interceptor/redirect-interceptor.js", "../node_modules/undici/lib/dispatcher/client.js", "../node_modules/undici/lib/dispatcher/fixed-queue.js", "../node_modules/undici/lib/dispatcher/pool-stats.js", "../node_modules/undici/lib/dispatcher/pool-base.js", "../node_modules/undici/lib/dispatcher/pool.js", "../node_modules/undici/lib/dispatcher/balanced-pool.js", "../node_modules/undici/lib/dispatcher/agent.js", "../node_modules/undici/lib/dispatcher/proxy-agent.js", "../node_modules/undici/lib/dispatcher/env-http-proxy-agent.js", "../node_modules/undici/lib/handler/retry-handler.js", "../node_modules/undici/lib/dispatcher/retry-agent.js", "../node_modules/undici/lib/api/readable.js", "../node_modules/undici/lib/api/util.js", "../node_modules/undici/lib/api/api-request.js", "../node_modules/undici/lib/api/abort-signal.js", "../node_modules/undici/lib/api/api-stream.js", "../node_modules/undici/lib/api/api-pipeline.js", "../node_modules/undici/lib/api/api-upgrade.js", "../node_modules/undici/lib/api/api-connect.js", "../node_modules/undici/lib/api/index.js", "../node_modules/undici/lib/mock/mock-errors.js", "../node_modules/undici/lib/mock/mock-symbols.js", "../node_modules/undici/lib/mock/mock-utils.js", "../node_modules/undici/lib/mock/mock-interceptor.js", "../node_modules/undici/lib/mock/mock-client.js", "../node_modules/undici/lib/mock/mock-pool.js", "../node_modules/undici/lib/mock/pluralizer.js", "../node_modules/undici/lib/mock/pending-interceptors-formatter.js", "../node_modules/undici/lib/mock/mock-agent.js", "../node_modules/undici/lib/global.js", "../node_modules/undici/lib/handler/decorator-handler.js", "../node_modules/undici/lib/interceptor/redirect.js", "../node_modules/undici/lib/interceptor/retry.js", "../node_modules/undici/lib/interceptor/dump.js", "../node_modules/undici/lib/interceptor/dns.js", "../node_modules/undici/lib/web/fetch/headers.js", "../node_modules/undici/lib/web/fetch/response.js", "../node_modules/undici/lib/web/fetch/dispatcher-weakref.js", "../node_modules/undici/lib/web/fetch/request.js", "../node_modules/undici/lib/web/fetch/index.js", "../node_modules/undici/lib/web/fileapi/symbols.js", "../node_modules/undici/lib/web/fileapi/progressevent.js", "../node_modules/undici/lib/web/fileapi/encoding.js", "../node_modules/undici/lib/web/fileapi/util.js", "../node_modules/undici/lib/web/fileapi/filereader.js", "../node_modules/undici/lib/web/cache/symbols.js", "../node_modules/undici/lib/web/cache/util.js", "../node_modules/undici/lib/web/cache/cache.js", "../node_modules/undici/lib/web/cache/cachestorage.js", "../node_modules/undici/lib/web/cookies/constants.js", "../node_modules/undici/lib/web/cookies/util.js", "../node_modules/undici/lib/web/cookies/parse.js", "../node_modules/undici/lib/web/cookies/index.js", "../node_modules/undici/lib/web/websocket/events.js", "../node_modules/undici/lib/web/websocket/constants.js", "../node_modules/undici/lib/web/websocket/symbols.js", "../node_modules/undici/lib/web/websocket/util.js", "../node_modules/undici/lib/web/websocket/frame.js", "../node_modules/undici/lib/web/websocket/connection.js", "../node_modules/undici/lib/web/websocket/permessage-deflate.js", "../node_modules/undici/lib/web/websocket/receiver.js", "../node_modules/undici/lib/web/websocket/sender.js", "../node_modules/undici/lib/web/websocket/websocket.js", "../node_modules/undici/lib/web/eventsource/util.js", "../node_modules/undici/lib/web/eventsource/eventsource-stream.js", "../node_modules/undici/lib/web/eventsource/eventsource.js", "../node_modules/undici/index.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/constants.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/debug.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/re.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/parse-options.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/identifiers.js", "../node_modules/@actions/tool-cache/node_modules/semver/classes/semver.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/parse.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/valid.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/clean.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/inc.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/diff.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/major.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/minor.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/patch.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/prerelease.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/compare.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/rcompare.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/compare-loose.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/compare-build.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/sort.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/rsort.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/gt.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/lt.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/eq.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/neq.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/gte.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/lte.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/cmp.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/coerce.js", "../node_modules/@actions/tool-cache/node_modules/semver/internal/lrucache.js", "../node_modules/@actions/tool-cache/node_modules/semver/classes/range.js", "../node_modules/@actions/tool-cache/node_modules/semver/classes/comparator.js", "../node_modules/@actions/tool-cache/node_modules/semver/functions/satisfies.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/to-comparators.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/max-satisfying.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/min-satisfying.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/min-version.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/valid.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/outside.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/gtr.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/ltr.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/intersects.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/simplify.js", "../node_modules/@actions/tool-cache/node_modules/semver/ranges/subset.js", "../node_modules/@actions/tool-cache/node_modules/semver/index.js", "../node_modules/concat-map/index.js", "../node_modules/balanced-match/index.js", "../node_modules/minimatch/node_modules/brace-expansion/index.js", "../node_modules/minimatch/minimatch.js", "../node_modules/@actions/cache/node_modules/semver/internal/constants.js", "../node_modules/@actions/cache/node_modules/semver/internal/debug.js", "../node_modules/@actions/cache/node_modules/semver/internal/re.js", "../node_modules/@actions/cache/node_modules/semver/internal/parse-options.js", "../node_modules/@actions/cache/node_modules/semver/internal/identifiers.js", "../node_modules/@actions/cache/node_modules/semver/classes/semver.js", "../node_modules/@actions/cache/node_modules/semver/functions/parse.js", "../node_modules/@actions/cache/node_modules/semver/functions/valid.js", "../node_modules/@actions/cache/node_modules/semver/functions/clean.js", "../node_modules/@actions/cache/node_modules/semver/functions/inc.js", "../node_modules/@actions/cache/node_modules/semver/functions/diff.js", "../node_modules/@actions/cache/node_modules/semver/functions/major.js", "../node_modules/@actions/cache/node_modules/semver/functions/minor.js", "../node_modules/@actions/cache/node_modules/semver/functions/patch.js", "../node_modules/@actions/cache/node_modules/semver/functions/prerelease.js", "../node_modules/@actions/cache/node_modules/semver/functions/compare.js", "../node_modules/@actions/cache/node_modules/semver/functions/rcompare.js", "../node_modules/@actions/cache/node_modules/semver/functions/compare-loose.js", "../node_modules/@actions/cache/node_modules/semver/functions/compare-build.js", "../node_modules/@actions/cache/node_modules/semver/functions/sort.js", "../node_modules/@actions/cache/node_modules/semver/functions/rsort.js", "../node_modules/@actions/cache/node_modules/semver/functions/gt.js", "../node_modules/@actions/cache/node_modules/semver/functions/lt.js", "../node_modules/@actions/cache/node_modules/semver/functions/eq.js", "../node_modules/@actions/cache/node_modules/semver/functions/neq.js", "../node_modules/@actions/cache/node_modules/semver/functions/gte.js", "../node_modules/@actions/cache/node_modules/semver/functions/lte.js", "../node_modules/@actions/cache/node_modules/semver/functions/cmp.js", "../node_modules/@actions/cache/node_modules/semver/functions/coerce.js", "../node_modules/@actions/cache/node_modules/semver/functions/truncate.js", "../node_modules/@actions/cache/node_modules/semver/internal/lrucache.js", "../node_modules/@actions/cache/node_modules/semver/classes/range.js", "../node_modules/@actions/cache/node_modules/semver/classes/comparator.js", "../node_modules/@actions/cache/node_modules/semver/functions/satisfies.js", "../node_modules/@actions/cache/node_modules/semver/ranges/to-comparators.js", "../node_modules/@actions/cache/node_modules/semver/ranges/max-satisfying.js", "../node_modules/@actions/cache/node_modules/semver/ranges/min-satisfying.js", "../node_modules/@actions/cache/node_modules/semver/ranges/min-version.js", "../node_modules/@actions/cache/node_modules/semver/ranges/valid.js", "../node_modules/@actions/cache/node_modules/semver/ranges/outside.js", "../node_modules/@actions/cache/node_modules/semver/ranges/gtr.js", "../node_modules/@actions/cache/node_modules/semver/ranges/ltr.js", "../node_modules/@actions/cache/node_modules/semver/ranges/intersects.js", "../node_modules/@actions/cache/node_modules/semver/ranges/simplify.js", "../node_modules/@actions/cache/node_modules/semver/ranges/subset.js", "../node_modules/@actions/cache/node_modules/semver/index.js", "../node_modules/ms/index.js", "../node_modules/debug/src/common.js", "../node_modules/debug/src/browser.js", "../node_modules/has-flag/index.js", "../node_modules/supports-color/index.js", "../node_modules/debug/src/node.js", "../node_modules/debug/src/index.js", "../node_modules/@typespec/ts-http-runtime/node_modules/https-proxy-agent/node_modules/agent-base/src/helpers.ts", "../node_modules/@typespec/ts-http-runtime/node_modules/https-proxy-agent/node_modules/agent-base/src/index.ts", "../node_modules/@typespec/ts-http-runtime/node_modules/https-proxy-agent/src/parse-proxy-response.ts", "../node_modules/@typespec/ts-http-runtime/node_modules/https-proxy-agent/src/index.ts", "../node_modules/agent-base/src/helpers.ts", "../node_modules/agent-base/src/index.ts", "../node_modules/@typespec/ts-http-runtime/node_modules/http-proxy-agent/src/index.ts", "../node_modules/@azure/core-tracing/src/state-cjs.cts", "../node_modules/@azure/core-client/src/state-cjs.cts", "../node_modules/@azure/core-lro/node_modules/@azure/logger/src/log.ts", "../node_modules/@azure/core-lro/node_modules/@azure/logger/src/debug.ts", "../node_modules/@azure/core-lro/node_modules/@azure/logger/src/index.ts", "../node_modules/@azure/core-lro/node_modules/@azure/abort-controller/src/AbortSignal.ts", "../node_modules/@azure/core-lro/node_modules/@azure/abort-controller/src/AbortController.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/isNode.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/createAbortablePromise.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/delay.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/random.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/object.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/error.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/sha256.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/typeGuards.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/uuidUtils.native.ts", "../node_modules/@azure/core-lro/node_modules/@azure/core-util/src/uuidUtils.ts", "../node_modules/@azure/core-lro/src/logger.ts", "../node_modules/@azure/core-lro/src/poller/constants.ts", "../node_modules/@azure/core-lro/src/poller/operation.ts", "../node_modules/@azure/core-lro/src/http/operation.ts", "../node_modules/@azure/core-lro/src/poller/poller.ts", "../node_modules/@azure/core-lro/src/http/poller.ts", "../node_modules/@azure/core-lro/src/legacy/lroEngine/operation.ts", "../node_modules/@azure/core-lro/src/legacy/poller.ts", "../node_modules/@azure/core-lro/src/legacy/lroEngine/lroEngine.ts", "../node_modules/@actions/cache/package.json", "../node_modules/@actions/cache/lib/internal/shared/package-version.cjs", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/json-typings.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/base64.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/protobufjs-utf8.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/binary-format-contract.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/goog-varint.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/pb-long.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/binary-reader.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/assert.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/binary-writer.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/json-format-contract.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/message-type-contract.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/lower-camel-case.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-info.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/oneof.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-type-check.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-long-convert.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-json-reader.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-json-writer.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-scalar-default.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-binary-reader.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-binary-writer.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-create.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-merge-partial.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-equals.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/message-type.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/reflection-contains-message-type.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/enum-object.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime/build/commonjs/index.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/reflection-info.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/service-type.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-error.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-options.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/deferred.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-output-stream.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/unary-call.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/server-streaming-call.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/client-streaming-call.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/duplex-streaming-call.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/test-transport.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/rpc-interceptor.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/server-call-context.js", "../node_modules/@actions/cache/node_modules/@protobuf-ts/runtime-rpc/build/commonjs/index.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/constants.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/debug.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/re.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/parse-options.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/identifiers.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/classes/semver.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/parse.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/valid.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/clean.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/inc.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/diff.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/major.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/minor.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/patch.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/prerelease.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/compare.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/rcompare.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/compare-loose.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/compare-build.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/sort.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/rsort.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/gt.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/lt.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/eq.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/neq.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/gte.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/lte.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/cmp.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/coerce.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/truncate.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/internal/lrucache.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/classes/range.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/classes/comparator.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/functions/satisfies.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/to-comparators.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/max-satisfying.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/min-satisfying.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/min-version.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/valid.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/outside.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/gtr.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/ltr.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/intersects.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/simplify.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/ranges/subset.js", "../node_modules/@docker/actions-toolkit/node_modules/semver/index.js", "../node_modules/tmp/lib/tmp.js", "../node_modules/handlebars/lib/handlebars/utils.js", "../node_modules/handlebars/lib/handlebars/exception.js", "../node_modules/handlebars/lib/handlebars/helpers/block-helper-missing.js", "../node_modules/handlebars/lib/handlebars/helpers/each.js", "../node_modules/handlebars/lib/handlebars/helpers/helper-missing.js", "../node_modules/handlebars/lib/handlebars/helpers/if.js", "../node_modules/handlebars/lib/handlebars/helpers/log.js", "../node_modules/handlebars/lib/handlebars/helpers/lookup.js", "../node_modules/handlebars/lib/handlebars/helpers/with.js", "../node_modules/handlebars/lib/handlebars/helpers.js", "../node_modules/handlebars/lib/handlebars/decorators/inline.js", "../node_modules/handlebars/lib/handlebars/decorators.js", "../node_modules/handlebars/lib/handlebars/logger.js", "../node_modules/handlebars/lib/handlebars/internal/proto-access.js", "../node_modules/handlebars/lib/handlebars/base.js", "../node_modules/handlebars/lib/handlebars/safe-string.js", "../node_modules/handlebars/lib/handlebars/internal/wrapHelper.js", "../node_modules/handlebars/lib/handlebars/runtime.js", "../node_modules/handlebars/lib/handlebars/no-conflict.js", "../node_modules/handlebars/lib/handlebars.runtime.js", "../node_modules/handlebars/lib/handlebars/compiler/ast.js", "../node_modules/handlebars/lib/handlebars/compiler/parser.js", "../node_modules/handlebars/lib/handlebars/compiler/visitor.js", "../node_modules/handlebars/lib/handlebars/compiler/whitespace-control.js", "../node_modules/handlebars/lib/handlebars/compiler/helpers.js", "../node_modules/handlebars/lib/handlebars/compiler/base.js", "../node_modules/handlebars/lib/handlebars/compiler/compiler.js", "../node_modules/source-map/lib/base64.js", "../node_modules/source-map/lib/base64-vlq.js", "../node_modules/source-map/lib/util.js", "../node_modules/source-map/lib/array-set.js", "../node_modules/source-map/lib/mapping-list.js", "../node_modules/source-map/lib/source-map-generator.js", "../node_modules/source-map/lib/binary-search.js", "../node_modules/source-map/lib/quick-sort.js", "../node_modules/source-map/lib/source-map-consumer.js", "../node_modules/source-map/lib/source-node.js", "../node_modules/source-map/source-map.js", "../node_modules/handlebars/lib/handlebars/compiler/code-gen.js", "../node_modules/handlebars/lib/handlebars/compiler/javascript-compiler.js", "../node_modules/handlebars/lib/handlebars.js", "../node_modules/handlebars/lib/handlebars/compiler/printer.js", "../node_modules/handlebars/lib/index.js", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/node_modules/@actions/http-client/src/proxy.ts", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/node_modules/@actions/http-client/src/index.ts", "../node_modules/fast-content-type-parse/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/emitWarningIfUnsupportedVersion.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/longPollMiddleware.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/setCredentialFeature.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/isStreamingPayload/isStreamingPayload.js", "../node_modules/@smithy/core/dist-es/submodules/client/middleware-stack/MiddlewareStack.js", "../node_modules/@smithy/types/dist-cjs/index.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-middleware/getSmithyContext.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-middleware/normalizeProvider.js", "../node_modules/@smithy/core/dist-es/submodules/client/invalid-dependency/invalidFunction.js", "../node_modules/@smithy/core/dist-es/submodules/client/invalid-dependency/invalidProvider.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/circularReplacer.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/utils/sleep.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/waiter.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/poller.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/utils/validate.js", "../node_modules/@smithy/core/dist-es/submodules/client/util-waiter/createWaiter.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/client.js", "../node_modules/@smithy/core/dist-es/submodules/schema/deref.js", "../node_modules/@smithy/core/dist-es/submodules/serde/is-array-buffer/is-array-buffer.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-buffer-from/buffer-from.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-base64/fromBase64.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/fromUtf8.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-base64/toBase64.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/blob/Uint8ArrayBlobAdapter.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/toUtf8.js", "../node_modules/@smithy/core/dist-es/submodules/serde/uuid/v4.js", "../node_modules/@smithy/core/dist-es/submodules/serde/copyDocumentWithTransform.js", "../node_modules/@smithy/core/dist-es/submodules/serde/parse-utils.js", "../node_modules/@smithy/core/dist-es/submodules/serde/date-utils.js", "../node_modules/@smithy/core/dist-es/submodules/serde/lazy-json.js", "../node_modules/@smithy/core/dist-es/submodules/serde/quote-header.js", "../node_modules/@smithy/core/dist-es/submodules/serde/schema-serde-lib/schema-date-utils.js", "../node_modules/@smithy/core/dist-es/submodules/serde/split-every.js", "../node_modules/@smithy/core/dist-es/submodules/serde/split-header.js", "../node_modules/@smithy/core/dist-es/submodules/serde/value/NumericValue.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-hex-encoding/hex-encoding.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-body-length/calculateBodyLength.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/toUint8Array.js", "../node_modules/@smithy/core/dist-es/submodules/serde/middleware-serde/deserializerMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/ProviderError.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/CredentialsProviderError.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/TokenProviderError.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/chain.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/fromValue.js", "../node_modules/@smithy/core/dist-es/submodules/config/property-provider/memoize.js", "../node_modules/@smithy/core/dist-es/submodules/config/util-config-provider/booleanSelector.js", "../node_modules/@smithy/core/dist-es/submodules/config/util-config-provider/numberSelector.js", "../node_modules/@smithy/core/dist-es/submodules/config/util-config-provider/types.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getHomeDir.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getProfileName.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getSSOTokenFilepath.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getSSOTokenFromFile.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/constants.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getConfigData.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getConfigFilepath.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getCredentialsFilepath.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/parseIni.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/readFile.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/loadSharedConfigFiles.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/getSsoSessionData.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/loadSsoSessionData.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/mergeConfigFiles.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/parseKnownFiles.js", "../node_modules/@smithy/core/dist-es/submodules/config/shared-ini-file-loader/externalDataInterceptor.js", "../node_modules/@smithy/core/dist-es/submodules/config/node-config-provider/getSelectorName.js", "../node_modules/@smithy/core/dist-es/submodules/config/node-config-provider/fromEnv.js", "../node_modules/@smithy/core/dist-es/submodules/config/node-config-provider/fromSharedConfigFiles.js", "../node_modules/@smithy/core/dist-es/submodules/config/node-config-provider/fromStatic.js", "../node_modules/@smithy/core/dist-es/submodules/config/node-config-provider/configLoader.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/endpointsConfig/NodeUseDualstackEndpointConfigOptions.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/endpointsConfig/NodeUseFipsEndpointConfigOptions.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/endpointsConfig/resolveCustomEndpointsConfig.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/endpointsConfig/utils/getEndpointFromRegion.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/endpointsConfig/resolveEndpointsConfig.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/config.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/checkRegion.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/isFipsRegion.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/getRealRegion.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionConfig/resolveRegionConfig.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionInfo/getHostnameFromVariants.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionInfo/getResolvedHostname.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionInfo/getResolvedPartition.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionInfo/getResolvedSigningRegion.js", "../node_modules/@smithy/core/dist-es/submodules/config/config-resolver/regionInfo/getRegionInfo.js", "../node_modules/@smithy/core/dist-es/submodules/config/defaults-mode/constants.js", "../node_modules/@smithy/core/dist-es/submodules/config/defaults-mode/defaultsModeConfig.js", "../node_modules/@smithy/core/dist-es/submodules/config/defaults-mode/resolveDefaultsModeConfig.js", "../node_modules/@smithy/core/dist-es/submodules/config/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/getEndpointUrlConfig.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/getEndpointFromConfig.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/service-customizations/s3.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/service-customizations/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/createConfigValueProvider.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/toEndpointV1.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/toEndpointV1.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/adaptors/getEndpointFromInstructions.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/endpointMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/getEndpointPlugin.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/resolveEndpointConfig.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/bdd/BinaryDecisionDiagram.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/cache/EndpointCache.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/EndpointError.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/EndpointFunctions.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/EndpointRuleObject.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/ErrorRuleObject.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/RuleSetObject.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/TreeRuleObject.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/shared.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/types/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/debug/debugId.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/debug/toDebugString.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/debug/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/customEndpointFunctions.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/booleanEquals.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/coalesce.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/getAttrPathList.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/getAttr.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/isSet.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/isValidHostLabel.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/ite.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/not.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/isIpAddress.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/parseURL.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/split.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/stringEquals.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/substring.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/uriEncode.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/lib/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/endpointFunctions.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateTemplate.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/getReferenceValue.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateExpression.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/callFunction.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateCondition.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/getEndpointHeaders.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/getEndpointProperties.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/getEndpointUrl.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/decideEndpoint.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateConditions.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateEndpointRule.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateErrorRule.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/evaluateRules.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/utils/index.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/util-endpoints/resolveEndpoint.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/middleware-endpoint/resolveEndpointRequiredConfig.js", "../node_modules/@smithy/core/dist-es/submodules/endpoints/index.js", "../node_modules/@smithy/core/dist-es/submodules/serde/middleware-serde/serializerMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/serde/middleware-serde/serdePlugin.js", "../node_modules/@smithy/core/dist-es/submodules/serde/hash-node/hash-node.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/checksum/ChecksumStream.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/stream-type-check.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/fromUtf8.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-base64/constants-for-browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-base64/toBase64.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/checksum/ChecksumStream.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/checksum/createChecksumStream.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/checksum/createChecksumStream.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/ByteArrayCollector.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/createBufferedReadable.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/createBufferedReadable.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/headStream.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/headStream.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-utf8/toUtf8.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-base64/fromBase64.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/stream-collector.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/sdk-stream-mixin.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/stream-collector.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/sdk-stream-mixin.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/splitStream.browser.js", "../node_modules/@smithy/core/dist-es/submodules/serde/util-stream/splitStream.js", "../node_modules/@smithy/core/dist-es/submodules/serde/index.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/collect-stream-body.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/extended-encode-uri-component.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/SerdeContext.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/httpRequest.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/httpResponse.js", "../node_modules/tslib/tslib.es6.mjs", "../node_modules/@smithy/is-array-buffer/dist-cjs/index.js", "../node_modules/@smithy/util-buffer-from/dist-cjs/index.js", "../node_modules/@smithy/util-utf8/dist-cjs/index.js", "../node_modules/@aws-crypto/util/src/convertToBuffer.ts", "../node_modules/@aws-crypto/util/src/isEmptyData.ts", "../node_modules/@aws-crypto/util/src/numToUint8.ts", "../node_modules/@aws-crypto/util/src/uint32ArrayFrom.ts", "../node_modules/@aws-crypto/util/src/index.ts", "../node_modules/@aws-crypto/crc32/src/aws_crc32.ts", "../node_modules/@aws-crypto/crc32/src/index.ts", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/Int64.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/HeaderMarshaller.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/splitMessage.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/EventStreamCodec.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/MessageDecoderStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/MessageEncoderStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/SmithyMessageDecoderStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/SmithyMessageEncoderStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde-universal/getChunkedStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde-universal/getUnmarshalledStream.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde-universal/EventStreamMarshaller.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde/EventStreamMarshaller.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde/utils.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-serde-config-resolver/EventStreamSerdeConfig.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js", "../node_modules/@smithy/core/dist-es/submodules/event-streams/index.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/HttpProtocol.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/HttpBindingProtocol.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/resolve-path.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/requestBuilder.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/serde/determineTimestampFormat.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/serde/FromStringShapeDeserializer.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/serde/HttpInterceptingShapeDeserializer.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/serde/ToStringShapeSerializer.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/serde/HttpInterceptingShapeSerializer.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/Field.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/Fields.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/isValidHostname.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/middleware-content-length/contentLengthMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/util-uri-escape/escape-uri.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/util-uri-escape/escape-uri-path.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/querystring-builder/buildQueryString.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/querystring-parser/parseQueryString.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/url-parser/parseUrl.js", "../node_modules/@smithy/core/dist-es/submodules/protocols/index.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/operation.js", "../node_modules/@smithy/core/dist-es/submodules/schema/middleware/schemaDeserializationMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/schema/middleware/schemaSerializationMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/schema/middleware/getSchemaSerdePlugin.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/Schema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/ListSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/MapSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/OperationSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/StructureSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/ErrorSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/translateTraits.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/NormalizedSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/SimpleSchema.js", "../node_modules/@smithy/core/dist-es/submodules/schema/schemas/sentinels.js", "../node_modules/@smithy/core/dist-es/submodules/schema/TypeRegistry.js", "../node_modules/@smithy/core/dist-es/submodules/schema/index.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/schemaLogFilter.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/command.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/constants.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/create-aggregated-client.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/exceptions.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/default-error-handler.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/defaults-mode.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/emitWarningIfUnsupportedVersion.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/extensions/checksum.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/extensions/retry.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/extensions/defaultExtensionConfiguration.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/get-array-if-single-item.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/get-value-from-text-node.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/is-serializable-header-value.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/NoOpLogger.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/object-mapping.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/ser-utils.js", "../node_modules/@smithy/core/dist-es/submodules/client/smithy-client/serde-json.js", "../node_modules/@smithy/core/dist-es/submodules/client/index.js", "../node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/constants.js", "../node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/service-error-classification.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/constants.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/parseRetryAfterHeader.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/util.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retryMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRateLimiter.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/retries-2026-config.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRetryBackoffStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/DefaultRetryToken.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/config.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/StandardRetryStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/AdaptiveRetryStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/util-retry/ConfiguredRetryStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/defaultRetryQuota.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/delayDecider.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/retryDecider.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/StandardRetryStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/retry-pre-sra-deprecated/AdaptiveRetryStrategy.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/configurations.js", "../node_modules/@smithy/core/dist-es/submodules/retry/middleware-retry/omitRetryHeadersMiddleware.js", "../node_modules/@smithy/core/dist-es/submodules/retry/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/setFeature.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/setTokenFeature.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-host-header/hostHeaderMiddleware.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-logger/loggerMiddleware.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/configuration.js", "../node_modules/@aws/lambda-invoke-store/dist-es/invoke-store.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.js", "../node_modules/@smithy/core/dist-es/getSmithyContext.js", "../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/resolveAuthOptions.js", "../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/httpAuthSchemeMiddleware.js", "../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemeEndpointRuleSetPlugin.js", "../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/getHttpAuthSchemePlugin.js", "../node_modules/@smithy/core/dist-es/middleware-http-auth-scheme/index.js", "../node_modules/@smithy/core/dist-es/middleware-http-signing/httpSigningMiddleware.js", "../node_modules/@smithy/core/dist-es/middleware-http-signing/getHttpSigningMiddleware.js", "../node_modules/@smithy/core/dist-es/middleware-http-signing/index.js", "../node_modules/@smithy/core/dist-es/normalizeProvider.js", "../node_modules/@smithy/core/dist-es/pagination/createPaginator.js", "../node_modules/@smithy/core/dist-es/request-builder/requestBuilder.js", "../node_modules/@smithy/core/dist-es/setFeature.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/DefaultIdentityProviderConfig.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpApiKeyAuth.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/httpBearerAuth.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/noAuth.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/httpAuthSchemes/index.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/memoizeIdentityProvider.js", "../node_modules/@smithy/core/dist-es/util-identity-and-auth/index.js", "../node_modules/@smithy/core/dist-es/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/configurations.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/partitions.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/partition.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/check-features.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/constants.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/encode-features.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/middleware-user-agent/user-agent-middleware.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getNodeModulesParentDirs.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getSanitizedTypeScriptVersion.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getSanitizedDevTypeScriptVersion.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/getTypeScriptUserAgentPair.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/crt-availability.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/is-crt-available.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/defaultUserAgent.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.js", "../node_modules/bowser/es5.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-user-agent-browser/defaultUserAgent.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/isIpAddress.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/lib/aws/parseArn.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/aws.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/resolveEndpoint.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/util-endpoints/types/EndpointError.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/region-config-resolver/awsRegionConfig.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/region-config-resolver/stsRegionDefaultResolver.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/region-config-resolver/extensions.js", "../node_modules/@aws-sdk/core/dist-es/submodules/client/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.js", "../node_modules/@smithy/signature-v4/dist-cjs/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/client-ecr/package.json", "../node_modules/@aws-sdk/credential-provider-env/dist-cjs/index.js", "../node_modules/@smithy/credential-provider-imds/dist-cjs/index.js", "../node_modules/@smithy/node-http-handler/dist-cjs/index.js", "../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/checkUrl.js", "../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/requestHelpers.js", "../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/retry-wrapper.js", "../node_modules/@aws-sdk/credential-provider-http/dist-cjs/fromHttp/fromHttp.js", "../node_modules/@aws-sdk/credential-provider-http/dist-cjs/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/EndpointParameters.js", "../node_modules/@aws-sdk/nested-clients/package.json", "../node_modules/@smithy/core/dist-es/submodules/cbor/cbor-types.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/cbor-decode.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/cbor-encode.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/cbor.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/parseCborBody.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/SmithyRpcV2CborProtocol.js", "../node_modules/@smithy/core/dist-es/submodules/cbor/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/ProtocolLib.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/coercing-serializers.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/ConfigurableSerdeContext.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/UnionSerde.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/common.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReplacer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonCodec.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJson1_0Protocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJson1_1Protocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/awsExpectUnion.js", "../node_modules/fast-xml-parser/lib/fxp.cjs", "../node_modules/@aws-sdk/xml-builder/dist-cjs/xml-external/nodable_entities.js", "../node_modules/@aws-sdk/xml-builder/dist-cjs/xml-parser.js", "../node_modules/@aws-sdk/xml-builder/dist-cjs/index.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeDeserializer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/QueryShapeSerializer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/AwsQueryProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/AwsEc2QueryProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/query/QuerySerializerSettings.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/parseXmlBody.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeSerializer.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlCodec.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/AwsRestXmlProtocol.js", "../node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/bdd.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/models/SSOOIDCServiceException.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/models/errors.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/schemas/schemas_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/runtimeConfig.shared.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/runtimeConfig.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/auth/httpAuthExtensionConfiguration.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/runtimeExtensions.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/SSOOIDCClient.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/commands/CreateTokenCommand.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/SSOOIDC.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/commands/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/models/enums.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/models/models_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso-oidc/index.js", "../node_modules/@aws-sdk/token-providers/dist-cjs/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/EndpointParameters.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/bdd.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/models/SSOServiceException.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/models/errors.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/schemas/schemas_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/runtimeConfig.shared.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/runtimeConfig.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/auth/httpAuthExtensionConfiguration.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/runtimeExtensions.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/SSOClient.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/commands/GetRoleCredentialsCommand.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/SSO.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/commands/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/models/models_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sso/index.js", "../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/loadSso-BKDNrsal.js", "../node_modules/@aws-sdk/credential-provider-sso/dist-cjs/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/EndpointParameters.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/bdd.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/models/SigninServiceException.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/models/errors.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/schemas/schemas_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/runtimeConfig.shared.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/runtimeConfig.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/auth/httpAuthExtensionConfiguration.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/runtimeExtensions.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/SigninClient.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/commands/CreateOAuth2TokenCommand.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/Signin.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/commands/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/models/enums.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/models/models_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/signin/index.js", "../node_modules/@aws-sdk/credential-provider-login/dist-cjs/index.js", "../node_modules/@aws-sdk/signature-v4-multi-region/dist-cjs/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/bdd.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/endpoint/EndpointParameters.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/models/STSServiceException.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/models/errors.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/schemas/schemas_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.shared.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeConfig.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/auth/httpAuthExtensionConfiguration.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/runtimeExtensions.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STSClient.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/commands/AssumeRoleCommand.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/commands/AssumeRoleWithWebIdentityCommand.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/STS.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/commands/index.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/models/models_0.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/defaultStsRoleAssumers.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/defaultRoleAssumers.js", "../node_modules/@aws-sdk/nested-clients/dist-es/submodules/sts/index.js", "../node_modules/@aws-sdk/credential-provider-process/dist-cjs/index.js", "../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromWebToken.js", "../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/fromTokenFile.js", "../node_modules/@aws-sdk/credential-provider-web-identity/dist-cjs/index.js", "../node_modules/@aws-sdk/credential-provider-ini/dist-cjs/index.js", "../node_modules/@aws-sdk/credential-provider-node/dist-cjs/index.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/endpoint/bdd.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/models/ECRServiceException.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/models/errors.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/schemas/schemas_0.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/runtimeConfig.shared.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/runtimeConfig.js", "../node_modules/@aws-sdk/client-ecr/dist-cjs/index.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/auth/httpAuthSchemeProvider.js", "../node_modules/@aws-sdk/client-ecr-public/package.json", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/endpoint/bdd.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/endpoint/endpointResolver.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/models/ECRPUBLICServiceException.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/models/errors.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/schemas/schemas_0.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/runtimeConfig.shared.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/runtimeConfig.js", "../node_modules/@aws-sdk/client-ecr-public/dist-cjs/index.js", "../src/main.ts", "../node_modules/@actions/core/src/command.ts", "../node_modules/@actions/core/src/utils.ts", "../node_modules/@actions/core/src/file-command.ts", "../node_modules/@actions/core/src/core.ts", "../node_modules/@actions/http-client/src/index.ts", "../node_modules/@actions/core/src/summary.ts", "../node_modules/@actions/core/src/platform.ts", "../node_modules/@actions/exec/src/exec.ts", "../node_modules/@actions/exec/src/toolrunner.ts", "../node_modules/@actions/io/src/io.ts", "../node_modules/@actions/io/src/io-util.ts", "../node_modules/@docker/actions-toolkit/src/cache.ts", "../node_modules/@actions/tool-cache/node_modules/@actions/core/src/command.ts", "../node_modules/@actions/tool-cache/node_modules/@actions/core/src/utils.ts", "../node_modules/@actions/tool-cache/node_modules/@actions/core/src/summary.ts", "../node_modules/@actions/tool-cache/node_modules/@actions/core/src/platform.ts", "../node_modules/@actions/tool-cache/node_modules/@actions/core/src/core.ts", "../node_modules/@actions/tool-cache/src/tool-cache.ts", "../node_modules/@actions/tool-cache/src/manifest.ts", "../node_modules/@actions/cache/src/cache.ts", "../node_modules/@actions/glob/node_modules/@actions/core/src/command.ts", "../node_modules/@actions/glob/node_modules/@actions/core/src/utils.ts", "../node_modules/@actions/glob/node_modules/@actions/core/src/summary.ts", "../node_modules/@actions/glob/node_modules/@actions/core/src/platform.ts", "../node_modules/@actions/glob/node_modules/@actions/core/src/core.ts", "../node_modules/@actions/glob/src/internal-globber.ts", "../node_modules/@actions/glob/src/internal-glob-options-helper.ts", "../node_modules/@actions/glob/src/internal-path-helper.ts", "../node_modules/@actions/glob/src/internal-match-kind.ts", "../node_modules/@actions/glob/src/internal-pattern-helper.ts", "../node_modules/@actions/glob/src/internal-pattern.ts", "../node_modules/@actions/glob/src/internal-path.ts", "../node_modules/@actions/glob/src/internal-search-state.ts", "../node_modules/@actions/glob/src/glob.ts", "../node_modules/@actions/cache/src/internal/cacheUtils.ts", "../node_modules/@actions/cache/src/internal/constants.ts", "../node_modules/@actions/cache/node_modules/@actions/http-client/src/index.ts", "../node_modules/@actions/cache/node_modules/@actions/http-client/src/proxy.ts", "../node_modules/@actions/cache/node_modules/@actions/http-client/src/auth.ts", "../node_modules/@actions/cache/src/internal/cacheHttpClient.ts", "../node_modules/@typespec/ts-http-runtime/src/abort-controller/AbortError.ts", "../node_modules/@typespec/ts-http-runtime/src/logger/log.ts", "../node_modules/@typespec/ts-http-runtime/src/logger/debug.ts", "../node_modules/@typespec/ts-http-runtime/src/logger/logger.ts", "../node_modules/@typespec/ts-http-runtime/src/httpHeaders.ts", "../node_modules/@typespec/ts-http-runtime/src/util/uuidUtils.ts", "../node_modules/@typespec/ts-http-runtime/src/pipelineRequest.ts", "../node_modules/@typespec/ts-http-runtime/src/pipeline.ts", "../node_modules/@typespec/ts-http-runtime/src/util/object.ts", "../node_modules/@typespec/ts-http-runtime/src/util/error.ts", "../node_modules/@typespec/ts-http-runtime/src/util/inspect.ts", "../node_modules/@typespec/ts-http-runtime/src/util/sanitizer.ts", "../node_modules/@typespec/ts-http-runtime/src/restError.ts", "../node_modules/@typespec/ts-http-runtime/src/util/bytesEncoding.ts", "../node_modules/@typespec/ts-http-runtime/src/nodeHttpClient.ts", "../node_modules/@typespec/ts-http-runtime/src/log.ts", "../node_modules/@typespec/ts-http-runtime/src/defaultHttpClient.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/logPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/redirectPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/util/userAgentPlatform.ts", "../node_modules/@typespec/ts-http-runtime/src/util/userAgent.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/userAgentPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/decompressResponsePolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/util/random.ts", "../node_modules/@typespec/ts-http-runtime/src/util/delay.ts", "../node_modules/@typespec/ts-http-runtime/src/util/helpers.ts", "../node_modules/@typespec/ts-http-runtime/src/retryStrategies/throttlingRetryStrategy.ts", "../node_modules/@typespec/ts-http-runtime/src/retryStrategies/exponentialRetryStrategy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/retryPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/defaultRetryPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/util/checkEnvironment.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/formDataPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/proxyPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/agentPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/tlsPolicy.ts", "../node_modules/@typespec/ts-http-runtime/src/util/typeGuards.ts", "../node_modules/@typespec/ts-http-runtime/src/util/concat.ts", "../node_modules/@typespec/ts-http-runtime/src/policies/multipartPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/pipeline.ts", "../node_modules/@azure/logger/src/index.ts", "../node_modules/@azure/core-rest-pipeline/src/log.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/logPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/redirectPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/util/userAgentPlatform.ts", "../node_modules/@azure/core-rest-pipeline/src/constants.ts", "../node_modules/@azure/core-rest-pipeline/src/util/userAgent.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/userAgentPolicy.ts", "../node_modules/@azure/abort-controller/src/AbortError.ts", "../node_modules/@azure/core-util/src/createAbortablePromise.ts", "../node_modules/@azure/core-util/src/delay.ts", "../node_modules/@azure/core-util/src/error.ts", "../node_modules/@azure/core-util/src/index.ts", "../node_modules/@azure/core-rest-pipeline/src/util/file.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/multipartPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/decompressResponsePolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/defaultRetryPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/formDataPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/proxyPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/setClientRequestIdPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/agentPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/tlsPolicy.ts", "../node_modules/@azure/core-tracing/src/tracingContext.ts", "../node_modules/@azure/core-tracing/src/state.ts", "../node_modules/@azure/core-tracing/src/instrumenter.ts", "../node_modules/@azure/core-tracing/src/tracingClient.ts", "../node_modules/@azure/core-rest-pipeline/src/restError.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/tracingPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/util/wrapAbortSignal.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/wrapAbortSignalLikePolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/createPipelineFromOptions.ts", "../node_modules/@azure/core-rest-pipeline/src/defaultHttpClient.ts", "../node_modules/@azure/core-rest-pipeline/src/httpHeaders.ts", "../node_modules/@azure/core-rest-pipeline/src/pipelineRequest.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/retryPolicy.ts", "../node_modules/@azure/core-rest-pipeline/src/util/tokenCycler.ts", "../node_modules/@azure/core-rest-pipeline/src/policies/bearerTokenAuthenticationPolicy.ts", "../node_modules/@azure/core-auth/src/tokenCredential.ts", "../node_modules/@azure/core-http-compat/src/policies/disableKeepAlivePolicy.ts", "../node_modules/@azure/core-client/src/base64.ts", "../node_modules/@azure/core-client/src/utils.ts", "../node_modules/@azure/core-client/src/serializer.ts", "../node_modules/@azure/core-client/src/state.ts", "../node_modules/@azure/core-client/src/operationHelpers.ts", "../node_modules/@azure/core-client/src/deserializationPolicy.ts", "../node_modules/@azure/core-client/src/interfaceHelpers.ts", "../node_modules/@azure/core-client/src/serializationPolicy.ts", "../node_modules/@azure/core-client/src/pipeline.ts", "../node_modules/@azure/core-client/src/httpClientCache.ts", "../node_modules/@azure/core-client/src/urlHelpers.ts", "../node_modules/@azure/core-client/src/log.ts", "../node_modules/@azure/core-client/src/serviceClient.ts", "../node_modules/@azure/core-client/src/authorizeRequestOnTenantChallenge.ts", "../node_modules/@azure/core-http-compat/src/util.ts", "../node_modules/@azure/core-http-compat/src/response.ts", "../node_modules/@azure/core-http-compat/src/extendedClient.ts", "../node_modules/@azure/core-http-compat/src/policies/requestPolicyFactoryPolicy.ts", "../node_modules/@azure/core-http-compat/src/httpClientAdapter.ts", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/util.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/validator.js", "../node_modules/@nodable/entities/src/entities.js", "../node_modules/@nodable/entities/src/EntityDecoder.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/OptionsBuilder.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/xmlNode.js", "../node_modules/xml-naming/src/index.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js", "../node_modules/strnum/strnum.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/ignoreAttributes.js", "../node_modules/path-expression-matcher/src/Expression.js", "../node_modules/path-expression-matcher/src/ExpressionSet.js", "../node_modules/path-expression-matcher/src/Matcher.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/node2json.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js", "../node_modules/fast-xml-builder/src/util.js", "../node_modules/fast-xml-builder/src/orderedJs2Xml.js", "../node_modules/fast-xml-builder/src/ignoreAttributes.js", "../node_modules/fast-xml-builder/src/fxb.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/xmlbuilder/json2xml.js", "../node_modules/@azure/core-xml/node_modules/fast-xml-parser/src/fxp.js", "../node_modules/@azure/core-xml/src/xml.ts", "../node_modules/@azure/storage-blob/src/log.ts", "../node_modules/@azure/storage-common/src/BufferScheduler.ts", "../node_modules/@azure/storage-common/src/BuffersStream.ts", "../node_modules/@azure/storage-common/src/PooledBuffer.ts", "../node_modules/@azure/storage-common/src/cache.ts", "../node_modules/@azure/storage-common/src/policies/RequestPolicy.ts", "../node_modules/@azure/storage-common/src/utils/constants.ts", "../node_modules/@azure/storage-common/src/utils/utils.common.ts", "../node_modules/@azure/storage-common/src/policies/StorageBrowserPolicy.ts", "../node_modules/@azure/storage-common/src/StorageBrowserPolicyFactory.ts", "../node_modules/@azure/storage-common/src/policies/CredentialPolicy.ts", "../node_modules/@azure/storage-common/src/policies/AnonymousCredentialPolicy.ts", "../node_modules/@azure/storage-common/src/credentials/Credential.ts", "../node_modules/@azure/storage-common/src/credentials/AnonymousCredential.ts", "../node_modules/@azure/storage-common/src/credentials/StorageSharedKeyCredential.ts", "../node_modules/@azure/storage-common/src/utils/SharedKeyComparator.ts", "../node_modules/@azure/storage-common/src/policies/StorageSharedKeyCredentialPolicy.ts", "../node_modules/@azure/storage-common/src/log.ts", "../node_modules/@azure/storage-common/src/policies/StorageRetryPolicyType.ts", "../node_modules/@azure/storage-common/src/policies/StorageRetryPolicy.ts", "../node_modules/@azure/storage-common/src/StorageRetryPolicyFactory.ts", "../node_modules/@azure/storage-common/src/policies/StorageBrowserPolicyV2.ts", "../node_modules/@azure/storage-common/src/policies/StorageCorrectContentLengthPolicy.ts", "../node_modules/@azure/storage-common/src/policies/StorageRetryPolicyV2.ts", "../node_modules/@azure/storage-common/src/policies/StorageSharedKeyCredentialPolicyV2.ts", "../node_modules/@azure/storage-common/src/policies/StorageRequestFailureDetailsParserPolicy.ts", "../node_modules/@azure/storage-common/src/credentials/UserDelegationKeyCredential.ts", "../node_modules/@azure/storage-blob/src/utils/constants.ts", "../node_modules/@azure/storage-blob/src/Pipeline.ts", "../node_modules/@azure/storage-blob/src/generated/src/models/index.ts", "../node_modules/@azure/storage-blob/src/generated/src/models/mappers.ts", "../node_modules/@azure/storage-blob/src/generated/src/models/parameters.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/service.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/container.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/blob.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/pageBlob.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/appendBlob.ts", "../node_modules/@azure/storage-blob/src/generated/src/operations/blockBlob.ts", "../node_modules/@azure/storage-blob/src/generated/src/storageClient.ts", "../node_modules/@azure/storage-blob/src/StorageContextClient.ts", "../node_modules/@azure/storage-blob/src/utils/utils.common.ts", "../node_modules/@azure/storage-blob/src/StorageClient.ts", "../node_modules/@azure/storage-blob/src/utils/tracing.ts", "../node_modules/@azure/storage-blob/src/sas/BlobSASPermissions.ts", "../node_modules/@azure/storage-blob/src/sas/ContainerSASPermissions.ts", "../node_modules/@azure/storage-blob/src/sas/SasIPRange.ts", "../node_modules/@azure/storage-blob/src/sas/SASQueryParameters.ts", "../node_modules/@azure/storage-blob/src/sas/BlobSASSignatureValues.ts", "../node_modules/@azure/storage-blob/src/BlobLeaseClient.ts", "../node_modules/@azure/storage-blob/src/utils/RetriableReadableStream.ts", "../node_modules/@azure/storage-blob/src/BlobDownloadResponse.ts", "../node_modules/@azure/storage-blob/src/utils/BlobQuickQueryStream.ts", "../node_modules/@azure/storage-blob/src/internal-avro/AvroConstants.ts", "../node_modules/@azure/storage-blob/src/internal-avro/AvroParser.ts", "../node_modules/@azure/storage-blob/src/internal-avro/utils/utils.common.ts", "../node_modules/@azure/storage-blob/src/internal-avro/AvroReader.ts", "../node_modules/@azure/storage-blob/src/internal-avro/AvroReadable.ts", "../node_modules/@azure/storage-blob/src/internal-avro/AvroReadableFromStream.ts", "../node_modules/@azure/storage-blob/src/BlobQueryResponse.ts", "../node_modules/@azure/storage-blob/src/models.ts", "../node_modules/@azure/storage-blob/src/PageBlobRangeResponse.ts", "../node_modules/@azure/storage-blob/src/pollers/BlobStartCopyFromUrlPoller.ts", "../node_modules/@azure/storage-blob/src/Range.ts", "../node_modules/@azure/storage-blob/src/utils/Batch.ts", "../node_modules/@azure/storage-blob/src/utils/utils.ts", "../node_modules/@azure/storage-blob/src/Clients.ts", "../node_modules/@azure/storage-blob/src/utils/Mutex.ts", "../node_modules/@azure/storage-blob/src/generatedModels.ts", "../node_modules/@actions/cache/src/internal/shared/errors.ts", "../node_modules/@actions/cache/src/internal/uploadUtils.ts", "../node_modules/@actions/cache/src/internal/downloadUtils.ts", "../node_modules/@actions/cache/src/internal/requestUtils.ts", "../node_modules/@actions/cache/src/options.ts", "../node_modules/@actions/cache/src/internal/config.ts", "../node_modules/@actions/cache/src/internal/shared/user-agent.ts", "../node_modules/@actions/cache/src/generated/results/api/v1/cache.ts", "../node_modules/@actions/cache/src/generated/results/entities/v1/cachemetadata.ts", "../node_modules/@actions/cache/src/generated/results/entities/v1/cachescope.ts", "../node_modules/@actions/cache/src/generated/results/api/v1/cache.twirp-client.ts", "../node_modules/@actions/cache/src/internal/shared/util.ts", "../node_modules/@actions/cache/src/internal/shared/cacheTwirpClient.ts", "../node_modules/@actions/cache/src/internal/tar.ts", "../node_modules/@docker/actions-toolkit/src/index.ts", "../src/context.ts", "../node_modules/js-yaml/dist/js-yaml.mjs", "../node_modules/@docker/actions-toolkit/src/buildx/buildx.ts", "../node_modules/@docker/actions-toolkit/src/buildkit/git.ts", "../node_modules/@docker/actions-toolkit/src/docker/docker.ts", "../node_modules/@docker/actions-toolkit/src/context.ts", "../node_modules/@docker/actions-toolkit/src/exec.ts", "../node_modules/@docker/actions-toolkit/src/util.ts", "../node_modules/csv-parse/lib/api/CsvError.js", "../node_modules/csv-parse/lib/utils/is_object.js", "../node_modules/csv-parse/lib/api/normalize_columns_array.js", "../node_modules/csv-parse/lib/utils/ResizeableBuffer.js", "../node_modules/csv-parse/lib/api/init_state.js", "../node_modules/csv-parse/lib/utils/underscore.js", "../node_modules/csv-parse/lib/api/normalize_options.js", "../node_modules/csv-parse/lib/api/index.js", "../node_modules/csv-parse/lib/sync.js", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/src/context.ts", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/src/internal/utils.ts", "../node_modules/universal-user-agent/index.js", "../node_modules/before-after-hook/lib/register.js", "../node_modules/before-after-hook/lib/add.js", "../node_modules/before-after-hook/lib/remove.js", "../node_modules/before-after-hook/index.js", "../node_modules/@octokit/endpoint/dist-bundle/index.js", "../node_modules/@octokit/request/dist-bundle/index.js", "../node_modules/json-with-bigint/json-with-bigint.js", "../node_modules/@octokit/request-error/dist-src/index.js", "../node_modules/@octokit/graphql/dist-bundle/index.js", "../node_modules/@octokit/auth-token/dist-bundle/index.js", "../node_modules/@octokit/core/dist-src/version.js", "../node_modules/@octokit/core/dist-src/index.js", "../node_modules/@octokit/src/version.ts", "../node_modules/@octokit/src/generated/endpoints.ts", "../node_modules/@octokit/src/endpoints-to-methods.ts", "../node_modules/@octokit/src/index.ts", "../node_modules/@octokit/plugin-paginate-rest/dist-bundle/index.js", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/src/utils.ts", "../node_modules/@docker/actions-toolkit/node_modules/@actions/github/src/github.ts", "../node_modules/@docker/actions-toolkit/node_modules/@actions/http-client/src/index.ts", "../node_modules/@docker/actions-toolkit/node_modules/@actions/http-client/src/proxy.ts", "../node_modules/jwt-decode/build/esm/index.js", "../node_modules/@docker/actions-toolkit/src/github/github.ts", "../src/aws.ts", "../node_modules/http-proxy-agent/src/index.ts", "../node_modules/http-proxy-agent/node_modules/agent-base/src/index.ts", "../node_modules/https-proxy-agent/src/index.ts", "../node_modules/https-proxy-agent/node_modules/agent-base/src/index.ts", "../node_modules/https-proxy-agent/src/parse-proxy-response.ts", "../src/docker.ts", "../src/state-helper.ts"], "sourcesContent": ["'use strict';\n\nvar net = require('net');\nvar tls = require('tls');\nvar http = require('http');\nvar https = require('https');\nvar events = require('events');\nvar assert = require('assert');\nvar util = require('util');\n\n\nexports.httpOverHttp = httpOverHttp;\nexports.httpsOverHttp = httpsOverHttp;\nexports.httpOverHttps = httpOverHttps;\nexports.httpsOverHttps = httpsOverHttps;\n\n\nfunction httpOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n return agent;\n}\n\nfunction httpsOverHttp(options) {\n var agent = new TunnelingAgent(options);\n agent.request = http.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\nfunction httpOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n return agent;\n}\n\nfunction httpsOverHttps(options) {\n var agent = new TunnelingAgent(options);\n agent.request = https.request;\n agent.createSocket = createSecureSocket;\n agent.defaultPort = 443;\n return agent;\n}\n\n\nfunction TunnelingAgent(options) {\n var self = this;\n self.options = options || {};\n self.proxyOptions = self.options.proxy || {};\n self.maxSockets = self.options.maxSockets || http.Agent.defaultMaxSockets;\n self.requests = [];\n self.sockets = [];\n\n self.on('free', function onFree(socket, host, port, localAddress) {\n var options = toOptions(host, port, localAddress);\n for (var i = 0, len = self.requests.length; i < len; ++i) {\n var pending = self.requests[i];\n if (pending.host === options.host && pending.port === options.port) {\n // Detect the request to connect same origin server,\n // reuse the connection.\n self.requests.splice(i, 1);\n pending.request.onSocket(socket);\n return;\n }\n }\n socket.destroy();\n self.removeSocket(socket);\n });\n}\nutil.inherits(TunnelingAgent, events.EventEmitter);\n\nTunnelingAgent.prototype.addRequest = function addRequest(req, host, port, localAddress) {\n var self = this;\n var options = mergeOptions({request: req}, self.options, toOptions(host, port, localAddress));\n\n if (self.sockets.length >= this.maxSockets) {\n // We are over limit so we'll add it to the queue.\n self.requests.push(options);\n return;\n }\n\n // If we are under maxSockets create a new one.\n self.createSocket(options, function(socket) {\n socket.on('free', onFree);\n socket.on('close', onCloseOrRemove);\n socket.on('agentRemove', onCloseOrRemove);\n req.onSocket(socket);\n\n function onFree() {\n self.emit('free', socket, options);\n }\n\n function onCloseOrRemove(err) {\n self.removeSocket(socket);\n socket.removeListener('free', onFree);\n socket.removeListener('close', onCloseOrRemove);\n socket.removeListener('agentRemove', onCloseOrRemove);\n }\n });\n};\n\nTunnelingAgent.prototype.createSocket = function createSocket(options, cb) {\n var self = this;\n var placeholder = {};\n self.sockets.push(placeholder);\n\n var connectOptions = mergeOptions({}, self.proxyOptions, {\n method: 'CONNECT',\n path: options.host + ':' + options.port,\n agent: false,\n headers: {\n host: options.host + ':' + options.port\n }\n });\n if (options.localAddress) {\n connectOptions.localAddress = options.localAddress;\n }\n if (connectOptions.proxyAuth) {\n connectOptions.headers = connectOptions.headers || {};\n connectOptions.headers['Proxy-Authorization'] = 'Basic ' +\n new Buffer(connectOptions.proxyAuth).toString('base64');\n }\n\n debug('making CONNECT request');\n var connectReq = self.request(connectOptions);\n connectReq.useChunkedEncodingByDefault = false; // for v0.6\n connectReq.once('response', onResponse); // for v0.6\n connectReq.once('upgrade', onUpgrade); // for v0.6\n connectReq.once('connect', onConnect); // for v0.7 or later\n connectReq.once('error', onError);\n connectReq.end();\n\n function onResponse(res) {\n // Very hacky. This is necessary to avoid http-parser leaks.\n res.upgrade = true;\n }\n\n function onUpgrade(res, socket, head) {\n // Hacky.\n process.nextTick(function() {\n onConnect(res, socket, head);\n });\n }\n\n function onConnect(res, socket, head) {\n connectReq.removeAllListeners();\n socket.removeAllListeners();\n\n if (res.statusCode !== 200) {\n debug('tunneling socket could not be established, statusCode=%d',\n res.statusCode);\n socket.destroy();\n var error = new Error('tunneling socket could not be established, ' +\n 'statusCode=' + res.statusCode);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n if (head.length > 0) {\n debug('got illegal response body from proxy');\n socket.destroy();\n var error = new Error('got illegal response body from proxy');\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n return;\n }\n debug('tunneling connection has established');\n self.sockets[self.sockets.indexOf(placeholder)] = socket;\n return cb(socket);\n }\n\n function onError(cause) {\n connectReq.removeAllListeners();\n\n debug('tunneling socket could not be established, cause=%s\\n',\n cause.message, cause.stack);\n var error = new Error('tunneling socket could not be established, ' +\n 'cause=' + cause.message);\n error.code = 'ECONNRESET';\n options.request.emit('error', error);\n self.removeSocket(placeholder);\n }\n};\n\nTunnelingAgent.prototype.removeSocket = function removeSocket(socket) {\n var pos = this.sockets.indexOf(socket)\n if (pos === -1) {\n return;\n }\n this.sockets.splice(pos, 1);\n\n var pending = this.requests.shift();\n if (pending) {\n // If we have pending requests and a socket gets closed a new one\n // needs to be created to take over in the pool for the one that closed.\n this.createSocket(pending, function(socket) {\n pending.request.onSocket(socket);\n });\n }\n};\n\nfunction createSecureSocket(options, cb) {\n var self = this;\n TunnelingAgent.prototype.createSocket.call(self, options, function(socket) {\n var hostHeader = options.request.getHeader('host');\n var tlsOptions = mergeOptions({}, self.options, {\n socket: socket,\n servername: hostHeader ? hostHeader.replace(/:.*$/, '') : options.host\n });\n\n // 0 is dummy port for v0.6\n var secureSocket = tls.connect(0, tlsOptions);\n self.sockets[self.sockets.indexOf(socket)] = secureSocket;\n cb(secureSocket);\n });\n}\n\n\nfunction toOptions(host, port, localAddress) {\n if (typeof host === 'string') { // since v0.10\n return {\n host: host,\n port: port,\n localAddress: localAddress\n };\n }\n return host; // for v0.11 or later\n}\n\nfunction mergeOptions(target) {\n for (var i = 1, len = arguments.length; i < len; ++i) {\n var overrides = arguments[i];\n if (typeof overrides === 'object') {\n var keys = Object.keys(overrides);\n for (var j = 0, keyLen = keys.length; j < keyLen; ++j) {\n var k = keys[j];\n if (overrides[k] !== undefined) {\n target[k] = overrides[k];\n }\n }\n }\n }\n return target;\n}\n\n\nvar debug;\nif (process.env.NODE_DEBUG && /\\btunnel\\b/.test(process.env.NODE_DEBUG)) {\n debug = function() {\n var args = Array.prototype.slice.call(arguments);\n if (typeof args[0] === 'string') {\n args[0] = 'TUNNEL: ' + args[0];\n } else {\n args.unshift('TUNNEL:');\n }\n console.error.apply(console, args);\n }\n} else {\n debug = function() {};\n}\nexports.debug = debug; // for test\n", "module.exports = require('./lib/tunnel');\n", "module.exports = {\n kClose: Symbol('close'),\n kDestroy: Symbol('destroy'),\n kDispatch: Symbol('dispatch'),\n kUrl: Symbol('url'),\n kWriting: Symbol('writing'),\n kResuming: Symbol('resuming'),\n kQueue: Symbol('queue'),\n kConnect: Symbol('connect'),\n kConnecting: Symbol('connecting'),\n kKeepAliveDefaultTimeout: Symbol('default keep alive timeout'),\n kKeepAliveMaxTimeout: Symbol('max keep alive timeout'),\n kKeepAliveTimeoutThreshold: Symbol('keep alive timeout threshold'),\n kKeepAliveTimeoutValue: Symbol('keep alive timeout'),\n kKeepAlive: Symbol('keep alive'),\n kHeadersTimeout: Symbol('headers timeout'),\n kBodyTimeout: Symbol('body timeout'),\n kServerName: Symbol('server name'),\n kLocalAddress: Symbol('local address'),\n kHost: Symbol('host'),\n kNoRef: Symbol('no ref'),\n kBodyUsed: Symbol('used'),\n kBody: Symbol('abstracted request body'),\n kRunning: Symbol('running'),\n kBlocking: Symbol('blocking'),\n kPending: Symbol('pending'),\n kSize: Symbol('size'),\n kBusy: Symbol('busy'),\n kQueued: Symbol('queued'),\n kFree: Symbol('free'),\n kConnected: Symbol('connected'),\n kClosed: Symbol('closed'),\n kNeedDrain: Symbol('need drain'),\n kReset: Symbol('reset'),\n kDestroyed: Symbol.for('nodejs.stream.destroyed'),\n kResume: Symbol('resume'),\n kOnError: Symbol('on error'),\n kMaxHeadersSize: Symbol('max headers size'),\n kRunningIdx: Symbol('running index'),\n kPendingIdx: Symbol('pending index'),\n kError: Symbol('error'),\n kClients: Symbol('clients'),\n kClient: Symbol('client'),\n kParser: Symbol('parser'),\n kOnDestroyed: Symbol('destroy callbacks'),\n kPipelining: Symbol('pipelining'),\n kSocket: Symbol('socket'),\n kHostHeader: Symbol('host header'),\n kConnector: Symbol('connector'),\n kStrictContentLength: Symbol('strict content length'),\n kMaxRedirections: Symbol('maxRedirections'),\n kMaxRequests: Symbol('maxRequestsPerClient'),\n kProxy: Symbol('proxy agent options'),\n kCounter: Symbol('socket request counter'),\n kInterceptors: Symbol('dispatch interceptors'),\n kMaxResponseSize: Symbol('max response size'),\n kHTTP2Session: Symbol('http2Session'),\n kHTTP2SessionState: Symbol('http2Session state'),\n kRetryHandlerDefaultRetry: Symbol('retry agent default retry'),\n kConstruct: Symbol('constructable'),\n kListeners: Symbol('listeners'),\n kHTTPContext: Symbol('http context'),\n kMaxConcurrentStreams: Symbol('max concurrent streams'),\n kNoProxyAgent: Symbol('no proxy agent'),\n kHttpProxyAgent: Symbol('http proxy agent'),\n kHttpsProxyAgent: Symbol('https proxy agent')\n}\n", "'use strict'\n\nconst kUndiciError = Symbol.for('undici.error.UND_ERR')\nclass UndiciError extends Error {\n constructor (message) {\n super(message)\n this.name = 'UndiciError'\n this.code = 'UND_ERR'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kUndiciError] === true\n }\n\n [kUndiciError] = true\n}\n\nconst kConnectTimeoutError = Symbol.for('undici.error.UND_ERR_CONNECT_TIMEOUT')\nclass ConnectTimeoutError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'ConnectTimeoutError'\n this.message = message || 'Connect Timeout Error'\n this.code = 'UND_ERR_CONNECT_TIMEOUT'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kConnectTimeoutError] === true\n }\n\n [kConnectTimeoutError] = true\n}\n\nconst kHeadersTimeoutError = Symbol.for('undici.error.UND_ERR_HEADERS_TIMEOUT')\nclass HeadersTimeoutError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'HeadersTimeoutError'\n this.message = message || 'Headers Timeout Error'\n this.code = 'UND_ERR_HEADERS_TIMEOUT'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kHeadersTimeoutError] === true\n }\n\n [kHeadersTimeoutError] = true\n}\n\nconst kHeadersOverflowError = Symbol.for('undici.error.UND_ERR_HEADERS_OVERFLOW')\nclass HeadersOverflowError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'HeadersOverflowError'\n this.message = message || 'Headers Overflow Error'\n this.code = 'UND_ERR_HEADERS_OVERFLOW'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kHeadersOverflowError] === true\n }\n\n [kHeadersOverflowError] = true\n}\n\nconst kBodyTimeoutError = Symbol.for('undici.error.UND_ERR_BODY_TIMEOUT')\nclass BodyTimeoutError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'BodyTimeoutError'\n this.message = message || 'Body Timeout Error'\n this.code = 'UND_ERR_BODY_TIMEOUT'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kBodyTimeoutError] === true\n }\n\n [kBodyTimeoutError] = true\n}\n\nconst kResponseStatusCodeError = Symbol.for('undici.error.UND_ERR_RESPONSE_STATUS_CODE')\nclass ResponseStatusCodeError extends UndiciError {\n constructor (message, statusCode, headers, body) {\n super(message)\n this.name = 'ResponseStatusCodeError'\n this.message = message || 'Response Status Code Error'\n this.code = 'UND_ERR_RESPONSE_STATUS_CODE'\n this.body = body\n this.status = statusCode\n this.statusCode = statusCode\n this.headers = headers\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kResponseStatusCodeError] === true\n }\n\n [kResponseStatusCodeError] = true\n}\n\nconst kInvalidArgumentError = Symbol.for('undici.error.UND_ERR_INVALID_ARG')\nclass InvalidArgumentError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'InvalidArgumentError'\n this.message = message || 'Invalid Argument Error'\n this.code = 'UND_ERR_INVALID_ARG'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kInvalidArgumentError] === true\n }\n\n [kInvalidArgumentError] = true\n}\n\nconst kInvalidReturnValueError = Symbol.for('undici.error.UND_ERR_INVALID_RETURN_VALUE')\nclass InvalidReturnValueError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'InvalidReturnValueError'\n this.message = message || 'Invalid Return Value Error'\n this.code = 'UND_ERR_INVALID_RETURN_VALUE'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kInvalidReturnValueError] === true\n }\n\n [kInvalidReturnValueError] = true\n}\n\nconst kAbortError = Symbol.for('undici.error.UND_ERR_ABORT')\nclass AbortError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'AbortError'\n this.message = message || 'The operation was aborted'\n this.code = 'UND_ERR_ABORT'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kAbortError] === true\n }\n\n [kAbortError] = true\n}\n\nconst kRequestAbortedError = Symbol.for('undici.error.UND_ERR_ABORTED')\nclass RequestAbortedError extends AbortError {\n constructor (message) {\n super(message)\n this.name = 'AbortError'\n this.message = message || 'Request aborted'\n this.code = 'UND_ERR_ABORTED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kRequestAbortedError] === true\n }\n\n [kRequestAbortedError] = true\n}\n\nconst kInformationalError = Symbol.for('undici.error.UND_ERR_INFO')\nclass InformationalError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'InformationalError'\n this.message = message || 'Request information'\n this.code = 'UND_ERR_INFO'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kInformationalError] === true\n }\n\n [kInformationalError] = true\n}\n\nconst kRequestContentLengthMismatchError = Symbol.for('undici.error.UND_ERR_REQ_CONTENT_LENGTH_MISMATCH')\nclass RequestContentLengthMismatchError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'RequestContentLengthMismatchError'\n this.message = message || 'Request body length does not match content-length header'\n this.code = 'UND_ERR_REQ_CONTENT_LENGTH_MISMATCH'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kRequestContentLengthMismatchError] === true\n }\n\n [kRequestContentLengthMismatchError] = true\n}\n\nconst kResponseContentLengthMismatchError = Symbol.for('undici.error.UND_ERR_RES_CONTENT_LENGTH_MISMATCH')\nclass ResponseContentLengthMismatchError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'ResponseContentLengthMismatchError'\n this.message = message || 'Response body length does not match content-length header'\n this.code = 'UND_ERR_RES_CONTENT_LENGTH_MISMATCH'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kResponseContentLengthMismatchError] === true\n }\n\n [kResponseContentLengthMismatchError] = true\n}\n\nconst kClientDestroyedError = Symbol.for('undici.error.UND_ERR_DESTROYED')\nclass ClientDestroyedError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'ClientDestroyedError'\n this.message = message || 'The client is destroyed'\n this.code = 'UND_ERR_DESTROYED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kClientDestroyedError] === true\n }\n\n [kClientDestroyedError] = true\n}\n\nconst kClientClosedError = Symbol.for('undici.error.UND_ERR_CLOSED')\nclass ClientClosedError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'ClientClosedError'\n this.message = message || 'The client is closed'\n this.code = 'UND_ERR_CLOSED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kClientClosedError] === true\n }\n\n [kClientClosedError] = true\n}\n\nconst kSocketError = Symbol.for('undici.error.UND_ERR_SOCKET')\nclass SocketError extends UndiciError {\n constructor (message, socket) {\n super(message)\n this.name = 'SocketError'\n this.message = message || 'Socket error'\n this.code = 'UND_ERR_SOCKET'\n this.socket = socket\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kSocketError] === true\n }\n\n [kSocketError] = true\n}\n\nconst kNotSupportedError = Symbol.for('undici.error.UND_ERR_NOT_SUPPORTED')\nclass NotSupportedError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'NotSupportedError'\n this.message = message || 'Not supported error'\n this.code = 'UND_ERR_NOT_SUPPORTED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kNotSupportedError] === true\n }\n\n [kNotSupportedError] = true\n}\n\nconst kBalancedPoolMissingUpstreamError = Symbol.for('undici.error.UND_ERR_BPL_MISSING_UPSTREAM')\nclass BalancedPoolMissingUpstreamError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'MissingUpstreamError'\n this.message = message || 'No upstream has been added to the BalancedPool'\n this.code = 'UND_ERR_BPL_MISSING_UPSTREAM'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kBalancedPoolMissingUpstreamError] === true\n }\n\n [kBalancedPoolMissingUpstreamError] = true\n}\n\nconst kHTTPParserError = Symbol.for('undici.error.UND_ERR_HTTP_PARSER')\nclass HTTPParserError extends Error {\n constructor (message, code, data) {\n super(message)\n this.name = 'HTTPParserError'\n this.code = code ? `HPE_${code}` : undefined\n this.data = data ? data.toString() : undefined\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kHTTPParserError] === true\n }\n\n [kHTTPParserError] = true\n}\n\nconst kResponseExceededMaxSizeError = Symbol.for('undici.error.UND_ERR_RES_EXCEEDED_MAX_SIZE')\nclass ResponseExceededMaxSizeError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'ResponseExceededMaxSizeError'\n this.message = message || 'Response content exceeded max size'\n this.code = 'UND_ERR_RES_EXCEEDED_MAX_SIZE'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kResponseExceededMaxSizeError] === true\n }\n\n [kResponseExceededMaxSizeError] = true\n}\n\nconst kRequestRetryError = Symbol.for('undici.error.UND_ERR_REQ_RETRY')\nclass RequestRetryError extends UndiciError {\n constructor (message, code, { headers, data }) {\n super(message)\n this.name = 'RequestRetryError'\n this.message = message || 'Request retry error'\n this.code = 'UND_ERR_REQ_RETRY'\n this.statusCode = code\n this.data = data\n this.headers = headers\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kRequestRetryError] === true\n }\n\n [kRequestRetryError] = true\n}\n\nconst kResponseError = Symbol.for('undici.error.UND_ERR_RESPONSE')\nclass ResponseError extends UndiciError {\n constructor (message, code, { headers, data }) {\n super(message)\n this.name = 'ResponseError'\n this.message = message || 'Response error'\n this.code = 'UND_ERR_RESPONSE'\n this.statusCode = code\n this.data = data\n this.headers = headers\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kResponseError] === true\n }\n\n [kResponseError] = true\n}\n\nconst kSecureProxyConnectionError = Symbol.for('undici.error.UND_ERR_PRX_TLS')\nclass SecureProxyConnectionError extends UndiciError {\n constructor (cause, message, options) {\n super(message, { cause, ...(options ?? {}) })\n this.name = 'SecureProxyConnectionError'\n this.message = message || 'Secure Proxy Connection failed'\n this.code = 'UND_ERR_PRX_TLS'\n this.cause = cause\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kSecureProxyConnectionError] === true\n }\n\n [kSecureProxyConnectionError] = true\n}\n\nconst kMessageSizeExceededError = Symbol.for('undici.error.UND_ERR_WS_MESSAGE_SIZE_EXCEEDED')\nclass MessageSizeExceededError extends UndiciError {\n constructor (message) {\n super(message)\n this.name = 'MessageSizeExceededError'\n this.message = message || 'Max decompressed message size exceeded'\n this.code = 'UND_ERR_WS_MESSAGE_SIZE_EXCEEDED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kMessageSizeExceededError] === true\n }\n\n get [kMessageSizeExceededError] () {\n return true\n }\n}\n\nmodule.exports = {\n AbortError,\n HTTPParserError,\n UndiciError,\n HeadersTimeoutError,\n HeadersOverflowError,\n BodyTimeoutError,\n RequestContentLengthMismatchError,\n ConnectTimeoutError,\n ResponseStatusCodeError,\n InvalidArgumentError,\n InvalidReturnValueError,\n RequestAbortedError,\n ClientDestroyedError,\n ClientClosedError,\n InformationalError,\n SocketError,\n NotSupportedError,\n ResponseContentLengthMismatchError,\n BalancedPoolMissingUpstreamError,\n ResponseExceededMaxSizeError,\n RequestRetryError,\n ResponseError,\n SecureProxyConnectionError,\n MessageSizeExceededError\n}\n", "'use strict'\n\n/** @type {Record} */\nconst headerNameLowerCasedRecord = {}\n\n// https://developer.mozilla.org/docs/Web/HTTP/Headers\nconst wellknownHeaderNames = [\n 'Accept',\n 'Accept-Encoding',\n 'Accept-Language',\n 'Accept-Ranges',\n 'Access-Control-Allow-Credentials',\n 'Access-Control-Allow-Headers',\n 'Access-Control-Allow-Methods',\n 'Access-Control-Allow-Origin',\n 'Access-Control-Expose-Headers',\n 'Access-Control-Max-Age',\n 'Access-Control-Request-Headers',\n 'Access-Control-Request-Method',\n 'Age',\n 'Allow',\n 'Alt-Svc',\n 'Alt-Used',\n 'Authorization',\n 'Cache-Control',\n 'Clear-Site-Data',\n 'Connection',\n 'Content-Disposition',\n 'Content-Encoding',\n 'Content-Language',\n 'Content-Length',\n 'Content-Location',\n 'Content-Range',\n 'Content-Security-Policy',\n 'Content-Security-Policy-Report-Only',\n 'Content-Type',\n 'Cookie',\n 'Cross-Origin-Embedder-Policy',\n 'Cross-Origin-Opener-Policy',\n 'Cross-Origin-Resource-Policy',\n 'Date',\n 'Device-Memory',\n 'Downlink',\n 'ECT',\n 'ETag',\n 'Expect',\n 'Expect-CT',\n 'Expires',\n 'Forwarded',\n 'From',\n 'Host',\n 'If-Match',\n 'If-Modified-Since',\n 'If-None-Match',\n 'If-Range',\n 'If-Unmodified-Since',\n 'Keep-Alive',\n 'Last-Modified',\n 'Link',\n 'Location',\n 'Max-Forwards',\n 'Origin',\n 'Permissions-Policy',\n 'Pragma',\n 'Proxy-Authenticate',\n 'Proxy-Authorization',\n 'RTT',\n 'Range',\n 'Referer',\n 'Referrer-Policy',\n 'Refresh',\n 'Retry-After',\n 'Sec-WebSocket-Accept',\n 'Sec-WebSocket-Extensions',\n 'Sec-WebSocket-Key',\n 'Sec-WebSocket-Protocol',\n 'Sec-WebSocket-Version',\n 'Server',\n 'Server-Timing',\n 'Service-Worker-Allowed',\n 'Service-Worker-Navigation-Preload',\n 'Set-Cookie',\n 'SourceMap',\n 'Strict-Transport-Security',\n 'Supports-Loading-Mode',\n 'TE',\n 'Timing-Allow-Origin',\n 'Trailer',\n 'Transfer-Encoding',\n 'Upgrade',\n 'Upgrade-Insecure-Requests',\n 'User-Agent',\n 'Vary',\n 'Via',\n 'WWW-Authenticate',\n 'X-Content-Type-Options',\n 'X-DNS-Prefetch-Control',\n 'X-Frame-Options',\n 'X-Permitted-Cross-Domain-Policies',\n 'X-Powered-By',\n 'X-Requested-With',\n 'X-XSS-Protection'\n]\n\nfor (let i = 0; i < wellknownHeaderNames.length; ++i) {\n const key = wellknownHeaderNames[i]\n const lowerCasedKey = key.toLowerCase()\n headerNameLowerCasedRecord[key] = headerNameLowerCasedRecord[lowerCasedKey] =\n lowerCasedKey\n}\n\n// Note: object prototypes should not be able to be referenced. e.g. `Object#hasOwnProperty`.\nObject.setPrototypeOf(headerNameLowerCasedRecord, null)\n\nmodule.exports = {\n wellknownHeaderNames,\n headerNameLowerCasedRecord\n}\n", "'use strict'\n\nconst {\n wellknownHeaderNames,\n headerNameLowerCasedRecord\n} = require('./constants')\n\nclass TstNode {\n /** @type {any} */\n value = null\n /** @type {null | TstNode} */\n left = null\n /** @type {null | TstNode} */\n middle = null\n /** @type {null | TstNode} */\n right = null\n /** @type {number} */\n code\n /**\n * @param {string} key\n * @param {any} value\n * @param {number} index\n */\n constructor (key, value, index) {\n if (index === undefined || index >= key.length) {\n throw new TypeError('Unreachable')\n }\n const code = this.code = key.charCodeAt(index)\n // check code is ascii string\n if (code > 0x7F) {\n throw new TypeError('key must be ascii string')\n }\n if (key.length !== ++index) {\n this.middle = new TstNode(key, value, index)\n } else {\n this.value = value\n }\n }\n\n /**\n * @param {string} key\n * @param {any} value\n */\n add (key, value) {\n const length = key.length\n if (length === 0) {\n throw new TypeError('Unreachable')\n }\n let index = 0\n let node = this\n while (true) {\n const code = key.charCodeAt(index)\n // check code is ascii string\n if (code > 0x7F) {\n throw new TypeError('key must be ascii string')\n }\n if (node.code === code) {\n if (length === ++index) {\n node.value = value\n break\n } else if (node.middle !== null) {\n node = node.middle\n } else {\n node.middle = new TstNode(key, value, index)\n break\n }\n } else if (node.code < code) {\n if (node.left !== null) {\n node = node.left\n } else {\n node.left = new TstNode(key, value, index)\n break\n }\n } else if (node.right !== null) {\n node = node.right\n } else {\n node.right = new TstNode(key, value, index)\n break\n }\n }\n }\n\n /**\n * @param {Uint8Array} key\n * @return {TstNode | null}\n */\n search (key) {\n const keylength = key.length\n let index = 0\n let node = this\n while (node !== null && index < keylength) {\n let code = key[index]\n // A-Z\n // First check if it is bigger than 0x5a.\n // Lowercase letters have higher char codes than uppercase ones.\n // Also we assume that headers will mostly contain lowercase characters.\n if (code <= 0x5a && code >= 0x41) {\n // Lowercase for uppercase.\n code |= 32\n }\n while (node !== null) {\n if (code === node.code) {\n if (keylength === ++index) {\n // Returns Node since it is the last key.\n return node\n }\n node = node.middle\n break\n }\n node = node.code < code ? node.left : node.right\n }\n }\n return null\n }\n}\n\nclass TernarySearchTree {\n /** @type {TstNode | null} */\n node = null\n\n /**\n * @param {string} key\n * @param {any} value\n * */\n insert (key, value) {\n if (this.node === null) {\n this.node = new TstNode(key, value, 0)\n } else {\n this.node.add(key, value)\n }\n }\n\n /**\n * @param {Uint8Array} key\n * @return {any}\n */\n lookup (key) {\n return this.node?.search(key)?.value ?? null\n }\n}\n\nconst tree = new TernarySearchTree()\n\nfor (let i = 0; i < wellknownHeaderNames.length; ++i) {\n const key = headerNameLowerCasedRecord[wellknownHeaderNames[i]]\n tree.insert(key, key)\n}\n\nmodule.exports = {\n TernarySearchTree,\n tree\n}\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { kDestroyed, kBodyUsed, kListeners, kBody } = require('./symbols')\nconst { IncomingMessage } = require('node:http')\nconst stream = require('node:stream')\nconst net = require('node:net')\nconst { Blob } = require('node:buffer')\nconst nodeUtil = require('node:util')\nconst { stringify } = require('node:querystring')\nconst { EventEmitter: EE } = require('node:events')\nconst { InvalidArgumentError } = require('./errors')\nconst { headerNameLowerCasedRecord } = require('./constants')\nconst { tree } = require('./tree')\n\nconst [nodeMajor, nodeMinor] = process.versions.node.split('.').map(v => Number(v))\n\nclass BodyAsyncIterable {\n constructor (body) {\n this[kBody] = body\n this[kBodyUsed] = false\n }\n\n async * [Symbol.asyncIterator] () {\n assert(!this[kBodyUsed], 'disturbed')\n this[kBodyUsed] = true\n yield * this[kBody]\n }\n}\n\nfunction wrapRequestBody (body) {\n if (isStream(body)) {\n // TODO (fix): Provide some way for the user to cache the file to e.g. /tmp\n // so that it can be dispatched again?\n // TODO (fix): Do we need 100-expect support to provide a way to do this properly?\n if (bodyLength(body) === 0) {\n body\n .on('data', function () {\n assert(false)\n })\n }\n\n if (typeof body.readableDidRead !== 'boolean') {\n body[kBodyUsed] = false\n EE.prototype.on.call(body, 'data', function () {\n this[kBodyUsed] = true\n })\n }\n\n return body\n } else if (body && typeof body.pipeTo === 'function') {\n // TODO (fix): We can't access ReadableStream internal state\n // to determine whether or not it has been disturbed. This is just\n // a workaround.\n return new BodyAsyncIterable(body)\n } else if (\n body &&\n typeof body !== 'string' &&\n !ArrayBuffer.isView(body) &&\n isIterable(body)\n ) {\n // TODO: Should we allow re-using iterable if !this.opts.idempotent\n // or through some other flag?\n return new BodyAsyncIterable(body)\n } else {\n return body\n }\n}\n\nfunction nop () {}\n\nfunction isStream (obj) {\n return obj && typeof obj === 'object' && typeof obj.pipe === 'function' && typeof obj.on === 'function'\n}\n\n// based on https://github.com/node-fetch/fetch-blob/blob/8ab587d34080de94140b54f07168451e7d0b655e/index.js#L229-L241 (MIT License)\nfunction isBlobLike (object) {\n if (object === null) {\n return false\n } else if (object instanceof Blob) {\n return true\n } else if (typeof object !== 'object') {\n return false\n } else {\n const sTag = object[Symbol.toStringTag]\n\n return (sTag === 'Blob' || sTag === 'File') && (\n ('stream' in object && typeof object.stream === 'function') ||\n ('arrayBuffer' in object && typeof object.arrayBuffer === 'function')\n )\n }\n}\n\nfunction buildURL (url, queryParams) {\n if (url.includes('?') || url.includes('#')) {\n throw new Error('Query params cannot be passed when url already contains \"?\" or \"#\".')\n }\n\n const stringified = stringify(queryParams)\n\n if (stringified) {\n url += '?' + stringified\n }\n\n return url\n}\n\nfunction isValidPort (port) {\n const value = parseInt(port, 10)\n return (\n value === Number(port) &&\n value >= 0 &&\n value <= 65535\n )\n}\n\nfunction isHttpOrHttpsPrefixed (value) {\n return (\n value != null &&\n value[0] === 'h' &&\n value[1] === 't' &&\n value[2] === 't' &&\n value[3] === 'p' &&\n (\n value[4] === ':' ||\n (\n value[4] === 's' &&\n value[5] === ':'\n )\n )\n )\n}\n\nfunction parseURL (url) {\n if (typeof url === 'string') {\n url = new URL(url)\n\n if (!isHttpOrHttpsPrefixed(url.origin || url.protocol)) {\n throw new InvalidArgumentError('Invalid URL protocol: the URL must start with `http:` or `https:`.')\n }\n\n return url\n }\n\n if (!url || typeof url !== 'object') {\n throw new InvalidArgumentError('Invalid URL: The URL argument must be a non-null object.')\n }\n\n if (!(url instanceof URL)) {\n if (url.port != null && url.port !== '' && isValidPort(url.port) === false) {\n throw new InvalidArgumentError('Invalid URL: port must be a valid integer or a string representation of an integer.')\n }\n\n if (url.path != null && typeof url.path !== 'string') {\n throw new InvalidArgumentError('Invalid URL path: the path must be a string or null/undefined.')\n }\n\n if (url.pathname != null && typeof url.pathname !== 'string') {\n throw new InvalidArgumentError('Invalid URL pathname: the pathname must be a string or null/undefined.')\n }\n\n if (url.hostname != null && typeof url.hostname !== 'string') {\n throw new InvalidArgumentError('Invalid URL hostname: the hostname must be a string or null/undefined.')\n }\n\n if (url.origin != null && typeof url.origin !== 'string') {\n throw new InvalidArgumentError('Invalid URL origin: the origin must be a string or null/undefined.')\n }\n\n if (!isHttpOrHttpsPrefixed(url.origin || url.protocol)) {\n throw new InvalidArgumentError('Invalid URL protocol: the URL must start with `http:` or `https:`.')\n }\n\n const port = url.port != null\n ? url.port\n : (url.protocol === 'https:' ? 443 : 80)\n let origin = url.origin != null\n ? url.origin\n : `${url.protocol || ''}//${url.hostname || ''}:${port}`\n let path = url.path != null\n ? url.path\n : `${url.pathname || ''}${url.search || ''}`\n\n if (origin[origin.length - 1] === '/') {\n origin = origin.slice(0, origin.length - 1)\n }\n\n if (path && path[0] !== '/') {\n path = `/${path}`\n }\n // new URL(path, origin) is unsafe when `path` contains an absolute URL\n // From https://developer.mozilla.org/en-US/docs/Web/API/URL/URL:\n // If first parameter is a relative URL, second param is required, and will be used as the base URL.\n // If first parameter is an absolute URL, a given second param will be ignored.\n return new URL(`${origin}${path}`)\n }\n\n if (!isHttpOrHttpsPrefixed(url.origin || url.protocol)) {\n throw new InvalidArgumentError('Invalid URL protocol: the URL must start with `http:` or `https:`.')\n }\n\n return url\n}\n\nfunction parseOrigin (url) {\n url = parseURL(url)\n\n if (url.pathname !== '/' || url.search || url.hash) {\n throw new InvalidArgumentError('invalid url')\n }\n\n return url\n}\n\nfunction getHostname (host) {\n if (host[0] === '[') {\n const idx = host.indexOf(']')\n\n assert(idx !== -1)\n return host.substring(1, idx)\n }\n\n const idx = host.indexOf(':')\n if (idx === -1) return host\n\n return host.substring(0, idx)\n}\n\n// IP addresses are not valid server names per RFC6066\n// > Currently, the only server names supported are DNS hostnames\nfunction getServerName (host) {\n if (!host) {\n return null\n }\n\n assert(typeof host === 'string')\n\n const servername = getHostname(host)\n if (net.isIP(servername)) {\n return ''\n }\n\n return servername\n}\n\nfunction deepClone (obj) {\n return JSON.parse(JSON.stringify(obj))\n}\n\nfunction isAsyncIterable (obj) {\n return !!(obj != null && typeof obj[Symbol.asyncIterator] === 'function')\n}\n\nfunction isIterable (obj) {\n return !!(obj != null && (typeof obj[Symbol.iterator] === 'function' || typeof obj[Symbol.asyncIterator] === 'function'))\n}\n\nfunction bodyLength (body) {\n if (body == null) {\n return 0\n } else if (isStream(body)) {\n const state = body._readableState\n return state && state.objectMode === false && state.ended === true && Number.isFinite(state.length)\n ? state.length\n : null\n } else if (isBlobLike(body)) {\n return body.size != null ? body.size : null\n } else if (isBuffer(body)) {\n return body.byteLength\n }\n\n return null\n}\n\nfunction isDestroyed (body) {\n return body && !!(body.destroyed || body[kDestroyed] || (stream.isDestroyed?.(body)))\n}\n\nfunction destroy (stream, err) {\n if (stream == null || !isStream(stream) || isDestroyed(stream)) {\n return\n }\n\n if (typeof stream.destroy === 'function') {\n if (Object.getPrototypeOf(stream).constructor === IncomingMessage) {\n // See: https://github.com/nodejs/node/pull/38505/files\n stream.socket = null\n }\n\n stream.destroy(err)\n } else if (err) {\n queueMicrotask(() => {\n stream.emit('error', err)\n })\n }\n\n if (stream.destroyed !== true) {\n stream[kDestroyed] = true\n }\n}\n\nconst KEEPALIVE_TIMEOUT_EXPR = /timeout=(\\d+)/\nfunction parseKeepAliveTimeout (val) {\n const m = val.toString().match(KEEPALIVE_TIMEOUT_EXPR)\n return m ? parseInt(m[1], 10) * 1000 : null\n}\n\n/**\n * Retrieves a header name and returns its lowercase value.\n * @param {string | Buffer} value Header name\n * @returns {string}\n */\nfunction headerNameToString (value) {\n return typeof value === 'string'\n ? headerNameLowerCasedRecord[value] ?? value.toLowerCase()\n : tree.lookup(value) ?? value.toString('latin1').toLowerCase()\n}\n\n/**\n * Receive the buffer as a string and return its lowercase value.\n * @param {Buffer} value Header name\n * @returns {string}\n */\nfunction bufferToLowerCasedHeaderName (value) {\n return tree.lookup(value) ?? value.toString('latin1').toLowerCase()\n}\n\n/**\n * @param {Record | (Buffer | string | (Buffer | string)[])[]} headers\n * @param {Record} [obj]\n * @returns {Record}\n */\nfunction parseHeaders (headers, obj) {\n if (obj === undefined) obj = {}\n for (let i = 0; i < headers.length; i += 2) {\n const key = headerNameToString(headers[i])\n let val = obj[key]\n\n if (val) {\n if (typeof val === 'string') {\n val = [val]\n obj[key] = val\n }\n val.push(headers[i + 1].toString('utf8'))\n } else {\n const headersValue = headers[i + 1]\n if (typeof headersValue === 'string') {\n obj[key] = headersValue\n } else {\n obj[key] = Array.isArray(headersValue) ? headersValue.map(x => x.toString('utf8')) : headersValue.toString('utf8')\n }\n }\n }\n\n // See https://github.com/nodejs/node/pull/46528\n if ('content-length' in obj && 'content-disposition' in obj) {\n obj['content-disposition'] = Buffer.from(obj['content-disposition']).toString('latin1')\n }\n\n return obj\n}\n\nfunction parseRawHeaders (headers) {\n const len = headers.length\n const ret = new Array(len)\n\n let hasContentLength = false\n let contentDispositionIdx = -1\n let key\n let val\n let kLen = 0\n\n for (let n = 0; n < headers.length; n += 2) {\n key = headers[n]\n val = headers[n + 1]\n\n typeof key !== 'string' && (key = key.toString())\n typeof val !== 'string' && (val = val.toString('utf8'))\n\n kLen = key.length\n if (kLen === 14 && key[7] === '-' && (key === 'content-length' || key.toLowerCase() === 'content-length')) {\n hasContentLength = true\n } else if (kLen === 19 && key[7] === '-' && (key === 'content-disposition' || key.toLowerCase() === 'content-disposition')) {\n contentDispositionIdx = n + 1\n }\n ret[n] = key\n ret[n + 1] = val\n }\n\n // See https://github.com/nodejs/node/pull/46528\n if (hasContentLength && contentDispositionIdx !== -1) {\n ret[contentDispositionIdx] = Buffer.from(ret[contentDispositionIdx]).toString('latin1')\n }\n\n return ret\n}\n\nfunction isBuffer (buffer) {\n // See, https://github.com/mcollina/undici/pull/319\n return buffer instanceof Uint8Array || Buffer.isBuffer(buffer)\n}\n\nfunction validateHandler (handler, method, upgrade) {\n if (!handler || typeof handler !== 'object') {\n throw new InvalidArgumentError('handler must be an object')\n }\n\n if (typeof handler.onConnect !== 'function') {\n throw new InvalidArgumentError('invalid onConnect method')\n }\n\n if (typeof handler.onError !== 'function') {\n throw new InvalidArgumentError('invalid onError method')\n }\n\n if (typeof handler.onBodySent !== 'function' && handler.onBodySent !== undefined) {\n throw new InvalidArgumentError('invalid onBodySent method')\n }\n\n if (upgrade || method === 'CONNECT') {\n if (typeof handler.onUpgrade !== 'function') {\n throw new InvalidArgumentError('invalid onUpgrade method')\n }\n } else {\n if (typeof handler.onHeaders !== 'function') {\n throw new InvalidArgumentError('invalid onHeaders method')\n }\n\n if (typeof handler.onData !== 'function') {\n throw new InvalidArgumentError('invalid onData method')\n }\n\n if (typeof handler.onComplete !== 'function') {\n throw new InvalidArgumentError('invalid onComplete method')\n }\n }\n}\n\n// A body is disturbed if it has been read from and it cannot\n// be re-used without losing state or data.\nfunction isDisturbed (body) {\n // TODO (fix): Why is body[kBodyUsed] needed?\n return !!(body && (stream.isDisturbed(body) || body[kBodyUsed]))\n}\n\nfunction isErrored (body) {\n return !!(body && stream.isErrored(body))\n}\n\nfunction isReadable (body) {\n return !!(body && stream.isReadable(body))\n}\n\nfunction getSocketInfo (socket) {\n return {\n localAddress: socket.localAddress,\n localPort: socket.localPort,\n remoteAddress: socket.remoteAddress,\n remotePort: socket.remotePort,\n remoteFamily: socket.remoteFamily,\n timeout: socket.timeout,\n bytesWritten: socket.bytesWritten,\n bytesRead: socket.bytesRead\n }\n}\n\n/** @type {globalThis['ReadableStream']} */\nfunction ReadableStreamFrom (iterable) {\n // We cannot use ReadableStream.from here because it does not return a byte stream.\n\n let iterator\n return new ReadableStream(\n {\n async start () {\n iterator = iterable[Symbol.asyncIterator]()\n },\n async pull (controller) {\n const { done, value } = await iterator.next()\n if (done) {\n queueMicrotask(() => {\n controller.close()\n controller.byobRequest?.respond(0)\n })\n } else {\n const buf = Buffer.isBuffer(value) ? value : Buffer.from(value)\n if (buf.byteLength) {\n controller.enqueue(new Uint8Array(buf))\n }\n }\n return controller.desiredSize > 0\n },\n async cancel (reason) {\n await iterator.return()\n },\n type: 'bytes'\n }\n )\n}\n\n// The chunk should be a FormData instance and contains\n// all the required methods.\nfunction isFormDataLike (object) {\n return (\n object &&\n typeof object === 'object' &&\n typeof object.append === 'function' &&\n typeof object.delete === 'function' &&\n typeof object.get === 'function' &&\n typeof object.getAll === 'function' &&\n typeof object.has === 'function' &&\n typeof object.set === 'function' &&\n object[Symbol.toStringTag] === 'FormData'\n )\n}\n\nfunction addAbortListener (signal, listener) {\n if ('addEventListener' in signal) {\n signal.addEventListener('abort', listener, { once: true })\n return () => signal.removeEventListener('abort', listener)\n }\n signal.addListener('abort', listener)\n return () => signal.removeListener('abort', listener)\n}\n\nconst hasToWellFormed = typeof String.prototype.toWellFormed === 'function'\nconst hasIsWellFormed = typeof String.prototype.isWellFormed === 'function'\n\n/**\n * @param {string} val\n */\nfunction toUSVString (val) {\n return hasToWellFormed ? `${val}`.toWellFormed() : nodeUtil.toUSVString(val)\n}\n\n/**\n * @param {string} val\n */\n// TODO: move this to webidl\nfunction isUSVString (val) {\n return hasIsWellFormed ? `${val}`.isWellFormed() : toUSVString(val) === `${val}`\n}\n\n/**\n * @see https://tools.ietf.org/html/rfc7230#section-3.2.6\n * @param {number} c\n */\nfunction isTokenCharCode (c) {\n switch (c) {\n case 0x22:\n case 0x28:\n case 0x29:\n case 0x2c:\n case 0x2f:\n case 0x3a:\n case 0x3b:\n case 0x3c:\n case 0x3d:\n case 0x3e:\n case 0x3f:\n case 0x40:\n case 0x5b:\n case 0x5c:\n case 0x5d:\n case 0x7b:\n case 0x7d:\n // DQUOTE and \"(),/:;<=>?@[\\]{}\"\n return false\n default:\n // VCHAR %x21-7E\n return c >= 0x21 && c <= 0x7e\n }\n}\n\n/**\n * @param {string} characters\n */\nfunction isValidHTTPToken (characters) {\n if (characters.length === 0) {\n return false\n }\n for (let i = 0; i < characters.length; ++i) {\n if (!isTokenCharCode(characters.charCodeAt(i))) {\n return false\n }\n }\n return true\n}\n\n// headerCharRegex have been lifted from\n// https://github.com/nodejs/node/blob/main/lib/_http_common.js\n\n/**\n * Matches if val contains an invalid field-vchar\n * field-value = *( field-content / obs-fold )\n * field-content = field-vchar [ 1*( SP / HTAB ) field-vchar ]\n * field-vchar = VCHAR / obs-text\n */\nconst headerCharRegex = /[^\\t\\x20-\\x7e\\x80-\\xff]/\n\n/**\n * @param {string} characters\n */\nfunction isValidHeaderValue (characters) {\n return !headerCharRegex.test(characters)\n}\n\n// Parsed accordingly to RFC 9110\n// https://www.rfc-editor.org/rfc/rfc9110#field.content-range\nfunction parseRangeHeader (range) {\n if (range == null || range === '') return { start: 0, end: null, size: null }\n\n const m = range ? range.match(/^bytes (\\d+)-(\\d+)\\/(\\d+)?$/) : null\n return m\n ? {\n start: parseInt(m[1]),\n end: m[2] ? parseInt(m[2]) : null,\n size: m[3] ? parseInt(m[3]) : null\n }\n : null\n}\n\nfunction addListener (obj, name, listener) {\n const listeners = (obj[kListeners] ??= [])\n listeners.push([name, listener])\n obj.on(name, listener)\n return obj\n}\n\nfunction removeAllListeners (obj) {\n for (const [name, listener] of obj[kListeners] ?? []) {\n obj.removeListener(name, listener)\n }\n obj[kListeners] = null\n}\n\nfunction errorRequest (client, request, err) {\n try {\n request.onError(err)\n assert(request.aborted)\n } catch (err) {\n client.emit('error', err)\n }\n}\n\nconst kEnumerableProperty = Object.create(null)\nkEnumerableProperty.enumerable = true\n\nconst normalizedMethodRecordsBase = {\n delete: 'DELETE',\n DELETE: 'DELETE',\n get: 'GET',\n GET: 'GET',\n head: 'HEAD',\n HEAD: 'HEAD',\n options: 'OPTIONS',\n OPTIONS: 'OPTIONS',\n post: 'POST',\n POST: 'POST',\n put: 'PUT',\n PUT: 'PUT'\n}\n\nconst normalizedMethodRecords = {\n ...normalizedMethodRecordsBase,\n patch: 'patch',\n PATCH: 'PATCH'\n}\n\n// Note: object prototypes should not be able to be referenced. e.g. `Object#hasOwnProperty`.\nObject.setPrototypeOf(normalizedMethodRecordsBase, null)\nObject.setPrototypeOf(normalizedMethodRecords, null)\n\nmodule.exports = {\n kEnumerableProperty,\n nop,\n isDisturbed,\n isErrored,\n isReadable,\n toUSVString,\n isUSVString,\n isBlobLike,\n parseOrigin,\n parseURL,\n getServerName,\n isStream,\n isIterable,\n isAsyncIterable,\n isDestroyed,\n headerNameToString,\n bufferToLowerCasedHeaderName,\n addListener,\n removeAllListeners,\n errorRequest,\n parseRawHeaders,\n parseHeaders,\n parseKeepAliveTimeout,\n destroy,\n bodyLength,\n deepClone,\n ReadableStreamFrom,\n isBuffer,\n validateHandler,\n getSocketInfo,\n isFormDataLike,\n buildURL,\n addAbortListener,\n isValidHTTPToken,\n isValidHeaderValue,\n isTokenCharCode,\n parseRangeHeader,\n normalizedMethodRecordsBase,\n normalizedMethodRecords,\n isValidPort,\n isHttpOrHttpsPrefixed,\n nodeMajor,\n nodeMinor,\n safeHTTPMethods: ['GET', 'HEAD', 'OPTIONS', 'TRACE'],\n wrapRequestBody\n}\n", "'use strict'\nconst diagnosticsChannel = require('node:diagnostics_channel')\nconst util = require('node:util')\n\nconst undiciDebugLog = util.debuglog('undici')\nconst fetchDebuglog = util.debuglog('fetch')\nconst websocketDebuglog = util.debuglog('websocket')\nlet isClientSet = false\nconst channels = {\n // Client\n beforeConnect: diagnosticsChannel.channel('undici:client:beforeConnect'),\n connected: diagnosticsChannel.channel('undici:client:connected'),\n connectError: diagnosticsChannel.channel('undici:client:connectError'),\n sendHeaders: diagnosticsChannel.channel('undici:client:sendHeaders'),\n // Request\n create: diagnosticsChannel.channel('undici:request:create'),\n bodySent: diagnosticsChannel.channel('undici:request:bodySent'),\n headers: diagnosticsChannel.channel('undici:request:headers'),\n trailers: diagnosticsChannel.channel('undici:request:trailers'),\n error: diagnosticsChannel.channel('undici:request:error'),\n // WebSocket\n open: diagnosticsChannel.channel('undici:websocket:open'),\n close: diagnosticsChannel.channel('undici:websocket:close'),\n socketError: diagnosticsChannel.channel('undici:websocket:socket_error'),\n ping: diagnosticsChannel.channel('undici:websocket:ping'),\n pong: diagnosticsChannel.channel('undici:websocket:pong')\n}\n\nif (undiciDebugLog.enabled || fetchDebuglog.enabled) {\n const debuglog = fetchDebuglog.enabled ? fetchDebuglog : undiciDebugLog\n\n // Track all Client events\n diagnosticsChannel.channel('undici:client:beforeConnect').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host }\n } = evt\n debuglog(\n 'connecting to %s using %s%s',\n `${host}${port ? `:${port}` : ''}`,\n protocol,\n version\n )\n })\n\n diagnosticsChannel.channel('undici:client:connected').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host }\n } = evt\n debuglog(\n 'connected to %s using %s%s',\n `${host}${port ? `:${port}` : ''}`,\n protocol,\n version\n )\n })\n\n diagnosticsChannel.channel('undici:client:connectError').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host },\n error\n } = evt\n debuglog(\n 'connection to %s using %s%s errored - %s',\n `${host}${port ? `:${port}` : ''}`,\n protocol,\n version,\n error.message\n )\n })\n\n diagnosticsChannel.channel('undici:client:sendHeaders').subscribe(evt => {\n const {\n request: { method, path, origin }\n } = evt\n debuglog('sending request to %s %s/%s', method, origin, path)\n })\n\n // Track Request events\n diagnosticsChannel.channel('undici:request:headers').subscribe(evt => {\n const {\n request: { method, path, origin },\n response: { statusCode }\n } = evt\n debuglog(\n 'received response to %s %s/%s - HTTP %d',\n method,\n origin,\n path,\n statusCode\n )\n })\n\n diagnosticsChannel.channel('undici:request:trailers').subscribe(evt => {\n const {\n request: { method, path, origin }\n } = evt\n debuglog('trailers received from %s %s/%s', method, origin, path)\n })\n\n diagnosticsChannel.channel('undici:request:error').subscribe(evt => {\n const {\n request: { method, path, origin },\n error\n } = evt\n debuglog(\n 'request to %s %s/%s errored - %s',\n method,\n origin,\n path,\n error.message\n )\n })\n\n isClientSet = true\n}\n\nif (websocketDebuglog.enabled) {\n if (!isClientSet) {\n const debuglog = undiciDebugLog.enabled ? undiciDebugLog : websocketDebuglog\n diagnosticsChannel.channel('undici:client:beforeConnect').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host }\n } = evt\n debuglog(\n 'connecting to %s%s using %s%s',\n host,\n port ? `:${port}` : '',\n protocol,\n version\n )\n })\n\n diagnosticsChannel.channel('undici:client:connected').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host }\n } = evt\n debuglog(\n 'connected to %s%s using %s%s',\n host,\n port ? `:${port}` : '',\n protocol,\n version\n )\n })\n\n diagnosticsChannel.channel('undici:client:connectError').subscribe(evt => {\n const {\n connectParams: { version, protocol, port, host },\n error\n } = evt\n debuglog(\n 'connection to %s%s using %s%s errored - %s',\n host,\n port ? `:${port}` : '',\n protocol,\n version,\n error.message\n )\n })\n\n diagnosticsChannel.channel('undici:client:sendHeaders').subscribe(evt => {\n const {\n request: { method, path, origin }\n } = evt\n debuglog('sending request to %s %s/%s', method, origin, path)\n })\n }\n\n // Track all WebSocket events\n diagnosticsChannel.channel('undici:websocket:open').subscribe(evt => {\n const {\n address: { address, port }\n } = evt\n websocketDebuglog('connection opened %s%s', address, port ? `:${port}` : '')\n })\n\n diagnosticsChannel.channel('undici:websocket:close').subscribe(evt => {\n const { websocket, code, reason } = evt\n websocketDebuglog(\n 'closed connection to %s - %s %s',\n websocket.url,\n code,\n reason\n )\n })\n\n diagnosticsChannel.channel('undici:websocket:socket_error').subscribe(err => {\n websocketDebuglog('connection errored - %s', err.message)\n })\n\n diagnosticsChannel.channel('undici:websocket:ping').subscribe(evt => {\n websocketDebuglog('ping received')\n })\n\n diagnosticsChannel.channel('undici:websocket:pong').subscribe(evt => {\n websocketDebuglog('pong received')\n })\n}\n\nmodule.exports = {\n channels\n}\n", "'use strict'\n\nconst {\n InvalidArgumentError,\n NotSupportedError\n} = require('./errors')\nconst assert = require('node:assert')\nconst {\n isValidHTTPToken,\n isValidHeaderValue,\n isStream,\n destroy,\n isBuffer,\n isFormDataLike,\n isIterable,\n isBlobLike,\n buildURL,\n validateHandler,\n getServerName,\n normalizedMethodRecords\n} = require('./util')\nconst { channels } = require('./diagnostics.js')\nconst { headerNameLowerCasedRecord } = require('./constants')\n\n// Verifies that a given path is valid does not contain control chars \\x00 to \\x20\nconst invalidPathRegex = /[^\\u0021-\\u00ff]/\n\nconst kHandler = Symbol('handler')\n\nclass Request {\n constructor (origin, {\n path,\n method,\n body,\n headers,\n query,\n idempotent,\n blocking,\n upgrade,\n headersTimeout,\n bodyTimeout,\n reset,\n throwOnError,\n expectContinue,\n servername\n }, handler) {\n if (typeof path !== 'string') {\n throw new InvalidArgumentError('path must be a string')\n } else if (\n path[0] !== '/' &&\n !(path.startsWith('http://') || path.startsWith('https://')) &&\n method !== 'CONNECT'\n ) {\n throw new InvalidArgumentError('path must be an absolute URL or start with a slash')\n } else if (invalidPathRegex.test(path)) {\n throw new InvalidArgumentError('invalid request path')\n }\n\n if (typeof method !== 'string') {\n throw new InvalidArgumentError('method must be a string')\n } else if (normalizedMethodRecords[method] === undefined && !isValidHTTPToken(method)) {\n throw new InvalidArgumentError('invalid request method')\n }\n\n if (upgrade && typeof upgrade !== 'string') {\n throw new InvalidArgumentError('upgrade must be a string')\n }\n\n if (upgrade && !isValidHeaderValue(upgrade)) {\n throw new InvalidArgumentError('invalid upgrade header')\n }\n\n if (headersTimeout != null && (!Number.isFinite(headersTimeout) || headersTimeout < 0)) {\n throw new InvalidArgumentError('invalid headersTimeout')\n }\n\n if (bodyTimeout != null && (!Number.isFinite(bodyTimeout) || bodyTimeout < 0)) {\n throw new InvalidArgumentError('invalid bodyTimeout')\n }\n\n if (reset != null && typeof reset !== 'boolean') {\n throw new InvalidArgumentError('invalid reset')\n }\n\n if (expectContinue != null && typeof expectContinue !== 'boolean') {\n throw new InvalidArgumentError('invalid expectContinue')\n }\n\n this.headersTimeout = headersTimeout\n\n this.bodyTimeout = bodyTimeout\n\n this.throwOnError = throwOnError === true\n\n this.method = method\n\n this.abort = null\n\n if (body == null) {\n this.body = null\n } else if (isStream(body)) {\n this.body = body\n\n const rState = this.body._readableState\n if (!rState || !rState.autoDestroy) {\n this.endHandler = function autoDestroy () {\n destroy(this)\n }\n this.body.on('end', this.endHandler)\n }\n\n this.errorHandler = err => {\n if (this.abort) {\n this.abort(err)\n } else {\n this.error = err\n }\n }\n this.body.on('error', this.errorHandler)\n } else if (isBuffer(body)) {\n this.body = body.byteLength ? body : null\n } else if (ArrayBuffer.isView(body)) {\n this.body = body.buffer.byteLength ? Buffer.from(body.buffer, body.byteOffset, body.byteLength) : null\n } else if (body instanceof ArrayBuffer) {\n this.body = body.byteLength ? Buffer.from(body) : null\n } else if (typeof body === 'string') {\n this.body = body.length ? Buffer.from(body) : null\n } else if (isFormDataLike(body) || isIterable(body) || isBlobLike(body)) {\n this.body = body\n } else {\n throw new InvalidArgumentError('body must be a string, a Buffer, a Readable stream, an iterable, or an async iterable')\n }\n\n this.completed = false\n\n this.aborted = false\n\n this.upgrade = upgrade || null\n\n this.path = query ? buildURL(path, query) : path\n\n this.origin = origin\n\n this.idempotent = idempotent == null\n ? method === 'HEAD' || method === 'GET'\n : idempotent\n\n this.blocking = blocking == null ? false : blocking\n\n this.reset = reset == null ? null : reset\n\n this.host = null\n\n this.contentLength = null\n\n this.contentType = null\n\n this.headers = []\n\n // Only for H2\n this.expectContinue = expectContinue != null ? expectContinue : false\n\n if (Array.isArray(headers)) {\n if (headers.length % 2 !== 0) {\n throw new InvalidArgumentError('headers array must be even')\n }\n for (let i = 0; i < headers.length; i += 2) {\n processHeader(this, headers[i], headers[i + 1])\n }\n } else if (headers && typeof headers === 'object') {\n if (headers[Symbol.iterator]) {\n for (const header of headers) {\n if (!Array.isArray(header) || header.length !== 2) {\n throw new InvalidArgumentError('headers must be in key-value pair format')\n }\n processHeader(this, header[0], header[1])\n }\n } else {\n const keys = Object.keys(headers)\n for (let i = 0; i < keys.length; ++i) {\n processHeader(this, keys[i], headers[keys[i]])\n }\n }\n } else if (headers != null) {\n throw new InvalidArgumentError('headers must be an object or an array')\n }\n\n validateHandler(handler, method, upgrade)\n\n this.servername = servername || getServerName(this.host)\n\n this[kHandler] = handler\n\n if (channels.create.hasSubscribers) {\n channels.create.publish({ request: this })\n }\n }\n\n onBodySent (chunk) {\n if (this[kHandler].onBodySent) {\n try {\n return this[kHandler].onBodySent(chunk)\n } catch (err) {\n this.abort(err)\n }\n }\n }\n\n onRequestSent () {\n if (channels.bodySent.hasSubscribers) {\n channels.bodySent.publish({ request: this })\n }\n\n if (this[kHandler].onRequestSent) {\n try {\n return this[kHandler].onRequestSent()\n } catch (err) {\n this.abort(err)\n }\n }\n }\n\n onConnect (abort) {\n assert(!this.aborted)\n assert(!this.completed)\n\n if (this.error) {\n abort(this.error)\n } else {\n this.abort = abort\n return this[kHandler].onConnect(abort)\n }\n }\n\n onResponseStarted () {\n return this[kHandler].onResponseStarted?.()\n }\n\n onHeaders (statusCode, headers, resume, statusText) {\n assert(!this.aborted)\n assert(!this.completed)\n\n if (channels.headers.hasSubscribers) {\n channels.headers.publish({ request: this, response: { statusCode, headers, statusText } })\n }\n\n try {\n return this[kHandler].onHeaders(statusCode, headers, resume, statusText)\n } catch (err) {\n this.abort(err)\n }\n }\n\n onData (chunk) {\n assert(!this.aborted)\n assert(!this.completed)\n\n try {\n return this[kHandler].onData(chunk)\n } catch (err) {\n this.abort(err)\n return false\n }\n }\n\n onUpgrade (statusCode, headers, socket) {\n assert(!this.aborted)\n assert(!this.completed)\n\n return this[kHandler].onUpgrade(statusCode, headers, socket)\n }\n\n onComplete (trailers) {\n this.onFinally()\n\n assert(!this.aborted)\n\n this.completed = true\n if (channels.trailers.hasSubscribers) {\n channels.trailers.publish({ request: this, trailers })\n }\n\n try {\n return this[kHandler].onComplete(trailers)\n } catch (err) {\n // TODO (fix): This might be a bad idea?\n this.onError(err)\n }\n }\n\n onError (error) {\n this.onFinally()\n\n if (channels.error.hasSubscribers) {\n channels.error.publish({ request: this, error })\n }\n\n if (this.aborted) {\n return\n }\n this.aborted = true\n\n return this[kHandler].onError(error)\n }\n\n onFinally () {\n if (this.errorHandler) {\n this.body.off('error', this.errorHandler)\n this.errorHandler = null\n }\n\n if (this.endHandler) {\n this.body.off('end', this.endHandler)\n this.endHandler = null\n }\n }\n\n addHeader (key, value) {\n processHeader(this, key, value)\n return this\n }\n}\n\nfunction processHeader (request, key, val) {\n if (val && (typeof val === 'object' && !Array.isArray(val))) {\n throw new InvalidArgumentError(`invalid ${key} header`)\n } else if (val === undefined) {\n return\n }\n\n let headerName = headerNameLowerCasedRecord[key]\n\n if (headerName === undefined) {\n headerName = key.toLowerCase()\n if (headerNameLowerCasedRecord[headerName] === undefined && !isValidHTTPToken(headerName)) {\n throw new InvalidArgumentError('invalid header key')\n }\n }\n\n if (Array.isArray(val)) {\n const arr = []\n for (let i = 0; i < val.length; i++) {\n if (typeof val[i] === 'string') {\n if (!isValidHeaderValue(val[i])) {\n throw new InvalidArgumentError(`invalid ${key} header`)\n }\n arr.push(val[i])\n } else if (val[i] === null) {\n arr.push('')\n } else if (typeof val[i] === 'object') {\n throw new InvalidArgumentError(`invalid ${key} header`)\n } else {\n arr.push(`${val[i]}`)\n }\n }\n val = arr\n } else if (typeof val === 'string') {\n if (!isValidHeaderValue(val)) {\n throw new InvalidArgumentError(`invalid ${key} header`)\n }\n } else if (val === null) {\n val = ''\n } else {\n val = `${val}`\n }\n\n if (headerName === 'host') {\n if (request.host !== null) {\n throw new InvalidArgumentError('duplicate host header')\n }\n if (typeof val !== 'string') {\n throw new InvalidArgumentError('invalid host header')\n }\n // Consumed by Client\n request.host = val\n } else if (headerName === 'content-length') {\n if (request.contentLength !== null) {\n throw new InvalidArgumentError('duplicate content-length header')\n }\n request.contentLength = parseInt(val, 10)\n if (!Number.isFinite(request.contentLength)) {\n throw new InvalidArgumentError('invalid content-length header')\n }\n } else if (request.contentType === null && headerName === 'content-type') {\n request.contentType = val\n request.headers.push(key, val)\n } else if (headerName === 'transfer-encoding' || headerName === 'keep-alive' || headerName === 'upgrade') {\n throw new InvalidArgumentError(`invalid ${headerName} header`)\n } else if (headerName === 'connection') {\n const value = typeof val === 'string' ? val.toLowerCase() : null\n if (value !== 'close' && value !== 'keep-alive') {\n throw new InvalidArgumentError('invalid connection header')\n }\n\n if (value === 'close') {\n request.reset = true\n }\n } else if (headerName === 'expect') {\n throw new NotSupportedError('expect header not supported')\n } else {\n request.headers.push(key, val)\n }\n}\n\nmodule.exports = Request\n", "'use strict'\nconst EventEmitter = require('node:events')\n\nclass Dispatcher extends EventEmitter {\n dispatch () {\n throw new Error('not implemented')\n }\n\n close () {\n throw new Error('not implemented')\n }\n\n destroy () {\n throw new Error('not implemented')\n }\n\n compose (...args) {\n // So we handle [interceptor1, interceptor2] or interceptor1, interceptor2, ...\n const interceptors = Array.isArray(args[0]) ? args[0] : args\n let dispatch = this.dispatch.bind(this)\n\n for (const interceptor of interceptors) {\n if (interceptor == null) {\n continue\n }\n\n if (typeof interceptor !== 'function') {\n throw new TypeError(`invalid interceptor, expected function received ${typeof interceptor}`)\n }\n\n dispatch = interceptor(dispatch)\n\n if (dispatch == null || typeof dispatch !== 'function' || dispatch.length !== 2) {\n throw new TypeError('invalid interceptor')\n }\n }\n\n return new ComposedDispatcher(this, dispatch)\n }\n}\n\nclass ComposedDispatcher extends Dispatcher {\n #dispatcher = null\n #dispatch = null\n\n constructor (dispatcher, dispatch) {\n super()\n this.#dispatcher = dispatcher\n this.#dispatch = dispatch\n }\n\n dispatch (...args) {\n this.#dispatch(...args)\n }\n\n close (...args) {\n return this.#dispatcher.close(...args)\n }\n\n destroy (...args) {\n return this.#dispatcher.destroy(...args)\n }\n}\n\nmodule.exports = Dispatcher\n", "'use strict'\n\nconst Dispatcher = require('./dispatcher')\nconst {\n ClientDestroyedError,\n ClientClosedError,\n InvalidArgumentError\n} = require('../core/errors')\nconst { kDestroy, kClose, kClosed, kDestroyed, kDispatch, kInterceptors } = require('../core/symbols')\n\nconst kOnDestroyed = Symbol('onDestroyed')\nconst kOnClosed = Symbol('onClosed')\nconst kInterceptedDispatch = Symbol('Intercepted Dispatch')\n\nclass DispatcherBase extends Dispatcher {\n constructor () {\n super()\n\n this[kDestroyed] = false\n this[kOnDestroyed] = null\n this[kClosed] = false\n this[kOnClosed] = []\n }\n\n get destroyed () {\n return this[kDestroyed]\n }\n\n get closed () {\n return this[kClosed]\n }\n\n get interceptors () {\n return this[kInterceptors]\n }\n\n set interceptors (newInterceptors) {\n if (newInterceptors) {\n for (let i = newInterceptors.length - 1; i >= 0; i--) {\n const interceptor = this[kInterceptors][i]\n if (typeof interceptor !== 'function') {\n throw new InvalidArgumentError('interceptor must be an function')\n }\n }\n }\n\n this[kInterceptors] = newInterceptors\n }\n\n close (callback) {\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n this.close((err, data) => {\n return err ? reject(err) : resolve(data)\n })\n })\n }\n\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n if (this[kDestroyed]) {\n queueMicrotask(() => callback(new ClientDestroyedError(), null))\n return\n }\n\n if (this[kClosed]) {\n if (this[kOnClosed]) {\n this[kOnClosed].push(callback)\n } else {\n queueMicrotask(() => callback(null, null))\n }\n return\n }\n\n this[kClosed] = true\n this[kOnClosed].push(callback)\n\n const onClosed = () => {\n const callbacks = this[kOnClosed]\n this[kOnClosed] = null\n for (let i = 0; i < callbacks.length; i++) {\n callbacks[i](null, null)\n }\n }\n\n // Should not error.\n this[kClose]()\n .then(() => this.destroy())\n .then(() => {\n queueMicrotask(onClosed)\n })\n }\n\n destroy (err, callback) {\n if (typeof err === 'function') {\n callback = err\n err = null\n }\n\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n this.destroy(err, (err, data) => {\n return err ? /* istanbul ignore next: should never error */ reject(err) : resolve(data)\n })\n })\n }\n\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n if (this[kDestroyed]) {\n if (this[kOnDestroyed]) {\n this[kOnDestroyed].push(callback)\n } else {\n queueMicrotask(() => callback(null, null))\n }\n return\n }\n\n if (!err) {\n err = new ClientDestroyedError()\n }\n\n this[kDestroyed] = true\n this[kOnDestroyed] = this[kOnDestroyed] || []\n this[kOnDestroyed].push(callback)\n\n const onDestroyed = () => {\n const callbacks = this[kOnDestroyed]\n this[kOnDestroyed] = null\n for (let i = 0; i < callbacks.length; i++) {\n callbacks[i](null, null)\n }\n }\n\n // Should not error.\n this[kDestroy](err).then(() => {\n queueMicrotask(onDestroyed)\n })\n }\n\n [kInterceptedDispatch] (opts, handler) {\n if (!this[kInterceptors] || this[kInterceptors].length === 0) {\n this[kInterceptedDispatch] = this[kDispatch]\n return this[kDispatch](opts, handler)\n }\n\n let dispatch = this[kDispatch].bind(this)\n for (let i = this[kInterceptors].length - 1; i >= 0; i--) {\n dispatch = this[kInterceptors][i](dispatch)\n }\n this[kInterceptedDispatch] = dispatch\n return dispatch(opts, handler)\n }\n\n dispatch (opts, handler) {\n if (!handler || typeof handler !== 'object') {\n throw new InvalidArgumentError('handler must be an object')\n }\n\n try {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('opts must be an object.')\n }\n\n if (this[kDestroyed] || this[kOnDestroyed]) {\n throw new ClientDestroyedError()\n }\n\n if (this[kClosed]) {\n throw new ClientClosedError()\n }\n\n return this[kInterceptedDispatch](opts, handler)\n } catch (err) {\n if (typeof handler.onError !== 'function') {\n throw new InvalidArgumentError('invalid onError method')\n }\n\n handler.onError(err)\n\n return false\n }\n }\n}\n\nmodule.exports = DispatcherBase\n", "'use strict'\n\n/**\n * This module offers an optimized timer implementation designed for scenarios\n * where high precision is not critical.\n *\n * The timer achieves faster performance by using a low-resolution approach,\n * with an accuracy target of within 500ms. This makes it particularly useful\n * for timers with delays of 1 second or more, where exact timing is less\n * crucial.\n *\n * It's important to note that Node.js timers are inherently imprecise, as\n * delays can occur due to the event loop being blocked by other operations.\n * Consequently, timers may trigger later than their scheduled time.\n */\n\n/**\n * The fastNow variable contains the internal fast timer clock value.\n *\n * @type {number}\n */\nlet fastNow = 0\n\n/**\n * RESOLUTION_MS represents the target resolution time in milliseconds.\n *\n * @type {number}\n * @default 1000\n */\nconst RESOLUTION_MS = 1e3\n\n/**\n * TICK_MS defines the desired interval in milliseconds between each tick.\n * The target value is set to half the resolution time, minus 1 ms, to account\n * for potential event loop overhead.\n *\n * @type {number}\n * @default 499\n */\nconst TICK_MS = (RESOLUTION_MS >> 1) - 1\n\n/**\n * fastNowTimeout is a Node.js timer used to manage and process\n * the FastTimers stored in the `fastTimers` array.\n *\n * @type {NodeJS.Timeout}\n */\nlet fastNowTimeout\n\n/**\n * The kFastTimer symbol is used to identify FastTimer instances.\n *\n * @type {Symbol}\n */\nconst kFastTimer = Symbol('kFastTimer')\n\n/**\n * The fastTimers array contains all active FastTimers.\n *\n * @type {FastTimer[]}\n */\nconst fastTimers = []\n\n/**\n * These constants represent the various states of a FastTimer.\n */\n\n/**\n * The `NOT_IN_LIST` constant indicates that the FastTimer is not included\n * in the `fastTimers` array. Timers with this status will not be processed\n * during the next tick by the `onTick` function.\n *\n * A FastTimer can be re-added to the `fastTimers` array by invoking the\n * `refresh` method on the FastTimer instance.\n *\n * @type {-2}\n */\nconst NOT_IN_LIST = -2\n\n/**\n * The `TO_BE_CLEARED` constant indicates that the FastTimer is scheduled\n * for removal from the `fastTimers` array. A FastTimer in this state will\n * be removed in the next tick by the `onTick` function and will no longer\n * be processed.\n *\n * This status is also set when the `clear` method is called on the FastTimer instance.\n *\n * @type {-1}\n */\nconst TO_BE_CLEARED = -1\n\n/**\n * The `PENDING` constant signifies that the FastTimer is awaiting processing\n * in the next tick by the `onTick` function. Timers with this status will have\n * their `_idleStart` value set and their status updated to `ACTIVE` in the next tick.\n *\n * @type {0}\n */\nconst PENDING = 0\n\n/**\n * The `ACTIVE` constant indicates that the FastTimer is active and waiting\n * for its timer to expire. During the next tick, the `onTick` function will\n * check if the timer has expired, and if so, it will execute the associated callback.\n *\n * @type {1}\n */\nconst ACTIVE = 1\n\n/**\n * The onTick function processes the fastTimers array.\n *\n * @returns {void}\n */\nfunction onTick () {\n /**\n * Increment the fastNow value by the TICK_MS value, despite the actual time\n * that has passed since the last tick. This approach ensures independence\n * from the system clock and delays caused by a blocked event loop.\n *\n * @type {number}\n */\n fastNow += TICK_MS\n\n /**\n * The `idx` variable is used to iterate over the `fastTimers` array.\n * Expired timers are removed by replacing them with the last element in the array.\n * Consequently, `idx` is only incremented when the current element is not removed.\n *\n * @type {number}\n */\n let idx = 0\n\n /**\n * The len variable will contain the length of the fastTimers array\n * and will be decremented when a FastTimer should be removed from the\n * fastTimers array.\n *\n * @type {number}\n */\n let len = fastTimers.length\n\n while (idx < len) {\n /**\n * @type {FastTimer}\n */\n const timer = fastTimers[idx]\n\n // If the timer is in the ACTIVE state and the timer has expired, it will\n // be processed in the next tick.\n if (timer._state === PENDING) {\n // Set the _idleStart value to the fastNow value minus the TICK_MS value\n // to account for the time the timer was in the PENDING state.\n timer._idleStart = fastNow - TICK_MS\n timer._state = ACTIVE\n } else if (\n timer._state === ACTIVE &&\n fastNow >= timer._idleStart + timer._idleTimeout\n ) {\n timer._state = TO_BE_CLEARED\n timer._idleStart = -1\n timer._onTimeout(timer._timerArg)\n }\n\n if (timer._state === TO_BE_CLEARED) {\n timer._state = NOT_IN_LIST\n\n // Move the last element to the current index and decrement len if it is\n // not the only element in the array.\n if (--len !== 0) {\n fastTimers[idx] = fastTimers[len]\n }\n } else {\n ++idx\n }\n }\n\n // Set the length of the fastTimers array to the new length and thus\n // removing the excess FastTimers elements from the array.\n fastTimers.length = len\n\n // If there are still active FastTimers in the array, refresh the Timer.\n // If there are no active FastTimers, the timer will be refreshed again\n // when a new FastTimer is instantiated.\n if (fastTimers.length !== 0) {\n refreshTimeout()\n }\n}\n\nfunction refreshTimeout () {\n // If the fastNowTimeout is already set, refresh it.\n if (fastNowTimeout) {\n fastNowTimeout.refresh()\n // fastNowTimeout is not instantiated yet, create a new Timer.\n } else {\n clearTimeout(fastNowTimeout)\n fastNowTimeout = setTimeout(onTick, TICK_MS)\n\n // If the Timer has an unref method, call it to allow the process to exit if\n // there are no other active handles.\n if (fastNowTimeout.unref) {\n fastNowTimeout.unref()\n }\n }\n}\n\n/**\n * The `FastTimer` class is a data structure designed to store and manage\n * timer information.\n */\nclass FastTimer {\n [kFastTimer] = true\n\n /**\n * The state of the timer, which can be one of the following:\n * - NOT_IN_LIST (-2)\n * - TO_BE_CLEARED (-1)\n * - PENDING (0)\n * - ACTIVE (1)\n *\n * @type {-2|-1|0|1}\n * @private\n */\n _state = NOT_IN_LIST\n\n /**\n * The number of milliseconds to wait before calling the callback.\n *\n * @type {number}\n * @private\n */\n _idleTimeout = -1\n\n /**\n * The time in milliseconds when the timer was started. This value is used to\n * calculate when the timer should expire.\n *\n * @type {number}\n * @default -1\n * @private\n */\n _idleStart = -1\n\n /**\n * The function to be executed when the timer expires.\n * @type {Function}\n * @private\n */\n _onTimeout\n\n /**\n * The argument to be passed to the callback when the timer expires.\n *\n * @type {*}\n * @private\n */\n _timerArg\n\n /**\n * @constructor\n * @param {Function} callback A function to be executed after the timer\n * expires.\n * @param {number} delay The time, in milliseconds that the timer should wait\n * before the specified function or code is executed.\n * @param {*} arg\n */\n constructor (callback, delay, arg) {\n this._onTimeout = callback\n this._idleTimeout = delay\n this._timerArg = arg\n\n this.refresh()\n }\n\n /**\n * Sets the timer's start time to the current time, and reschedules the timer\n * to call its callback at the previously specified duration adjusted to the\n * current time.\n * Using this on a timer that has already called its callback will reactivate\n * the timer.\n *\n * @returns {void}\n */\n refresh () {\n // In the special case that the timer is not in the list of active timers,\n // add it back to the array to be processed in the next tick by the onTick\n // function.\n if (this._state === NOT_IN_LIST) {\n fastTimers.push(this)\n }\n\n // If the timer is the only active timer, refresh the fastNowTimeout for\n // better resolution.\n if (!fastNowTimeout || fastTimers.length === 1) {\n refreshTimeout()\n }\n\n // Setting the state to PENDING will cause the timer to be reset in the\n // next tick by the onTick function.\n this._state = PENDING\n }\n\n /**\n * The `clear` method cancels the timer, preventing it from executing.\n *\n * @returns {void}\n * @private\n */\n clear () {\n // Set the state to TO_BE_CLEARED to mark the timer for removal in the next\n // tick by the onTick function.\n this._state = TO_BE_CLEARED\n\n // Reset the _idleStart value to -1 to indicate that the timer is no longer\n // active.\n this._idleStart = -1\n }\n}\n\n/**\n * This module exports a setTimeout and clearTimeout function that can be\n * used as a drop-in replacement for the native functions.\n */\nmodule.exports = {\n /**\n * The setTimeout() method sets a timer which executes a function once the\n * timer expires.\n * @param {Function} callback A function to be executed after the timer\n * expires.\n * @param {number} delay The time, in milliseconds that the timer should\n * wait before the specified function or code is executed.\n * @param {*} [arg] An optional argument to be passed to the callback function\n * when the timer expires.\n * @returns {NodeJS.Timeout|FastTimer}\n */\n setTimeout (callback, delay, arg) {\n // If the delay is less than or equal to the RESOLUTION_MS value return a\n // native Node.js Timer instance.\n return delay <= RESOLUTION_MS\n ? setTimeout(callback, delay, arg)\n : new FastTimer(callback, delay, arg)\n },\n /**\n * The clearTimeout method cancels an instantiated Timer previously created\n * by calling setTimeout.\n *\n * @param {NodeJS.Timeout|FastTimer} timeout\n */\n clearTimeout (timeout) {\n // If the timeout is a FastTimer, call its own clear method.\n if (timeout[kFastTimer]) {\n /**\n * @type {FastTimer}\n */\n timeout.clear()\n // Otherwise it is an instance of a native NodeJS.Timeout, so call the\n // Node.js native clearTimeout function.\n } else {\n clearTimeout(timeout)\n }\n },\n /**\n * The setFastTimeout() method sets a fastTimer which executes a function once\n * the timer expires.\n * @param {Function} callback A function to be executed after the timer\n * expires.\n * @param {number} delay The time, in milliseconds that the timer should\n * wait before the specified function or code is executed.\n * @param {*} [arg] An optional argument to be passed to the callback function\n * when the timer expires.\n * @returns {FastTimer}\n */\n setFastTimeout (callback, delay, arg) {\n return new FastTimer(callback, delay, arg)\n },\n /**\n * The clearTimeout method cancels an instantiated FastTimer previously\n * created by calling setFastTimeout.\n *\n * @param {FastTimer} timeout\n */\n clearFastTimeout (timeout) {\n timeout.clear()\n },\n /**\n * The now method returns the value of the internal fast timer clock.\n *\n * @returns {number}\n */\n now () {\n return fastNow\n },\n /**\n * Trigger the onTick function to process the fastTimers array.\n * Exported for testing purposes only.\n * Marking as deprecated to discourage any use outside of testing.\n * @deprecated\n * @param {number} [delay=0] The delay in milliseconds to add to the now value.\n */\n tick (delay = 0) {\n fastNow += delay - RESOLUTION_MS + 1\n onTick()\n onTick()\n },\n /**\n * Reset FastTimers.\n * Exported for testing purposes only.\n * Marking as deprecated to discourage any use outside of testing.\n * @deprecated\n */\n reset () {\n fastNow = 0\n fastTimers.length = 0\n clearTimeout(fastNowTimeout)\n fastNowTimeout = null\n },\n /**\n * Exporting for testing purposes only.\n * Marking as deprecated to discourage any use outside of testing.\n * @deprecated\n */\n kFastTimer\n}\n", "'use strict'\n\nconst net = require('node:net')\nconst assert = require('node:assert')\nconst util = require('./util')\nconst { InvalidArgumentError, ConnectTimeoutError } = require('./errors')\nconst timers = require('../util/timers')\n\nfunction noop () {}\n\nlet tls // include tls conditionally since it is not always available\n\n// TODO: session re-use does not wait for the first\n// connection to resolve the session and might therefore\n// resolve the same servername multiple times even when\n// re-use is enabled.\n\nlet SessionCache\n// FIXME: remove workaround when the Node bug is fixed\n// https://github.com/nodejs/node/issues/49344#issuecomment-1741776308\nif (global.FinalizationRegistry && !(process.env.NODE_V8_COVERAGE || process.env.UNDICI_NO_FG)) {\n SessionCache = class WeakSessionCache {\n constructor (maxCachedSessions) {\n this._maxCachedSessions = maxCachedSessions\n this._sessionCache = new Map()\n this._sessionRegistry = new global.FinalizationRegistry((key) => {\n if (this._sessionCache.size < this._maxCachedSessions) {\n return\n }\n\n const ref = this._sessionCache.get(key)\n if (ref !== undefined && ref.deref() === undefined) {\n this._sessionCache.delete(key)\n }\n })\n }\n\n get (sessionKey) {\n const ref = this._sessionCache.get(sessionKey)\n return ref ? ref.deref() : null\n }\n\n set (sessionKey, session) {\n if (this._maxCachedSessions === 0) {\n return\n }\n\n this._sessionCache.set(sessionKey, new WeakRef(session))\n this._sessionRegistry.register(session, sessionKey)\n }\n }\n} else {\n SessionCache = class SimpleSessionCache {\n constructor (maxCachedSessions) {\n this._maxCachedSessions = maxCachedSessions\n this._sessionCache = new Map()\n }\n\n get (sessionKey) {\n return this._sessionCache.get(sessionKey)\n }\n\n set (sessionKey, session) {\n if (this._maxCachedSessions === 0) {\n return\n }\n\n if (this._sessionCache.size >= this._maxCachedSessions) {\n // remove the oldest session\n const { value: oldestKey } = this._sessionCache.keys().next()\n this._sessionCache.delete(oldestKey)\n }\n\n this._sessionCache.set(sessionKey, session)\n }\n }\n}\n\nfunction buildConnector ({ allowH2, maxCachedSessions, socketPath, timeout, session: customSession, ...opts }) {\n if (maxCachedSessions != null && (!Number.isInteger(maxCachedSessions) || maxCachedSessions < 0)) {\n throw new InvalidArgumentError('maxCachedSessions must be a positive integer or zero')\n }\n\n const options = { path: socketPath, ...opts }\n const sessionCache = new SessionCache(maxCachedSessions == null ? 100 : maxCachedSessions)\n timeout = timeout == null ? 10e3 : timeout\n allowH2 = allowH2 != null ? allowH2 : false\n return function connect ({ hostname, host, protocol, port, servername, localAddress, httpSocket }, callback) {\n let socket\n if (protocol === 'https:') {\n if (!tls) {\n tls = require('node:tls')\n }\n servername = servername || options.servername || util.getServerName(host) || null\n\n const sessionKey = servername || hostname\n assert(sessionKey)\n\n const session = customSession || sessionCache.get(sessionKey) || null\n\n port = port || 443\n\n socket = tls.connect({\n highWaterMark: 16384, // TLS in node can't have bigger HWM anyway...\n ...options,\n servername,\n session,\n localAddress,\n // TODO(HTTP/2): Add support for h2c\n ALPNProtocols: allowH2 ? ['http/1.1', 'h2'] : ['http/1.1'],\n socket: httpSocket, // upgrade socket connection\n port,\n host: hostname\n })\n\n socket\n .on('session', function (session) {\n // TODO (fix): Can a session become invalid once established? Don't think so?\n sessionCache.set(sessionKey, session)\n })\n } else {\n assert(!httpSocket, 'httpSocket can only be sent on TLS update')\n\n port = port || 80\n\n socket = net.connect({\n highWaterMark: 64 * 1024, // Same as nodejs fs streams.\n ...options,\n localAddress,\n port,\n host: hostname\n })\n }\n\n // Set TCP keep alive options on the socket here instead of in connect() for the case of assigning the socket\n if (options.keepAlive == null || options.keepAlive) {\n const keepAliveInitialDelay = options.keepAliveInitialDelay === undefined ? 60e3 : options.keepAliveInitialDelay\n socket.setKeepAlive(true, keepAliveInitialDelay)\n }\n\n const clearConnectTimeout = setupConnectTimeout(new WeakRef(socket), { timeout, hostname, port })\n\n socket\n .setNoDelay(true)\n .once(protocol === 'https:' ? 'secureConnect' : 'connect', function () {\n queueMicrotask(clearConnectTimeout)\n\n if (callback) {\n const cb = callback\n callback = null\n cb(null, this)\n }\n })\n .on('error', function (err) {\n queueMicrotask(clearConnectTimeout)\n\n if (callback) {\n const cb = callback\n callback = null\n cb(err)\n }\n })\n\n return socket\n }\n}\n\n/**\n * @param {WeakRef} socketWeakRef\n * @param {object} opts\n * @param {number} opts.timeout\n * @param {string} opts.hostname\n * @param {number} opts.port\n * @returns {() => void}\n */\nconst setupConnectTimeout = process.platform === 'win32'\n ? (socketWeakRef, opts) => {\n if (!opts.timeout) {\n return noop\n }\n\n let s1 = null\n let s2 = null\n const fastTimer = timers.setFastTimeout(() => {\n // setImmediate is added to make sure that we prioritize socket error events over timeouts\n s1 = setImmediate(() => {\n // Windows needs an extra setImmediate probably due to implementation differences in the socket logic\n s2 = setImmediate(() => onConnectTimeout(socketWeakRef.deref(), opts))\n })\n }, opts.timeout)\n return () => {\n timers.clearFastTimeout(fastTimer)\n clearImmediate(s1)\n clearImmediate(s2)\n }\n }\n : (socketWeakRef, opts) => {\n if (!opts.timeout) {\n return noop\n }\n\n let s1 = null\n const fastTimer = timers.setFastTimeout(() => {\n // setImmediate is added to make sure that we prioritize socket error events over timeouts\n s1 = setImmediate(() => {\n onConnectTimeout(socketWeakRef.deref(), opts)\n })\n }, opts.timeout)\n return () => {\n timers.clearFastTimeout(fastTimer)\n clearImmediate(s1)\n }\n }\n\n/**\n * @param {net.Socket} socket\n * @param {object} opts\n * @param {number} opts.timeout\n * @param {string} opts.hostname\n * @param {number} opts.port\n */\nfunction onConnectTimeout (socket, opts) {\n // The socket could be already garbage collected\n if (socket == null) {\n return\n }\n\n let message = 'Connect Timeout Error'\n if (Array.isArray(socket.autoSelectFamilyAttemptedAddresses)) {\n message += ` (attempted addresses: ${socket.autoSelectFamilyAttemptedAddresses.join(', ')},`\n } else {\n message += ` (attempted address: ${opts.hostname}:${opts.port},`\n }\n\n message += ` timeout: ${opts.timeout}ms)`\n\n util.destroy(socket, new ConnectTimeoutError(message))\n}\n\nmodule.exports = buildConnector\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.enumToMap = void 0;\nfunction enumToMap(obj) {\n const res = {};\n Object.keys(obj).forEach((key) => {\n const value = obj[key];\n if (typeof value === 'number') {\n res[key] = value;\n }\n });\n return res;\n}\nexports.enumToMap = enumToMap;\n//# sourceMappingURL=utils.js.map", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.SPECIAL_HEADERS = exports.HEADER_STATE = exports.MINOR = exports.MAJOR = exports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS = exports.TOKEN = exports.STRICT_TOKEN = exports.HEX = exports.URL_CHAR = exports.STRICT_URL_CHAR = exports.USERINFO_CHARS = exports.MARK = exports.ALPHANUM = exports.NUM = exports.HEX_MAP = exports.NUM_MAP = exports.ALPHA = exports.FINISH = exports.H_METHOD_MAP = exports.METHOD_MAP = exports.METHODS_RTSP = exports.METHODS_ICE = exports.METHODS_HTTP = exports.METHODS = exports.LENIENT_FLAGS = exports.FLAGS = exports.TYPE = exports.ERROR = void 0;\nconst utils_1 = require(\"./utils\");\n// C headers\nvar ERROR;\n(function (ERROR) {\n ERROR[ERROR[\"OK\"] = 0] = \"OK\";\n ERROR[ERROR[\"INTERNAL\"] = 1] = \"INTERNAL\";\n ERROR[ERROR[\"STRICT\"] = 2] = \"STRICT\";\n ERROR[ERROR[\"LF_EXPECTED\"] = 3] = \"LF_EXPECTED\";\n ERROR[ERROR[\"UNEXPECTED_CONTENT_LENGTH\"] = 4] = \"UNEXPECTED_CONTENT_LENGTH\";\n ERROR[ERROR[\"CLOSED_CONNECTION\"] = 5] = \"CLOSED_CONNECTION\";\n ERROR[ERROR[\"INVALID_METHOD\"] = 6] = \"INVALID_METHOD\";\n ERROR[ERROR[\"INVALID_URL\"] = 7] = \"INVALID_URL\";\n ERROR[ERROR[\"INVALID_CONSTANT\"] = 8] = \"INVALID_CONSTANT\";\n ERROR[ERROR[\"INVALID_VERSION\"] = 9] = \"INVALID_VERSION\";\n ERROR[ERROR[\"INVALID_HEADER_TOKEN\"] = 10] = \"INVALID_HEADER_TOKEN\";\n ERROR[ERROR[\"INVALID_CONTENT_LENGTH\"] = 11] = \"INVALID_CONTENT_LENGTH\";\n ERROR[ERROR[\"INVALID_CHUNK_SIZE\"] = 12] = \"INVALID_CHUNK_SIZE\";\n ERROR[ERROR[\"INVALID_STATUS\"] = 13] = \"INVALID_STATUS\";\n ERROR[ERROR[\"INVALID_EOF_STATE\"] = 14] = \"INVALID_EOF_STATE\";\n ERROR[ERROR[\"INVALID_TRANSFER_ENCODING\"] = 15] = \"INVALID_TRANSFER_ENCODING\";\n ERROR[ERROR[\"CB_MESSAGE_BEGIN\"] = 16] = \"CB_MESSAGE_BEGIN\";\n ERROR[ERROR[\"CB_HEADERS_COMPLETE\"] = 17] = \"CB_HEADERS_COMPLETE\";\n ERROR[ERROR[\"CB_MESSAGE_COMPLETE\"] = 18] = \"CB_MESSAGE_COMPLETE\";\n ERROR[ERROR[\"CB_CHUNK_HEADER\"] = 19] = \"CB_CHUNK_HEADER\";\n ERROR[ERROR[\"CB_CHUNK_COMPLETE\"] = 20] = \"CB_CHUNK_COMPLETE\";\n ERROR[ERROR[\"PAUSED\"] = 21] = \"PAUSED\";\n ERROR[ERROR[\"PAUSED_UPGRADE\"] = 22] = \"PAUSED_UPGRADE\";\n ERROR[ERROR[\"PAUSED_H2_UPGRADE\"] = 23] = \"PAUSED_H2_UPGRADE\";\n ERROR[ERROR[\"USER\"] = 24] = \"USER\";\n})(ERROR = exports.ERROR || (exports.ERROR = {}));\nvar TYPE;\n(function (TYPE) {\n TYPE[TYPE[\"BOTH\"] = 0] = \"BOTH\";\n TYPE[TYPE[\"REQUEST\"] = 1] = \"REQUEST\";\n TYPE[TYPE[\"RESPONSE\"] = 2] = \"RESPONSE\";\n})(TYPE = exports.TYPE || (exports.TYPE = {}));\nvar FLAGS;\n(function (FLAGS) {\n FLAGS[FLAGS[\"CONNECTION_KEEP_ALIVE\"] = 1] = \"CONNECTION_KEEP_ALIVE\";\n FLAGS[FLAGS[\"CONNECTION_CLOSE\"] = 2] = \"CONNECTION_CLOSE\";\n FLAGS[FLAGS[\"CONNECTION_UPGRADE\"] = 4] = \"CONNECTION_UPGRADE\";\n FLAGS[FLAGS[\"CHUNKED\"] = 8] = \"CHUNKED\";\n FLAGS[FLAGS[\"UPGRADE\"] = 16] = \"UPGRADE\";\n FLAGS[FLAGS[\"CONTENT_LENGTH\"] = 32] = \"CONTENT_LENGTH\";\n FLAGS[FLAGS[\"SKIPBODY\"] = 64] = \"SKIPBODY\";\n FLAGS[FLAGS[\"TRAILING\"] = 128] = \"TRAILING\";\n // 1 << 8 is unused\n FLAGS[FLAGS[\"TRANSFER_ENCODING\"] = 512] = \"TRANSFER_ENCODING\";\n})(FLAGS = exports.FLAGS || (exports.FLAGS = {}));\nvar LENIENT_FLAGS;\n(function (LENIENT_FLAGS) {\n LENIENT_FLAGS[LENIENT_FLAGS[\"HEADERS\"] = 1] = \"HEADERS\";\n LENIENT_FLAGS[LENIENT_FLAGS[\"CHUNKED_LENGTH\"] = 2] = \"CHUNKED_LENGTH\";\n LENIENT_FLAGS[LENIENT_FLAGS[\"KEEP_ALIVE\"] = 4] = \"KEEP_ALIVE\";\n})(LENIENT_FLAGS = exports.LENIENT_FLAGS || (exports.LENIENT_FLAGS = {}));\nvar METHODS;\n(function (METHODS) {\n METHODS[METHODS[\"DELETE\"] = 0] = \"DELETE\";\n METHODS[METHODS[\"GET\"] = 1] = \"GET\";\n METHODS[METHODS[\"HEAD\"] = 2] = \"HEAD\";\n METHODS[METHODS[\"POST\"] = 3] = \"POST\";\n METHODS[METHODS[\"PUT\"] = 4] = \"PUT\";\n /* pathological */\n METHODS[METHODS[\"CONNECT\"] = 5] = \"CONNECT\";\n METHODS[METHODS[\"OPTIONS\"] = 6] = \"OPTIONS\";\n METHODS[METHODS[\"TRACE\"] = 7] = \"TRACE\";\n /* WebDAV */\n METHODS[METHODS[\"COPY\"] = 8] = \"COPY\";\n METHODS[METHODS[\"LOCK\"] = 9] = \"LOCK\";\n METHODS[METHODS[\"MKCOL\"] = 10] = \"MKCOL\";\n METHODS[METHODS[\"MOVE\"] = 11] = \"MOVE\";\n METHODS[METHODS[\"PROPFIND\"] = 12] = \"PROPFIND\";\n METHODS[METHODS[\"PROPPATCH\"] = 13] = \"PROPPATCH\";\n METHODS[METHODS[\"SEARCH\"] = 14] = \"SEARCH\";\n METHODS[METHODS[\"UNLOCK\"] = 15] = \"UNLOCK\";\n METHODS[METHODS[\"BIND\"] = 16] = \"BIND\";\n METHODS[METHODS[\"REBIND\"] = 17] = \"REBIND\";\n METHODS[METHODS[\"UNBIND\"] = 18] = \"UNBIND\";\n METHODS[METHODS[\"ACL\"] = 19] = \"ACL\";\n /* subversion */\n METHODS[METHODS[\"REPORT\"] = 20] = \"REPORT\";\n METHODS[METHODS[\"MKACTIVITY\"] = 21] = \"MKACTIVITY\";\n METHODS[METHODS[\"CHECKOUT\"] = 22] = \"CHECKOUT\";\n METHODS[METHODS[\"MERGE\"] = 23] = \"MERGE\";\n /* upnp */\n METHODS[METHODS[\"M-SEARCH\"] = 24] = \"M-SEARCH\";\n METHODS[METHODS[\"NOTIFY\"] = 25] = \"NOTIFY\";\n METHODS[METHODS[\"SUBSCRIBE\"] = 26] = \"SUBSCRIBE\";\n METHODS[METHODS[\"UNSUBSCRIBE\"] = 27] = \"UNSUBSCRIBE\";\n /* RFC-5789 */\n METHODS[METHODS[\"PATCH\"] = 28] = \"PATCH\";\n METHODS[METHODS[\"PURGE\"] = 29] = \"PURGE\";\n /* CalDAV */\n METHODS[METHODS[\"MKCALENDAR\"] = 30] = \"MKCALENDAR\";\n /* RFC-2068, section 19.6.1.2 */\n METHODS[METHODS[\"LINK\"] = 31] = \"LINK\";\n METHODS[METHODS[\"UNLINK\"] = 32] = \"UNLINK\";\n /* icecast */\n METHODS[METHODS[\"SOURCE\"] = 33] = \"SOURCE\";\n /* RFC-7540, section 11.6 */\n METHODS[METHODS[\"PRI\"] = 34] = \"PRI\";\n /* RFC-2326 RTSP */\n METHODS[METHODS[\"DESCRIBE\"] = 35] = \"DESCRIBE\";\n METHODS[METHODS[\"ANNOUNCE\"] = 36] = \"ANNOUNCE\";\n METHODS[METHODS[\"SETUP\"] = 37] = \"SETUP\";\n METHODS[METHODS[\"PLAY\"] = 38] = \"PLAY\";\n METHODS[METHODS[\"PAUSE\"] = 39] = \"PAUSE\";\n METHODS[METHODS[\"TEARDOWN\"] = 40] = \"TEARDOWN\";\n METHODS[METHODS[\"GET_PARAMETER\"] = 41] = \"GET_PARAMETER\";\n METHODS[METHODS[\"SET_PARAMETER\"] = 42] = \"SET_PARAMETER\";\n METHODS[METHODS[\"REDIRECT\"] = 43] = \"REDIRECT\";\n METHODS[METHODS[\"RECORD\"] = 44] = \"RECORD\";\n /* RAOP */\n METHODS[METHODS[\"FLUSH\"] = 45] = \"FLUSH\";\n})(METHODS = exports.METHODS || (exports.METHODS = {}));\nexports.METHODS_HTTP = [\n METHODS.DELETE,\n METHODS.GET,\n METHODS.HEAD,\n METHODS.POST,\n METHODS.PUT,\n METHODS.CONNECT,\n METHODS.OPTIONS,\n METHODS.TRACE,\n METHODS.COPY,\n METHODS.LOCK,\n METHODS.MKCOL,\n METHODS.MOVE,\n METHODS.PROPFIND,\n METHODS.PROPPATCH,\n METHODS.SEARCH,\n METHODS.UNLOCK,\n METHODS.BIND,\n METHODS.REBIND,\n METHODS.UNBIND,\n METHODS.ACL,\n METHODS.REPORT,\n METHODS.MKACTIVITY,\n METHODS.CHECKOUT,\n METHODS.MERGE,\n METHODS['M-SEARCH'],\n METHODS.NOTIFY,\n METHODS.SUBSCRIBE,\n METHODS.UNSUBSCRIBE,\n METHODS.PATCH,\n METHODS.PURGE,\n METHODS.MKCALENDAR,\n METHODS.LINK,\n METHODS.UNLINK,\n METHODS.PRI,\n // TODO(indutny): should we allow it with HTTP?\n METHODS.SOURCE,\n];\nexports.METHODS_ICE = [\n METHODS.SOURCE,\n];\nexports.METHODS_RTSP = [\n METHODS.OPTIONS,\n METHODS.DESCRIBE,\n METHODS.ANNOUNCE,\n METHODS.SETUP,\n METHODS.PLAY,\n METHODS.PAUSE,\n METHODS.TEARDOWN,\n METHODS.GET_PARAMETER,\n METHODS.SET_PARAMETER,\n METHODS.REDIRECT,\n METHODS.RECORD,\n METHODS.FLUSH,\n // For AirPlay\n METHODS.GET,\n METHODS.POST,\n];\nexports.METHOD_MAP = utils_1.enumToMap(METHODS);\nexports.H_METHOD_MAP = {};\nObject.keys(exports.METHOD_MAP).forEach((key) => {\n if (/^H/.test(key)) {\n exports.H_METHOD_MAP[key] = exports.METHOD_MAP[key];\n }\n});\nvar FINISH;\n(function (FINISH) {\n FINISH[FINISH[\"SAFE\"] = 0] = \"SAFE\";\n FINISH[FINISH[\"SAFE_WITH_CB\"] = 1] = \"SAFE_WITH_CB\";\n FINISH[FINISH[\"UNSAFE\"] = 2] = \"UNSAFE\";\n})(FINISH = exports.FINISH || (exports.FINISH = {}));\nexports.ALPHA = [];\nfor (let i = 'A'.charCodeAt(0); i <= 'Z'.charCodeAt(0); i++) {\n // Upper case\n exports.ALPHA.push(String.fromCharCode(i));\n // Lower case\n exports.ALPHA.push(String.fromCharCode(i + 0x20));\n}\nexports.NUM_MAP = {\n 0: 0, 1: 1, 2: 2, 3: 3, 4: 4,\n 5: 5, 6: 6, 7: 7, 8: 8, 9: 9,\n};\nexports.HEX_MAP = {\n 0: 0, 1: 1, 2: 2, 3: 3, 4: 4,\n 5: 5, 6: 6, 7: 7, 8: 8, 9: 9,\n A: 0XA, B: 0XB, C: 0XC, D: 0XD, E: 0XE, F: 0XF,\n a: 0xa, b: 0xb, c: 0xc, d: 0xd, e: 0xe, f: 0xf,\n};\nexports.NUM = [\n '0', '1', '2', '3', '4', '5', '6', '7', '8', '9',\n];\nexports.ALPHANUM = exports.ALPHA.concat(exports.NUM);\nexports.MARK = ['-', '_', '.', '!', '~', '*', '\\'', '(', ')'];\nexports.USERINFO_CHARS = exports.ALPHANUM\n .concat(exports.MARK)\n .concat(['%', ';', ':', '&', '=', '+', '$', ',']);\n// TODO(indutny): use RFC\nexports.STRICT_URL_CHAR = [\n '!', '\"', '$', '%', '&', '\\'',\n '(', ')', '*', '+', ',', '-', '.', '/',\n ':', ';', '<', '=', '>',\n '@', '[', '\\\\', ']', '^', '_',\n '`',\n '{', '|', '}', '~',\n].concat(exports.ALPHANUM);\nexports.URL_CHAR = exports.STRICT_URL_CHAR\n .concat(['\\t', '\\f']);\n// All characters with 0x80 bit set to 1\nfor (let i = 0x80; i <= 0xff; i++) {\n exports.URL_CHAR.push(i);\n}\nexports.HEX = exports.NUM.concat(['a', 'b', 'c', 'd', 'e', 'f', 'A', 'B', 'C', 'D', 'E', 'F']);\n/* Tokens as defined by rfc 2616. Also lowercases them.\n * token = 1*\n * separators = \"(\" | \")\" | \"<\" | \">\" | \"@\"\n * | \",\" | \";\" | \":\" | \"\\\" | <\">\n * | \"/\" | \"[\" | \"]\" | \"?\" | \"=\"\n * | \"{\" | \"}\" | SP | HT\n */\nexports.STRICT_TOKEN = [\n '!', '#', '$', '%', '&', '\\'',\n '*', '+', '-', '.',\n '^', '_', '`',\n '|', '~',\n].concat(exports.ALPHANUM);\nexports.TOKEN = exports.STRICT_TOKEN.concat([' ']);\n/*\n * Verify that a char is a valid visible (printable) US-ASCII\n * character or %x80-FF\n */\nexports.HEADER_CHARS = ['\\t'];\nfor (let i = 32; i <= 255; i++) {\n if (i !== 127) {\n exports.HEADER_CHARS.push(i);\n }\n}\n// ',' = \\x44\nexports.CONNECTION_TOKEN_CHARS = exports.HEADER_CHARS.filter((c) => c !== 44);\nexports.MAJOR = exports.NUM_MAP;\nexports.MINOR = exports.MAJOR;\nvar HEADER_STATE;\n(function (HEADER_STATE) {\n HEADER_STATE[HEADER_STATE[\"GENERAL\"] = 0] = \"GENERAL\";\n HEADER_STATE[HEADER_STATE[\"CONNECTION\"] = 1] = \"CONNECTION\";\n HEADER_STATE[HEADER_STATE[\"CONTENT_LENGTH\"] = 2] = \"CONTENT_LENGTH\";\n HEADER_STATE[HEADER_STATE[\"TRANSFER_ENCODING\"] = 3] = \"TRANSFER_ENCODING\";\n HEADER_STATE[HEADER_STATE[\"UPGRADE\"] = 4] = \"UPGRADE\";\n HEADER_STATE[HEADER_STATE[\"CONNECTION_KEEP_ALIVE\"] = 5] = \"CONNECTION_KEEP_ALIVE\";\n HEADER_STATE[HEADER_STATE[\"CONNECTION_CLOSE\"] = 6] = \"CONNECTION_CLOSE\";\n HEADER_STATE[HEADER_STATE[\"CONNECTION_UPGRADE\"] = 7] = \"CONNECTION_UPGRADE\";\n HEADER_STATE[HEADER_STATE[\"TRANSFER_ENCODING_CHUNKED\"] = 8] = \"TRANSFER_ENCODING_CHUNKED\";\n})(HEADER_STATE = exports.HEADER_STATE || (exports.HEADER_STATE = {}));\nexports.SPECIAL_HEADERS = {\n 'connection': HEADER_STATE.CONNECTION,\n 'content-length': HEADER_STATE.CONTENT_LENGTH,\n 'proxy-connection': HEADER_STATE.CONNECTION,\n 'transfer-encoding': HEADER_STATE.TRANSFER_ENCODING,\n 'upgrade': HEADER_STATE.UPGRADE,\n};\n//# sourceMappingURL=constants.js.map", "'use strict'\n\nconst { Buffer } = require('node:buffer')\n\nmodule.exports = Buffer.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')\n", "'use strict'\n\nconst { Buffer } = require('node:buffer')\n\nmodule.exports = Buffer.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+MQ8LQcAkDwtBqyQPC0GNKA8LQeImDwtBgDAPC0G5Lw8LQdckDwtB7x8PC0HhHw8LQfofDwtB8iAPC0GoLw8LQa4yDwtBiDAPC0HsJw8LQYIiDwtBjh0PC0HQLg8LQcojDwtBxTIPC0HfHA8LQdIcDwtBxCAPC0HXIA8LQaIfDwtB7S4PC0GrMA8LQdQlDwtBzC4PC0H6Lg8LQfwrDwtB0jAPC0HxHQ8LQbsgDwtB9ysPC0GQMQ8LQdcxDwtBoi0PC0HUJw8LQeArDwtBnywPC0HrMQ8LQdUfDwtByjEPC0HeJQ8LQdQeDwtB9BwPC0GnMg8LQbEdDwtBoB0PC0G5MQ8LQbwwDwtBkiEPC0GzJg8LQeksDwtBrB4PC0HUKw8LQfcmDwtBgCYPC0GwIQ8LQf4eDwtBjSMPC0GJLQ8LQfciDwtBoDEPC0GuHw8LQcYlDwtB6B4PC0GTIg8LQcIvDwtBwx0PC0GLLA8LQeEdDwtBjS8PC0HqIQ8LQbQtDwtB0i8PC0HfMg8LQdIyDwtB8DAPC0GpIg8LQfkjDwtBmR4PC0G1LA8LQZswDwtBkjIPC0G2Kw8LQcIiDwtB+DIPC0GeJQ8LQdAiDwtBuh4PC0GBHg8LAAtB1iEhAQsgAQsWACAAIAAtAC1B/gFxIAFBAEdyOgAtCxkAIAAgAC0ALUH9AXEgAUEAR0EBdHI6AC0LGQAgACAALQAtQfsBcSABQQBHQQJ0cjoALQsZACAAIAAtAC1B9wFxIAFBAEdBA3RyOgAtCz4BAn8CQCAAKAI4IgNFDQAgAygCBCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABBxhE2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCCCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABB9go2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCDCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABB7Ro2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCECIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABBlRA2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCFCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABBqhs2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCGCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABB7RM2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCKCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABB9gg2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCHCIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABBwhk2AhBBGCEECyAECz4BAn8CQCAAKAI4IgNFDQAgAygCICIDRQ0AIAAgASACIAFrIAMRAQAiBEF/Rw0AIABBlBQ2AhBBGCEECyAEC1kBAn8CQCAALQAoQQFGDQAgAC8BMiIBQeQAa0HkAEkNACABQcwBRg0AIAFBsAJGDQAgAC8BMCIAQcAAcQ0AQQEhAiAAQYgEcUGABEYNACAAQShxRSECCyACC4wBAQJ/AkACQAJAIAAtACpFDQAgAC0AK0UNACAALwEwIgFBAnFFDQEMAgsgAC8BMCIBQQFxRQ0BC0EBIQIgAC0AKEEBRg0AIAAvATIiAEHkAGtB5ABJDQAgAEHMAUYNACAAQbACRg0AIAFBwABxDQBBACECIAFBiARxQYAERg0AIAFBKHFBAEchAgsgAgtzACAAQRBq/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAA/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAAQTBq/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAAQSBq/QwAAAAAAAAAAAAAAAAAAAAA/QsDACAAQd0BNgIcCwYAIAAQMguaLQELfyMAQRBrIgokAEGk0AAoAgAiCUUEQEHk0wAoAgAiBUUEQEHw0wBCfzcCAEHo0wBCgICEgICAwAA3AgBB5NMAIApBCGpBcHFB2KrVqgVzIgU2AgBB+NMAQQA2AgBByNMAQQA2AgALQczTAEGA1AQ2AgBBnNAAQYDUBDYCAEGw0AAgBTYCAEGs0ABBfzYCAEHQ0wBBgKwDNgIAA0AgAUHI0ABqIAFBvNAAaiICNgIAIAIgAUG00ABqIgM2AgAgAUHA0ABqIAM2AgAgAUHQ0ABqIAFBxNAAaiIDNgIAIAMgAjYCACABQdjQAGogAUHM0ABqIgI2AgAgAiADNgIAIAFB1NAAaiACNgIAIAFBIGoiAUGAAkcNAAtBjNQEQcGrAzYCAEGo0ABB9NMAKAIANgIAQZjQAEHAqwM2AgBBpNAAQYjUBDYCAEHM/wdBODYCAEGI1AQhCQsCQAJAAkACQAJAAkACQAJAAkACQAJAAkACQAJAAkACQCAAQewBTQRAQYzQACgCACIGQRAgAEETakFwcSAAQQtJGyIEQQN2IgB2IgFBA3EEQAJAIAFBAXEgAHJBAXMiAkEDdCIAQbTQAGoiASAAQbzQAGooAgAiACgCCCIDRgRAQYzQACAGQX4gAndxNgIADAELIAEgAzYCCCADIAE2AgwLIABBCGohASAAIAJBA3QiAkEDcjYCBCAAIAJqIgAgACgCBEEBcjYCBAwRC0GU0AAoAgAiCCAETw0BIAEEQAJAQQIgAHQiAkEAIAJrciABIAB0cWgiAEEDdCICQbTQAGoiASACQbzQAGooAgAiAigCCCIDRgRAQYzQACAGQX4gAHdxIgY2AgAMAQsgASADNgIIIAMgATYCDAsgAiAEQQNyNgIEIABBA3QiACAEayEFIAAgAmogBTYCACACIARqIgQgBUEBcjYCBCAIBEAgCEF4cUG00ABqIQBBoNAAKAIAIQMCf0EBIAhBA3Z0IgEgBnFFBEBBjNAAIAEgBnI2AgAgAAwBCyAAKAIICyIBIAM2AgwgACADNgIIIAMgADYCDCADIAE2AggLIAJBCGohAUGg0AAgBDYCAEGU0AAgBTYCAAwRC0GQ0AAoAgAiC0UNASALaEECdEG80gBqKAIAIgAoAgRBeHEgBGshBSAAIQIDQAJAIAIoAhAiAUUEQCACQRRqKAIAIgFFDQELIAEoAgRBeHEgBGsiAyAFSSECIAMgBSACGyEFIAEgACACGyEAIAEhAgwBCwsgACgCGCEJIAAoAgwiAyAARwRAQZzQACgCABogAyAAKAIIIgE2AgggASADNgIMDBALIABBFGoiAigCACIBRQRAIAAoAhAiAUUNAyAAQRBqIQILA0AgAiEHIAEiA0EUaiICKAIAIgENACADQRBqIQIgAygCECIBDQALIAdBADYCAAwPC0F/IQQgAEG/f0sNACAAQRNqIgFBcHEhBEGQ0AAoAgAiCEUNAEEAIARrIQUCQAJAAkACf0EAIARBgAJJDQAaQR8gBEH///8HSw0AGiAEQSYgAUEIdmciAGt2QQFxIABBAXRrQT5qCyIGQQJ0QbzSAGooAgAiAkUEQEEAIQFBACEDDAELQQAhASAEQRkgBkEBdmtBACAGQR9HG3QhAEEAIQMDQAJAIAIoAgRBeHEgBGsiByAFTw0AIAIhAyAHIgUNAEEAIQUgAiEBDAMLIAEgAkEUaigCACIHIAcgAiAAQR12QQRxakEQaigCACICRhsgASAHGyEBIABBAXQhACACDQALCyABIANyRQRAQQAhA0ECIAZ0IgBBACAAa3IgCHEiAEUNAyAAaEECdEG80gBqKAIAIQELIAFFDQELA0AgASgCBEF4cSAEayICIAVJIQAgAiAFIAAbIQUgASADIAAbIQMgASgCECIABH8gAAUgAUEUaigCAAsiAQ0ACwsgA0UNACAFQZTQACgCACAEa08NACADKAIYIQcgAyADKAIMIgBHBEBBnNAAKAIAGiAAIAMoAggiATYCCCABIAA2AgwMDgsgA0EUaiICKAIAIgFFBEAgAygCECIBRQ0DIANBEGohAgsDQCACIQYgASIAQRRqIgIoAgAiAQ0AIABBEGohAiAAKAIQIgENAAsgBkEANgIADA0LQZTQACgCACIDIARPBEBBoNAAKAIAIQECQCADIARrIgJBEE8EQCABIARqIgAgAkEBcjYCBCABIANqIAI2AgAgASAEQQNyNgIEDAELIAEgA0EDcjYCBCABIANqIgAgACgCBEEBcjYCBEEAIQBBACECC0GU0AAgAjYCAEGg0AAgADYCACABQQhqIQEMDwtBmNAAKAIAIgMgBEsEQCAEIAlqIgAgAyAEayIBQQFyNgIEQaTQACAANgIAQZjQACABNgIAIAkgBEEDcjYCBCAJQQhqIQEMDwtBACEBIAQCf0Hk0wAoAgAEQEHs0wAoAgAMAQtB8NMAQn83AgBB6NMAQoCAhICAgMAANwIAQeTTACAKQQxqQXBxQdiq1aoFczYCAEH40wBBADYCAEHI0wBBADYCAEGAgAQLIgAgBEHHAGoiBWoiBkEAIABrIgdxIgJPBEBB/NMAQTA2AgAMDwsCQEHE0wAoAgAiAUUNAEG80wAoAgAiCCACaiEAIAAgAU0gACAIS3ENAEEAIQFB/NMAQTA2AgAMDwtByNMALQAAQQRxDQQCQAJAIAkEQEHM0wAhAQNAIAEoAgAiACAJTQRAIAAgASgCBGogCUsNAwsgASgCCCIBDQALC0EAEDMiAEF/Rg0FIAIhBkHo0wAoAgAiAUEBayIDIABxBEAgAiAAayAAIANqQQAgAWtxaiEGCyAEIAZPDQUgBkH+////B0sNBUHE0wAoAgAiAwRAQbzTACgCACIHIAZqIQEgASAHTQ0GIAEgA0sNBgsgBhAzIgEgAEcNAQwHCyAGIANrIAdxIgZB/v///wdLDQQgBhAzIQAgACABKAIAIAEoAgRqRg0DIAAhAQsCQCAGIARByABqTw0AIAFBf0YNAEHs0wAoAgAiACAFIAZrakEAIABrcSIAQf7///8HSwRAIAEhAAwHCyAAEDNBf0cEQCAAIAZqIQYgASEADAcLQQAgBmsQMxoMBAsgASIAQX9HDQUMAwtBACEDDAwLQQAhAAwKCyAAQX9HDQILQcjTAEHI0wAoAgBBBHI2AgALIAJB/v///wdLDQEgAhAzIQBBABAzIQEgAEF/Rg0BIAFBf0YNASAAIAFPDQEgASAAayIGIARBOGpNDQELQbzTAEG80wAoAgAgBmoiATYCAEHA0wAoAgAgAUkEQEHA0wAgATYCAAsCQAJAAkBBpNAAKAIAIgIEQEHM0wAhAQNAIAAgASgCACIDIAEoAgQiBWpGDQIgASgCCCIBDQALDAILQZzQACgCACIBQQBHIAAgAU9xRQRAQZzQACAANgIAC0EAIQFB0NMAIAY2AgBBzNMAIAA2AgBBrNAAQX82AgBBsNAAQeTTACgCADYCAEHY0wBBADYCAANAIAFByNAAaiABQbzQAGoiAjYCACACIAFBtNAAaiIDNgIAIAFBwNAAaiADNgIAIAFB0NAAaiABQcTQAGoiAzYCACADIAI2AgAgAUHY0ABqIAFBzNAAaiICNgIAIAIgAzYCACABQdTQAGogAjYCACABQSBqIgFBgAJHDQALQXggAGtBD3EiASAAaiICIAZBOGsiAyABayIBQQFyNgIEQajQAEH00wAoAgA2AgBBmNAAIAE2AgBBpNAAIAI2AgAgACADakE4NgIEDAILIAAgAk0NACACIANJDQAgASgCDEEIcQ0AQXggAmtBD3EiACACaiIDQZjQACgCACAGaiIHIABrIgBBAXI2AgQgASAFIAZqNgIEQajQAEH00wAoAgA2AgBBmNAAIAA2AgBBpNAAIAM2AgAgAiAHakE4NgIEDAELIABBnNAAKAIASQRAQZzQACAANgIACyAAIAZqIQNBzNMAIQECQAJAAkADQCADIAEoAgBHBEAgASgCCCIBDQEMAgsLIAEtAAxBCHFFDQELQczTACEBA0AgASgCACIDIAJNBEAgAyABKAIEaiIFIAJLDQMLIAEoAgghAQwACwALIAEgADYCACABIAEoAgQgBmo2AgQgAEF4IABrQQ9xaiIJIARBA3I2AgQgA0F4IANrQQ9xaiIGIAQgCWoiBGshASACIAZGBEBBpNAAIAQ2AgBBmNAAQZjQACgCACABaiIANgIAIAQgAEEBcjYCBAwIC0Gg0AAoAgAgBkYEQEGg0AAgBDYCAEGU0ABBlNAAKAIAIAFqIgA2AgAgBCAAQQFyNgIEIAAgBGogADYCAAwICyAGKAIEIgVBA3FBAUcNBiAFQXhxIQggBUH/AU0EQCAFQQN2IQMgBigCCCIAIAYoAgwiAkYEQEGM0ABBjNAAKAIAQX4gA3dxNgIADAcLIAIgADYCCCAAIAI2AgwMBgsgBigCGCEHIAYgBigCDCIARwRAIAAgBigCCCICNgIIIAIgADYCDAwFCyAGQRRqIgIoAgAiBUUEQCAGKAIQIgVFDQQgBkEQaiECCwNAIAIhAyAFIgBBFGoiAigCACIFDQAgAEEQaiECIAAoAhAiBQ0ACyADQQA2AgAMBAtBeCAAa0EPcSIBIABqIgcgBkE4ayIDIAFrIgFBAXI2AgQgACADakE4NgIEIAIgBUE3IAVrQQ9xakE/ayIDIAMgAkEQakkbIgNBIzYCBEGo0ABB9NMAKAIANgIAQZjQACABNgIAQaTQACAHNgIAIANBEGpB1NMAKQIANwIAIANBzNMAKQIANwIIQdTTACADQQhqNgIAQdDTACAGNgIAQczTACAANgIAQdjTAEEANgIAIANBJGohAQNAIAFBBzYCACAFIAFBBGoiAUsNAAsgAiADRg0AIAMgAygCBEF+cTYCBCADIAMgAmsiBTYCACACIAVBAXI2AgQgBUH/AU0EQCAFQXhxQbTQAGohAAJ/QYzQACgCACIBQQEgBUEDdnQiA3FFBEBBjNAAIAEgA3I2AgAgAAwBCyAAKAIICyIBIAI2AgwgACACNgIIIAIgADYCDCACIAE2AggMAQtBHyEBIAVB////B00EQCAFQSYgBUEIdmciAGt2QQFxIABBAXRrQT5qIQELIAIgATYCHCACQgA3AhAgAUECdEG80gBqIQBBkNAAKAIAIgNBASABdCIGcUUEQCAAIAI2AgBBkNAAIAMgBnI2AgAgAiAANgIYIAIgAjYCCCACIAI2AgwMAQsgBUEZIAFBAXZrQQAgAUEfRxt0IQEgACgCACEDAkADQCADIgAoAgRBeHEgBUYNASABQR12IQMgAUEBdCEBIAAgA0EEcWpBEGoiBigCACIDDQALIAYgAjYCACACIAA2AhggAiACNgIMIAIgAjYCCAwBCyAAKAIIIgEgAjYCDCAAIAI2AgggAkEANgIYIAIgADYCDCACIAE2AggLQZjQACgCACIBIARNDQBBpNAAKAIAIgAgBGoiAiABIARrIgFBAXI2AgRBmNAAIAE2AgBBpNAAIAI2AgAgACAEQQNyNgIEIABBCGohAQwIC0EAIQFB/NMAQTA2AgAMBwtBACEACyAHRQ0AAkAgBigCHCICQQJ0QbzSAGoiAygCACAGRgRAIAMgADYCACAADQFBkNAAQZDQACgCAEF+IAJ3cTYCAAwCCyAHQRBBFCAHKAIQIAZGG2ogADYCACAARQ0BCyAAIAc2AhggBigCECICBEAgACACNgIQIAIgADYCGAsgBkEUaigCACICRQ0AIABBFGogAjYCACACIAA2AhgLIAEgCGohASAGIAhqIgYoAgQhBQsgBiAFQX5xNgIEIAEgBGogATYCACAEIAFBAXI2AgQgAUH/AU0EQCABQXhxQbTQAGohAAJ/QYzQACgCACICQQEgAUEDdnQiAXFFBEBBjNAAIAEgAnI2AgAgAAwBCyAAKAIICyIBIAQ2AgwgACAENgIIIAQgADYCDCAEIAE2AggMAQtBHyEFIAFB////B00EQCABQSYgAUEIdmciAGt2QQFxIABBAXRrQT5qIQULIAQgBTYCHCAEQgA3AhAgBUECdEG80gBqIQBBkNAAKAIAIgJBASAFdCIDcUUEQCAAIAQ2AgBBkNAAIAIgA3I2AgAgBCAANgIYIAQgBDYCCCAEIAQ2AgwMAQsgAUEZIAVBAXZrQQAgBUEfRxt0IQUgACgCACEAAkADQCAAIgIoAgRBeHEgAUYNASAFQR12IQAgBUEBdCEFIAIgAEEEcWpBEGoiAygCACIADQALIAMgBDYCACAEIAI2AhggBCAENgIMIAQgBDYCCAwBCyACKAIIIgAgBDYCDCACIAQ2AgggBEEANgIYIAQgAjYCDCAEIAA2AggLIAlBCGohAQwCCwJAIAdFDQACQCADKAIcIgFBAnRBvNIAaiICKAIAIANGBEAgAiAANgIAIAANAUGQ0AAgCEF+IAF3cSIINgIADAILIAdBEEEUIAcoAhAgA0YbaiAANgIAIABFDQELIAAgBzYCGCADKAIQIgEEQCAAIAE2AhAgASAANgIYCyADQRRqKAIAIgFFDQAgAEEUaiABNgIAIAEgADYCGAsCQCAFQQ9NBEAgAyAEIAVqIgBBA3I2AgQgACADaiIAIAAoAgRBAXI2AgQMAQsgAyAEaiICIAVBAXI2AgQgAyAEQQNyNgIEIAIgBWogBTYCACAFQf8BTQRAIAVBeHFBtNAAaiEAAn9BjNAAKAIAIgFBASAFQQN2dCIFcUUEQEGM0AAgASAFcjYCACAADAELIAAoAggLIgEgAjYCDCAAIAI2AgggAiAANgIMIAIgATYCCAwBC0EfIQEgBUH///8HTQRAIAVBJiAFQQh2ZyIAa3ZBAXEgAEEBdGtBPmohAQsgAiABNgIcIAJCADcCECABQQJ0QbzSAGohAEEBIAF0IgQgCHFFBEAgACACNgIAQZDQACAEIAhyNgIAIAIgADYCGCACIAI2AgggAiACNgIMDAELIAVBGSABQQF2a0EAIAFBH0cbdCEBIAAoAgAhBAJAA0AgBCIAKAIEQXhxIAVGDQEgAUEddiEEIAFBAXQhASAAIARBBHFqQRBqIgYoAgAiBA0ACyAGIAI2AgAgAiAANgIYIAIgAjYCDCACIAI2AggMAQsgACgCCCIBIAI2AgwgACACNgIIIAJBADYCGCACIAA2AgwgAiABNgIICyADQQhqIQEMAQsCQCAJRQ0AAkAgACgCHCIBQQJ0QbzSAGoiAigCACAARgRAIAIgAzYCACADDQFBkNAAIAtBfiABd3E2AgAMAgsgCUEQQRQgCSgCECAARhtqIAM2AgAgA0UNAQsgAyAJNgIYIAAoAhAiAQRAIAMgATYCECABIAM2AhgLIABBFGooAgAiAUUNACADQRRqIAE2AgAgASADNgIYCwJAIAVBD00EQCAAIAQgBWoiAUEDcjYCBCAAIAFqIgEgASgCBEEBcjYCBAwBCyAAIARqIgcgBUEBcjYCBCAAIARBA3I2AgQgBSAHaiAFNgIAIAgEQCAIQXhxQbTQAGohAUGg0AAoAgAhAwJ/QQEgCEEDdnQiAiAGcUUEQEGM0AAgAiAGcjYCACABDAELIAEoAggLIgIgAzYCDCABIAM2AgggAyABNgIMIAMgAjYCCAtBoNAAIAc2AgBBlNAAIAU2AgALIABBCGohAQsgCkEQaiQAIAELQwAgAEUEQD8AQRB0DwsCQCAAQf//A3ENACAAQQBIDQAgAEEQdkAAIgBBf0YEQEH80wBBMDYCAEF/DwsgAEEQdA8LAAsL3D8iAEGACAsJAQAAAAIAAAADAEGUCAsFBAAAAAUAQaQICwkGAAAABwAAAAgAQdwIC4otSW52YWxpZCBjaGFyIGluIHVybCBxdWVyeQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2JvZHkAQ29udGVudC1MZW5ndGggb3ZlcmZsb3cAQ2h1bmsgc2l6ZSBvdmVyZmxvdwBSZXNwb25zZSBvdmVyZmxvdwBJbnZhbGlkIG1ldGhvZCBmb3IgSFRUUC94LnggcmVxdWVzdABJbnZhbGlkIG1ldGhvZCBmb3IgUlRTUC94LnggcmVxdWVzdABFeHBlY3RlZCBTT1VSQ0UgbWV0aG9kIGZvciBJQ0UveC54IHJlcXVlc3QASW52YWxpZCBjaGFyIGluIHVybCBmcmFnbWVudCBzdGFydABFeHBlY3RlZCBkb3QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9zdGF0dXMASW52YWxpZCByZXNwb25zZSBzdGF0dXMASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucwBVc2VyIGNhbGxiYWNrIGVycm9yAGBvbl9yZXNldGAgY2FsbGJhY2sgZXJyb3IAYG9uX2NodW5rX2hlYWRlcmAgY2FsbGJhY2sgZXJyb3IAYG9uX21lc3NhZ2VfYmVnaW5gIGNhbGxiYWNrIGVycm9yAGBvbl9jaHVua19leHRlbnNpb25fdmFsdWVgIGNhbGxiYWNrIGVycm9yAGBvbl9zdGF0dXNfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl92ZXJzaW9uX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fdXJsX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGVgIGNhbGxiYWNrIGVycm9yAGBvbl9tZXNzYWdlX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fbWV0aG9kX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlYCBjYWxsYmFjayBlcnJvcgBgb25fY2h1bmtfZXh0ZW5zaW9uX25hbWVgIGNhbGxiYWNrIGVycm9yAFVuZXhwZWN0ZWQgY2hhciBpbiB1cmwgc2VydmVyAEludmFsaWQgaGVhZGVyIHZhbHVlIGNoYXIASW52YWxpZCBoZWFkZXIgZmllbGQgY2hhcgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3ZlcnNpb24ASW52YWxpZCBtaW5vciB2ZXJzaW9uAEludmFsaWQgbWFqb3IgdmVyc2lvbgBFeHBlY3RlZCBzcGFjZSBhZnRlciB2ZXJzaW9uAEV4cGVjdGVkIENSTEYgYWZ0ZXIgdmVyc2lvbgBJbnZhbGlkIEhUVFAgdmVyc2lvbgBJbnZhbGlkIGhlYWRlciB0b2tlbgBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX3VybABJbnZhbGlkIGNoYXJhY3RlcnMgaW4gdXJsAFVuZXhwZWN0ZWQgc3RhcnQgY2hhciBpbiB1cmwARG91YmxlIEAgaW4gdXJsAEVtcHR5IENvbnRlbnQtTGVuZ3RoAEludmFsaWQgY2hhcmFjdGVyIGluIENvbnRlbnQtTGVuZ3RoAER1cGxpY2F0ZSBDb250ZW50LUxlbmd0aABJbnZhbGlkIGNoYXIgaW4gdXJsIHBhdGgAQ29udGVudC1MZW5ndGggY2FuJ3QgYmUgcHJlc2VudCB3aXRoIFRyYW5zZmVyLUVuY29kaW5nAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIHNpemUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfdmFsdWUAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9jaHVua19leHRlbnNpb25fdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyB2YWx1ZQBNaXNzaW5nIGV4cGVjdGVkIExGIGFmdGVyIGhlYWRlciB2YWx1ZQBJbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AgaGVhZGVyIHZhbHVlAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgcXVvdGUgdmFsdWUASW52YWxpZCBjaGFyYWN0ZXIgaW4gY2h1bmsgZXh0ZW5zaW9ucyBxdW90ZWQgdmFsdWUAUGF1c2VkIGJ5IG9uX2hlYWRlcnNfY29tcGxldGUASW52YWxpZCBFT0Ygc3RhdGUAb25fcmVzZXQgcGF1c2UAb25fY2h1bmtfaGVhZGVyIHBhdXNlAG9uX21lc3NhZ2VfYmVnaW4gcGF1c2UAb25fY2h1bmtfZXh0ZW5zaW9uX3ZhbHVlIHBhdXNlAG9uX3N0YXR1c19jb21wbGV0ZSBwYXVzZQBvbl92ZXJzaW9uX2NvbXBsZXRlIHBhdXNlAG9uX3VybF9jb21wbGV0ZSBwYXVzZQBvbl9jaHVua19jb21wbGV0ZSBwYXVzZQBvbl9oZWFkZXJfdmFsdWVfY29tcGxldGUgcGF1c2UAb25fbWVzc2FnZV9jb21wbGV0ZSBwYXVzZQBvbl9tZXRob2RfY29tcGxldGUgcGF1c2UAb25faGVhZGVyX2ZpZWxkX2NvbXBsZXRlIHBhdXNlAG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lIHBhdXNlAFVuZXhwZWN0ZWQgc3BhY2UgYWZ0ZXIgc3RhcnQgbGluZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX2NodW5rX2V4dGVuc2lvbl9uYW1lAEludmFsaWQgY2hhcmFjdGVyIGluIGNodW5rIGV4dGVuc2lvbnMgbmFtZQBQYXVzZSBvbiBDT05ORUNUL1VwZ3JhZGUAUGF1c2Ugb24gUFJJL1VwZ3JhZGUARXhwZWN0ZWQgSFRUUC8yIENvbm5lY3Rpb24gUHJlZmFjZQBTcGFuIGNhbGxiYWNrIGVycm9yIGluIG9uX21ldGhvZABFeHBlY3RlZCBzcGFjZSBhZnRlciBtZXRob2QAU3BhbiBjYWxsYmFjayBlcnJvciBpbiBvbl9oZWFkZXJfZmllbGQAUGF1c2VkAEludmFsaWQgd29yZCBlbmNvdW50ZXJlZABJbnZhbGlkIG1ldGhvZCBlbmNvdW50ZXJlZABVbmV4cGVjdGVkIGNoYXIgaW4gdXJsIHNjaGVtYQBSZXF1ZXN0IGhhcyBpbnZhbGlkIGBUcmFuc2Zlci1FbmNvZGluZ2AAU1dJVENIX1BST1hZAFVTRV9QUk9YWQBNS0FDVElWSVRZAFVOUFJPQ0VTU0FCTEVfRU5USVRZAENPUFkATU9WRURfUEVSTUFORU5UTFkAVE9PX0VBUkxZAE5PVElGWQBGQUlMRURfREVQRU5ERU5DWQBCQURfR0FURVdBWQBQTEFZAFBVVABDSEVDS09VVABHQVRFV0FZX1RJTUVPVVQAUkVRVUVTVF9USU1FT1VUAE5FVFdPUktfQ09OTkVDVF9USU1FT1VUAENPTk5FQ1RJT05fVElNRU9VVABMT0dJTl9USU1FT1VUAE5FVFdPUktfUkVBRF9USU1FT1VUAFBPU1QATUlTRElSRUNURURfUkVRVUVTVABDTElFTlRfQ0xPU0VEX1JFUVVFU1QAQ0xJRU5UX0NMT1NFRF9MT0FEX0JBTEFOQ0VEX1JFUVVFU1QAQkFEX1JFUVVFU1QASFRUUF9SRVFVRVNUX1NFTlRfVE9fSFRUUFNfUE9SVABSRVBPUlQASU1fQV9URUFQT1QAUkVTRVRfQ09OVEVOVABOT19DT05URU5UAFBBUlRJQUxfQ09OVEVOVABIUEVfSU5WQUxJRF9DT05TVEFOVABIUEVfQ0JfUkVTRVQAR0VUAEhQRV9TVFJJQ1QAQ09ORkxJQ1QAVEVNUE9SQVJZX1JFRElSRUNUAFBFUk1BTkVOVF9SRURJUkVDVABDT05ORUNUAE1VTFRJX1NUQVRVUwBIUEVfSU5WQUxJRF9TVEFUVVMAVE9PX01BTllfUkVRVUVTVFMARUFSTFlfSElOVFMAVU5BVkFJTEFCTEVfRk9SX0xFR0FMX1JFQVNPTlMAT1BUSU9OUwBTV0lUQ0hJTkdfUFJPVE9DT0xTAFZBUklBTlRfQUxTT19ORUdPVElBVEVTAE1VTFRJUExFX0NIT0lDRVMASU5URVJOQUxfU0VSVkVSX0VSUk9SAFdFQl9TRVJWRVJfVU5LTk9XTl9FUlJPUgBSQUlMR1VOX0VSUk9SAElERU5USVRZX1BST1ZJREVSX0FVVEhFTlRJQ0FUSU9OX0VSUk9SAFNTTF9DRVJUSUZJQ0FURV9FUlJPUgBJTlZBTElEX1hfRk9SV0FSREVEX0ZPUgBTRVRfUEFSQU1FVEVSAEdFVF9QQVJBTUVURVIASFBFX1VTRVIAU0VFX09USEVSAEhQRV9DQl9DSFVOS19IRUFERVIATUtDQUxFTkRBUgBTRVRVUABXRUJfU0VSVkVSX0lTX0RPV04AVEVBUkRPV04ASFBFX0NMT1NFRF9DT05ORUNUSU9OAEhFVVJJU1RJQ19FWFBJUkFUSU9OAERJU0NPTk5FQ1RFRF9PUEVSQVRJT04ATk9OX0FVVEhPUklUQVRJVkVfSU5GT1JNQVRJT04ASFBFX0lOVkFMSURfVkVSU0lPTgBIUEVfQ0JfTUVTU0FHRV9CRUdJTgBTSVRFX0lTX0ZST1pFTgBIUEVfSU5WQUxJRF9IRUFERVJfVE9LRU4ASU5WQUxJRF9UT0tFTgBGT1JCSURERU4ARU5IQU5DRV9ZT1VSX0NBTE0ASFBFX0lOVkFMSURfVVJMAEJMT0NLRURfQllfUEFSRU5UQUxfQ09OVFJPTABNS0NPTABBQ0wASFBFX0lOVEVSTkFMAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0VfVU5PRkZJQ0lBTABIUEVfT0sAVU5MSU5LAFVOTE9DSwBQUkkAUkVUUllfV0lUSABIUEVfSU5WQUxJRF9DT05URU5UX0xFTkdUSABIUEVfVU5FWFBFQ1RFRF9DT05URU5UX0xFTkdUSABGTFVTSABQUk9QUEFUQ0gATS1TRUFSQ0gAVVJJX1RPT19MT05HAFBST0NFU1NJTkcATUlTQ0VMTEFORU9VU19QRVJTSVNURU5UX1dBUk5JTkcATUlTQ0VMTEFORU9VU19XQVJOSU5HAEhQRV9JTlZBTElEX1RSQU5TRkVSX0VOQ09ESU5HAEV4cGVjdGVkIENSTEYASFBFX0lOVkFMSURfQ0hVTktfU0laRQBNT1ZFAENPTlRJTlVFAEhQRV9DQl9TVEFUVVNfQ09NUExFVEUASFBFX0NCX0hFQURFUlNfQ09NUExFVEUASFBFX0NCX1ZFUlNJT05fQ09NUExFVEUASFBFX0NCX1VSTF9DT01QTEVURQBIUEVfQ0JfQ0hVTktfQ09NUExFVEUASFBFX0NCX0hFQURFUl9WQUxVRV9DT01QTEVURQBIUEVfQ0JfQ0hVTktfRVhURU5TSU9OX1ZBTFVFX0NPTVBMRVRFAEhQRV9DQl9DSFVOS19FWFRFTlNJT05fTkFNRV9DT01QTEVURQBIUEVfQ0JfTUVTU0FHRV9DT01QTEVURQBIUEVfQ0JfTUVUSE9EX0NPTVBMRVRFAEhQRV9DQl9IRUFERVJfRklFTERfQ09NUExFVEUAREVMRVRFAEhQRV9JTlZBTElEX0VPRl9TVEFURQBJTlZBTElEX1NTTF9DRVJUSUZJQ0FURQBQQVVTRQBOT19SRVNQT05TRQBVTlNVUFBPUlRFRF9NRURJQV9UWVBFAEdPTkUATk9UX0FDQ0VQVEFCTEUAU0VSVklDRV9VTkFWQUlMQUJMRQBSQU5HRV9OT1RfU0FUSVNGSUFCTEUAT1JJR0lOX0lTX1VOUkVBQ0hBQkxFAFJFU1BPTlNFX0lTX1NUQUxFAFBVUkdFAE1FUkdFAFJFUVVFU1RfSEVBREVSX0ZJRUxEU19UT09fTEFSR0UAUkVRVUVTVF9IRUFERVJfVE9PX0xBUkdFAFBBWUxPQURfVE9PX0xBUkdFAElOU1VGRklDSUVOVF9TVE9SQUdFAEhQRV9QQVVTRURfVVBHUkFERQBIUEVfUEFVU0VEX0gyX1VQR1JBREUAU09VUkNFAEFOTk9VTkNFAFRSQUNFAEhQRV9VTkVYUEVDVEVEX1NQQUNFAERFU0NSSUJFAFVOU1VCU0NSSUJFAFJFQ09SRABIUEVfSU5WQUxJRF9NRVRIT0QATk9UX0ZPVU5EAFBST1BGSU5EAFVOQklORABSRUJJTkQAVU5BVVRIT1JJWkVEAE1FVEhPRF9OT1RfQUxMT1dFRABIVFRQX1ZFUlNJT05fTk9UX1NVUFBPUlRFRABBTFJFQURZX1JFUE9SVEVEAEFDQ0VQVEVEAE5PVF9JTVBMRU1FTlRFRABMT09QX0RFVEVDVEVEAEhQRV9DUl9FWFBFQ1RFRABIUEVfTEZfRVhQRUNURUQAQ1JFQVRFRABJTV9VU0VEAEhQRV9QQVVTRUQAVElNRU9VVF9PQ0NVUkVEAFBBWU1FTlRfUkVRVUlSRUQAUFJFQ09ORElUSU9OX1JFUVVJUkVEAFBST1hZX0FVVEhFTlRJQ0FUSU9OX1JFUVVJUkVEAE5FVFdPUktfQVVUSEVOVElDQVRJT05fUkVRVUlSRUQATEVOR1RIX1JFUVVJUkVEAFNTTF9DRVJUSUZJQ0FURV9SRVFVSVJFRABVUEdSQURFX1JFUVVJUkVEAFBBR0VfRVhQSVJFRABQUkVDT05ESVRJT05fRkFJTEVEAEVYUEVDVEFUSU9OX0ZBSUxFRABSRVZBTElEQVRJT05fRkFJTEVEAFNTTF9IQU5EU0hBS0VfRkFJTEVEAExPQ0tFRABUUkFOU0ZPUk1BVElPTl9BUFBMSUVEAE5PVF9NT0RJRklFRABOT1RfRVhURU5ERUQAQkFORFdJRFRIX0xJTUlUX0VYQ0VFREVEAFNJVEVfSVNfT1ZFUkxPQURFRABIRUFEAEV4cGVjdGVkIEhUVFAvAABeEwAAJhMAADAQAADwFwAAnRMAABUSAAA5FwAA8BIAAAoQAAB1EgAArRIAAIITAABPFAAAfxAAAKAVAAAjFAAAiRIAAIsUAABNFQAA1BEAAM8UAAAQGAAAyRYAANwWAADBEQAA4BcAALsUAAB0FAAAfBUAAOUUAAAIFwAAHxAAAGUVAACjFAAAKBUAAAIVAACZFQAALBAAAIsZAABPDwAA1A4AAGoQAADOEAAAAhcAAIkOAABuEwAAHBMAAGYUAABWFwAAwRMAAM0TAABsEwAAaBcAAGYXAABfFwAAIhMAAM4PAABpDgAA2A4AAGMWAADLEwAAqg4AACgXAAAmFwAAxRMAAF0WAADoEQAAZxMAAGUTAADyFgAAcxMAAB0XAAD5FgAA8xEAAM8OAADOFQAADBIAALMRAAClEQAAYRAAADIXAAC7EwBB+TULAQEAQZA2C+ABAQECAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQf03CwEBAEGROAteAgMCAgICAgAAAgIAAgIAAgICAgICAgICAgAEAAAAAAACAgICAgICAgICAgICAgICAgICAgICAgICAgAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAgICAAIAAgBB/TkLAQEAQZE6C14CAAICAgICAAACAgACAgACAgICAgICAgICAAMABAAAAAICAgICAgICAgICAgICAgICAgICAgICAgICAAAAAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAAgACAEHwOwsNbG9zZWVlcC1hbGl2ZQBBiTwLAQEAQaA8C+ABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQYk+CwEBAEGgPgvnAQEBAQEBAQEBAQEBAQIBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBY2h1bmtlZABBsMAAC18BAQABAQEBAQAAAQEAAQEAAQEBAQEBAQEBAQAAAAAAAAABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQBBkMIACyFlY3Rpb25lbnQtbGVuZ3Rob25yb3h5LWNvbm5lY3Rpb24AQcDCAAstcmFuc2Zlci1lbmNvZGluZ3BncmFkZQ0KDQoNClNNDQoNClRUUC9DRS9UU1AvAEH5wgALBQECAAEDAEGQwwAL4AEEAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+cQACwUBAgABAwBBkMUAC+ABBAEBBQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEAQfnGAAsEAQAAAQBBkccAC98BAQEAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQBB+sgACwQBAAACAEGQyQALXwMEAAAEBAQEBAQEBAQEBAUEBAQEBAQEBAQEBAQABAAGBwQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAAEAAQABAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQAAAAEAEH6ygALBAEAAAEAQZDLAAsBAQBBqssAC0ECAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAAAAAAAADAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBB+swACwQBAAABAEGQzQALAQEAQZrNAAsGAgAAAAACAEGxzQALOgMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAAAAAAAAAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMAQfDOAAuWAU5PVU5DRUVDS09VVE5FQ1RFVEVDUklCRUxVU0hFVEVBRFNFQVJDSFJHRUNUSVZJVFlMRU5EQVJWRU9USUZZUFRJT05TQ0hTRUFZU1RBVENIR0VPUkRJUkVDVE9SVFJDSFBBUkFNRVRFUlVSQ0VCU0NSSUJFQVJET1dOQUNFSU5ETktDS1VCU0NSSUJFSFRUUC9BRFRQLw==', 'base64')\n", "'use strict'\n\nconst corsSafeListedMethods = /** @type {const} */ (['GET', 'HEAD', 'POST'])\nconst corsSafeListedMethodsSet = new Set(corsSafeListedMethods)\n\nconst nullBodyStatus = /** @type {const} */ ([101, 204, 205, 304])\n\nconst redirectStatus = /** @type {const} */ ([301, 302, 303, 307, 308])\nconst redirectStatusSet = new Set(redirectStatus)\n\n/**\n * @see https://fetch.spec.whatwg.org/#block-bad-port\n */\nconst badPorts = /** @type {const} */ ([\n '1', '7', '9', '11', '13', '15', '17', '19', '20', '21', '22', '23', '25', '37', '42', '43', '53', '69', '77', '79',\n '87', '95', '101', '102', '103', '104', '109', '110', '111', '113', '115', '117', '119', '123', '135', '137',\n '139', '143', '161', '179', '389', '427', '465', '512', '513', '514', '515', '526', '530', '531', '532',\n '540', '548', '554', '556', '563', '587', '601', '636', '989', '990', '993', '995', '1719', '1720', '1723',\n '2049', '3659', '4045', '4190', '5060', '5061', '6000', '6566', '6665', '6666', '6667', '6668', '6669', '6679',\n '6697', '10080'\n])\nconst badPortsSet = new Set(badPorts)\n\n/**\n * @see https://w3c.github.io/webappsec-referrer-policy/#referrer-policies\n */\nconst referrerPolicy = /** @type {const} */ ([\n '',\n 'no-referrer',\n 'no-referrer-when-downgrade',\n 'same-origin',\n 'origin',\n 'strict-origin',\n 'origin-when-cross-origin',\n 'strict-origin-when-cross-origin',\n 'unsafe-url'\n])\nconst referrerPolicySet = new Set(referrerPolicy)\n\nconst requestRedirect = /** @type {const} */ (['follow', 'manual', 'error'])\n\nconst safeMethods = /** @type {const} */ (['GET', 'HEAD', 'OPTIONS', 'TRACE'])\nconst safeMethodsSet = new Set(safeMethods)\n\nconst requestMode = /** @type {const} */ (['navigate', 'same-origin', 'no-cors', 'cors'])\n\nconst requestCredentials = /** @type {const} */ (['omit', 'same-origin', 'include'])\n\nconst requestCache = /** @type {const} */ ([\n 'default',\n 'no-store',\n 'reload',\n 'no-cache',\n 'force-cache',\n 'only-if-cached'\n])\n\n/**\n * @see https://fetch.spec.whatwg.org/#request-body-header-name\n */\nconst requestBodyHeader = /** @type {const} */ ([\n 'content-encoding',\n 'content-language',\n 'content-location',\n 'content-type',\n // See https://github.com/nodejs/undici/issues/2021\n // 'Content-Length' is a forbidden header name, which is typically\n // removed in the Headers implementation. However, undici doesn't\n // filter out headers, so we add it here.\n 'content-length'\n])\n\n/**\n * @see https://fetch.spec.whatwg.org/#enumdef-requestduplex\n */\nconst requestDuplex = /** @type {const} */ ([\n 'half'\n])\n\n/**\n * @see http://fetch.spec.whatwg.org/#forbidden-method\n */\nconst forbiddenMethods = /** @type {const} */ (['CONNECT', 'TRACE', 'TRACK'])\nconst forbiddenMethodsSet = new Set(forbiddenMethods)\n\nconst subresource = /** @type {const} */ ([\n 'audio',\n 'audioworklet',\n 'font',\n 'image',\n 'manifest',\n 'paintworklet',\n 'script',\n 'style',\n 'track',\n 'video',\n 'xslt',\n ''\n])\nconst subresourceSet = new Set(subresource)\n\nmodule.exports = {\n subresource,\n forbiddenMethods,\n requestBodyHeader,\n referrerPolicy,\n requestRedirect,\n requestMode,\n requestCredentials,\n requestCache,\n redirectStatus,\n corsSafeListedMethods,\n nullBodyStatus,\n safeMethods,\n badPorts,\n requestDuplex,\n subresourceSet,\n badPortsSet,\n redirectStatusSet,\n corsSafeListedMethodsSet,\n safeMethodsSet,\n forbiddenMethodsSet,\n referrerPolicySet\n}\n", "'use strict'\n\n// In case of breaking changes, increase the version\n// number to avoid conflicts.\nconst globalOrigin = Symbol.for('undici.globalOrigin.1')\n\nfunction getGlobalOrigin () {\n return globalThis[globalOrigin]\n}\n\nfunction setGlobalOrigin (newOrigin) {\n if (newOrigin === undefined) {\n Object.defineProperty(globalThis, globalOrigin, {\n value: undefined,\n writable: true,\n enumerable: false,\n configurable: false\n })\n\n return\n }\n\n const parsedURL = new URL(newOrigin)\n\n if (parsedURL.protocol !== 'http:' && parsedURL.protocol !== 'https:') {\n throw new TypeError(`Only http & https urls are allowed, received ${parsedURL.protocol}`)\n }\n\n Object.defineProperty(globalThis, globalOrigin, {\n value: parsedURL,\n writable: true,\n enumerable: false,\n configurable: false\n })\n}\n\nmodule.exports = {\n getGlobalOrigin,\n setGlobalOrigin\n}\n", "'use strict'\n\nconst assert = require('node:assert')\n\nconst encoder = new TextEncoder()\n\n/**\n * @see https://mimesniff.spec.whatwg.org/#http-token-code-point\n */\nconst HTTP_TOKEN_CODEPOINTS = /^[!#$%&'*+\\-.^_|~A-Za-z0-9]+$/\nconst HTTP_WHITESPACE_REGEX = /[\\u000A\\u000D\\u0009\\u0020]/ // eslint-disable-line\nconst ASCII_WHITESPACE_REPLACE_REGEX = /[\\u0009\\u000A\\u000C\\u000D\\u0020]/g // eslint-disable-line\n/**\n * @see https://mimesniff.spec.whatwg.org/#http-quoted-string-token-code-point\n */\nconst HTTP_QUOTED_STRING_TOKENS = /^[\\u0009\\u0020-\\u007E\\u0080-\\u00FF]+$/ // eslint-disable-line\n\n// https://fetch.spec.whatwg.org/#data-url-processor\n/** @param {URL} dataURL */\nfunction dataURLProcessor (dataURL) {\n // 1. Assert: dataURL\u2019s scheme is \"data\".\n assert(dataURL.protocol === 'data:')\n\n // 2. Let input be the result of running the URL\n // serializer on dataURL with exclude fragment\n // set to true.\n let input = URLSerializer(dataURL, true)\n\n // 3. Remove the leading \"data:\" string from input.\n input = input.slice(5)\n\n // 4. Let position point at the start of input.\n const position = { position: 0 }\n\n // 5. Let mimeType be the result of collecting a\n // sequence of code points that are not equal\n // to U+002C (,), given position.\n let mimeType = collectASequenceOfCodePointsFast(\n ',',\n input,\n position\n )\n\n // 6. Strip leading and trailing ASCII whitespace\n // from mimeType.\n // Undici implementation note: we need to store the\n // length because if the mimetype has spaces removed,\n // the wrong amount will be sliced from the input in\n // step #9\n const mimeTypeLength = mimeType.length\n mimeType = removeASCIIWhitespace(mimeType, true, true)\n\n // 7. If position is past the end of input, then\n // return failure\n if (position.position >= input.length) {\n return 'failure'\n }\n\n // 8. Advance position by 1.\n position.position++\n\n // 9. Let encodedBody be the remainder of input.\n const encodedBody = input.slice(mimeTypeLength + 1)\n\n // 10. Let body be the percent-decoding of encodedBody.\n let body = stringPercentDecode(encodedBody)\n\n // 11. If mimeType ends with U+003B (;), followed by\n // zero or more U+0020 SPACE, followed by an ASCII\n // case-insensitive match for \"base64\", then:\n if (/;(\\u0020){0,}base64$/i.test(mimeType)) {\n // 1. Let stringBody be the isomorphic decode of body.\n const stringBody = isomorphicDecode(body)\n\n // 2. Set body to the forgiving-base64 decode of\n // stringBody.\n body = forgivingBase64(stringBody)\n\n // 3. If body is failure, then return failure.\n if (body === 'failure') {\n return 'failure'\n }\n\n // 4. Remove the last 6 code points from mimeType.\n mimeType = mimeType.slice(0, -6)\n\n // 5. Remove trailing U+0020 SPACE code points from mimeType,\n // if any.\n mimeType = mimeType.replace(/(\\u0020)+$/, '')\n\n // 6. Remove the last U+003B (;) code point from mimeType.\n mimeType = mimeType.slice(0, -1)\n }\n\n // 12. If mimeType starts with U+003B (;), then prepend\n // \"text/plain\" to mimeType.\n if (mimeType.startsWith(';')) {\n mimeType = 'text/plain' + mimeType\n }\n\n // 13. Let mimeTypeRecord be the result of parsing\n // mimeType.\n let mimeTypeRecord = parseMIMEType(mimeType)\n\n // 14. If mimeTypeRecord is failure, then set\n // mimeTypeRecord to text/plain;charset=US-ASCII.\n if (mimeTypeRecord === 'failure') {\n mimeTypeRecord = parseMIMEType('text/plain;charset=US-ASCII')\n }\n\n // 15. Return a new data: URL struct whose MIME\n // type is mimeTypeRecord and body is body.\n // https://fetch.spec.whatwg.org/#data-url-struct\n return { mimeType: mimeTypeRecord, body }\n}\n\n// https://url.spec.whatwg.org/#concept-url-serializer\n/**\n * @param {URL} url\n * @param {boolean} excludeFragment\n */\nfunction URLSerializer (url, excludeFragment = false) {\n if (!excludeFragment) {\n return url.href\n }\n\n const href = url.href\n const hashLength = url.hash.length\n\n const serialized = hashLength === 0 ? href : href.substring(0, href.length - hashLength)\n\n if (!hashLength && href.endsWith('#')) {\n return serialized.slice(0, -1)\n }\n\n return serialized\n}\n\n// https://infra.spec.whatwg.org/#collect-a-sequence-of-code-points\n/**\n * @param {(char: string) => boolean} condition\n * @param {string} input\n * @param {{ position: number }} position\n */\nfunction collectASequenceOfCodePoints (condition, input, position) {\n // 1. Let result be the empty string.\n let result = ''\n\n // 2. While position doesn\u2019t point past the end of input and the\n // code point at position within input meets the condition condition:\n while (position.position < input.length && condition(input[position.position])) {\n // 1. Append that code point to the end of result.\n result += input[position.position]\n\n // 2. Advance position by 1.\n position.position++\n }\n\n // 3. Return result.\n return result\n}\n\n/**\n * A faster collectASequenceOfCodePoints that only works when comparing a single character.\n * @param {string} char\n * @param {string} input\n * @param {{ position: number }} position\n */\nfunction collectASequenceOfCodePointsFast (char, input, position) {\n const idx = input.indexOf(char, position.position)\n const start = position.position\n\n if (idx === -1) {\n position.position = input.length\n return input.slice(start)\n }\n\n position.position = idx\n return input.slice(start, position.position)\n}\n\n// https://url.spec.whatwg.org/#string-percent-decode\n/** @param {string} input */\nfunction stringPercentDecode (input) {\n // 1. Let bytes be the UTF-8 encoding of input.\n const bytes = encoder.encode(input)\n\n // 2. Return the percent-decoding of bytes.\n return percentDecode(bytes)\n}\n\n/**\n * @param {number} byte\n */\nfunction isHexCharByte (byte) {\n // 0-9 A-F a-f\n return (byte >= 0x30 && byte <= 0x39) || (byte >= 0x41 && byte <= 0x46) || (byte >= 0x61 && byte <= 0x66)\n}\n\n/**\n * @param {number} byte\n */\nfunction hexByteToNumber (byte) {\n return (\n // 0-9\n byte >= 0x30 && byte <= 0x39\n ? (byte - 48)\n // Convert to uppercase\n // ((byte & 0xDF) - 65) + 10\n : ((byte & 0xDF) - 55)\n )\n}\n\n// https://url.spec.whatwg.org/#percent-decode\n/** @param {Uint8Array} input */\nfunction percentDecode (input) {\n const length = input.length\n // 1. Let output be an empty byte sequence.\n /** @type {Uint8Array} */\n const output = new Uint8Array(length)\n let j = 0\n // 2. For each byte byte in input:\n for (let i = 0; i < length; ++i) {\n const byte = input[i]\n\n // 1. If byte is not 0x25 (%), then append byte to output.\n if (byte !== 0x25) {\n output[j++] = byte\n\n // 2. Otherwise, if byte is 0x25 (%) and the next two bytes\n // after byte in input are not in the ranges\n // 0x30 (0) to 0x39 (9), 0x41 (A) to 0x46 (F),\n // and 0x61 (a) to 0x66 (f), all inclusive, append byte\n // to output.\n } else if (\n byte === 0x25 &&\n !(isHexCharByte(input[i + 1]) && isHexCharByte(input[i + 2]))\n ) {\n output[j++] = 0x25\n\n // 3. Otherwise:\n } else {\n // 1. Let bytePoint be the two bytes after byte in input,\n // decoded, and then interpreted as hexadecimal number.\n // 2. Append a byte whose value is bytePoint to output.\n output[j++] = (hexByteToNumber(input[i + 1]) << 4) | hexByteToNumber(input[i + 2])\n\n // 3. Skip the next two bytes in input.\n i += 2\n }\n }\n\n // 3. Return output.\n return length === j ? output : output.subarray(0, j)\n}\n\n// https://mimesniff.spec.whatwg.org/#parse-a-mime-type\n/** @param {string} input */\nfunction parseMIMEType (input) {\n // 1. Remove any leading and trailing HTTP whitespace\n // from input.\n input = removeHTTPWhitespace(input, true, true)\n\n // 2. Let position be a position variable for input,\n // initially pointing at the start of input.\n const position = { position: 0 }\n\n // 3. Let type be the result of collecting a sequence\n // of code points that are not U+002F (/) from\n // input, given position.\n const type = collectASequenceOfCodePointsFast(\n '/',\n input,\n position\n )\n\n // 4. If type is the empty string or does not solely\n // contain HTTP token code points, then return failure.\n // https://mimesniff.spec.whatwg.org/#http-token-code-point\n if (type.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(type)) {\n return 'failure'\n }\n\n // 5. If position is past the end of input, then return\n // failure\n if (position.position > input.length) {\n return 'failure'\n }\n\n // 6. Advance position by 1. (This skips past U+002F (/).)\n position.position++\n\n // 7. Let subtype be the result of collecting a sequence of\n // code points that are not U+003B (;) from input, given\n // position.\n let subtype = collectASequenceOfCodePointsFast(\n ';',\n input,\n position\n )\n\n // 8. Remove any trailing HTTP whitespace from subtype.\n subtype = removeHTTPWhitespace(subtype, false, true)\n\n // 9. If subtype is the empty string or does not solely\n // contain HTTP token code points, then return failure.\n if (subtype.length === 0 || !HTTP_TOKEN_CODEPOINTS.test(subtype)) {\n return 'failure'\n }\n\n const typeLowercase = type.toLowerCase()\n const subtypeLowercase = subtype.toLowerCase()\n\n // 10. Let mimeType be a new MIME type record whose type\n // is type, in ASCII lowercase, and subtype is subtype,\n // in ASCII lowercase.\n // https://mimesniff.spec.whatwg.org/#mime-type\n const mimeType = {\n type: typeLowercase,\n subtype: subtypeLowercase,\n /** @type {Map} */\n parameters: new Map(),\n // https://mimesniff.spec.whatwg.org/#mime-type-essence\n essence: `${typeLowercase}/${subtypeLowercase}`\n }\n\n // 11. While position is not past the end of input:\n while (position.position < input.length) {\n // 1. Advance position by 1. (This skips past U+003B (;).)\n position.position++\n\n // 2. Collect a sequence of code points that are HTTP\n // whitespace from input given position.\n collectASequenceOfCodePoints(\n // https://fetch.spec.whatwg.org/#http-whitespace\n char => HTTP_WHITESPACE_REGEX.test(char),\n input,\n position\n )\n\n // 3. Let parameterName be the result of collecting a\n // sequence of code points that are not U+003B (;)\n // or U+003D (=) from input, given position.\n let parameterName = collectASequenceOfCodePoints(\n (char) => char !== ';' && char !== '=',\n input,\n position\n )\n\n // 4. Set parameterName to parameterName, in ASCII\n // lowercase.\n parameterName = parameterName.toLowerCase()\n\n // 5. If position is not past the end of input, then:\n if (position.position < input.length) {\n // 1. If the code point at position within input is\n // U+003B (;), then continue.\n if (input[position.position] === ';') {\n continue\n }\n\n // 2. Advance position by 1. (This skips past U+003D (=).)\n position.position++\n }\n\n // 6. If position is past the end of input, then break.\n if (position.position > input.length) {\n break\n }\n\n // 7. Let parameterValue be null.\n let parameterValue = null\n\n // 8. If the code point at position within input is\n // U+0022 (\"), then:\n if (input[position.position] === '\"') {\n // 1. Set parameterValue to the result of collecting\n // an HTTP quoted string from input, given position\n // and the extract-value flag.\n parameterValue = collectAnHTTPQuotedString(input, position, true)\n\n // 2. Collect a sequence of code points that are not\n // U+003B (;) from input, given position.\n collectASequenceOfCodePointsFast(\n ';',\n input,\n position\n )\n\n // 9. Otherwise:\n } else {\n // 1. Set parameterValue to the result of collecting\n // a sequence of code points that are not U+003B (;)\n // from input, given position.\n parameterValue = collectASequenceOfCodePointsFast(\n ';',\n input,\n position\n )\n\n // 2. Remove any trailing HTTP whitespace from parameterValue.\n parameterValue = removeHTTPWhitespace(parameterValue, false, true)\n\n // 3. If parameterValue is the empty string, then continue.\n if (parameterValue.length === 0) {\n continue\n }\n }\n\n // 10. If all of the following are true\n // - parameterName is not the empty string\n // - parameterName solely contains HTTP token code points\n // - parameterValue solely contains HTTP quoted-string token code points\n // - mimeType\u2019s parameters[parameterName] does not exist\n // then set mimeType\u2019s parameters[parameterName] to parameterValue.\n if (\n parameterName.length !== 0 &&\n HTTP_TOKEN_CODEPOINTS.test(parameterName) &&\n (parameterValue.length === 0 || HTTP_QUOTED_STRING_TOKENS.test(parameterValue)) &&\n !mimeType.parameters.has(parameterName)\n ) {\n mimeType.parameters.set(parameterName, parameterValue)\n }\n }\n\n // 12. Return mimeType.\n return mimeType\n}\n\n// https://infra.spec.whatwg.org/#forgiving-base64-decode\n/** @param {string} data */\nfunction forgivingBase64 (data) {\n // 1. Remove all ASCII whitespace from data.\n data = data.replace(ASCII_WHITESPACE_REPLACE_REGEX, '') // eslint-disable-line\n\n let dataLength = data.length\n // 2. If data\u2019s code point length divides by 4 leaving\n // no remainder, then:\n if (dataLength % 4 === 0) {\n // 1. If data ends with one or two U+003D (=) code points,\n // then remove them from data.\n if (data.charCodeAt(dataLength - 1) === 0x003D) {\n --dataLength\n if (data.charCodeAt(dataLength - 1) === 0x003D) {\n --dataLength\n }\n }\n }\n\n // 3. If data\u2019s code point length divides by 4 leaving\n // a remainder of 1, then return failure.\n if (dataLength % 4 === 1) {\n return 'failure'\n }\n\n // 4. If data contains a code point that is not one of\n // U+002B (+)\n // U+002F (/)\n // ASCII alphanumeric\n // then return failure.\n if (/[^+/0-9A-Za-z]/.test(data.length === dataLength ? data : data.substring(0, dataLength))) {\n return 'failure'\n }\n\n const buffer = Buffer.from(data, 'base64')\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength)\n}\n\n// https://fetch.spec.whatwg.org/#collect-an-http-quoted-string\n// tests: https://fetch.spec.whatwg.org/#example-http-quoted-string\n/**\n * @param {string} input\n * @param {{ position: number }} position\n * @param {boolean?} extractValue\n */\nfunction collectAnHTTPQuotedString (input, position, extractValue) {\n // 1. Let positionStart be position.\n const positionStart = position.position\n\n // 2. Let value be the empty string.\n let value = ''\n\n // 3. Assert: the code point at position within input\n // is U+0022 (\").\n assert(input[position.position] === '\"')\n\n // 4. Advance position by 1.\n position.position++\n\n // 5. While true:\n while (true) {\n // 1. Append the result of collecting a sequence of code points\n // that are not U+0022 (\") or U+005C (\\) from input, given\n // position, to value.\n value += collectASequenceOfCodePoints(\n (char) => char !== '\"' && char !== '\\\\',\n input,\n position\n )\n\n // 2. If position is past the end of input, then break.\n if (position.position >= input.length) {\n break\n }\n\n // 3. Let quoteOrBackslash be the code point at position within\n // input.\n const quoteOrBackslash = input[position.position]\n\n // 4. Advance position by 1.\n position.position++\n\n // 5. If quoteOrBackslash is U+005C (\\), then:\n if (quoteOrBackslash === '\\\\') {\n // 1. If position is past the end of input, then append\n // U+005C (\\) to value and break.\n if (position.position >= input.length) {\n value += '\\\\'\n break\n }\n\n // 2. Append the code point at position within input to value.\n value += input[position.position]\n\n // 3. Advance position by 1.\n position.position++\n\n // 6. Otherwise:\n } else {\n // 1. Assert: quoteOrBackslash is U+0022 (\").\n assert(quoteOrBackslash === '\"')\n\n // 2. Break.\n break\n }\n }\n\n // 6. If the extract-value flag is set, then return value.\n if (extractValue) {\n return value\n }\n\n // 7. Return the code points from positionStart to position,\n // inclusive, within input.\n return input.slice(positionStart, position.position)\n}\n\n/**\n * @see https://mimesniff.spec.whatwg.org/#serialize-a-mime-type\n */\nfunction serializeAMimeType (mimeType) {\n assert(mimeType !== 'failure')\n const { parameters, essence } = mimeType\n\n // 1. Let serialization be the concatenation of mimeType\u2019s\n // type, U+002F (/), and mimeType\u2019s subtype.\n let serialization = essence\n\n // 2. For each name \u2192 value of mimeType\u2019s parameters:\n for (let [name, value] of parameters.entries()) {\n // 1. Append U+003B (;) to serialization.\n serialization += ';'\n\n // 2. Append name to serialization.\n serialization += name\n\n // 3. Append U+003D (=) to serialization.\n serialization += '='\n\n // 4. If value does not solely contain HTTP token code\n // points or value is the empty string, then:\n if (!HTTP_TOKEN_CODEPOINTS.test(value)) {\n // 1. Precede each occurrence of U+0022 (\") or\n // U+005C (\\) in value with U+005C (\\).\n value = value.replace(/(\\\\|\")/g, '\\\\$1')\n\n // 2. Prepend U+0022 (\") to value.\n value = '\"' + value\n\n // 3. Append U+0022 (\") to value.\n value += '\"'\n }\n\n // 5. Append value to serialization.\n serialization += value\n }\n\n // 3. Return serialization.\n return serialization\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#http-whitespace\n * @param {number} char\n */\nfunction isHTTPWhiteSpace (char) {\n // \"\\r\\n\\t \"\n return char === 0x00d || char === 0x00a || char === 0x009 || char === 0x020\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#http-whitespace\n * @param {string} str\n * @param {boolean} [leading=true]\n * @param {boolean} [trailing=true]\n */\nfunction removeHTTPWhitespace (str, leading = true, trailing = true) {\n return removeChars(str, leading, trailing, isHTTPWhiteSpace)\n}\n\n/**\n * @see https://infra.spec.whatwg.org/#ascii-whitespace\n * @param {number} char\n */\nfunction isASCIIWhitespace (char) {\n // \"\\r\\n\\t\\f \"\n return char === 0x00d || char === 0x00a || char === 0x009 || char === 0x00c || char === 0x020\n}\n\n/**\n * @see https://infra.spec.whatwg.org/#strip-leading-and-trailing-ascii-whitespace\n * @param {string} str\n * @param {boolean} [leading=true]\n * @param {boolean} [trailing=true]\n */\nfunction removeASCIIWhitespace (str, leading = true, trailing = true) {\n return removeChars(str, leading, trailing, isASCIIWhitespace)\n}\n\n/**\n * @param {string} str\n * @param {boolean} leading\n * @param {boolean} trailing\n * @param {(charCode: number) => boolean} predicate\n * @returns\n */\nfunction removeChars (str, leading, trailing, predicate) {\n let lead = 0\n let trail = str.length - 1\n\n if (leading) {\n while (lead < str.length && predicate(str.charCodeAt(lead))) lead++\n }\n\n if (trailing) {\n while (trail > 0 && predicate(str.charCodeAt(trail))) trail--\n }\n\n return lead === 0 && trail === str.length - 1 ? str : str.slice(lead, trail + 1)\n}\n\n/**\n * @see https://infra.spec.whatwg.org/#isomorphic-decode\n * @param {Uint8Array} input\n * @returns {string}\n */\nfunction isomorphicDecode (input) {\n // 1. To isomorphic decode a byte sequence input, return a string whose code point\n // length is equal to input\u2019s length and whose code points have the same values\n // as the values of input\u2019s bytes, in the same order.\n const length = input.length\n if ((2 << 15) - 1 > length) {\n return String.fromCharCode.apply(null, input)\n }\n let result = ''; let i = 0\n let addition = (2 << 15) - 1\n while (i < length) {\n if (i + addition > length) {\n addition = length - i\n }\n result += String.fromCharCode.apply(null, input.subarray(i, i += addition))\n }\n return result\n}\n\n/**\n * @see https://mimesniff.spec.whatwg.org/#minimize-a-supported-mime-type\n * @param {Exclude, 'failure'>} mimeType\n */\nfunction minimizeSupportedMimeType (mimeType) {\n switch (mimeType.essence) {\n case 'application/ecmascript':\n case 'application/javascript':\n case 'application/x-ecmascript':\n case 'application/x-javascript':\n case 'text/ecmascript':\n case 'text/javascript':\n case 'text/javascript1.0':\n case 'text/javascript1.1':\n case 'text/javascript1.2':\n case 'text/javascript1.3':\n case 'text/javascript1.4':\n case 'text/javascript1.5':\n case 'text/jscript':\n case 'text/livescript':\n case 'text/x-ecmascript':\n case 'text/x-javascript':\n // 1. If mimeType is a JavaScript MIME type, then return \"text/javascript\".\n return 'text/javascript'\n case 'application/json':\n case 'text/json':\n // 2. If mimeType is a JSON MIME type, then return \"application/json\".\n return 'application/json'\n case 'image/svg+xml':\n // 3. If mimeType\u2019s essence is \"image/svg+xml\", then return \"image/svg+xml\".\n return 'image/svg+xml'\n case 'text/xml':\n case 'application/xml':\n // 4. If mimeType is an XML MIME type, then return \"application/xml\".\n return 'application/xml'\n }\n\n // 2. If mimeType is a JSON MIME type, then return \"application/json\".\n if (mimeType.subtype.endsWith('+json')) {\n return 'application/json'\n }\n\n // 4. If mimeType is an XML MIME type, then return \"application/xml\".\n if (mimeType.subtype.endsWith('+xml')) {\n return 'application/xml'\n }\n\n // 5. If mimeType is supported by the user agent, then return mimeType\u2019s essence.\n // Technically, node doesn't support any mimetypes.\n\n // 6. Return the empty string.\n return ''\n}\n\nmodule.exports = {\n dataURLProcessor,\n URLSerializer,\n collectASequenceOfCodePoints,\n collectASequenceOfCodePointsFast,\n stringPercentDecode,\n parseMIMEType,\n collectAnHTTPQuotedString,\n serializeAMimeType,\n removeChars,\n removeHTTPWhitespace,\n minimizeSupportedMimeType,\n HTTP_TOKEN_CODEPOINTS,\n isomorphicDecode\n}\n", "'use strict'\n\nconst { types, inspect } = require('node:util')\nconst { markAsUncloneable } = require('node:worker_threads')\nconst { toUSVString } = require('../../core/util')\n\n/** @type {import('../../../types/webidl').Webidl} */\nconst webidl = {}\nwebidl.converters = {}\nwebidl.util = {}\nwebidl.errors = {}\n\nwebidl.errors.exception = function (message) {\n return new TypeError(`${message.header}: ${message.message}`)\n}\n\nwebidl.errors.conversionFailed = function (context) {\n const plural = context.types.length === 1 ? '' : ' one of'\n const message =\n `${context.argument} could not be converted to` +\n `${plural}: ${context.types.join(', ')}.`\n\n return webidl.errors.exception({\n header: context.prefix,\n message\n })\n}\n\nwebidl.errors.invalidArgument = function (context) {\n return webidl.errors.exception({\n header: context.prefix,\n message: `\"${context.value}\" is an invalid ${context.type}.`\n })\n}\n\n// https://webidl.spec.whatwg.org/#implements\nwebidl.brandCheck = function (V, I, opts) {\n if (opts?.strict !== false) {\n if (!(V instanceof I)) {\n const err = new TypeError('Illegal invocation')\n err.code = 'ERR_INVALID_THIS' // node compat.\n throw err\n }\n } else {\n if (V?.[Symbol.toStringTag] !== I.prototype[Symbol.toStringTag]) {\n const err = new TypeError('Illegal invocation')\n err.code = 'ERR_INVALID_THIS' // node compat.\n throw err\n }\n }\n}\n\nwebidl.argumentLengthCheck = function ({ length }, min, ctx) {\n if (length < min) {\n throw webidl.errors.exception({\n message: `${min} argument${min !== 1 ? 's' : ''} required, ` +\n `but${length ? ' only' : ''} ${length} found.`,\n header: ctx\n })\n }\n}\n\nwebidl.illegalConstructor = function () {\n throw webidl.errors.exception({\n header: 'TypeError',\n message: 'Illegal constructor'\n })\n}\n\n// https://tc39.es/ecma262/#sec-ecmascript-data-types-and-values\nwebidl.util.Type = function (V) {\n switch (typeof V) {\n case 'undefined': return 'Undefined'\n case 'boolean': return 'Boolean'\n case 'string': return 'String'\n case 'symbol': return 'Symbol'\n case 'number': return 'Number'\n case 'bigint': return 'BigInt'\n case 'function':\n case 'object': {\n if (V === null) {\n return 'Null'\n }\n\n return 'Object'\n }\n }\n}\n\nwebidl.util.markAsUncloneable = markAsUncloneable || (() => {})\n// https://webidl.spec.whatwg.org/#abstract-opdef-converttoint\nwebidl.util.ConvertToInt = function (V, bitLength, signedness, opts) {\n let upperBound\n let lowerBound\n\n // 1. If bitLength is 64, then:\n if (bitLength === 64) {\n // 1. Let upperBound be 2^53 \u2212 1.\n upperBound = Math.pow(2, 53) - 1\n\n // 2. If signedness is \"unsigned\", then let lowerBound be 0.\n if (signedness === 'unsigned') {\n lowerBound = 0\n } else {\n // 3. Otherwise let lowerBound be \u22122^53 + 1.\n lowerBound = Math.pow(-2, 53) + 1\n }\n } else if (signedness === 'unsigned') {\n // 2. Otherwise, if signedness is \"unsigned\", then:\n\n // 1. Let lowerBound be 0.\n lowerBound = 0\n\n // 2. Let upperBound be 2^bitLength \u2212 1.\n upperBound = Math.pow(2, bitLength) - 1\n } else {\n // 3. Otherwise:\n\n // 1. Let lowerBound be -2^bitLength \u2212 1.\n lowerBound = Math.pow(-2, bitLength) - 1\n\n // 2. Let upperBound be 2^bitLength \u2212 1 \u2212 1.\n upperBound = Math.pow(2, bitLength - 1) - 1\n }\n\n // 4. Let x be ? ToNumber(V).\n let x = Number(V)\n\n // 5. If x is \u22120, then set x to +0.\n if (x === 0) {\n x = 0\n }\n\n // 6. If the conversion is to an IDL type associated\n // with the [EnforceRange] extended attribute, then:\n if (opts?.enforceRange === true) {\n // 1. If x is NaN, +\u221E, or \u2212\u221E, then throw a TypeError.\n if (\n Number.isNaN(x) ||\n x === Number.POSITIVE_INFINITY ||\n x === Number.NEGATIVE_INFINITY\n ) {\n throw webidl.errors.exception({\n header: 'Integer conversion',\n message: `Could not convert ${webidl.util.Stringify(V)} to an integer.`\n })\n }\n\n // 2. Set x to IntegerPart(x).\n x = webidl.util.IntegerPart(x)\n\n // 3. If x < lowerBound or x > upperBound, then\n // throw a TypeError.\n if (x < lowerBound || x > upperBound) {\n throw webidl.errors.exception({\n header: 'Integer conversion',\n message: `Value must be between ${lowerBound}-${upperBound}, got ${x}.`\n })\n }\n\n // 4. Return x.\n return x\n }\n\n // 7. If x is not NaN and the conversion is to an IDL\n // type associated with the [Clamp] extended\n // attribute, then:\n if (!Number.isNaN(x) && opts?.clamp === true) {\n // 1. Set x to min(max(x, lowerBound), upperBound).\n x = Math.min(Math.max(x, lowerBound), upperBound)\n\n // 2. Round x to the nearest integer, choosing the\n // even integer if it lies halfway between two,\n // and choosing +0 rather than \u22120.\n if (Math.floor(x) % 2 === 0) {\n x = Math.floor(x)\n } else {\n x = Math.ceil(x)\n }\n\n // 3. Return x.\n return x\n }\n\n // 8. If x is NaN, +0, +\u221E, or \u2212\u221E, then return +0.\n if (\n Number.isNaN(x) ||\n (x === 0 && Object.is(0, x)) ||\n x === Number.POSITIVE_INFINITY ||\n x === Number.NEGATIVE_INFINITY\n ) {\n return 0\n }\n\n // 9. Set x to IntegerPart(x).\n x = webidl.util.IntegerPart(x)\n\n // 10. Set x to x modulo 2^bitLength.\n x = x % Math.pow(2, bitLength)\n\n // 11. If signedness is \"signed\" and x \u2265 2^bitLength \u2212 1,\n // then return x \u2212 2^bitLength.\n if (signedness === 'signed' && x >= Math.pow(2, bitLength) - 1) {\n return x - Math.pow(2, bitLength)\n }\n\n // 12. Otherwise, return x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#abstract-opdef-integerpart\nwebidl.util.IntegerPart = function (n) {\n // 1. Let r be floor(abs(n)).\n const r = Math.floor(Math.abs(n))\n\n // 2. If n < 0, then return -1 \u00D7 r.\n if (n < 0) {\n return -1 * r\n }\n\n // 3. Otherwise, return r.\n return r\n}\n\nwebidl.util.Stringify = function (V) {\n const type = webidl.util.Type(V)\n\n switch (type) {\n case 'Symbol':\n return `Symbol(${V.description})`\n case 'Object':\n return inspect(V)\n case 'String':\n return `\"${V}\"`\n default:\n return `${V}`\n }\n}\n\n// https://webidl.spec.whatwg.org/#es-sequence\nwebidl.sequenceConverter = function (converter) {\n return (V, prefix, argument, Iterable) => {\n // 1. If Type(V) is not Object, throw a TypeError.\n if (webidl.util.Type(V) !== 'Object') {\n throw webidl.errors.exception({\n header: prefix,\n message: `${argument} (${webidl.util.Stringify(V)}) is not iterable.`\n })\n }\n\n // 2. Let method be ? GetMethod(V, @@iterator).\n /** @type {Generator} */\n const method = typeof Iterable === 'function' ? Iterable() : V?.[Symbol.iterator]?.()\n const seq = []\n let index = 0\n\n // 3. If method is undefined, throw a TypeError.\n if (\n method === undefined ||\n typeof method.next !== 'function'\n ) {\n throw webidl.errors.exception({\n header: prefix,\n message: `${argument} is not iterable.`\n })\n }\n\n // https://webidl.spec.whatwg.org/#create-sequence-from-iterable\n while (true) {\n const { done, value } = method.next()\n\n if (done) {\n break\n }\n\n seq.push(converter(value, prefix, `${argument}[${index++}]`))\n }\n\n return seq\n }\n}\n\n// https://webidl.spec.whatwg.org/#es-to-record\nwebidl.recordConverter = function (keyConverter, valueConverter) {\n return (O, prefix, argument) => {\n // 1. If Type(O) is not Object, throw a TypeError.\n if (webidl.util.Type(O) !== 'Object') {\n throw webidl.errors.exception({\n header: prefix,\n message: `${argument} (\"${webidl.util.Type(O)}\") is not an Object.`\n })\n }\n\n // 2. Let result be a new empty instance of record.\n const result = {}\n\n if (!types.isProxy(O)) {\n // 1. Let desc be ? O.[[GetOwnProperty]](key).\n const keys = [...Object.getOwnPropertyNames(O), ...Object.getOwnPropertySymbols(O)]\n\n for (const key of keys) {\n // 1. Let typedKey be key converted to an IDL value of type K.\n const typedKey = keyConverter(key, prefix, argument)\n\n // 2. Let value be ? Get(O, key).\n // 3. Let typedValue be value converted to an IDL value of type V.\n const typedValue = valueConverter(O[key], prefix, argument)\n\n // 4. Set result[typedKey] to typedValue.\n result[typedKey] = typedValue\n }\n\n // 5. Return result.\n return result\n }\n\n // 3. Let keys be ? O.[[OwnPropertyKeys]]().\n const keys = Reflect.ownKeys(O)\n\n // 4. For each key of keys.\n for (const key of keys) {\n // 1. Let desc be ? O.[[GetOwnProperty]](key).\n const desc = Reflect.getOwnPropertyDescriptor(O, key)\n\n // 2. If desc is not undefined and desc.[[Enumerable]] is true:\n if (desc?.enumerable) {\n // 1. Let typedKey be key converted to an IDL value of type K.\n const typedKey = keyConverter(key, prefix, argument)\n\n // 2. Let value be ? Get(O, key).\n // 3. Let typedValue be value converted to an IDL value of type V.\n const typedValue = valueConverter(O[key], prefix, argument)\n\n // 4. Set result[typedKey] to typedValue.\n result[typedKey] = typedValue\n }\n }\n\n // 5. Return result.\n return result\n }\n}\n\nwebidl.interfaceConverter = function (i) {\n return (V, prefix, argument, opts) => {\n if (opts?.strict !== false && !(V instanceof i)) {\n throw webidl.errors.exception({\n header: prefix,\n message: `Expected ${argument} (\"${webidl.util.Stringify(V)}\") to be an instance of ${i.name}.`\n })\n }\n\n return V\n }\n}\n\nwebidl.dictionaryConverter = function (converters) {\n return (dictionary, prefix, argument) => {\n const type = webidl.util.Type(dictionary)\n const dict = {}\n\n if (type === 'Null' || type === 'Undefined') {\n return dict\n } else if (type !== 'Object') {\n throw webidl.errors.exception({\n header: prefix,\n message: `Expected ${dictionary} to be one of: Null, Undefined, Object.`\n })\n }\n\n for (const options of converters) {\n const { key, defaultValue, required, converter } = options\n\n if (required === true) {\n if (!Object.hasOwn(dictionary, key)) {\n throw webidl.errors.exception({\n header: prefix,\n message: `Missing required key \"${key}\".`\n })\n }\n }\n\n let value = dictionary[key]\n const hasDefault = Object.hasOwn(options, 'defaultValue')\n\n // Only use defaultValue if value is undefined and\n // a defaultValue options was provided.\n if (hasDefault && value !== null) {\n value ??= defaultValue()\n }\n\n // A key can be optional and have no default value.\n // When this happens, do not perform a conversion,\n // and do not assign the key a value.\n if (required || hasDefault || value !== undefined) {\n value = converter(value, prefix, `${argument}.${key}`)\n\n if (\n options.allowedValues &&\n !options.allowedValues.includes(value)\n ) {\n throw webidl.errors.exception({\n header: prefix,\n message: `${value} is not an accepted type. Expected one of ${options.allowedValues.join(', ')}.`\n })\n }\n\n dict[key] = value\n }\n }\n\n return dict\n }\n}\n\nwebidl.nullableConverter = function (converter) {\n return (V, prefix, argument) => {\n if (V === null) {\n return V\n }\n\n return converter(V, prefix, argument)\n }\n}\n\n// https://webidl.spec.whatwg.org/#es-DOMString\nwebidl.converters.DOMString = function (V, prefix, argument, opts) {\n // 1. If V is null and the conversion is to an IDL type\n // associated with the [LegacyNullToEmptyString]\n // extended attribute, then return the DOMString value\n // that represents the empty string.\n if (V === null && opts?.legacyNullToEmptyString) {\n return ''\n }\n\n // 2. Let x be ? ToString(V).\n if (typeof V === 'symbol') {\n throw webidl.errors.exception({\n header: prefix,\n message: `${argument} is a symbol, which cannot be converted to a DOMString.`\n })\n }\n\n // 3. Return the IDL DOMString value that represents the\n // same sequence of code units as the one the\n // ECMAScript String value x represents.\n return String(V)\n}\n\n// https://webidl.spec.whatwg.org/#es-ByteString\nwebidl.converters.ByteString = function (V, prefix, argument) {\n // 1. Let x be ? ToString(V).\n // Note: DOMString converter perform ? ToString(V)\n const x = webidl.converters.DOMString(V, prefix, argument)\n\n // 2. If the value of any element of x is greater than\n // 255, then throw a TypeError.\n for (let index = 0; index < x.length; index++) {\n if (x.charCodeAt(index) > 255) {\n throw new TypeError(\n 'Cannot convert argument to a ByteString because the character at ' +\n `index ${index} has a value of ${x.charCodeAt(index)} which is greater than 255.`\n )\n }\n }\n\n // 3. Return an IDL ByteString value whose length is the\n // length of x, and where the value of each element is\n // the value of the corresponding element of x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#es-USVString\n// TODO: rewrite this so we can control the errors thrown\nwebidl.converters.USVString = toUSVString\n\n// https://webidl.spec.whatwg.org/#es-boolean\nwebidl.converters.boolean = function (V) {\n // 1. Let x be the result of computing ToBoolean(V).\n const x = Boolean(V)\n\n // 2. Return the IDL boolean value that is the one that represents\n // the same truth value as the ECMAScript Boolean value x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#es-any\nwebidl.converters.any = function (V) {\n return V\n}\n\n// https://webidl.spec.whatwg.org/#es-long-long\nwebidl.converters['long long'] = function (V, prefix, argument) {\n // 1. Let x be ? ConvertToInt(V, 64, \"signed\").\n const x = webidl.util.ConvertToInt(V, 64, 'signed', undefined, prefix, argument)\n\n // 2. Return the IDL long long value that represents\n // the same numeric value as x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#es-unsigned-long-long\nwebidl.converters['unsigned long long'] = function (V, prefix, argument) {\n // 1. Let x be ? ConvertToInt(V, 64, \"unsigned\").\n const x = webidl.util.ConvertToInt(V, 64, 'unsigned', undefined, prefix, argument)\n\n // 2. Return the IDL unsigned long long value that\n // represents the same numeric value as x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#es-unsigned-long\nwebidl.converters['unsigned long'] = function (V, prefix, argument) {\n // 1. Let x be ? ConvertToInt(V, 32, \"unsigned\").\n const x = webidl.util.ConvertToInt(V, 32, 'unsigned', undefined, prefix, argument)\n\n // 2. Return the IDL unsigned long value that\n // represents the same numeric value as x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#es-unsigned-short\nwebidl.converters['unsigned short'] = function (V, prefix, argument, opts) {\n // 1. Let x be ? ConvertToInt(V, 16, \"unsigned\").\n const x = webidl.util.ConvertToInt(V, 16, 'unsigned', opts, prefix, argument)\n\n // 2. Return the IDL unsigned short value that represents\n // the same numeric value as x.\n return x\n}\n\n// https://webidl.spec.whatwg.org/#idl-ArrayBuffer\nwebidl.converters.ArrayBuffer = function (V, prefix, argument, opts) {\n // 1. If Type(V) is not Object, or V does not have an\n // [[ArrayBufferData]] internal slot, then throw a\n // TypeError.\n // see: https://tc39.es/ecma262/#sec-properties-of-the-arraybuffer-instances\n // see: https://tc39.es/ecma262/#sec-properties-of-the-sharedarraybuffer-instances\n if (\n webidl.util.Type(V) !== 'Object' ||\n !types.isAnyArrayBuffer(V)\n ) {\n throw webidl.errors.conversionFailed({\n prefix,\n argument: `${argument} (\"${webidl.util.Stringify(V)}\")`,\n types: ['ArrayBuffer']\n })\n }\n\n // 2. If the conversion is not to an IDL type associated\n // with the [AllowShared] extended attribute, and\n // IsSharedArrayBuffer(V) is true, then throw a\n // TypeError.\n if (opts?.allowShared === false && types.isSharedArrayBuffer(V)) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'SharedArrayBuffer is not allowed.'\n })\n }\n\n // 3. If the conversion is not to an IDL type associated\n // with the [AllowResizable] extended attribute, and\n // IsResizableArrayBuffer(V) is true, then throw a\n // TypeError.\n if (V.resizable || V.growable) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'Received a resizable ArrayBuffer.'\n })\n }\n\n // 4. Return the IDL ArrayBuffer value that is a\n // reference to the same object as V.\n return V\n}\n\nwebidl.converters.TypedArray = function (V, T, prefix, name, opts) {\n // 1. Let T be the IDL type V is being converted to.\n\n // 2. If Type(V) is not Object, or V does not have a\n // [[TypedArrayName]] internal slot with a value\n // equal to T\u2019s name, then throw a TypeError.\n if (\n webidl.util.Type(V) !== 'Object' ||\n !types.isTypedArray(V) ||\n V.constructor.name !== T.name\n ) {\n throw webidl.errors.conversionFailed({\n prefix,\n argument: `${name} (\"${webidl.util.Stringify(V)}\")`,\n types: [T.name]\n })\n }\n\n // 3. If the conversion is not to an IDL type associated\n // with the [AllowShared] extended attribute, and\n // IsSharedArrayBuffer(V.[[ViewedArrayBuffer]]) is\n // true, then throw a TypeError.\n if (opts?.allowShared === false && types.isSharedArrayBuffer(V.buffer)) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'SharedArrayBuffer is not allowed.'\n })\n }\n\n // 4. If the conversion is not to an IDL type associated\n // with the [AllowResizable] extended attribute, and\n // IsResizableArrayBuffer(V.[[ViewedArrayBuffer]]) is\n // true, then throw a TypeError.\n if (V.buffer.resizable || V.buffer.growable) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'Received a resizable ArrayBuffer.'\n })\n }\n\n // 5. Return the IDL value of type T that is a reference\n // to the same object as V.\n return V\n}\n\nwebidl.converters.DataView = function (V, prefix, name, opts) {\n // 1. If Type(V) is not Object, or V does not have a\n // [[DataView]] internal slot, then throw a TypeError.\n if (webidl.util.Type(V) !== 'Object' || !types.isDataView(V)) {\n throw webidl.errors.exception({\n header: prefix,\n message: `${name} is not a DataView.`\n })\n }\n\n // 2. If the conversion is not to an IDL type associated\n // with the [AllowShared] extended attribute, and\n // IsSharedArrayBuffer(V.[[ViewedArrayBuffer]]) is true,\n // then throw a TypeError.\n if (opts?.allowShared === false && types.isSharedArrayBuffer(V.buffer)) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'SharedArrayBuffer is not allowed.'\n })\n }\n\n // 3. If the conversion is not to an IDL type associated\n // with the [AllowResizable] extended attribute, and\n // IsResizableArrayBuffer(V.[[ViewedArrayBuffer]]) is\n // true, then throw a TypeError.\n if (V.buffer.resizable || V.buffer.growable) {\n throw webidl.errors.exception({\n header: 'ArrayBuffer',\n message: 'Received a resizable ArrayBuffer.'\n })\n }\n\n // 4. Return the IDL DataView value that is a reference\n // to the same object as V.\n return V\n}\n\n// https://webidl.spec.whatwg.org/#BufferSource\nwebidl.converters.BufferSource = function (V, prefix, name, opts) {\n if (types.isAnyArrayBuffer(V)) {\n return webidl.converters.ArrayBuffer(V, prefix, name, { ...opts, allowShared: false })\n }\n\n if (types.isTypedArray(V)) {\n return webidl.converters.TypedArray(V, V.constructor, prefix, name, { ...opts, allowShared: false })\n }\n\n if (types.isDataView(V)) {\n return webidl.converters.DataView(V, prefix, name, { ...opts, allowShared: false })\n }\n\n throw webidl.errors.conversionFailed({\n prefix,\n argument: `${name} (\"${webidl.util.Stringify(V)}\")`,\n types: ['BufferSource']\n })\n}\n\nwebidl.converters['sequence'] = webidl.sequenceConverter(\n webidl.converters.ByteString\n)\n\nwebidl.converters['sequence>'] = webidl.sequenceConverter(\n webidl.converters['sequence']\n)\n\nwebidl.converters['record'] = webidl.recordConverter(\n webidl.converters.ByteString,\n webidl.converters.ByteString\n)\n\nmodule.exports = {\n webidl\n}\n", "'use strict'\n\nconst { Transform } = require('node:stream')\nconst zlib = require('node:zlib')\nconst { redirectStatusSet, referrerPolicySet: referrerPolicyTokens, badPortsSet } = require('./constants')\nconst { getGlobalOrigin } = require('./global')\nconst { collectASequenceOfCodePoints, collectAnHTTPQuotedString, removeChars, parseMIMEType } = require('./data-url')\nconst { performance } = require('node:perf_hooks')\nconst { isBlobLike, ReadableStreamFrom, isValidHTTPToken, normalizedMethodRecordsBase } = require('../../core/util')\nconst assert = require('node:assert')\nconst { isUint8Array } = require('node:util/types')\nconst { webidl } = require('./webidl')\n\nlet supportedHashes = []\n\n// https://nodejs.org/api/crypto.html#determining-if-crypto-support-is-unavailable\n/** @type {import('crypto')} */\nlet crypto\ntry {\n crypto = require('node:crypto')\n const possibleRelevantHashes = ['sha256', 'sha384', 'sha512']\n supportedHashes = crypto.getHashes().filter((hash) => possibleRelevantHashes.includes(hash))\n/* c8 ignore next 3 */\n} catch {\n\n}\n\nfunction responseURL (response) {\n // https://fetch.spec.whatwg.org/#responses\n // A response has an associated URL. It is a pointer to the last URL\n // in response\u2019s URL list and null if response\u2019s URL list is empty.\n const urlList = response.urlList\n const length = urlList.length\n return length === 0 ? null : urlList[length - 1].toString()\n}\n\n// https://fetch.spec.whatwg.org/#concept-response-location-url\nfunction responseLocationURL (response, requestFragment) {\n // 1. If response\u2019s status is not a redirect status, then return null.\n if (!redirectStatusSet.has(response.status)) {\n return null\n }\n\n // 2. Let location be the result of extracting header list values given\n // `Location` and response\u2019s header list.\n let location = response.headersList.get('location', true)\n\n // 3. If location is a header value, then set location to the result of\n // parsing location with response\u2019s URL.\n if (location !== null && isValidHeaderValue(location)) {\n if (!isValidEncodedURL(location)) {\n // Some websites respond location header in UTF-8 form without encoding them as ASCII\n // and major browsers redirect them to correctly UTF-8 encoded addresses.\n // Here, we handle that behavior in the same way.\n location = normalizeBinaryStringToUtf8(location)\n }\n location = new URL(location, responseURL(response))\n }\n\n // 4. If location is a URL whose fragment is null, then set location\u2019s\n // fragment to requestFragment.\n if (location && !location.hash) {\n location.hash = requestFragment\n }\n\n // 5. Return location.\n return location\n}\n\n/**\n * @see https://www.rfc-editor.org/rfc/rfc1738#section-2.2\n * @param {string} url\n * @returns {boolean}\n */\nfunction isValidEncodedURL (url) {\n for (let i = 0; i < url.length; ++i) {\n const code = url.charCodeAt(i)\n\n if (\n code > 0x7E || // Non-US-ASCII + DEL\n code < 0x20 // Control characters NUL - US\n ) {\n return false\n }\n }\n return true\n}\n\n/**\n * If string contains non-ASCII characters, assumes it's UTF-8 encoded and decodes it.\n * Since UTF-8 is a superset of ASCII, this will work for ASCII strings as well.\n * @param {string} value\n * @returns {string}\n */\nfunction normalizeBinaryStringToUtf8 (value) {\n return Buffer.from(value, 'binary').toString('utf8')\n}\n\n/** @returns {URL} */\nfunction requestCurrentURL (request) {\n return request.urlList[request.urlList.length - 1]\n}\n\nfunction requestBadPort (request) {\n // 1. Let url be request\u2019s current URL.\n const url = requestCurrentURL(request)\n\n // 2. If url\u2019s scheme is an HTTP(S) scheme and url\u2019s port is a bad port,\n // then return blocked.\n if (urlIsHttpHttpsScheme(url) && badPortsSet.has(url.port)) {\n return 'blocked'\n }\n\n // 3. Return allowed.\n return 'allowed'\n}\n\nfunction isErrorLike (object) {\n return object instanceof Error || (\n object?.constructor?.name === 'Error' ||\n object?.constructor?.name === 'DOMException'\n )\n}\n\n// Check whether |statusText| is a ByteString and\n// matches the Reason-Phrase token production.\n// RFC 2616: https://tools.ietf.org/html/rfc2616\n// RFC 7230: https://tools.ietf.org/html/rfc7230\n// \"reason-phrase = *( HTAB / SP / VCHAR / obs-text )\"\n// https://github.com/chromium/chromium/blob/94.0.4604.1/third_party/blink/renderer/core/fetch/response.cc#L116\nfunction isValidReasonPhrase (statusText) {\n for (let i = 0; i < statusText.length; ++i) {\n const c = statusText.charCodeAt(i)\n if (\n !(\n (\n c === 0x09 || // HTAB\n (c >= 0x20 && c <= 0x7e) || // SP / VCHAR\n (c >= 0x80 && c <= 0xff)\n ) // obs-text\n )\n ) {\n return false\n }\n }\n return true\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#header-name\n * @param {string} potentialValue\n */\nconst isValidHeaderName = isValidHTTPToken\n\n/**\n * @see https://fetch.spec.whatwg.org/#header-value\n * @param {string} potentialValue\n */\nfunction isValidHeaderValue (potentialValue) {\n // - Has no leading or trailing HTTP tab or space bytes.\n // - Contains no 0x00 (NUL) or HTTP newline bytes.\n return (\n potentialValue[0] === '\\t' ||\n potentialValue[0] === ' ' ||\n potentialValue[potentialValue.length - 1] === '\\t' ||\n potentialValue[potentialValue.length - 1] === ' ' ||\n potentialValue.includes('\\n') ||\n potentialValue.includes('\\r') ||\n potentialValue.includes('\\0')\n ) === false\n}\n\n// https://w3c.github.io/webappsec-referrer-policy/#set-requests-referrer-policy-on-redirect\nfunction setRequestReferrerPolicyOnRedirect (request, actualResponse) {\n // Given a request request and a response actualResponse, this algorithm\n // updates request\u2019s referrer policy according to the Referrer-Policy\n // header (if any) in actualResponse.\n\n // 1. Let policy be the result of executing \u00A7 8.1 Parse a referrer policy\n // from a Referrer-Policy header on actualResponse.\n\n // 8.1 Parse a referrer policy from a Referrer-Policy header\n // 1. Let policy-tokens be the result of extracting header list values given `Referrer-Policy` and response\u2019s header list.\n const { headersList } = actualResponse\n // 2. Let policy be the empty string.\n // 3. For each token in policy-tokens, if token is a referrer policy and token is not the empty string, then set policy to token.\n // 4. Return policy.\n const policyHeader = (headersList.get('referrer-policy', true) ?? '').split(',')\n\n // Note: As the referrer-policy can contain multiple policies\n // separated by comma, we need to loop through all of them\n // and pick the first valid one.\n // Ref: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Referrer-Policy#specify_a_fallback_policy\n let policy = ''\n if (policyHeader.length > 0) {\n // The right-most policy takes precedence.\n // The left-most policy is the fallback.\n for (let i = policyHeader.length; i !== 0; i--) {\n const token = policyHeader[i - 1].trim()\n if (referrerPolicyTokens.has(token)) {\n policy = token\n break\n }\n }\n }\n\n // 2. If policy is not the empty string, then set request\u2019s referrer policy to policy.\n if (policy !== '') {\n request.referrerPolicy = policy\n }\n}\n\n// https://fetch.spec.whatwg.org/#cross-origin-resource-policy-check\nfunction crossOriginResourcePolicyCheck () {\n // TODO\n return 'allowed'\n}\n\n// https://fetch.spec.whatwg.org/#concept-cors-check\nfunction corsCheck () {\n // TODO\n return 'success'\n}\n\n// https://fetch.spec.whatwg.org/#concept-tao-check\nfunction TAOCheck () {\n // TODO\n return 'success'\n}\n\nfunction appendFetchMetadata (httpRequest) {\n // https://w3c.github.io/webappsec-fetch-metadata/#sec-fetch-dest-header\n // TODO\n\n // https://w3c.github.io/webappsec-fetch-metadata/#sec-fetch-mode-header\n\n // 1. Assert: r\u2019s url is a potentially trustworthy URL.\n // TODO\n\n // 2. Let header be a Structured Header whose value is a token.\n let header = null\n\n // 3. Set header\u2019s value to r\u2019s mode.\n header = httpRequest.mode\n\n // 4. Set a structured field value `Sec-Fetch-Mode`/header in r\u2019s header list.\n httpRequest.headersList.set('sec-fetch-mode', header, true)\n\n // https://w3c.github.io/webappsec-fetch-metadata/#sec-fetch-site-header\n // TODO\n\n // https://w3c.github.io/webappsec-fetch-metadata/#sec-fetch-user-header\n // TODO\n}\n\n// https://fetch.spec.whatwg.org/#append-a-request-origin-header\nfunction appendRequestOriginHeader (request) {\n // 1. Let serializedOrigin be the result of byte-serializing a request origin\n // with request.\n // TODO: implement \"byte-serializing a request origin\"\n let serializedOrigin = request.origin\n\n // - \"'client' is changed to an origin during fetching.\"\n // This doesn't happen in undici (in most cases) because undici, by default,\n // has no concept of origin.\n // - request.origin can also be set to request.client.origin (client being\n // an environment settings object), which is undefined without using\n // setGlobalOrigin.\n if (serializedOrigin === 'client' || serializedOrigin === undefined) {\n return\n }\n\n // 2. If request\u2019s response tainting is \"cors\" or request\u2019s mode is \"websocket\",\n // then append (`Origin`, serializedOrigin) to request\u2019s header list.\n // 3. Otherwise, if request\u2019s method is neither `GET` nor `HEAD`, then:\n if (request.responseTainting === 'cors' || request.mode === 'websocket') {\n request.headersList.append('origin', serializedOrigin, true)\n } else if (request.method !== 'GET' && request.method !== 'HEAD') {\n // 1. Switch on request\u2019s referrer policy:\n switch (request.referrerPolicy) {\n case 'no-referrer':\n // Set serializedOrigin to `null`.\n serializedOrigin = null\n break\n case 'no-referrer-when-downgrade':\n case 'strict-origin':\n case 'strict-origin-when-cross-origin':\n // If request\u2019s origin is a tuple origin, its scheme is \"https\", and\n // request\u2019s current URL\u2019s scheme is not \"https\", then set\n // serializedOrigin to `null`.\n if (request.origin && urlHasHttpsScheme(request.origin) && !urlHasHttpsScheme(requestCurrentURL(request))) {\n serializedOrigin = null\n }\n break\n case 'same-origin':\n // If request\u2019s origin is not same origin with request\u2019s current URL\u2019s\n // origin, then set serializedOrigin to `null`.\n if (!sameOrigin(request, requestCurrentURL(request))) {\n serializedOrigin = null\n }\n break\n default:\n // Do nothing.\n }\n\n // 2. Append (`Origin`, serializedOrigin) to request\u2019s header list.\n request.headersList.append('origin', serializedOrigin, true)\n }\n}\n\n// https://w3c.github.io/hr-time/#dfn-coarsen-time\nfunction coarsenTime (timestamp, crossOriginIsolatedCapability) {\n // TODO\n return timestamp\n}\n\n// https://fetch.spec.whatwg.org/#clamp-and-coarsen-connection-timing-info\nfunction clampAndCoarsenConnectionTimingInfo (connectionTimingInfo, defaultStartTime, crossOriginIsolatedCapability) {\n if (!connectionTimingInfo?.startTime || connectionTimingInfo.startTime < defaultStartTime) {\n return {\n domainLookupStartTime: defaultStartTime,\n domainLookupEndTime: defaultStartTime,\n connectionStartTime: defaultStartTime,\n connectionEndTime: defaultStartTime,\n secureConnectionStartTime: defaultStartTime,\n ALPNNegotiatedProtocol: connectionTimingInfo?.ALPNNegotiatedProtocol\n }\n }\n\n return {\n domainLookupStartTime: coarsenTime(connectionTimingInfo.domainLookupStartTime, crossOriginIsolatedCapability),\n domainLookupEndTime: coarsenTime(connectionTimingInfo.domainLookupEndTime, crossOriginIsolatedCapability),\n connectionStartTime: coarsenTime(connectionTimingInfo.connectionStartTime, crossOriginIsolatedCapability),\n connectionEndTime: coarsenTime(connectionTimingInfo.connectionEndTime, crossOriginIsolatedCapability),\n secureConnectionStartTime: coarsenTime(connectionTimingInfo.secureConnectionStartTime, crossOriginIsolatedCapability),\n ALPNNegotiatedProtocol: connectionTimingInfo.ALPNNegotiatedProtocol\n }\n}\n\n// https://w3c.github.io/hr-time/#dfn-coarsened-shared-current-time\nfunction coarsenedSharedCurrentTime (crossOriginIsolatedCapability) {\n return coarsenTime(performance.now(), crossOriginIsolatedCapability)\n}\n\n// https://fetch.spec.whatwg.org/#create-an-opaque-timing-info\nfunction createOpaqueTimingInfo (timingInfo) {\n return {\n startTime: timingInfo.startTime ?? 0,\n redirectStartTime: 0,\n redirectEndTime: 0,\n postRedirectStartTime: timingInfo.startTime ?? 0,\n finalServiceWorkerStartTime: 0,\n finalNetworkResponseStartTime: 0,\n finalNetworkRequestStartTime: 0,\n endTime: 0,\n encodedBodySize: 0,\n decodedBodySize: 0,\n finalConnectionTimingInfo: null\n }\n}\n\n// https://html.spec.whatwg.org/multipage/origin.html#policy-container\nfunction makePolicyContainer () {\n // Note: the fetch spec doesn't make use of embedder policy or CSP list\n return {\n referrerPolicy: 'strict-origin-when-cross-origin'\n }\n}\n\n// https://html.spec.whatwg.org/multipage/origin.html#clone-a-policy-container\nfunction clonePolicyContainer (policyContainer) {\n return {\n referrerPolicy: policyContainer.referrerPolicy\n }\n}\n\n// https://w3c.github.io/webappsec-referrer-policy/#determine-requests-referrer\nfunction determineRequestsReferrer (request) {\n // 1. Let policy be request's referrer policy.\n const policy = request.referrerPolicy\n\n // Note: policy cannot (shouldn't) be null or an empty string.\n assert(policy)\n\n // 2. Let environment be request\u2019s client.\n\n let referrerSource = null\n\n // 3. Switch on request\u2019s referrer:\n if (request.referrer === 'client') {\n // Note: node isn't a browser and doesn't implement document/iframes,\n // so we bypass this step and replace it with our own.\n\n const globalOrigin = getGlobalOrigin()\n\n if (!globalOrigin || globalOrigin.origin === 'null') {\n return 'no-referrer'\n }\n\n // note: we need to clone it as it's mutated\n referrerSource = new URL(globalOrigin)\n } else if (request.referrer instanceof URL) {\n // Let referrerSource be request\u2019s referrer.\n referrerSource = request.referrer\n }\n\n // 4. Let request\u2019s referrerURL be the result of stripping referrerSource for\n // use as a referrer.\n let referrerURL = stripURLForReferrer(referrerSource)\n\n // 5. Let referrerOrigin be the result of stripping referrerSource for use as\n // a referrer, with the origin-only flag set to true.\n const referrerOrigin = stripURLForReferrer(referrerSource, true)\n\n // 6. If the result of serializing referrerURL is a string whose length is\n // greater than 4096, set referrerURL to referrerOrigin.\n if (referrerURL.toString().length > 4096) {\n referrerURL = referrerOrigin\n }\n\n const areSameOrigin = sameOrigin(request, referrerURL)\n const isNonPotentiallyTrustWorthy = isURLPotentiallyTrustworthy(referrerURL) &&\n !isURLPotentiallyTrustworthy(request.url)\n\n // 8. Execute the switch statements corresponding to the value of policy:\n switch (policy) {\n case 'origin': return referrerOrigin != null ? referrerOrigin : stripURLForReferrer(referrerSource, true)\n case 'unsafe-url': return referrerURL\n case 'same-origin':\n return areSameOrigin ? referrerOrigin : 'no-referrer'\n case 'origin-when-cross-origin':\n return areSameOrigin ? referrerURL : referrerOrigin\n case 'strict-origin-when-cross-origin': {\n const currentURL = requestCurrentURL(request)\n\n // 1. If the origin of referrerURL and the origin of request\u2019s current\n // URL are the same, then return referrerURL.\n if (sameOrigin(referrerURL, currentURL)) {\n return referrerURL\n }\n\n // 2. If referrerURL is a potentially trustworthy URL and request\u2019s\n // current URL is not a potentially trustworthy URL, then return no\n // referrer.\n if (isURLPotentiallyTrustworthy(referrerURL) && !isURLPotentiallyTrustworthy(currentURL)) {\n return 'no-referrer'\n }\n\n // 3. Return referrerOrigin.\n return referrerOrigin\n }\n case 'strict-origin': // eslint-disable-line\n /**\n * 1. If referrerURL is a potentially trustworthy URL and\n * request\u2019s current URL is not a potentially trustworthy URL,\n * then return no referrer.\n * 2. Return referrerOrigin\n */\n case 'no-referrer-when-downgrade': // eslint-disable-line\n /**\n * 1. If referrerURL is a potentially trustworthy URL and\n * request\u2019s current URL is not a potentially trustworthy URL,\n * then return no referrer.\n * 2. Return referrerOrigin\n */\n\n default: // eslint-disable-line\n return isNonPotentiallyTrustWorthy ? 'no-referrer' : referrerOrigin\n }\n}\n\n/**\n * @see https://w3c.github.io/webappsec-referrer-policy/#strip-url\n * @param {URL} url\n * @param {boolean|undefined} originOnly\n */\nfunction stripURLForReferrer (url, originOnly) {\n // 1. Assert: url is a URL.\n assert(url instanceof URL)\n\n url = new URL(url)\n\n // 2. If url\u2019s scheme is a local scheme, then return no referrer.\n if (url.protocol === 'file:' || url.protocol === 'about:' || url.protocol === 'blank:') {\n return 'no-referrer'\n }\n\n // 3. Set url\u2019s username to the empty string.\n url.username = ''\n\n // 4. Set url\u2019s password to the empty string.\n url.password = ''\n\n // 5. Set url\u2019s fragment to null.\n url.hash = ''\n\n // 6. If the origin-only flag is true, then:\n if (originOnly) {\n // 1. Set url\u2019s path to \u00AB the empty string \u00BB.\n url.pathname = ''\n\n // 2. Set url\u2019s query to null.\n url.search = ''\n }\n\n // 7. Return url.\n return url\n}\n\nfunction isURLPotentiallyTrustworthy (url) {\n if (!(url instanceof URL)) {\n return false\n }\n\n // If child of about, return true\n if (url.href === 'about:blank' || url.href === 'about:srcdoc') {\n return true\n }\n\n // If scheme is data, return true\n if (url.protocol === 'data:') return true\n\n // If file, return true\n if (url.protocol === 'file:') return true\n\n return isOriginPotentiallyTrustworthy(url.origin)\n\n function isOriginPotentiallyTrustworthy (origin) {\n // If origin is explicitly null, return false\n if (origin == null || origin === 'null') return false\n\n const originAsURL = new URL(origin)\n\n // If secure, return true\n if (originAsURL.protocol === 'https:' || originAsURL.protocol === 'wss:') {\n return true\n }\n\n // If localhost or variants, return true\n if (/^127(?:\\.[0-9]+){0,2}\\.[0-9]+$|^\\[(?:0*:)*?:?0*1\\]$/.test(originAsURL.hostname) ||\n (originAsURL.hostname === 'localhost' || originAsURL.hostname.includes('localhost.')) ||\n (originAsURL.hostname.endsWith('.localhost'))) {\n return true\n }\n\n // If any other, return false\n return false\n }\n}\n\n/**\n * @see https://w3c.github.io/webappsec-subresource-integrity/#does-response-match-metadatalist\n * @param {Uint8Array} bytes\n * @param {string} metadataList\n */\nfunction bytesMatch (bytes, metadataList) {\n // If node is not built with OpenSSL support, we cannot check\n // a request's integrity, so allow it by default (the spec will\n // allow requests if an invalid hash is given, as precedence).\n /* istanbul ignore if: only if node is built with --without-ssl */\n if (crypto === undefined) {\n return true\n }\n\n // 1. Let parsedMetadata be the result of parsing metadataList.\n const parsedMetadata = parseMetadata(metadataList)\n\n // 2. If parsedMetadata is no metadata, return true.\n if (parsedMetadata === 'no metadata') {\n return true\n }\n\n // 3. If response is not eligible for integrity validation, return false.\n // TODO\n\n // 4. If parsedMetadata is the empty set, return true.\n if (parsedMetadata.length === 0) {\n return true\n }\n\n // 5. Let metadata be the result of getting the strongest\n // metadata from parsedMetadata.\n const strongest = getStrongestMetadata(parsedMetadata)\n const metadata = filterMetadataListByAlgorithm(parsedMetadata, strongest)\n\n // 6. For each item in metadata:\n for (const item of metadata) {\n // 1. Let algorithm be the alg component of item.\n const algorithm = item.algo\n\n // 2. Let expectedValue be the val component of item.\n const expectedValue = item.hash\n\n // See https://github.com/web-platform-tests/wpt/commit/e4c5cc7a5e48093220528dfdd1c4012dc3837a0e\n // \"be liberal with padding\". This is annoying, and it's not even in the spec.\n\n // 3. Let actualValue be the result of applying algorithm to bytes.\n let actualValue = crypto.createHash(algorithm).update(bytes).digest('base64')\n\n if (actualValue[actualValue.length - 1] === '=') {\n if (actualValue[actualValue.length - 2] === '=') {\n actualValue = actualValue.slice(0, -2)\n } else {\n actualValue = actualValue.slice(0, -1)\n }\n }\n\n // 4. If actualValue is a case-sensitive match for expectedValue,\n // return true.\n if (compareBase64Mixed(actualValue, expectedValue)) {\n return true\n }\n }\n\n // 7. Return false.\n return false\n}\n\n// https://w3c.github.io/webappsec-subresource-integrity/#grammardef-hash-with-options\n// https://www.w3.org/TR/CSP2/#source-list-syntax\n// https://www.rfc-editor.org/rfc/rfc5234#appendix-B.1\nconst parseHashWithOptions = /(?sha256|sha384|sha512)-((?[A-Za-z0-9+/]+|[A-Za-z0-9_-]+)={0,2}(?:\\s|$)( +[!-~]*)?)?/i\n\n/**\n * @see https://w3c.github.io/webappsec-subresource-integrity/#parse-metadata\n * @param {string} metadata\n */\nfunction parseMetadata (metadata) {\n // 1. Let result be the empty set.\n /** @type {{ algo: string, hash: string }[]} */\n const result = []\n\n // 2. Let empty be equal to true.\n let empty = true\n\n // 3. For each token returned by splitting metadata on spaces:\n for (const token of metadata.split(' ')) {\n // 1. Set empty to false.\n empty = false\n\n // 2. Parse token as a hash-with-options.\n const parsedToken = parseHashWithOptions.exec(token)\n\n // 3. If token does not parse, continue to the next token.\n if (\n parsedToken === null ||\n parsedToken.groups === undefined ||\n parsedToken.groups.algo === undefined\n ) {\n // Note: Chromium blocks the request at this point, but Firefox\n // gives a warning that an invalid integrity was given. The\n // correct behavior is to ignore these, and subsequently not\n // check the integrity of the resource.\n continue\n }\n\n // 4. Let algorithm be the hash-algo component of token.\n const algorithm = parsedToken.groups.algo.toLowerCase()\n\n // 5. If algorithm is a hash function recognized by the user\n // agent, add the parsed token to result.\n if (supportedHashes.includes(algorithm)) {\n result.push(parsedToken.groups)\n }\n }\n\n // 4. Return no metadata if empty is true, otherwise return result.\n if (empty === true) {\n return 'no metadata'\n }\n\n return result\n}\n\n/**\n * @param {{ algo: 'sha256' | 'sha384' | 'sha512' }[]} metadataList\n */\nfunction getStrongestMetadata (metadataList) {\n // Let algorithm be the algo component of the first item in metadataList.\n // Can be sha256\n let algorithm = metadataList[0].algo\n // If the algorithm is sha512, then it is the strongest\n // and we can return immediately\n if (algorithm[3] === '5') {\n return algorithm\n }\n\n for (let i = 1; i < metadataList.length; ++i) {\n const metadata = metadataList[i]\n // If the algorithm is sha512, then it is the strongest\n // and we can break the loop immediately\n if (metadata.algo[3] === '5') {\n algorithm = 'sha512'\n break\n // If the algorithm is sha384, then a potential sha256 or sha384 is ignored\n } else if (algorithm[3] === '3') {\n continue\n // algorithm is sha256, check if algorithm is sha384 and if so, set it as\n // the strongest\n } else if (metadata.algo[3] === '3') {\n algorithm = 'sha384'\n }\n }\n return algorithm\n}\n\nfunction filterMetadataListByAlgorithm (metadataList, algorithm) {\n if (metadataList.length === 1) {\n return metadataList\n }\n\n let pos = 0\n for (let i = 0; i < metadataList.length; ++i) {\n if (metadataList[i].algo === algorithm) {\n metadataList[pos++] = metadataList[i]\n }\n }\n\n metadataList.length = pos\n\n return metadataList\n}\n\n/**\n * Compares two base64 strings, allowing for base64url\n * in the second string.\n *\n* @param {string} actualValue always base64\n * @param {string} expectedValue base64 or base64url\n * @returns {boolean}\n */\nfunction compareBase64Mixed (actualValue, expectedValue) {\n if (actualValue.length !== expectedValue.length) {\n return false\n }\n for (let i = 0; i < actualValue.length; ++i) {\n if (actualValue[i] !== expectedValue[i]) {\n if (\n (actualValue[i] === '+' && expectedValue[i] === '-') ||\n (actualValue[i] === '/' && expectedValue[i] === '_')\n ) {\n continue\n }\n return false\n }\n }\n\n return true\n}\n\n// https://w3c.github.io/webappsec-upgrade-insecure-requests/#upgrade-request\nfunction tryUpgradeRequestToAPotentiallyTrustworthyURL (request) {\n // TODO\n}\n\n/**\n * @link {https://html.spec.whatwg.org/multipage/origin.html#same-origin}\n * @param {URL} A\n * @param {URL} B\n */\nfunction sameOrigin (A, B) {\n // 1. If A and B are the same opaque origin, then return true.\n if (A.origin === B.origin && A.origin === 'null') {\n return true\n }\n\n // 2. If A and B are both tuple origins and their schemes,\n // hosts, and port are identical, then return true.\n if (A.protocol === B.protocol && A.hostname === B.hostname && A.port === B.port) {\n return true\n }\n\n // 3. Return false.\n return false\n}\n\nfunction createDeferredPromise () {\n let res\n let rej\n const promise = new Promise((resolve, reject) => {\n res = resolve\n rej = reject\n })\n\n return { promise, resolve: res, reject: rej }\n}\n\nfunction isAborted (fetchParams) {\n return fetchParams.controller.state === 'aborted'\n}\n\nfunction isCancelled (fetchParams) {\n return fetchParams.controller.state === 'aborted' ||\n fetchParams.controller.state === 'terminated'\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-method-normalize\n * @param {string} method\n */\nfunction normalizeMethod (method) {\n return normalizedMethodRecordsBase[method.toLowerCase()] ?? method\n}\n\n// https://infra.spec.whatwg.org/#serialize-a-javascript-value-to-a-json-string\nfunction serializeJavascriptValueToJSONString (value) {\n // 1. Let result be ? Call(%JSON.stringify%, undefined, \u00AB value \u00BB).\n const result = JSON.stringify(value)\n\n // 2. If result is undefined, then throw a TypeError.\n if (result === undefined) {\n throw new TypeError('Value is not JSON serializable')\n }\n\n // 3. Assert: result is a string.\n assert(typeof result === 'string')\n\n // 4. Return result.\n return result\n}\n\n// https://tc39.es/ecma262/#sec-%25iteratorprototype%25-object\nconst esIteratorPrototype = Object.getPrototypeOf(Object.getPrototypeOf([][Symbol.iterator]()))\n\n/**\n * @see https://webidl.spec.whatwg.org/#dfn-iterator-prototype-object\n * @param {string} name name of the instance\n * @param {symbol} kInternalIterator\n * @param {string | number} [keyIndex]\n * @param {string | number} [valueIndex]\n */\nfunction createIterator (name, kInternalIterator, keyIndex = 0, valueIndex = 1) {\n class FastIterableIterator {\n /** @type {any} */\n #target\n /** @type {'key' | 'value' | 'key+value'} */\n #kind\n /** @type {number} */\n #index\n\n /**\n * @see https://webidl.spec.whatwg.org/#dfn-default-iterator-object\n * @param {unknown} target\n * @param {'key' | 'value' | 'key+value'} kind\n */\n constructor (target, kind) {\n this.#target = target\n this.#kind = kind\n this.#index = 0\n }\n\n next () {\n // 1. Let interface be the interface for which the iterator prototype object exists.\n // 2. Let thisValue be the this value.\n // 3. Let object be ? ToObject(thisValue).\n // 4. If object is a platform object, then perform a security\n // check, passing:\n // 5. If object is not a default iterator object for interface,\n // then throw a TypeError.\n if (typeof this !== 'object' || this === null || !(#target in this)) {\n throw new TypeError(\n `'next' called on an object that does not implement interface ${name} Iterator.`\n )\n }\n\n // 6. Let index be object\u2019s index.\n // 7. Let kind be object\u2019s kind.\n // 8. Let values be object\u2019s target's value pairs to iterate over.\n const index = this.#index\n const values = this.#target[kInternalIterator]\n\n // 9. Let len be the length of values.\n const len = values.length\n\n // 10. If index is greater than or equal to len, then return\n // CreateIterResultObject(undefined, true).\n if (index >= len) {\n return {\n value: undefined,\n done: true\n }\n }\n\n // 11. Let pair be the entry in values at index index.\n const { [keyIndex]: key, [valueIndex]: value } = values[index]\n\n // 12. Set object\u2019s index to index + 1.\n this.#index = index + 1\n\n // 13. Return the iterator result for pair and kind.\n\n // https://webidl.spec.whatwg.org/#iterator-result\n\n // 1. Let result be a value determined by the value of kind:\n let result\n switch (this.#kind) {\n case 'key':\n // 1. Let idlKey be pair\u2019s key.\n // 2. Let key be the result of converting idlKey to an\n // ECMAScript value.\n // 3. result is key.\n result = key\n break\n case 'value':\n // 1. Let idlValue be pair\u2019s value.\n // 2. Let value be the result of converting idlValue to\n // an ECMAScript value.\n // 3. result is value.\n result = value\n break\n case 'key+value':\n // 1. Let idlKey be pair\u2019s key.\n // 2. Let idlValue be pair\u2019s value.\n // 3. Let key be the result of converting idlKey to an\n // ECMAScript value.\n // 4. Let value be the result of converting idlValue to\n // an ECMAScript value.\n // 5. Let array be ! ArrayCreate(2).\n // 6. Call ! CreateDataProperty(array, \"0\", key).\n // 7. Call ! CreateDataProperty(array, \"1\", value).\n // 8. result is array.\n result = [key, value]\n break\n }\n\n // 2. Return CreateIterResultObject(result, false).\n return {\n value: result,\n done: false\n }\n }\n }\n\n // https://webidl.spec.whatwg.org/#dfn-iterator-prototype-object\n // @ts-ignore\n delete FastIterableIterator.prototype.constructor\n\n Object.setPrototypeOf(FastIterableIterator.prototype, esIteratorPrototype)\n\n Object.defineProperties(FastIterableIterator.prototype, {\n [Symbol.toStringTag]: {\n writable: false,\n enumerable: false,\n configurable: true,\n value: `${name} Iterator`\n },\n next: { writable: true, enumerable: true, configurable: true }\n })\n\n /**\n * @param {unknown} target\n * @param {'key' | 'value' | 'key+value'} kind\n * @returns {IterableIterator}\n */\n return function (target, kind) {\n return new FastIterableIterator(target, kind)\n }\n}\n\n/**\n * @see https://webidl.spec.whatwg.org/#dfn-iterator-prototype-object\n * @param {string} name name of the instance\n * @param {any} object class\n * @param {symbol} kInternalIterator\n * @param {string | number} [keyIndex]\n * @param {string | number} [valueIndex]\n */\nfunction iteratorMixin (name, object, kInternalIterator, keyIndex = 0, valueIndex = 1) {\n const makeIterator = createIterator(name, kInternalIterator, keyIndex, valueIndex)\n\n const properties = {\n keys: {\n writable: true,\n enumerable: true,\n configurable: true,\n value: function keys () {\n webidl.brandCheck(this, object)\n return makeIterator(this, 'key')\n }\n },\n values: {\n writable: true,\n enumerable: true,\n configurable: true,\n value: function values () {\n webidl.brandCheck(this, object)\n return makeIterator(this, 'value')\n }\n },\n entries: {\n writable: true,\n enumerable: true,\n configurable: true,\n value: function entries () {\n webidl.brandCheck(this, object)\n return makeIterator(this, 'key+value')\n }\n },\n forEach: {\n writable: true,\n enumerable: true,\n configurable: true,\n value: function forEach (callbackfn, thisArg = globalThis) {\n webidl.brandCheck(this, object)\n webidl.argumentLengthCheck(arguments, 1, `${name}.forEach`)\n if (typeof callbackfn !== 'function') {\n throw new TypeError(\n `Failed to execute 'forEach' on '${name}': parameter 1 is not of type 'Function'.`\n )\n }\n for (const { 0: key, 1: value } of makeIterator(this, 'key+value')) {\n callbackfn.call(thisArg, value, key, this)\n }\n }\n }\n }\n\n return Object.defineProperties(object.prototype, {\n ...properties,\n [Symbol.iterator]: {\n writable: true,\n enumerable: false,\n configurable: true,\n value: properties.entries.value\n }\n })\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#body-fully-read\n */\nasync function fullyReadBody (body, processBody, processBodyError) {\n // 1. If taskDestination is null, then set taskDestination to\n // the result of starting a new parallel queue.\n\n // 2. Let successSteps given a byte sequence bytes be to queue a\n // fetch task to run processBody given bytes, with taskDestination.\n const successSteps = processBody\n\n // 3. Let errorSteps be to queue a fetch task to run processBodyError,\n // with taskDestination.\n const errorSteps = processBodyError\n\n // 4. Let reader be the result of getting a reader for body\u2019s stream.\n // If that threw an exception, then run errorSteps with that\n // exception and return.\n let reader\n\n try {\n reader = body.stream.getReader()\n } catch (e) {\n errorSteps(e)\n return\n }\n\n // 5. Read all bytes from reader, given successSteps and errorSteps.\n try {\n successSteps(await readAllBytes(reader))\n } catch (e) {\n errorSteps(e)\n }\n}\n\nfunction isReadableStreamLike (stream) {\n return stream instanceof ReadableStream || (\n stream[Symbol.toStringTag] === 'ReadableStream' &&\n typeof stream.tee === 'function'\n )\n}\n\n/**\n * @param {ReadableStreamController} controller\n */\nfunction readableStreamClose (controller) {\n try {\n controller.close()\n controller.byobRequest?.respond(0)\n } catch (err) {\n // TODO: add comment explaining why this error occurs.\n if (!err.message.includes('Controller is already closed') && !err.message.includes('ReadableStream is already closed')) {\n throw err\n }\n }\n}\n\nconst invalidIsomorphicEncodeValueRegex = /[^\\x00-\\xFF]/ // eslint-disable-line\n\n/**\n * @see https://infra.spec.whatwg.org/#isomorphic-encode\n * @param {string} input\n */\nfunction isomorphicEncode (input) {\n // 1. Assert: input contains no code points greater than U+00FF.\n assert(!invalidIsomorphicEncodeValueRegex.test(input))\n\n // 2. Return a byte sequence whose length is equal to input\u2019s code\n // point length and whose bytes have the same values as the\n // values of input\u2019s code points, in the same order\n return input\n}\n\n/**\n * @see https://streams.spec.whatwg.org/#readablestreamdefaultreader-read-all-bytes\n * @see https://streams.spec.whatwg.org/#read-loop\n * @param {ReadableStreamDefaultReader} reader\n */\nasync function readAllBytes (reader) {\n const bytes = []\n let byteLength = 0\n\n while (true) {\n const { done, value: chunk } = await reader.read()\n\n if (done) {\n // 1. Call successSteps with bytes.\n return Buffer.concat(bytes, byteLength)\n }\n\n // 1. If chunk is not a Uint8Array object, call failureSteps\n // with a TypeError and abort these steps.\n if (!isUint8Array(chunk)) {\n throw new TypeError('Received non-Uint8Array chunk')\n }\n\n // 2. Append the bytes represented by chunk to bytes.\n bytes.push(chunk)\n byteLength += chunk.length\n\n // 3. Read-loop given reader, bytes, successSteps, and failureSteps.\n }\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#is-local\n * @param {URL} url\n */\nfunction urlIsLocal (url) {\n assert('protocol' in url) // ensure it's a url object\n\n const protocol = url.protocol\n\n return protocol === 'about:' || protocol === 'blob:' || protocol === 'data:'\n}\n\n/**\n * @param {string|URL} url\n * @returns {boolean}\n */\nfunction urlHasHttpsScheme (url) {\n return (\n (\n typeof url === 'string' &&\n url[5] === ':' &&\n url[0] === 'h' &&\n url[1] === 't' &&\n url[2] === 't' &&\n url[3] === 'p' &&\n url[4] === 's'\n ) ||\n url.protocol === 'https:'\n )\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#http-scheme\n * @param {URL} url\n */\nfunction urlIsHttpHttpsScheme (url) {\n assert('protocol' in url) // ensure it's a url object\n\n const protocol = url.protocol\n\n return protocol === 'http:' || protocol === 'https:'\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#simple-range-header-value\n * @param {string} value\n * @param {boolean} allowWhitespace\n */\nfunction simpleRangeHeaderValue (value, allowWhitespace) {\n // 1. Let data be the isomorphic decoding of value.\n // Note: isomorphic decoding takes a sequence of bytes (ie. a Uint8Array) and turns it into a string,\n // nothing more. We obviously don't need to do that if value is a string already.\n const data = value\n\n // 2. If data does not start with \"bytes\", then return failure.\n if (!data.startsWith('bytes')) {\n return 'failure'\n }\n\n // 3. Let position be a position variable for data, initially pointing at the 5th code point of data.\n const position = { position: 5 }\n\n // 4. If allowWhitespace is true, collect a sequence of code points that are HTTP tab or space,\n // from data given position.\n if (allowWhitespace) {\n collectASequenceOfCodePoints(\n (char) => char === '\\t' || char === ' ',\n data,\n position\n )\n }\n\n // 5. If the code point at position within data is not U+003D (=), then return failure.\n if (data.charCodeAt(position.position) !== 0x3D) {\n return 'failure'\n }\n\n // 6. Advance position by 1.\n position.position++\n\n // 7. If allowWhitespace is true, collect a sequence of code points that are HTTP tab or space, from\n // data given position.\n if (allowWhitespace) {\n collectASequenceOfCodePoints(\n (char) => char === '\\t' || char === ' ',\n data,\n position\n )\n }\n\n // 8. Let rangeStart be the result of collecting a sequence of code points that are ASCII digits,\n // from data given position.\n const rangeStart = collectASequenceOfCodePoints(\n (char) => {\n const code = char.charCodeAt(0)\n\n return code >= 0x30 && code <= 0x39\n },\n data,\n position\n )\n\n // 9. Let rangeStartValue be rangeStart, interpreted as decimal number, if rangeStart is not the\n // empty string; otherwise null.\n const rangeStartValue = rangeStart.length ? Number(rangeStart) : null\n\n // 10. If allowWhitespace is true, collect a sequence of code points that are HTTP tab or space,\n // from data given position.\n if (allowWhitespace) {\n collectASequenceOfCodePoints(\n (char) => char === '\\t' || char === ' ',\n data,\n position\n )\n }\n\n // 11. If the code point at position within data is not U+002D (-), then return failure.\n if (data.charCodeAt(position.position) !== 0x2D) {\n return 'failure'\n }\n\n // 12. Advance position by 1.\n position.position++\n\n // 13. If allowWhitespace is true, collect a sequence of code points that are HTTP tab\n // or space, from data given position.\n // Note from Khafra: its the same step as in #8 again lol\n if (allowWhitespace) {\n collectASequenceOfCodePoints(\n (char) => char === '\\t' || char === ' ',\n data,\n position\n )\n }\n\n // 14. Let rangeEnd be the result of collecting a sequence of code points that are\n // ASCII digits, from data given position.\n // Note from Khafra: you wouldn't guess it, but this is also the same step as #8\n const rangeEnd = collectASequenceOfCodePoints(\n (char) => {\n const code = char.charCodeAt(0)\n\n return code >= 0x30 && code <= 0x39\n },\n data,\n position\n )\n\n // 15. Let rangeEndValue be rangeEnd, interpreted as decimal number, if rangeEnd\n // is not the empty string; otherwise null.\n // Note from Khafra: THE SAME STEP, AGAIN!!!\n // Note: why interpret as a decimal if we only collect ascii digits?\n const rangeEndValue = rangeEnd.length ? Number(rangeEnd) : null\n\n // 16. If position is not past the end of data, then return failure.\n if (position.position < data.length) {\n return 'failure'\n }\n\n // 17. If rangeEndValue and rangeStartValue are null, then return failure.\n if (rangeEndValue === null && rangeStartValue === null) {\n return 'failure'\n }\n\n // 18. If rangeStartValue and rangeEndValue are numbers, and rangeStartValue is\n // greater than rangeEndValue, then return failure.\n // Note: ... when can they not be numbers?\n if (rangeStartValue > rangeEndValue) {\n return 'failure'\n }\n\n // 19. Return (rangeStartValue, rangeEndValue).\n return { rangeStartValue, rangeEndValue }\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#build-a-content-range\n * @param {number} rangeStart\n * @param {number} rangeEnd\n * @param {number} fullLength\n */\nfunction buildContentRange (rangeStart, rangeEnd, fullLength) {\n // 1. Let contentRange be `bytes `.\n let contentRange = 'bytes '\n\n // 2. Append rangeStart, serialized and isomorphic encoded, to contentRange.\n contentRange += isomorphicEncode(`${rangeStart}`)\n\n // 3. Append 0x2D (-) to contentRange.\n contentRange += '-'\n\n // 4. Append rangeEnd, serialized and isomorphic encoded to contentRange.\n contentRange += isomorphicEncode(`${rangeEnd}`)\n\n // 5. Append 0x2F (/) to contentRange.\n contentRange += '/'\n\n // 6. Append fullLength, serialized and isomorphic encoded to contentRange.\n contentRange += isomorphicEncode(`${fullLength}`)\n\n // 7. Return contentRange.\n return contentRange\n}\n\n// A Stream, which pipes the response to zlib.createInflate() or\n// zlib.createInflateRaw() depending on the first byte of the Buffer.\n// If the lower byte of the first byte is 0x08, then the stream is\n// interpreted as a zlib stream, otherwise it's interpreted as a\n// raw deflate stream.\nclass InflateStream extends Transform {\n #zlibOptions\n\n /** @param {zlib.ZlibOptions} [zlibOptions] */\n constructor (zlibOptions) {\n super()\n this.#zlibOptions = zlibOptions\n }\n\n _transform (chunk, encoding, callback) {\n if (!this._inflateStream) {\n if (chunk.length === 0) {\n callback()\n return\n }\n this._inflateStream = (chunk[0] & 0x0F) === 0x08\n ? zlib.createInflate(this.#zlibOptions)\n : zlib.createInflateRaw(this.#zlibOptions)\n\n this._inflateStream.on('data', this.push.bind(this))\n this._inflateStream.on('end', () => this.push(null))\n this._inflateStream.on('error', (err) => this.destroy(err))\n }\n\n this._inflateStream.write(chunk, encoding, callback)\n }\n\n _final (callback) {\n if (this._inflateStream) {\n this._inflateStream.end()\n this._inflateStream = null\n }\n callback()\n }\n}\n\n/**\n * @param {zlib.ZlibOptions} [zlibOptions]\n * @returns {InflateStream}\n */\nfunction createInflate (zlibOptions) {\n return new InflateStream(zlibOptions)\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-header-extract-mime-type\n * @param {import('./headers').HeadersList} headers\n */\nfunction extractMimeType (headers) {\n // 1. Let charset be null.\n let charset = null\n\n // 2. Let essence be null.\n let essence = null\n\n // 3. Let mimeType be null.\n let mimeType = null\n\n // 4. Let values be the result of getting, decoding, and splitting `Content-Type` from headers.\n const values = getDecodeSplit('content-type', headers)\n\n // 5. If values is null, then return failure.\n if (values === null) {\n return 'failure'\n }\n\n // 6. For each value of values:\n for (const value of values) {\n // 6.1. Let temporaryMimeType be the result of parsing value.\n const temporaryMimeType = parseMIMEType(value)\n\n // 6.2. If temporaryMimeType is failure or its essence is \"*/*\", then continue.\n if (temporaryMimeType === 'failure' || temporaryMimeType.essence === '*/*') {\n continue\n }\n\n // 6.3. Set mimeType to temporaryMimeType.\n mimeType = temporaryMimeType\n\n // 6.4. If mimeType\u2019s essence is not essence, then:\n if (mimeType.essence !== essence) {\n // 6.4.1. Set charset to null.\n charset = null\n\n // 6.4.2. If mimeType\u2019s parameters[\"charset\"] exists, then set charset to\n // mimeType\u2019s parameters[\"charset\"].\n if (mimeType.parameters.has('charset')) {\n charset = mimeType.parameters.get('charset')\n }\n\n // 6.4.3. Set essence to mimeType\u2019s essence.\n essence = mimeType.essence\n } else if (!mimeType.parameters.has('charset') && charset !== null) {\n // 6.5. Otherwise, if mimeType\u2019s parameters[\"charset\"] does not exist, and\n // charset is non-null, set mimeType\u2019s parameters[\"charset\"] to charset.\n mimeType.parameters.set('charset', charset)\n }\n }\n\n // 7. If mimeType is null, then return failure.\n if (mimeType == null) {\n return 'failure'\n }\n\n // 8. Return mimeType.\n return mimeType\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#header-value-get-decode-and-split\n * @param {string|null} value\n */\nfunction gettingDecodingSplitting (value) {\n // 1. Let input be the result of isomorphic decoding value.\n const input = value\n\n // 2. Let position be a position variable for input, initially pointing at the start of input.\n const position = { position: 0 }\n\n // 3. Let values be a list of strings, initially empty.\n const values = []\n\n // 4. Let temporaryValue be the empty string.\n let temporaryValue = ''\n\n // 5. While position is not past the end of input:\n while (position.position < input.length) {\n // 5.1. Append the result of collecting a sequence of code points that are not U+0022 (\")\n // or U+002C (,) from input, given position, to temporaryValue.\n temporaryValue += collectASequenceOfCodePoints(\n (char) => char !== '\"' && char !== ',',\n input,\n position\n )\n\n // 5.2. If position is not past the end of input, then:\n if (position.position < input.length) {\n // 5.2.1. If the code point at position within input is U+0022 (\"), then:\n if (input.charCodeAt(position.position) === 0x22) {\n // 5.2.1.1. Append the result of collecting an HTTP quoted string from input, given position, to temporaryValue.\n temporaryValue += collectAnHTTPQuotedString(\n input,\n position\n )\n\n // 5.2.1.2. If position is not past the end of input, then continue.\n if (position.position < input.length) {\n continue\n }\n } else {\n // 5.2.2. Otherwise:\n\n // 5.2.2.1. Assert: the code point at position within input is U+002C (,).\n assert(input.charCodeAt(position.position) === 0x2C)\n\n // 5.2.2.2. Advance position by 1.\n position.position++\n }\n }\n\n // 5.3. Remove all HTTP tab or space from the start and end of temporaryValue.\n temporaryValue = removeChars(temporaryValue, true, true, (char) => char === 0x9 || char === 0x20)\n\n // 5.4. Append temporaryValue to values.\n values.push(temporaryValue)\n\n // 5.6. Set temporaryValue to the empty string.\n temporaryValue = ''\n }\n\n // 6. Return values.\n return values\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-header-list-get-decode-split\n * @param {string} name lowercase header name\n * @param {import('./headers').HeadersList} list\n */\nfunction getDecodeSplit (name, list) {\n // 1. Let value be the result of getting name from list.\n const value = list.get(name, true)\n\n // 2. If value is null, then return null.\n if (value === null) {\n return null\n }\n\n // 3. Return the result of getting, decoding, and splitting value.\n return gettingDecodingSplitting(value)\n}\n\nconst textDecoder = new TextDecoder()\n\n/**\n * @see https://encoding.spec.whatwg.org/#utf-8-decode\n * @param {Buffer} buffer\n */\nfunction utf8DecodeBytes (buffer) {\n if (buffer.length === 0) {\n return ''\n }\n\n // 1. Let buffer be the result of peeking three bytes from\n // ioQueue, converted to a byte sequence.\n\n // 2. If buffer is 0xEF 0xBB 0xBF, then read three\n // bytes from ioQueue. (Do nothing with those bytes.)\n if (buffer[0] === 0xEF && buffer[1] === 0xBB && buffer[2] === 0xBF) {\n buffer = buffer.subarray(3)\n }\n\n // 3. Process a queue with an instance of UTF-8\u2019s\n // decoder, ioQueue, output, and \"replacement\".\n const output = textDecoder.decode(buffer)\n\n // 4. Return output.\n return output\n}\n\nclass EnvironmentSettingsObjectBase {\n get baseUrl () {\n return getGlobalOrigin()\n }\n\n get origin () {\n return this.baseUrl?.origin\n }\n\n policyContainer = makePolicyContainer()\n}\n\nclass EnvironmentSettingsObject {\n settingsObject = new EnvironmentSettingsObjectBase()\n}\n\nconst environmentSettingsObject = new EnvironmentSettingsObject()\n\nmodule.exports = {\n isAborted,\n isCancelled,\n isValidEncodedURL,\n createDeferredPromise,\n ReadableStreamFrom,\n tryUpgradeRequestToAPotentiallyTrustworthyURL,\n clampAndCoarsenConnectionTimingInfo,\n coarsenedSharedCurrentTime,\n determineRequestsReferrer,\n makePolicyContainer,\n clonePolicyContainer,\n appendFetchMetadata,\n appendRequestOriginHeader,\n TAOCheck,\n corsCheck,\n crossOriginResourcePolicyCheck,\n createOpaqueTimingInfo,\n setRequestReferrerPolicyOnRedirect,\n isValidHTTPToken,\n requestBadPort,\n requestCurrentURL,\n responseURL,\n responseLocationURL,\n isBlobLike,\n isURLPotentiallyTrustworthy,\n isValidReasonPhrase,\n sameOrigin,\n normalizeMethod,\n serializeJavascriptValueToJSONString,\n iteratorMixin,\n createIterator,\n isValidHeaderName,\n isValidHeaderValue,\n isErrorLike,\n fullyReadBody,\n bytesMatch,\n isReadableStreamLike,\n readableStreamClose,\n isomorphicEncode,\n urlIsLocal,\n urlHasHttpsScheme,\n urlIsHttpHttpsScheme,\n readAllBytes,\n simpleRangeHeaderValue,\n buildContentRange,\n parseMetadata,\n createInflate,\n extractMimeType,\n getDecodeSplit,\n utf8DecodeBytes,\n environmentSettingsObject\n}\n", "'use strict'\n\nmodule.exports = {\n kUrl: Symbol('url'),\n kHeaders: Symbol('headers'),\n kSignal: Symbol('signal'),\n kState: Symbol('state'),\n kDispatcher: Symbol('dispatcher')\n}\n", "'use strict'\n\nconst { Blob, File } = require('node:buffer')\nconst { kState } = require('./symbols')\nconst { webidl } = require('./webidl')\n\n// TODO(@KhafraDev): remove\nclass FileLike {\n constructor (blobLike, fileName, options = {}) {\n // TODO: argument idl type check\n\n // The File constructor is invoked with two or three parameters, depending\n // on whether the optional dictionary parameter is used. When the File()\n // constructor is invoked, user agents must run the following steps:\n\n // 1. Let bytes be the result of processing blob parts given fileBits and\n // options.\n\n // 2. Let n be the fileName argument to the constructor.\n const n = fileName\n\n // 3. Process FilePropertyBag dictionary argument by running the following\n // substeps:\n\n // 1. If the type member is provided and is not the empty string, let t\n // be set to the type dictionary member. If t contains any characters\n // outside the range U+0020 to U+007E, then set t to the empty string\n // and return from these substeps.\n // TODO\n const t = options.type\n\n // 2. Convert every character in t to ASCII lowercase.\n // TODO\n\n // 3. If the lastModified member is provided, let d be set to the\n // lastModified dictionary member. If it is not provided, set d to the\n // current date and time represented as the number of milliseconds since\n // the Unix Epoch (which is the equivalent of Date.now() [ECMA-262]).\n const d = options.lastModified ?? Date.now()\n\n // 4. Return a new File object F such that:\n // F refers to the bytes byte sequence.\n // F.size is set to the number of total bytes in bytes.\n // F.name is set to n.\n // F.type is set to t.\n // F.lastModified is set to d.\n\n this[kState] = {\n blobLike,\n name: n,\n type: t,\n lastModified: d\n }\n }\n\n stream (...args) {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.stream(...args)\n }\n\n arrayBuffer (...args) {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.arrayBuffer(...args)\n }\n\n slice (...args) {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.slice(...args)\n }\n\n text (...args) {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.text(...args)\n }\n\n get size () {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.size\n }\n\n get type () {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].blobLike.type\n }\n\n get name () {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].name\n }\n\n get lastModified () {\n webidl.brandCheck(this, FileLike)\n\n return this[kState].lastModified\n }\n\n get [Symbol.toStringTag] () {\n return 'File'\n }\n}\n\nwebidl.converters.Blob = webidl.interfaceConverter(Blob)\n\n// If this function is moved to ./util.js, some tools (such as\n// rollup) will warn about circular dependencies. See:\n// https://github.com/nodejs/undici/issues/1629\nfunction isFileLike (object) {\n return (\n (object instanceof File) ||\n (\n object &&\n (typeof object.stream === 'function' ||\n typeof object.arrayBuffer === 'function') &&\n object[Symbol.toStringTag] === 'File'\n )\n )\n}\n\nmodule.exports = { FileLike, isFileLike }\n", "'use strict'\n\nconst { isBlobLike, iteratorMixin } = require('./util')\nconst { kState } = require('./symbols')\nconst { kEnumerableProperty } = require('../../core/util')\nconst { FileLike, isFileLike } = require('./file')\nconst { webidl } = require('./webidl')\nconst { File: NativeFile } = require('node:buffer')\nconst nodeUtil = require('node:util')\n\n/** @type {globalThis['File']} */\nconst File = globalThis.File ?? NativeFile\n\n// https://xhr.spec.whatwg.org/#formdata\nclass FormData {\n constructor (form) {\n webidl.util.markAsUncloneable(this)\n\n if (form !== undefined) {\n throw webidl.errors.conversionFailed({\n prefix: 'FormData constructor',\n argument: 'Argument 1',\n types: ['undefined']\n })\n }\n\n this[kState] = []\n }\n\n append (name, value, filename = undefined) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.append'\n webidl.argumentLengthCheck(arguments, 2, prefix)\n\n if (arguments.length === 3 && !isBlobLike(value)) {\n throw new TypeError(\n \"Failed to execute 'append' on 'FormData': parameter 2 is not of type 'Blob'\"\n )\n }\n\n // 1. Let value be value if given; otherwise blobValue.\n\n name = webidl.converters.USVString(name, prefix, 'name')\n value = isBlobLike(value)\n ? webidl.converters.Blob(value, prefix, 'value', { strict: false })\n : webidl.converters.USVString(value, prefix, 'value')\n filename = arguments.length === 3\n ? webidl.converters.USVString(filename, prefix, 'filename')\n : undefined\n\n // 2. Let entry be the result of creating an entry with\n // name, value, and filename if given.\n const entry = makeEntry(name, value, filename)\n\n // 3. Append entry to this\u2019s entry list.\n this[kState].push(entry)\n }\n\n delete (name) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.delete'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n name = webidl.converters.USVString(name, prefix, 'name')\n\n // The delete(name) method steps are to remove all entries whose name\n // is name from this\u2019s entry list.\n this[kState] = this[kState].filter(entry => entry.name !== name)\n }\n\n get (name) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.get'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n name = webidl.converters.USVString(name, prefix, 'name')\n\n // 1. If there is no entry whose name is name in this\u2019s entry list,\n // then return null.\n const idx = this[kState].findIndex((entry) => entry.name === name)\n if (idx === -1) {\n return null\n }\n\n // 2. Return the value of the first entry whose name is name from\n // this\u2019s entry list.\n return this[kState][idx].value\n }\n\n getAll (name) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.getAll'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n name = webidl.converters.USVString(name, prefix, 'name')\n\n // 1. If there is no entry whose name is name in this\u2019s entry list,\n // then return the empty list.\n // 2. Return the values of all entries whose name is name, in order,\n // from this\u2019s entry list.\n return this[kState]\n .filter((entry) => entry.name === name)\n .map((entry) => entry.value)\n }\n\n has (name) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.has'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n name = webidl.converters.USVString(name, prefix, 'name')\n\n // The has(name) method steps are to return true if there is an entry\n // whose name is name in this\u2019s entry list; otherwise false.\n return this[kState].findIndex((entry) => entry.name === name) !== -1\n }\n\n set (name, value, filename = undefined) {\n webidl.brandCheck(this, FormData)\n\n const prefix = 'FormData.set'\n webidl.argumentLengthCheck(arguments, 2, prefix)\n\n if (arguments.length === 3 && !isBlobLike(value)) {\n throw new TypeError(\n \"Failed to execute 'set' on 'FormData': parameter 2 is not of type 'Blob'\"\n )\n }\n\n // The set(name, value) and set(name, blobValue, filename) method steps\n // are:\n\n // 1. Let value be value if given; otherwise blobValue.\n\n name = webidl.converters.USVString(name, prefix, 'name')\n value = isBlobLike(value)\n ? webidl.converters.Blob(value, prefix, 'name', { strict: false })\n : webidl.converters.USVString(value, prefix, 'name')\n filename = arguments.length === 3\n ? webidl.converters.USVString(filename, prefix, 'name')\n : undefined\n\n // 2. Let entry be the result of creating an entry with name, value, and\n // filename if given.\n const entry = makeEntry(name, value, filename)\n\n // 3. If there are entries in this\u2019s entry list whose name is name, then\n // replace the first such entry with entry and remove the others.\n const idx = this[kState].findIndex((entry) => entry.name === name)\n if (idx !== -1) {\n this[kState] = [\n ...this[kState].slice(0, idx),\n entry,\n ...this[kState].slice(idx + 1).filter((entry) => entry.name !== name)\n ]\n } else {\n // 4. Otherwise, append entry to this\u2019s entry list.\n this[kState].push(entry)\n }\n }\n\n [nodeUtil.inspect.custom] (depth, options) {\n const state = this[kState].reduce((a, b) => {\n if (a[b.name]) {\n if (Array.isArray(a[b.name])) {\n a[b.name].push(b.value)\n } else {\n a[b.name] = [a[b.name], b.value]\n }\n } else {\n a[b.name] = b.value\n }\n\n return a\n }, { __proto__: null })\n\n options.depth ??= depth\n options.colors ??= true\n\n const output = nodeUtil.formatWithOptions(options, state)\n\n // remove [Object null prototype]\n return `FormData ${output.slice(output.indexOf(']') + 2)}`\n }\n}\n\niteratorMixin('FormData', FormData, kState, 'name', 'value')\n\nObject.defineProperties(FormData.prototype, {\n append: kEnumerableProperty,\n delete: kEnumerableProperty,\n get: kEnumerableProperty,\n getAll: kEnumerableProperty,\n has: kEnumerableProperty,\n set: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'FormData',\n configurable: true\n }\n})\n\n/**\n * @see https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#create-an-entry\n * @param {string} name\n * @param {string|Blob} value\n * @param {?string} filename\n * @returns\n */\nfunction makeEntry (name, value, filename) {\n // 1. Set name to the result of converting name into a scalar value string.\n // Note: This operation was done by the webidl converter USVString.\n\n // 2. If value is a string, then set value to the result of converting\n // value into a scalar value string.\n if (typeof value === 'string') {\n // Note: This operation was done by the webidl converter USVString.\n } else {\n // 3. Otherwise:\n\n // 1. If value is not a File object, then set value to a new File object,\n // representing the same bytes, whose name attribute value is \"blob\"\n if (!isFileLike(value)) {\n value = value instanceof Blob\n ? new File([value], 'blob', { type: value.type })\n : new FileLike(value, 'blob', { type: value.type })\n }\n\n // 2. If filename is given, then set value to a new File object,\n // representing the same bytes, whose name attribute is filename.\n if (filename !== undefined) {\n /** @type {FilePropertyBag} */\n const options = {\n type: value.type,\n lastModified: value.lastModified\n }\n\n value = value instanceof NativeFile\n ? new File([value], filename, options)\n : new FileLike(value, filename, options)\n }\n }\n\n // 4. Return an entry whose name is name and whose value is value.\n return { name, value }\n}\n\nmodule.exports = { FormData, makeEntry }\n", "'use strict'\n\nconst { isUSVString, bufferToLowerCasedHeaderName } = require('../../core/util')\nconst { utf8DecodeBytes } = require('./util')\nconst { HTTP_TOKEN_CODEPOINTS, isomorphicDecode } = require('./data-url')\nconst { isFileLike } = require('./file')\nconst { makeEntry } = require('./formdata')\nconst assert = require('node:assert')\nconst { File: NodeFile } = require('node:buffer')\n\nconst File = globalThis.File ?? NodeFile\n\nconst formDataNameBuffer = Buffer.from('form-data; name=\"')\nconst filenameBuffer = Buffer.from('; filename')\nconst dd = Buffer.from('--')\nconst ddcrlf = Buffer.from('--\\r\\n')\n\n/**\n * @param {string} chars\n */\nfunction isAsciiString (chars) {\n for (let i = 0; i < chars.length; ++i) {\n if ((chars.charCodeAt(i) & ~0x7F) !== 0) {\n return false\n }\n }\n return true\n}\n\n/**\n * @see https://andreubotella.github.io/multipart-form-data/#multipart-form-data-boundary\n * @param {string} boundary\n */\nfunction validateBoundary (boundary) {\n const length = boundary.length\n\n // - its length is greater or equal to 27 and lesser or equal to 70, and\n if (length < 27 || length > 70) {\n return false\n }\n\n // - it is composed by bytes in the ranges 0x30 to 0x39, 0x41 to 0x5A, or\n // 0x61 to 0x7A, inclusive (ASCII alphanumeric), or which are 0x27 ('),\n // 0x2D (-) or 0x5F (_).\n for (let i = 0; i < length; ++i) {\n const cp = boundary.charCodeAt(i)\n\n if (!(\n (cp >= 0x30 && cp <= 0x39) ||\n (cp >= 0x41 && cp <= 0x5a) ||\n (cp >= 0x61 && cp <= 0x7a) ||\n cp === 0x27 ||\n cp === 0x2d ||\n cp === 0x5f\n )) {\n return false\n }\n }\n\n return true\n}\n\n/**\n * @see https://andreubotella.github.io/multipart-form-data/#multipart-form-data-parser\n * @param {Buffer} input\n * @param {ReturnType} mimeType\n */\nfunction multipartFormDataParser (input, mimeType) {\n // 1. Assert: mimeType\u2019s essence is \"multipart/form-data\".\n assert(mimeType !== 'failure' && mimeType.essence === 'multipart/form-data')\n\n const boundaryString = mimeType.parameters.get('boundary')\n\n // 2. If mimeType\u2019s parameters[\"boundary\"] does not exist, return failure.\n // Otherwise, let boundary be the result of UTF-8 decoding mimeType\u2019s\n // parameters[\"boundary\"].\n if (boundaryString === undefined) {\n return 'failure'\n }\n\n const boundary = Buffer.from(`--${boundaryString}`, 'utf8')\n\n // 3. Let entry list be an empty entry list.\n const entryList = []\n\n // 4. Let position be a pointer to a byte in input, initially pointing at\n // the first byte.\n const position = { position: 0 }\n\n // Note: undici addition, allows leading and trailing CRLFs.\n while (input[position.position] === 0x0d && input[position.position + 1] === 0x0a) {\n position.position += 2\n }\n\n let trailing = input.length\n\n while (input[trailing - 1] === 0x0a && input[trailing - 2] === 0x0d) {\n trailing -= 2\n }\n\n if (trailing !== input.length) {\n input = input.subarray(0, trailing)\n }\n\n // 5. While true:\n while (true) {\n // 5.1. If position points to a sequence of bytes starting with 0x2D 0x2D\n // (`--`) followed by boundary, advance position by 2 + the length of\n // boundary. Otherwise, return failure.\n // Note: boundary is padded with 2 dashes already, no need to add 2.\n if (input.subarray(position.position, position.position + boundary.length).equals(boundary)) {\n position.position += boundary.length\n } else {\n return 'failure'\n }\n\n // 5.2. If position points to the sequence of bytes 0x2D 0x2D 0x0D 0x0A\n // (`--` followed by CR LF) followed by the end of input, return entry list.\n // Note: a body does NOT need to end with CRLF. It can end with --.\n if (\n (position.position === input.length - 2 && bufferStartsWith(input, dd, position)) ||\n (position.position === input.length - 4 && bufferStartsWith(input, ddcrlf, position))\n ) {\n return entryList\n }\n\n // 5.3. If position does not point to a sequence of bytes starting with 0x0D\n // 0x0A (CR LF), return failure.\n if (input[position.position] !== 0x0d || input[position.position + 1] !== 0x0a) {\n return 'failure'\n }\n\n // 5.4. Advance position by 2. (This skips past the newline.)\n position.position += 2\n\n // 5.5. Let name, filename and contentType be the result of parsing\n // multipart/form-data headers on input and position, if the result\n // is not failure. Otherwise, return failure.\n const result = parseMultipartFormDataHeaders(input, position)\n\n if (result === 'failure') {\n return 'failure'\n }\n\n let { name, filename, contentType, encoding } = result\n\n // 5.6. Advance position by 2. (This skips past the empty line that marks\n // the end of the headers.)\n position.position += 2\n\n // 5.7. Let body be the empty byte sequence.\n let body\n\n // 5.8. Body loop: While position is not past the end of input:\n // TODO: the steps here are completely wrong\n {\n const boundaryIndex = input.indexOf(boundary.subarray(2), position.position)\n\n if (boundaryIndex === -1) {\n return 'failure'\n }\n\n body = input.subarray(position.position, boundaryIndex - 4)\n\n position.position += body.length\n\n // Note: position must be advanced by the body's length before being\n // decoded, otherwise the parsing will fail.\n if (encoding === 'base64') {\n body = Buffer.from(body.toString(), 'base64')\n }\n }\n\n // 5.9. If position does not point to a sequence of bytes starting with\n // 0x0D 0x0A (CR LF), return failure. Otherwise, advance position by 2.\n if (input[position.position] !== 0x0d || input[position.position + 1] !== 0x0a) {\n return 'failure'\n } else {\n position.position += 2\n }\n\n // 5.10. If filename is not null:\n let value\n\n if (filename !== null) {\n // 5.10.1. If contentType is null, set contentType to \"text/plain\".\n contentType ??= 'text/plain'\n\n // 5.10.2. If contentType is not an ASCII string, set contentType to the empty string.\n\n // Note: `buffer.isAscii` can be used at zero-cost, but converting a string to a buffer is a high overhead.\n // Content-Type is a relatively small string, so it is faster to use `String#charCodeAt`.\n if (!isAsciiString(contentType)) {\n contentType = ''\n }\n\n // 5.10.3. Let value be a new File object with name filename, type contentType, and body body.\n value = new File([body], filename, { type: contentType })\n } else {\n // 5.11. Otherwise:\n\n // 5.11.1. Let value be the UTF-8 decoding without BOM of body.\n value = utf8DecodeBytes(Buffer.from(body))\n }\n\n // 5.12. Assert: name is a scalar value string and value is either a scalar value string or a File object.\n assert(isUSVString(name))\n assert((typeof value === 'string' && isUSVString(value)) || isFileLike(value))\n\n // 5.13. Create an entry with name and value, and append it to entry list.\n entryList.push(makeEntry(name, value, filename))\n }\n}\n\n/**\n * @see https://andreubotella.github.io/multipart-form-data/#parse-multipart-form-data-headers\n * @param {Buffer} input\n * @param {{ position: number }} position\n */\nfunction parseMultipartFormDataHeaders (input, position) {\n // 1. Let name, filename and contentType be null.\n let name = null\n let filename = null\n let contentType = null\n let encoding = null\n\n // 2. While true:\n while (true) {\n // 2.1. If position points to a sequence of bytes starting with 0x0D 0x0A (CR LF):\n if (input[position.position] === 0x0d && input[position.position + 1] === 0x0a) {\n // 2.1.1. If name is null, return failure.\n if (name === null) {\n return 'failure'\n }\n\n // 2.1.2. Return name, filename and contentType.\n return { name, filename, contentType, encoding }\n }\n\n // 2.2. Let header name be the result of collecting a sequence of bytes that are\n // not 0x0A (LF), 0x0D (CR) or 0x3A (:), given position.\n let headerName = collectASequenceOfBytes(\n (char) => char !== 0x0a && char !== 0x0d && char !== 0x3a,\n input,\n position\n )\n\n // 2.3. Remove any HTTP tab or space bytes from the start or end of header name.\n headerName = removeChars(headerName, true, true, (char) => char === 0x9 || char === 0x20)\n\n // 2.4. If header name does not match the field-name token production, return failure.\n if (!HTTP_TOKEN_CODEPOINTS.test(headerName.toString())) {\n return 'failure'\n }\n\n // 2.5. If the byte at position is not 0x3A (:), return failure.\n if (input[position.position] !== 0x3a) {\n return 'failure'\n }\n\n // 2.6. Advance position by 1.\n position.position++\n\n // 2.7. Collect a sequence of bytes that are HTTP tab or space bytes given position.\n // (Do nothing with those bytes.)\n collectASequenceOfBytes(\n (char) => char === 0x20 || char === 0x09,\n input,\n position\n )\n\n // 2.8. Byte-lowercase header name and switch on the result:\n switch (bufferToLowerCasedHeaderName(headerName)) {\n case 'content-disposition': {\n // 1. Set name and filename to null.\n name = filename = null\n\n // 2. If position does not point to a sequence of bytes starting with\n // `form-data; name=\"`, return failure.\n if (!bufferStartsWith(input, formDataNameBuffer, position)) {\n return 'failure'\n }\n\n // 3. Advance position so it points at the byte after the next 0x22 (\")\n // byte (the one in the sequence of bytes matched above).\n position.position += 17\n\n // 4. Set name to the result of parsing a multipart/form-data name given\n // input and position, if the result is not failure. Otherwise, return\n // failure.\n name = parseMultipartFormDataName(input, position)\n\n if (name === null) {\n return 'failure'\n }\n\n // 5. If position points to a sequence of bytes starting with `; filename=\"`:\n if (bufferStartsWith(input, filenameBuffer, position)) {\n // Note: undici also handles filename*\n let check = position.position + filenameBuffer.length\n\n if (input[check] === 0x2a) {\n position.position += 1\n check += 1\n }\n\n if (input[check] !== 0x3d || input[check + 1] !== 0x22) { // =\"\n return 'failure'\n }\n\n // 1. Advance position so it points at the byte after the next 0x22 (\") byte\n // (the one in the sequence of bytes matched above).\n position.position += 12\n\n // 2. Set filename to the result of parsing a multipart/form-data name given\n // input and position, if the result is not failure. Otherwise, return failure.\n filename = parseMultipartFormDataName(input, position)\n\n if (filename === null) {\n return 'failure'\n }\n }\n\n break\n }\n case 'content-type': {\n // 1. Let header value be the result of collecting a sequence of bytes that are\n // not 0x0A (LF) or 0x0D (CR), given position.\n let headerValue = collectASequenceOfBytes(\n (char) => char !== 0x0a && char !== 0x0d,\n input,\n position\n )\n\n // 2. Remove any HTTP tab or space bytes from the end of header value.\n headerValue = removeChars(headerValue, false, true, (char) => char === 0x9 || char === 0x20)\n\n // 3. Set contentType to the isomorphic decoding of header value.\n contentType = isomorphicDecode(headerValue)\n\n break\n }\n case 'content-transfer-encoding': {\n let headerValue = collectASequenceOfBytes(\n (char) => char !== 0x0a && char !== 0x0d,\n input,\n position\n )\n\n headerValue = removeChars(headerValue, false, true, (char) => char === 0x9 || char === 0x20)\n\n encoding = isomorphicDecode(headerValue)\n\n break\n }\n default: {\n // Collect a sequence of bytes that are not 0x0A (LF) or 0x0D (CR), given position.\n // (Do nothing with those bytes.)\n collectASequenceOfBytes(\n (char) => char !== 0x0a && char !== 0x0d,\n input,\n position\n )\n }\n }\n\n // 2.9. If position does not point to a sequence of bytes starting with 0x0D 0x0A\n // (CR LF), return failure. Otherwise, advance position by 2 (past the newline).\n if (input[position.position] !== 0x0d && input[position.position + 1] !== 0x0a) {\n return 'failure'\n } else {\n position.position += 2\n }\n }\n}\n\n/**\n * @see https://andreubotella.github.io/multipart-form-data/#parse-a-multipart-form-data-name\n * @param {Buffer} input\n * @param {{ position: number }} position\n */\nfunction parseMultipartFormDataName (input, position) {\n // 1. Assert: The byte at (position - 1) is 0x22 (\").\n assert(input[position.position - 1] === 0x22)\n\n // 2. Let name be the result of collecting a sequence of bytes that are not 0x0A (LF), 0x0D (CR) or 0x22 (\"), given position.\n /** @type {string | Buffer} */\n let name = collectASequenceOfBytes(\n (char) => char !== 0x0a && char !== 0x0d && char !== 0x22,\n input,\n position\n )\n\n // 3. If the byte at position is not 0x22 (\"), return failure. Otherwise, advance position by 1.\n if (input[position.position] !== 0x22) {\n return null // name could be 'failure'\n } else {\n position.position++\n }\n\n // 4. Replace any occurrence of the following subsequences in name with the given byte:\n // - `%0A`: 0x0A (LF)\n // - `%0D`: 0x0D (CR)\n // - `%22`: 0x22 (\")\n name = new TextDecoder().decode(name)\n .replace(/%0A/ig, '\\n')\n .replace(/%0D/ig, '\\r')\n .replace(/%22/g, '\"')\n\n // 5. Return the UTF-8 decoding without BOM of name.\n return name\n}\n\n/**\n * @param {(char: number) => boolean} condition\n * @param {Buffer} input\n * @param {{ position: number }} position\n */\nfunction collectASequenceOfBytes (condition, input, position) {\n let start = position.position\n\n while (start < input.length && condition(input[start])) {\n ++start\n }\n\n return input.subarray(position.position, (position.position = start))\n}\n\n/**\n * @param {Buffer} buf\n * @param {boolean} leading\n * @param {boolean} trailing\n * @param {(charCode: number) => boolean} predicate\n * @returns {Buffer}\n */\nfunction removeChars (buf, leading, trailing, predicate) {\n let lead = 0\n let trail = buf.length - 1\n\n if (leading) {\n while (lead < buf.length && predicate(buf[lead])) lead++\n }\n\n if (trailing) {\n while (trail > 0 && predicate(buf[trail])) trail--\n }\n\n return lead === 0 && trail === buf.length - 1 ? buf : buf.subarray(lead, trail + 1)\n}\n\n/**\n * Checks if {@param buffer} starts with {@param start}\n * @param {Buffer} buffer\n * @param {Buffer} start\n * @param {{ position: number }} position\n */\nfunction bufferStartsWith (buffer, start, position) {\n if (buffer.length < start.length) {\n return false\n }\n\n for (let i = 0; i < start.length; i++) {\n if (start[i] !== buffer[position.position + i]) {\n return false\n }\n }\n\n return true\n}\n\nmodule.exports = {\n multipartFormDataParser,\n validateBoundary\n}\n", "'use strict'\n\nconst util = require('../../core/util')\nconst {\n ReadableStreamFrom,\n isBlobLike,\n isReadableStreamLike,\n readableStreamClose,\n createDeferredPromise,\n fullyReadBody,\n extractMimeType,\n utf8DecodeBytes\n} = require('./util')\nconst { FormData } = require('./formdata')\nconst { kState } = require('./symbols')\nconst { webidl } = require('./webidl')\nconst { Blob } = require('node:buffer')\nconst assert = require('node:assert')\nconst { isErrored, isDisturbed } = require('node:stream')\nconst { isArrayBuffer } = require('node:util/types')\nconst { serializeAMimeType } = require('./data-url')\nconst { multipartFormDataParser } = require('./formdata-parser')\nlet random\n\ntry {\n const crypto = require('node:crypto')\n random = (max) => crypto.randomInt(0, max)\n} catch {\n random = (max) => Math.floor(Math.random(max))\n}\n\nconst textEncoder = new TextEncoder()\nfunction noop () {}\n\nconst hasFinalizationRegistry = globalThis.FinalizationRegistry && process.version.indexOf('v18') !== 0\nlet streamRegistry\n\nif (hasFinalizationRegistry) {\n streamRegistry = new FinalizationRegistry((weakRef) => {\n const stream = weakRef.deref()\n if (stream && !stream.locked && !isDisturbed(stream) && !isErrored(stream)) {\n stream.cancel('Response object has been garbage collected').catch(noop)\n }\n })\n}\n\n// https://fetch.spec.whatwg.org/#concept-bodyinit-extract\nfunction extractBody (object, keepalive = false) {\n // 1. Let stream be null.\n let stream = null\n\n // 2. If object is a ReadableStream object, then set stream to object.\n if (object instanceof ReadableStream) {\n stream = object\n } else if (isBlobLike(object)) {\n // 3. Otherwise, if object is a Blob object, set stream to the\n // result of running object\u2019s get stream.\n stream = object.stream()\n } else {\n // 4. Otherwise, set stream to a new ReadableStream object, and set\n // up stream with byte reading support.\n stream = new ReadableStream({\n async pull (controller) {\n const buffer = typeof source === 'string' ? textEncoder.encode(source) : source\n\n if (buffer.byteLength) {\n controller.enqueue(buffer)\n }\n\n queueMicrotask(() => readableStreamClose(controller))\n },\n start () {},\n type: 'bytes'\n })\n }\n\n // 5. Assert: stream is a ReadableStream object.\n assert(isReadableStreamLike(stream))\n\n // 6. Let action be null.\n let action = null\n\n // 7. Let source be null.\n let source = null\n\n // 8. Let length be null.\n let length = null\n\n // 9. Let type be null.\n let type = null\n\n // 10. Switch on object:\n if (typeof object === 'string') {\n // Set source to the UTF-8 encoding of object.\n // Note: setting source to a Uint8Array here breaks some mocking assumptions.\n source = object\n\n // Set type to `text/plain;charset=UTF-8`.\n type = 'text/plain;charset=UTF-8'\n } else if (object instanceof URLSearchParams) {\n // URLSearchParams\n\n // spec says to run application/x-www-form-urlencoded on body.list\n // this is implemented in Node.js as apart of an URLSearchParams instance toString method\n // See: https://github.com/nodejs/node/blob/e46c680bf2b211bbd52cf959ca17ee98c7f657f5/lib/internal/url.js#L490\n // and https://github.com/nodejs/node/blob/e46c680bf2b211bbd52cf959ca17ee98c7f657f5/lib/internal/url.js#L1100\n\n // Set source to the result of running the application/x-www-form-urlencoded serializer with object\u2019s list.\n source = object.toString()\n\n // Set type to `application/x-www-form-urlencoded;charset=UTF-8`.\n type = 'application/x-www-form-urlencoded;charset=UTF-8'\n } else if (isArrayBuffer(object)) {\n // BufferSource/ArrayBuffer\n\n // Set source to a copy of the bytes held by object.\n source = new Uint8Array(object.slice())\n } else if (ArrayBuffer.isView(object)) {\n // BufferSource/ArrayBufferView\n\n // Set source to a copy of the bytes held by object.\n source = new Uint8Array(object.buffer.slice(object.byteOffset, object.byteOffset + object.byteLength))\n } else if (util.isFormDataLike(object)) {\n const boundary = `----formdata-undici-0${`${random(1e11)}`.padStart(11, '0')}`\n const prefix = `--${boundary}\\r\\nContent-Disposition: form-data`\n\n /*! formdata-polyfill. MIT License. Jimmy W\u00E4rting */\n const escape = (str) =>\n str.replace(/\\n/g, '%0A').replace(/\\r/g, '%0D').replace(/\"/g, '%22')\n const normalizeLinefeeds = (value) => value.replace(/\\r?\\n|\\r/g, '\\r\\n')\n\n // Set action to this step: run the multipart/form-data\n // encoding algorithm, with object\u2019s entry list and UTF-8.\n // - This ensures that the body is immutable and can't be changed afterwords\n // - That the content-length is calculated in advance.\n // - And that all parts are pre-encoded and ready to be sent.\n\n const blobParts = []\n const rn = new Uint8Array([13, 10]) // '\\r\\n'\n length = 0\n let hasUnknownSizeValue = false\n\n for (const [name, value] of object) {\n if (typeof value === 'string') {\n const chunk = textEncoder.encode(prefix +\n `; name=\"${escape(normalizeLinefeeds(name))}\"` +\n `\\r\\n\\r\\n${normalizeLinefeeds(value)}\\r\\n`)\n blobParts.push(chunk)\n length += chunk.byteLength\n } else {\n const chunk = textEncoder.encode(`${prefix}; name=\"${escape(normalizeLinefeeds(name))}\"` +\n (value.name ? `; filename=\"${escape(value.name)}\"` : '') + '\\r\\n' +\n `Content-Type: ${\n value.type || 'application/octet-stream'\n }\\r\\n\\r\\n`)\n blobParts.push(chunk, value, rn)\n if (typeof value.size === 'number') {\n length += chunk.byteLength + value.size + rn.byteLength\n } else {\n hasUnknownSizeValue = true\n }\n }\n }\n\n // CRLF is appended to the body to function with legacy servers and match other implementations.\n // https://github.com/curl/curl/blob/3434c6b46e682452973972e8313613dfa58cd690/lib/mime.c#L1029-L1030\n // https://github.com/form-data/form-data/issues/63\n const chunk = textEncoder.encode(`--${boundary}--\\r\\n`)\n blobParts.push(chunk)\n length += chunk.byteLength\n if (hasUnknownSizeValue) {\n length = null\n }\n\n // Set source to object.\n source = object\n\n action = async function * () {\n for (const part of blobParts) {\n if (part.stream) {\n yield * part.stream()\n } else {\n yield part\n }\n }\n }\n\n // Set type to `multipart/form-data; boundary=`,\n // followed by the multipart/form-data boundary string generated\n // by the multipart/form-data encoding algorithm.\n type = `multipart/form-data; boundary=${boundary}`\n } else if (isBlobLike(object)) {\n // Blob\n\n // Set source to object.\n source = object\n\n // Set length to object\u2019s size.\n length = object.size\n\n // If object\u2019s type attribute is not the empty byte sequence, set\n // type to its value.\n if (object.type) {\n type = object.type\n }\n } else if (typeof object[Symbol.asyncIterator] === 'function') {\n // If keepalive is true, then throw a TypeError.\n if (keepalive) {\n throw new TypeError('keepalive')\n }\n\n // If object is disturbed or locked, then throw a TypeError.\n if (util.isDisturbed(object) || object.locked) {\n throw new TypeError(\n 'Response body object should not be disturbed or locked'\n )\n }\n\n stream =\n object instanceof ReadableStream ? object : ReadableStreamFrom(object)\n }\n\n // 11. If source is a byte sequence, then set action to a\n // step that returns source and length to source\u2019s length.\n if (typeof source === 'string' || util.isBuffer(source)) {\n length = Buffer.byteLength(source)\n }\n\n // 12. If action is non-null, then run these steps in in parallel:\n if (action != null) {\n // Run action.\n let iterator\n stream = new ReadableStream({\n async start () {\n iterator = action(object)[Symbol.asyncIterator]()\n },\n async pull (controller) {\n const { value, done } = await iterator.next()\n if (done) {\n // When running action is done, close stream.\n queueMicrotask(() => {\n controller.close()\n controller.byobRequest?.respond(0)\n })\n } else {\n // Whenever one or more bytes are available and stream is not errored,\n // enqueue a Uint8Array wrapping an ArrayBuffer containing the available\n // bytes into stream.\n if (!isErrored(stream)) {\n const buffer = new Uint8Array(value)\n if (buffer.byteLength) {\n controller.enqueue(buffer)\n }\n }\n }\n return controller.desiredSize > 0\n },\n async cancel (reason) {\n await iterator.return()\n },\n type: 'bytes'\n })\n }\n\n // 13. Let body be a body whose stream is stream, source is source,\n // and length is length.\n const body = { stream, source, length }\n\n // 14. Return (body, type).\n return [body, type]\n}\n\n// https://fetch.spec.whatwg.org/#bodyinit-safely-extract\nfunction safelyExtractBody (object, keepalive = false) {\n // To safely extract a body and a `Content-Type` value from\n // a byte sequence or BodyInit object object, run these steps:\n\n // 1. If object is a ReadableStream object, then:\n if (object instanceof ReadableStream) {\n // Assert: object is neither disturbed nor locked.\n // istanbul ignore next\n assert(!util.isDisturbed(object), 'The body has already been consumed.')\n // istanbul ignore next\n assert(!object.locked, 'The stream is locked.')\n }\n\n // 2. Return the results of extracting object.\n return extractBody(object, keepalive)\n}\n\nfunction cloneBody (instance, body) {\n // To clone a body body, run these steps:\n\n // https://fetch.spec.whatwg.org/#concept-body-clone\n\n // 1. Let \u00AB out1, out2 \u00BB be the result of teeing body\u2019s stream.\n const [out1, out2] = body.stream.tee()\n\n // 2. Set body\u2019s stream to out1.\n body.stream = out1\n\n // 3. Return a body whose stream is out2 and other members are copied from body.\n return {\n stream: out2,\n length: body.length,\n source: body.source\n }\n}\n\nfunction throwIfAborted (state) {\n if (state.aborted) {\n throw new DOMException('The operation was aborted.', 'AbortError')\n }\n}\n\nfunction bodyMixinMethods (instance) {\n const methods = {\n blob () {\n // The blob() method steps are to return the result of\n // running consume body with this and the following step\n // given a byte sequence bytes: return a Blob whose\n // contents are bytes and whose type attribute is this\u2019s\n // MIME type.\n return consumeBody(this, (bytes) => {\n let mimeType = bodyMimeType(this)\n\n if (mimeType === null) {\n mimeType = ''\n } else if (mimeType) {\n mimeType = serializeAMimeType(mimeType)\n }\n\n // Return a Blob whose contents are bytes and type attribute\n // is mimeType.\n return new Blob([bytes], { type: mimeType })\n }, instance)\n },\n\n arrayBuffer () {\n // The arrayBuffer() method steps are to return the result\n // of running consume body with this and the following step\n // given a byte sequence bytes: return a new ArrayBuffer\n // whose contents are bytes.\n return consumeBody(this, (bytes) => {\n return new Uint8Array(bytes).buffer\n }, instance)\n },\n\n text () {\n // The text() method steps are to return the result of running\n // consume body with this and UTF-8 decode.\n return consumeBody(this, utf8DecodeBytes, instance)\n },\n\n json () {\n // The json() method steps are to return the result of running\n // consume body with this and parse JSON from bytes.\n return consumeBody(this, parseJSONFromBytes, instance)\n },\n\n formData () {\n // The formData() method steps are to return the result of running\n // consume body with this and the following step given a byte sequence bytes:\n return consumeBody(this, (value) => {\n // 1. Let mimeType be the result of get the MIME type with this.\n const mimeType = bodyMimeType(this)\n\n // 2. If mimeType is non-null, then switch on mimeType\u2019s essence and run\n // the corresponding steps:\n if (mimeType !== null) {\n switch (mimeType.essence) {\n case 'multipart/form-data': {\n // 1. ... [long step]\n const parsed = multipartFormDataParser(value, mimeType)\n\n // 2. If that fails for some reason, then throw a TypeError.\n if (parsed === 'failure') {\n throw new TypeError('Failed to parse body as FormData.')\n }\n\n // 3. Return a new FormData object, appending each entry,\n // resulting from the parsing operation, to its entry list.\n const fd = new FormData()\n fd[kState] = parsed\n\n return fd\n }\n case 'application/x-www-form-urlencoded': {\n // 1. Let entries be the result of parsing bytes.\n const entries = new URLSearchParams(value.toString())\n\n // 2. If entries is failure, then throw a TypeError.\n\n // 3. Return a new FormData object whose entry list is entries.\n const fd = new FormData()\n\n for (const [name, value] of entries) {\n fd.append(name, value)\n }\n\n return fd\n }\n }\n }\n\n // 3. Throw a TypeError.\n throw new TypeError(\n 'Content-Type was not one of \"multipart/form-data\" or \"application/x-www-form-urlencoded\".'\n )\n }, instance)\n },\n\n bytes () {\n // The bytes() method steps are to return the result of running consume body\n // with this and the following step given a byte sequence bytes: return the\n // result of creating a Uint8Array from bytes in this\u2019s relevant realm.\n return consumeBody(this, (bytes) => {\n return new Uint8Array(bytes)\n }, instance)\n }\n }\n\n return methods\n}\n\nfunction mixinBody (prototype) {\n Object.assign(prototype.prototype, bodyMixinMethods(prototype))\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-body-consume-body\n * @param {Response|Request} object\n * @param {(value: unknown) => unknown} convertBytesToJSValue\n * @param {Response|Request} instance\n */\nasync function consumeBody (object, convertBytesToJSValue, instance) {\n webidl.brandCheck(object, instance)\n\n // 1. If object is unusable, then return a promise rejected\n // with a TypeError.\n if (bodyUnusable(object)) {\n throw new TypeError('Body is unusable: Body has already been read')\n }\n\n throwIfAborted(object[kState])\n\n // 2. Let promise be a new promise.\n const promise = createDeferredPromise()\n\n // 3. Let errorSteps given error be to reject promise with error.\n const errorSteps = (error) => promise.reject(error)\n\n // 4. Let successSteps given a byte sequence data be to resolve\n // promise with the result of running convertBytesToJSValue\n // with data. If that threw an exception, then run errorSteps\n // with that exception.\n const successSteps = (data) => {\n try {\n promise.resolve(convertBytesToJSValue(data))\n } catch (e) {\n errorSteps(e)\n }\n }\n\n // 5. If object\u2019s body is null, then run successSteps with an\n // empty byte sequence.\n if (object[kState].body == null) {\n successSteps(Buffer.allocUnsafe(0))\n return promise.promise\n }\n\n // 6. Otherwise, fully read object\u2019s body given successSteps,\n // errorSteps, and object\u2019s relevant global object.\n await fullyReadBody(object[kState].body, successSteps, errorSteps)\n\n // 7. Return promise.\n return promise.promise\n}\n\n// https://fetch.spec.whatwg.org/#body-unusable\nfunction bodyUnusable (object) {\n const body = object[kState].body\n\n // An object including the Body interface mixin is\n // said to be unusable if its body is non-null and\n // its body\u2019s stream is disturbed or locked.\n return body != null && (body.stream.locked || util.isDisturbed(body.stream))\n}\n\n/**\n * @see https://infra.spec.whatwg.org/#parse-json-bytes-to-a-javascript-value\n * @param {Uint8Array} bytes\n */\nfunction parseJSONFromBytes (bytes) {\n return JSON.parse(utf8DecodeBytes(bytes))\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-body-mime-type\n * @param {import('./response').Response|import('./request').Request} requestOrResponse\n */\nfunction bodyMimeType (requestOrResponse) {\n // 1. Let headers be null.\n // 2. If requestOrResponse is a Request object, then set headers to requestOrResponse\u2019s request\u2019s header list.\n // 3. Otherwise, set headers to requestOrResponse\u2019s response\u2019s header list.\n /** @type {import('./headers').HeadersList} */\n const headers = requestOrResponse[kState].headersList\n\n // 4. Let mimeType be the result of extracting a MIME type from headers.\n const mimeType = extractMimeType(headers)\n\n // 5. If mimeType is failure, then return null.\n if (mimeType === 'failure') {\n return null\n }\n\n // 6. Return mimeType.\n return mimeType\n}\n\nmodule.exports = {\n extractBody,\n safelyExtractBody,\n cloneBody,\n mixinBody,\n streamRegistry,\n hasFinalizationRegistry,\n bodyUnusable\n}\n", "'use strict'\n\n/* global WebAssembly */\n\nconst assert = require('node:assert')\nconst util = require('../core/util.js')\nconst { channels } = require('../core/diagnostics.js')\nconst timers = require('../util/timers.js')\nconst {\n RequestContentLengthMismatchError,\n ResponseContentLengthMismatchError,\n RequestAbortedError,\n HeadersTimeoutError,\n HeadersOverflowError,\n SocketError,\n InformationalError,\n BodyTimeoutError,\n HTTPParserError,\n ResponseExceededMaxSizeError\n} = require('../core/errors.js')\nconst {\n kUrl,\n kReset,\n kClient,\n kParser,\n kBlocking,\n kRunning,\n kPending,\n kSize,\n kWriting,\n kQueue,\n kNoRef,\n kKeepAliveDefaultTimeout,\n kHostHeader,\n kPendingIdx,\n kRunningIdx,\n kError,\n kPipelining,\n kSocket,\n kKeepAliveTimeoutValue,\n kMaxHeadersSize,\n kKeepAliveMaxTimeout,\n kKeepAliveTimeoutThreshold,\n kHeadersTimeout,\n kBodyTimeout,\n kStrictContentLength,\n kMaxRequests,\n kCounter,\n kMaxResponseSize,\n kOnError,\n kResume,\n kHTTPContext\n} = require('../core/symbols.js')\n\nconst constants = require('../llhttp/constants.js')\nconst EMPTY_BUF = Buffer.alloc(0)\nconst FastBuffer = Buffer[Symbol.species]\nconst addListener = util.addListener\nconst removeAllListeners = util.removeAllListeners\n\nlet extractBody\n\nasync function lazyllhttp () {\n const llhttpWasmData = process.env.JEST_WORKER_ID ? require('../llhttp/llhttp-wasm.js') : undefined\n\n let mod\n try {\n mod = await WebAssembly.compile(require('../llhttp/llhttp_simd-wasm.js'))\n } catch (e) {\n /* istanbul ignore next */\n\n // We could check if the error was caused by the simd option not\n // being enabled, but the occurring of this other error\n // * https://github.com/emscripten-core/emscripten/issues/11495\n // got me to remove that check to avoid breaking Node 12.\n mod = await WebAssembly.compile(llhttpWasmData || require('../llhttp/llhttp-wasm.js'))\n }\n\n return await WebAssembly.instantiate(mod, {\n env: {\n /* eslint-disable camelcase */\n\n wasm_on_url: (p, at, len) => {\n /* istanbul ignore next */\n return 0\n },\n wasm_on_status: (p, at, len) => {\n assert(currentParser.ptr === p)\n const start = at - currentBufferPtr + currentBufferRef.byteOffset\n return currentParser.onStatus(new FastBuffer(currentBufferRef.buffer, start, len)) || 0\n },\n wasm_on_message_begin: (p) => {\n assert(currentParser.ptr === p)\n return currentParser.onMessageBegin() || 0\n },\n wasm_on_header_field: (p, at, len) => {\n assert(currentParser.ptr === p)\n const start = at - currentBufferPtr + currentBufferRef.byteOffset\n return currentParser.onHeaderField(new FastBuffer(currentBufferRef.buffer, start, len)) || 0\n },\n wasm_on_header_value: (p, at, len) => {\n assert(currentParser.ptr === p)\n const start = at - currentBufferPtr + currentBufferRef.byteOffset\n return currentParser.onHeaderValue(new FastBuffer(currentBufferRef.buffer, start, len)) || 0\n },\n wasm_on_headers_complete: (p, statusCode, upgrade, shouldKeepAlive) => {\n assert(currentParser.ptr === p)\n return currentParser.onHeadersComplete(statusCode, Boolean(upgrade), Boolean(shouldKeepAlive)) || 0\n },\n wasm_on_body: (p, at, len) => {\n assert(currentParser.ptr === p)\n const start = at - currentBufferPtr + currentBufferRef.byteOffset\n return currentParser.onBody(new FastBuffer(currentBufferRef.buffer, start, len)) || 0\n },\n wasm_on_message_complete: (p) => {\n assert(currentParser.ptr === p)\n return currentParser.onMessageComplete() || 0\n }\n\n /* eslint-enable camelcase */\n }\n })\n}\n\nlet llhttpInstance = null\nlet llhttpPromise = lazyllhttp()\nllhttpPromise.catch()\n\nlet currentParser = null\nlet currentBufferRef = null\nlet currentBufferSize = 0\nlet currentBufferPtr = null\n\nconst USE_NATIVE_TIMER = 0\nconst USE_FAST_TIMER = 1\n\n// Use fast timers for headers and body to take eventual event loop\n// latency into account.\nconst TIMEOUT_HEADERS = 2 | USE_FAST_TIMER\nconst TIMEOUT_BODY = 4 | USE_FAST_TIMER\n\n// Use native timers to ignore event loop latency for keep-alive\n// handling.\nconst TIMEOUT_KEEP_ALIVE = 8 | USE_NATIVE_TIMER\n\nclass Parser {\n constructor (client, socket, { exports }) {\n assert(Number.isFinite(client[kMaxHeadersSize]) && client[kMaxHeadersSize] > 0)\n\n this.llhttp = exports\n this.ptr = this.llhttp.llhttp_alloc(constants.TYPE.RESPONSE)\n this.client = client\n this.socket = socket\n this.timeout = null\n this.timeoutValue = null\n this.timeoutType = null\n this.statusCode = null\n this.statusText = ''\n this.upgrade = false\n this.headers = []\n this.headersSize = 0\n this.headersMaxSize = client[kMaxHeadersSize]\n this.shouldKeepAlive = false\n this.paused = false\n this.resume = this.resume.bind(this)\n\n this.bytesRead = 0\n\n this.keepAlive = ''\n this.contentLength = ''\n this.connection = ''\n this.maxResponseSize = client[kMaxResponseSize]\n }\n\n setTimeout (delay, type) {\n // If the existing timer and the new timer are of different timer type\n // (fast or native) or have different delay, we need to clear the existing\n // timer and set a new one.\n if (\n delay !== this.timeoutValue ||\n (type & USE_FAST_TIMER) ^ (this.timeoutType & USE_FAST_TIMER)\n ) {\n // If a timeout is already set, clear it with clearTimeout of the fast\n // timer implementation, as it can clear fast and native timers.\n if (this.timeout) {\n timers.clearTimeout(this.timeout)\n this.timeout = null\n }\n\n if (delay) {\n if (type & USE_FAST_TIMER) {\n this.timeout = timers.setFastTimeout(onParserTimeout, delay, new WeakRef(this))\n } else {\n this.timeout = setTimeout(onParserTimeout, delay, new WeakRef(this))\n this.timeout.unref()\n }\n }\n\n this.timeoutValue = delay\n } else if (this.timeout) {\n // istanbul ignore else: only for jest\n if (this.timeout.refresh) {\n this.timeout.refresh()\n }\n }\n\n this.timeoutType = type\n }\n\n resume () {\n if (this.socket.destroyed || !this.paused) {\n return\n }\n\n assert(this.ptr != null)\n assert(currentParser == null)\n\n this.llhttp.llhttp_resume(this.ptr)\n\n assert(this.timeoutType === TIMEOUT_BODY)\n if (this.timeout) {\n // istanbul ignore else: only for jest\n if (this.timeout.refresh) {\n this.timeout.refresh()\n }\n }\n\n this.paused = false\n this.execute(this.socket.read() || EMPTY_BUF) // Flush parser.\n this.readMore()\n }\n\n readMore () {\n while (!this.paused && this.ptr) {\n const chunk = this.socket.read()\n if (chunk === null) {\n break\n }\n this.execute(chunk)\n }\n }\n\n execute (data) {\n assert(this.ptr != null)\n assert(currentParser == null)\n assert(!this.paused)\n\n const { socket, llhttp } = this\n\n if (data.length > currentBufferSize) {\n if (currentBufferPtr) {\n llhttp.free(currentBufferPtr)\n }\n currentBufferSize = Math.ceil(data.length / 4096) * 4096\n currentBufferPtr = llhttp.malloc(currentBufferSize)\n }\n\n new Uint8Array(llhttp.memory.buffer, currentBufferPtr, currentBufferSize).set(data)\n\n // Call `execute` on the wasm parser.\n // We pass the `llhttp_parser` pointer address, the pointer address of buffer view data,\n // and finally the length of bytes to parse.\n // The return value is an error code or `constants.ERROR.OK`.\n try {\n let ret\n\n try {\n currentBufferRef = data\n currentParser = this\n ret = llhttp.llhttp_execute(this.ptr, currentBufferPtr, data.length)\n /* eslint-disable-next-line no-useless-catch */\n } catch (err) {\n /* istanbul ignore next: difficult to make a test case for */\n throw err\n } finally {\n currentParser = null\n currentBufferRef = null\n }\n\n const offset = llhttp.llhttp_get_error_pos(this.ptr) - currentBufferPtr\n\n if (ret === constants.ERROR.PAUSED_UPGRADE) {\n this.onUpgrade(data.slice(offset))\n } else if (ret === constants.ERROR.PAUSED) {\n this.paused = true\n socket.unshift(data.slice(offset))\n } else if (ret !== constants.ERROR.OK) {\n const ptr = llhttp.llhttp_get_error_reason(this.ptr)\n let message = ''\n /* istanbul ignore else: difficult to make a test case for */\n if (ptr) {\n const len = new Uint8Array(llhttp.memory.buffer, ptr).indexOf(0)\n message =\n 'Response does not match the HTTP/1.1 protocol (' +\n Buffer.from(llhttp.memory.buffer, ptr, len).toString() +\n ')'\n }\n throw new HTTPParserError(message, constants.ERROR[ret], data.slice(offset))\n }\n } catch (err) {\n util.destroy(socket, err)\n }\n }\n\n destroy () {\n assert(this.ptr != null)\n assert(currentParser == null)\n\n this.llhttp.llhttp_free(this.ptr)\n this.ptr = null\n\n this.timeout && timers.clearTimeout(this.timeout)\n this.timeout = null\n this.timeoutValue = null\n this.timeoutType = null\n\n this.paused = false\n }\n\n onStatus (buf) {\n this.statusText = buf.toString()\n }\n\n onMessageBegin () {\n const { socket, client } = this\n\n /* istanbul ignore next: difficult to make a test case for */\n if (socket.destroyed) {\n return -1\n }\n\n const request = client[kQueue][client[kRunningIdx]]\n if (!request) {\n return -1\n }\n request.onResponseStarted()\n }\n\n onHeaderField (buf) {\n const len = this.headers.length\n\n if ((len & 1) === 0) {\n this.headers.push(buf)\n } else {\n this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf])\n }\n\n this.trackHeader(buf.length)\n }\n\n onHeaderValue (buf) {\n let len = this.headers.length\n\n if ((len & 1) === 1) {\n this.headers.push(buf)\n len += 1\n } else {\n this.headers[len - 1] = Buffer.concat([this.headers[len - 1], buf])\n }\n\n const key = this.headers[len - 2]\n if (key.length === 10) {\n const headerName = util.bufferToLowerCasedHeaderName(key)\n if (headerName === 'keep-alive') {\n this.keepAlive += buf.toString()\n } else if (headerName === 'connection') {\n this.connection += buf.toString()\n }\n } else if (key.length === 14 && util.bufferToLowerCasedHeaderName(key) === 'content-length') {\n this.contentLength += buf.toString()\n }\n\n this.trackHeader(buf.length)\n }\n\n trackHeader (len) {\n this.headersSize += len\n if (this.headersSize >= this.headersMaxSize) {\n util.destroy(this.socket, new HeadersOverflowError())\n }\n }\n\n onUpgrade (head) {\n const { upgrade, client, socket, headers, statusCode } = this\n\n assert(upgrade)\n assert(client[kSocket] === socket)\n assert(!socket.destroyed)\n assert(!this.paused)\n assert((headers.length & 1) === 0)\n\n const request = client[kQueue][client[kRunningIdx]]\n assert(request)\n assert(request.upgrade || request.method === 'CONNECT')\n\n this.statusCode = null\n this.statusText = ''\n this.shouldKeepAlive = null\n\n this.headers = []\n this.headersSize = 0\n\n socket.unshift(head)\n\n socket[kParser].destroy()\n socket[kParser] = null\n\n socket[kClient] = null\n socket[kError] = null\n\n removeAllListeners(socket)\n\n client[kSocket] = null\n client[kHTTPContext] = null // TODO (fix): This is hacky...\n client[kQueue][client[kRunningIdx]++] = null\n client.emit('disconnect', client[kUrl], [client], new InformationalError('upgrade'))\n\n try {\n request.onUpgrade(statusCode, headers, socket)\n } catch (err) {\n util.destroy(socket, err)\n }\n\n client[kResume]()\n }\n\n onHeadersComplete (statusCode, upgrade, shouldKeepAlive) {\n const { client, socket, headers, statusText } = this\n\n /* istanbul ignore next: difficult to make a test case for */\n if (socket.destroyed) {\n return -1\n }\n\n const request = client[kQueue][client[kRunningIdx]]\n\n /* istanbul ignore next: difficult to make a test case for */\n if (!request) {\n return -1\n }\n\n assert(!this.upgrade)\n assert(this.statusCode < 200)\n\n if (statusCode === 100) {\n util.destroy(socket, new SocketError('bad response', util.getSocketInfo(socket)))\n return -1\n }\n\n /* this can only happen if server is misbehaving */\n if (upgrade && !request.upgrade) {\n util.destroy(socket, new SocketError('bad upgrade', util.getSocketInfo(socket)))\n return -1\n }\n\n assert(this.timeoutType === TIMEOUT_HEADERS)\n\n this.statusCode = statusCode\n this.shouldKeepAlive = (\n shouldKeepAlive ||\n // Override llhttp value which does not allow keepAlive for HEAD.\n (request.method === 'HEAD' && !socket[kReset] && this.connection.toLowerCase() === 'keep-alive')\n )\n\n if (this.statusCode >= 200) {\n const bodyTimeout = request.bodyTimeout != null\n ? request.bodyTimeout\n : client[kBodyTimeout]\n this.setTimeout(bodyTimeout, TIMEOUT_BODY)\n } else if (this.timeout) {\n // istanbul ignore else: only for jest\n if (this.timeout.refresh) {\n this.timeout.refresh()\n }\n }\n\n if (request.method === 'CONNECT') {\n assert(client[kRunning] === 1)\n this.upgrade = true\n return 2\n }\n\n if (upgrade) {\n assert(client[kRunning] === 1)\n this.upgrade = true\n return 2\n }\n\n assert((this.headers.length & 1) === 0)\n this.headers = []\n this.headersSize = 0\n\n if (this.shouldKeepAlive && client[kPipelining]) {\n const keepAliveTimeout = this.keepAlive ? util.parseKeepAliveTimeout(this.keepAlive) : null\n\n if (keepAliveTimeout != null) {\n const timeout = Math.min(\n keepAliveTimeout - client[kKeepAliveTimeoutThreshold],\n client[kKeepAliveMaxTimeout]\n )\n if (timeout <= 0) {\n socket[kReset] = true\n } else {\n client[kKeepAliveTimeoutValue] = timeout\n }\n } else {\n client[kKeepAliveTimeoutValue] = client[kKeepAliveDefaultTimeout]\n }\n } else {\n // Stop more requests from being dispatched.\n socket[kReset] = true\n }\n\n const pause = request.onHeaders(statusCode, headers, this.resume, statusText) === false\n\n if (request.aborted) {\n return -1\n }\n\n if (request.method === 'HEAD') {\n return 1\n }\n\n if (statusCode < 200) {\n return 1\n }\n\n if (socket[kBlocking]) {\n socket[kBlocking] = false\n client[kResume]()\n }\n\n return pause ? constants.ERROR.PAUSED : 0\n }\n\n onBody (buf) {\n const { client, socket, statusCode, maxResponseSize } = this\n\n if (socket.destroyed) {\n return -1\n }\n\n const request = client[kQueue][client[kRunningIdx]]\n assert(request)\n\n assert(this.timeoutType === TIMEOUT_BODY)\n if (this.timeout) {\n // istanbul ignore else: only for jest\n if (this.timeout.refresh) {\n this.timeout.refresh()\n }\n }\n\n assert(statusCode >= 200)\n\n if (maxResponseSize > -1 && this.bytesRead + buf.length > maxResponseSize) {\n util.destroy(socket, new ResponseExceededMaxSizeError())\n return -1\n }\n\n this.bytesRead += buf.length\n\n if (request.onData(buf) === false) {\n return constants.ERROR.PAUSED\n }\n }\n\n onMessageComplete () {\n const { client, socket, statusCode, upgrade, headers, contentLength, bytesRead, shouldKeepAlive } = this\n\n if (socket.destroyed && (!statusCode || shouldKeepAlive)) {\n return -1\n }\n\n if (upgrade) {\n return\n }\n\n assert(statusCode >= 100)\n assert((this.headers.length & 1) === 0)\n\n const request = client[kQueue][client[kRunningIdx]]\n assert(request)\n\n this.statusCode = null\n this.statusText = ''\n this.bytesRead = 0\n this.contentLength = ''\n this.keepAlive = ''\n this.connection = ''\n\n this.headers = []\n this.headersSize = 0\n\n if (statusCode < 200) {\n return\n }\n\n /* istanbul ignore next: should be handled by llhttp? */\n if (request.method !== 'HEAD' && contentLength && bytesRead !== parseInt(contentLength, 10)) {\n util.destroy(socket, new ResponseContentLengthMismatchError())\n return -1\n }\n\n request.onComplete(headers)\n\n client[kQueue][client[kRunningIdx]++] = null\n\n if (socket[kWriting]) {\n assert(client[kRunning] === 0)\n // Response completed before request.\n util.destroy(socket, new InformationalError('reset'))\n return constants.ERROR.PAUSED\n } else if (!shouldKeepAlive) {\n util.destroy(socket, new InformationalError('reset'))\n return constants.ERROR.PAUSED\n } else if (socket[kReset] && client[kRunning] === 0) {\n // Destroy socket once all requests have completed.\n // The request at the tail of the pipeline is the one\n // that requested reset and no further requests should\n // have been queued since then.\n util.destroy(socket, new InformationalError('reset'))\n return constants.ERROR.PAUSED\n } else if (client[kPipelining] == null || client[kPipelining] === 1) {\n // We must wait a full event loop cycle to reuse this socket to make sure\n // that non-spec compliant servers are not closing the connection even if they\n // said they won't.\n setImmediate(() => client[kResume]())\n } else {\n client[kResume]()\n }\n }\n}\n\nfunction onParserTimeout (parser) {\n const { socket, timeoutType, client, paused } = parser.deref()\n\n /* istanbul ignore else */\n if (timeoutType === TIMEOUT_HEADERS) {\n if (!socket[kWriting] || socket.writableNeedDrain || client[kRunning] > 1) {\n assert(!paused, 'cannot be paused while waiting for headers')\n util.destroy(socket, new HeadersTimeoutError())\n }\n } else if (timeoutType === TIMEOUT_BODY) {\n if (!paused) {\n util.destroy(socket, new BodyTimeoutError())\n }\n } else if (timeoutType === TIMEOUT_KEEP_ALIVE) {\n assert(client[kRunning] === 0 && client[kKeepAliveTimeoutValue])\n util.destroy(socket, new InformationalError('socket idle timeout'))\n }\n}\n\nasync function connectH1 (client, socket) {\n client[kSocket] = socket\n\n if (!llhttpInstance) {\n llhttpInstance = await llhttpPromise\n llhttpPromise = null\n }\n\n socket[kNoRef] = false\n socket[kWriting] = false\n socket[kReset] = false\n socket[kBlocking] = false\n socket[kParser] = new Parser(client, socket, llhttpInstance)\n\n addListener(socket, 'error', function (err) {\n assert(err.code !== 'ERR_TLS_CERT_ALTNAME_INVALID')\n\n const parser = this[kParser]\n\n // On Mac OS, we get an ECONNRESET even if there is a full body to be forwarded\n // to the user.\n if (err.code === 'ECONNRESET' && parser.statusCode && !parser.shouldKeepAlive) {\n // We treat all incoming data so for as a valid response.\n parser.onMessageComplete()\n return\n }\n\n this[kError] = err\n\n this[kClient][kOnError](err)\n })\n addListener(socket, 'readable', function () {\n const parser = this[kParser]\n\n if (parser) {\n parser.readMore()\n }\n })\n addListener(socket, 'end', function () {\n const parser = this[kParser]\n\n if (parser.statusCode && !parser.shouldKeepAlive) {\n // We treat all incoming data so far as a valid response.\n parser.onMessageComplete()\n return\n }\n\n util.destroy(this, new SocketError('other side closed', util.getSocketInfo(this)))\n })\n addListener(socket, 'close', function () {\n const client = this[kClient]\n const parser = this[kParser]\n\n if (parser) {\n if (!this[kError] && parser.statusCode && !parser.shouldKeepAlive) {\n // We treat all incoming data so far as a valid response.\n parser.onMessageComplete()\n }\n\n this[kParser].destroy()\n this[kParser] = null\n }\n\n const err = this[kError] || new SocketError('closed', util.getSocketInfo(this))\n\n client[kSocket] = null\n client[kHTTPContext] = null // TODO (fix): This is hacky...\n\n if (client.destroyed) {\n assert(client[kPending] === 0)\n\n // Fail entire queue.\n const requests = client[kQueue].splice(client[kRunningIdx])\n for (let i = 0; i < requests.length; i++) {\n const request = requests[i]\n util.errorRequest(client, request, err)\n }\n } else if (client[kRunning] > 0 && err.code !== 'UND_ERR_INFO') {\n // Fail head of pipeline.\n const request = client[kQueue][client[kRunningIdx]]\n client[kQueue][client[kRunningIdx]++] = null\n\n util.errorRequest(client, request, err)\n }\n\n client[kPendingIdx] = client[kRunningIdx]\n\n assert(client[kRunning] === 0)\n\n client.emit('disconnect', client[kUrl], [client], err)\n\n client[kResume]()\n })\n\n let closed = false\n socket.on('close', () => {\n closed = true\n })\n\n return {\n version: 'h1',\n defaultPipelining: 1,\n write (...args) {\n return writeH1(client, ...args)\n },\n resume () {\n resumeH1(client)\n },\n destroy (err, callback) {\n if (closed) {\n queueMicrotask(callback)\n } else {\n socket.destroy(err).on('close', callback)\n }\n },\n get destroyed () {\n return socket.destroyed\n },\n busy (request) {\n if (socket[kWriting] || socket[kReset] || socket[kBlocking]) {\n return true\n }\n\n if (request) {\n if (client[kRunning] > 0 && !request.idempotent) {\n // Non-idempotent request cannot be retried.\n // Ensure that no other requests are inflight and\n // could cause failure.\n return true\n }\n\n if (client[kRunning] > 0 && (request.upgrade || request.method === 'CONNECT')) {\n // Don't dispatch an upgrade until all preceding requests have completed.\n // A misbehaving server might upgrade the connection before all pipelined\n // request has completed.\n return true\n }\n\n if (client[kRunning] > 0 && util.bodyLength(request.body) !== 0 &&\n (util.isStream(request.body) || util.isAsyncIterable(request.body) || util.isFormDataLike(request.body))) {\n // Request with stream or iterator body can error while other requests\n // are inflight and indirectly error those as well.\n // Ensure this doesn't happen by waiting for inflight\n // to complete before dispatching.\n\n // Request with stream or iterator body cannot be retried.\n // Ensure that no other requests are inflight and\n // could cause failure.\n return true\n }\n }\n\n return false\n }\n }\n}\n\nfunction resumeH1 (client) {\n const socket = client[kSocket]\n\n if (socket && !socket.destroyed) {\n if (client[kSize] === 0) {\n if (!socket[kNoRef] && socket.unref) {\n socket.unref()\n socket[kNoRef] = true\n }\n } else if (socket[kNoRef] && socket.ref) {\n socket.ref()\n socket[kNoRef] = false\n }\n\n if (client[kSize] === 0) {\n if (socket[kParser].timeoutType !== TIMEOUT_KEEP_ALIVE) {\n socket[kParser].setTimeout(client[kKeepAliveTimeoutValue], TIMEOUT_KEEP_ALIVE)\n }\n } else if (client[kRunning] > 0 && socket[kParser].statusCode < 200) {\n if (socket[kParser].timeoutType !== TIMEOUT_HEADERS) {\n const request = client[kQueue][client[kRunningIdx]]\n const headersTimeout = request.headersTimeout != null\n ? request.headersTimeout\n : client[kHeadersTimeout]\n socket[kParser].setTimeout(headersTimeout, TIMEOUT_HEADERS)\n }\n }\n }\n}\n\n// https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2\nfunction shouldSendContentLength (method) {\n return method !== 'GET' && method !== 'HEAD' && method !== 'OPTIONS' && method !== 'TRACE' && method !== 'CONNECT'\n}\n\nfunction writeH1 (client, request) {\n const { method, path, host, upgrade, blocking, reset } = request\n\n let { body, headers, contentLength } = request\n\n // https://tools.ietf.org/html/rfc7231#section-4.3.1\n // https://tools.ietf.org/html/rfc7231#section-4.3.2\n // https://tools.ietf.org/html/rfc7231#section-4.3.5\n\n // Sending a payload body on a request that does not\n // expect it can cause undefined behavior on some\n // servers and corrupt connection state. Do not\n // re-use the connection for further requests.\n\n const expectsPayload = (\n method === 'PUT' ||\n method === 'POST' ||\n method === 'PATCH' ||\n method === 'QUERY' ||\n method === 'PROPFIND' ||\n method === 'PROPPATCH'\n )\n\n if (util.isFormDataLike(body)) {\n if (!extractBody) {\n extractBody = require('../web/fetch/body.js').extractBody\n }\n\n const [bodyStream, contentType] = extractBody(body)\n if (request.contentType == null) {\n headers.push('content-type', contentType)\n }\n body = bodyStream.stream\n contentLength = bodyStream.length\n } else if (util.isBlobLike(body) && request.contentType == null && body.type) {\n headers.push('content-type', body.type)\n }\n\n if (body && typeof body.read === 'function') {\n // Try to read EOF in order to get length.\n body.read(0)\n }\n\n const bodyLength = util.bodyLength(body)\n\n contentLength = bodyLength ?? contentLength\n\n if (contentLength === null) {\n contentLength = request.contentLength\n }\n\n if (contentLength === 0 && !expectsPayload) {\n // https://tools.ietf.org/html/rfc7230#section-3.3.2\n // A user agent SHOULD NOT send a Content-Length header field when\n // the request message does not contain a payload body and the method\n // semantics do not anticipate such a body.\n\n contentLength = null\n }\n\n // https://github.com/nodejs/undici/issues/2046\n // A user agent may send a Content-Length header with 0 value, this should be allowed.\n if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength !== null && request.contentLength !== contentLength) {\n if (client[kStrictContentLength]) {\n util.errorRequest(client, request, new RequestContentLengthMismatchError())\n return false\n }\n\n process.emitWarning(new RequestContentLengthMismatchError())\n }\n\n const socket = client[kSocket]\n\n const abort = (err) => {\n if (request.aborted || request.completed) {\n return\n }\n\n util.errorRequest(client, request, err || new RequestAbortedError())\n\n util.destroy(body)\n util.destroy(socket, new InformationalError('aborted'))\n }\n\n try {\n request.onConnect(abort)\n } catch (err) {\n util.errorRequest(client, request, err)\n }\n\n if (request.aborted) {\n return false\n }\n\n if (method === 'HEAD') {\n // https://github.com/mcollina/undici/issues/258\n // Close after a HEAD request to interop with misbehaving servers\n // that may send a body in the response.\n\n socket[kReset] = true\n }\n\n if (upgrade || method === 'CONNECT') {\n // On CONNECT or upgrade, block pipeline from dispatching further\n // requests on this connection.\n\n socket[kReset] = true\n }\n\n if (reset != null) {\n socket[kReset] = reset\n }\n\n if (client[kMaxRequests] && socket[kCounter]++ >= client[kMaxRequests]) {\n socket[kReset] = true\n }\n\n if (blocking) {\n socket[kBlocking] = true\n }\n\n let header = `${method} ${path} HTTP/1.1\\r\\n`\n\n if (typeof host === 'string') {\n header += `host: ${host}\\r\\n`\n } else {\n header += client[kHostHeader]\n }\n\n if (upgrade) {\n header += `connection: upgrade\\r\\nupgrade: ${upgrade}\\r\\n`\n } else if (client[kPipelining] && !socket[kReset]) {\n header += 'connection: keep-alive\\r\\n'\n } else {\n header += 'connection: close\\r\\n'\n }\n\n if (Array.isArray(headers)) {\n for (let n = 0; n < headers.length; n += 2) {\n const key = headers[n + 0]\n const val = headers[n + 1]\n\n if (Array.isArray(val)) {\n for (let i = 0; i < val.length; i++) {\n header += `${key}: ${val[i]}\\r\\n`\n }\n } else {\n header += `${key}: ${val}\\r\\n`\n }\n }\n }\n\n if (channels.sendHeaders.hasSubscribers) {\n channels.sendHeaders.publish({ request, headers: header, socket })\n }\n\n /* istanbul ignore else: assertion */\n if (!body || bodyLength === 0) {\n writeBuffer(abort, null, client, request, socket, contentLength, header, expectsPayload)\n } else if (util.isBuffer(body)) {\n writeBuffer(abort, body, client, request, socket, contentLength, header, expectsPayload)\n } else if (util.isBlobLike(body)) {\n if (typeof body.stream === 'function') {\n writeIterable(abort, body.stream(), client, request, socket, contentLength, header, expectsPayload)\n } else {\n writeBlob(abort, body, client, request, socket, contentLength, header, expectsPayload)\n }\n } else if (util.isStream(body)) {\n writeStream(abort, body, client, request, socket, contentLength, header, expectsPayload)\n } else if (util.isIterable(body)) {\n writeIterable(abort, body, client, request, socket, contentLength, header, expectsPayload)\n } else {\n assert(false)\n }\n\n return true\n}\n\nfunction writeStream (abort, body, client, request, socket, contentLength, header, expectsPayload) {\n assert(contentLength !== 0 || client[kRunning] === 0, 'stream body cannot be pipelined')\n\n let finished = false\n\n const writer = new AsyncWriter({ abort, socket, request, contentLength, client, expectsPayload, header })\n\n const onData = function (chunk) {\n if (finished) {\n return\n }\n\n try {\n if (!writer.write(chunk) && this.pause) {\n this.pause()\n }\n } catch (err) {\n util.destroy(this, err)\n }\n }\n const onDrain = function () {\n if (finished) {\n return\n }\n\n if (body.resume) {\n body.resume()\n }\n }\n const onClose = function () {\n // 'close' might be emitted *before* 'error' for\n // broken streams. Wait a tick to avoid this case.\n queueMicrotask(() => {\n // It's only safe to remove 'error' listener after\n // 'close'.\n body.removeListener('error', onFinished)\n })\n\n if (!finished) {\n const err = new RequestAbortedError()\n queueMicrotask(() => onFinished(err))\n }\n }\n const onFinished = function (err) {\n if (finished) {\n return\n }\n\n finished = true\n\n assert(socket.destroyed || (socket[kWriting] && client[kRunning] <= 1))\n\n socket\n .off('drain', onDrain)\n .off('error', onFinished)\n\n body\n .removeListener('data', onData)\n .removeListener('end', onFinished)\n .removeListener('close', onClose)\n\n if (!err) {\n try {\n writer.end()\n } catch (er) {\n err = er\n }\n }\n\n writer.destroy(err)\n\n if (err && (err.code !== 'UND_ERR_INFO' || err.message !== 'reset')) {\n util.destroy(body, err)\n } else {\n util.destroy(body)\n }\n }\n\n body\n .on('data', onData)\n .on('end', onFinished)\n .on('error', onFinished)\n .on('close', onClose)\n\n if (body.resume) {\n body.resume()\n }\n\n socket\n .on('drain', onDrain)\n .on('error', onFinished)\n\n if (body.errorEmitted ?? body.errored) {\n setImmediate(() => onFinished(body.errored))\n } else if (body.endEmitted ?? body.readableEnded) {\n setImmediate(() => onFinished(null))\n }\n\n if (body.closeEmitted ?? body.closed) {\n setImmediate(onClose)\n }\n}\n\nfunction writeBuffer (abort, body, client, request, socket, contentLength, header, expectsPayload) {\n try {\n if (!body) {\n if (contentLength === 0) {\n socket.write(`${header}content-length: 0\\r\\n\\r\\n`, 'latin1')\n } else {\n assert(contentLength === null, 'no body must not have content length')\n socket.write(`${header}\\r\\n`, 'latin1')\n }\n } else if (util.isBuffer(body)) {\n assert(contentLength === body.byteLength, 'buffer body must have content length')\n\n socket.cork()\n socket.write(`${header}content-length: ${contentLength}\\r\\n\\r\\n`, 'latin1')\n socket.write(body)\n socket.uncork()\n request.onBodySent(body)\n\n if (!expectsPayload && request.reset !== false) {\n socket[kReset] = true\n }\n }\n request.onRequestSent()\n\n client[kResume]()\n } catch (err) {\n abort(err)\n }\n}\n\nasync function writeBlob (abort, body, client, request, socket, contentLength, header, expectsPayload) {\n assert(contentLength === body.size, 'blob body must have content length')\n\n try {\n if (contentLength != null && contentLength !== body.size) {\n throw new RequestContentLengthMismatchError()\n }\n\n const buffer = Buffer.from(await body.arrayBuffer())\n\n socket.cork()\n socket.write(`${header}content-length: ${contentLength}\\r\\n\\r\\n`, 'latin1')\n socket.write(buffer)\n socket.uncork()\n\n request.onBodySent(buffer)\n request.onRequestSent()\n\n if (!expectsPayload && request.reset !== false) {\n socket[kReset] = true\n }\n\n client[kResume]()\n } catch (err) {\n abort(err)\n }\n}\n\nasync function writeIterable (abort, body, client, request, socket, contentLength, header, expectsPayload) {\n assert(contentLength !== 0 || client[kRunning] === 0, 'iterator body cannot be pipelined')\n\n let callback = null\n function onDrain () {\n if (callback) {\n const cb = callback\n callback = null\n cb()\n }\n }\n\n const waitForDrain = () => new Promise((resolve, reject) => {\n assert(callback === null)\n\n if (socket[kError]) {\n reject(socket[kError])\n } else {\n callback = resolve\n }\n })\n\n socket\n .on('close', onDrain)\n .on('drain', onDrain)\n\n const writer = new AsyncWriter({ abort, socket, request, contentLength, client, expectsPayload, header })\n try {\n // It's up to the user to somehow abort the async iterable.\n for await (const chunk of body) {\n if (socket[kError]) {\n throw socket[kError]\n }\n\n if (!writer.write(chunk)) {\n await waitForDrain()\n }\n }\n\n writer.end()\n } catch (err) {\n writer.destroy(err)\n } finally {\n socket\n .off('close', onDrain)\n .off('drain', onDrain)\n }\n}\n\nclass AsyncWriter {\n constructor ({ abort, socket, request, contentLength, client, expectsPayload, header }) {\n this.socket = socket\n this.request = request\n this.contentLength = contentLength\n this.client = client\n this.bytesWritten = 0\n this.expectsPayload = expectsPayload\n this.header = header\n this.abort = abort\n\n socket[kWriting] = true\n }\n\n write (chunk) {\n const { socket, request, contentLength, client, bytesWritten, expectsPayload, header } = this\n\n if (socket[kError]) {\n throw socket[kError]\n }\n\n if (socket.destroyed) {\n return false\n }\n\n const len = Buffer.byteLength(chunk)\n if (!len) {\n return true\n }\n\n // We should defer writing chunks.\n if (contentLength !== null && bytesWritten + len > contentLength) {\n if (client[kStrictContentLength]) {\n throw new RequestContentLengthMismatchError()\n }\n\n process.emitWarning(new RequestContentLengthMismatchError())\n }\n\n socket.cork()\n\n if (bytesWritten === 0) {\n if (!expectsPayload && request.reset !== false) {\n socket[kReset] = true\n }\n\n if (contentLength === null) {\n socket.write(`${header}transfer-encoding: chunked\\r\\n`, 'latin1')\n } else {\n socket.write(`${header}content-length: ${contentLength}\\r\\n\\r\\n`, 'latin1')\n }\n }\n\n if (contentLength === null) {\n socket.write(`\\r\\n${len.toString(16)}\\r\\n`, 'latin1')\n }\n\n this.bytesWritten += len\n\n const ret = socket.write(chunk)\n\n socket.uncork()\n\n request.onBodySent(chunk)\n\n if (!ret) {\n if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) {\n // istanbul ignore else: only for jest\n if (socket[kParser].timeout.refresh) {\n socket[kParser].timeout.refresh()\n }\n }\n }\n\n return ret\n }\n\n end () {\n const { socket, contentLength, client, bytesWritten, expectsPayload, header, request } = this\n request.onRequestSent()\n\n socket[kWriting] = false\n\n if (socket[kError]) {\n throw socket[kError]\n }\n\n if (socket.destroyed) {\n return\n }\n\n if (bytesWritten === 0) {\n if (expectsPayload) {\n // https://tools.ietf.org/html/rfc7230#section-3.3.2\n // A user agent SHOULD send a Content-Length in a request message when\n // no Transfer-Encoding is sent and the request method defines a meaning\n // for an enclosed payload body.\n\n socket.write(`${header}content-length: 0\\r\\n\\r\\n`, 'latin1')\n } else {\n socket.write(`${header}\\r\\n`, 'latin1')\n }\n } else if (contentLength === null) {\n socket.write('\\r\\n0\\r\\n\\r\\n', 'latin1')\n }\n\n if (contentLength !== null && bytesWritten !== contentLength) {\n if (client[kStrictContentLength]) {\n throw new RequestContentLengthMismatchError()\n } else {\n process.emitWarning(new RequestContentLengthMismatchError())\n }\n }\n\n if (socket[kParser].timeout && socket[kParser].timeoutType === TIMEOUT_HEADERS) {\n // istanbul ignore else: only for jest\n if (socket[kParser].timeout.refresh) {\n socket[kParser].timeout.refresh()\n }\n }\n\n client[kResume]()\n }\n\n destroy (err) {\n const { socket, client, abort } = this\n\n socket[kWriting] = false\n\n if (err) {\n assert(client[kRunning] <= 1, 'pipeline should only contain this request')\n abort(err)\n }\n }\n}\n\nmodule.exports = connectH1\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { pipeline } = require('node:stream')\nconst util = require('../core/util.js')\nconst {\n RequestContentLengthMismatchError,\n RequestAbortedError,\n SocketError,\n InformationalError\n} = require('../core/errors.js')\nconst {\n kUrl,\n kReset,\n kClient,\n kRunning,\n kPending,\n kQueue,\n kPendingIdx,\n kRunningIdx,\n kError,\n kSocket,\n kStrictContentLength,\n kOnError,\n kMaxConcurrentStreams,\n kHTTP2Session,\n kResume,\n kSize,\n kHTTPContext\n} = require('../core/symbols.js')\n\nconst kOpenStreams = Symbol('open streams')\n\nlet extractBody\n\n// Experimental\nlet h2ExperimentalWarned = false\n\n/** @type {import('http2')} */\nlet http2\ntry {\n http2 = require('node:http2')\n} catch {\n // @ts-ignore\n http2 = { constants: {} }\n}\n\nconst {\n constants: {\n HTTP2_HEADER_AUTHORITY,\n HTTP2_HEADER_METHOD,\n HTTP2_HEADER_PATH,\n HTTP2_HEADER_SCHEME,\n HTTP2_HEADER_CONTENT_LENGTH,\n HTTP2_HEADER_EXPECT,\n HTTP2_HEADER_STATUS\n }\n} = http2\n\nfunction parseH2Headers (headers) {\n const result = []\n\n for (const [name, value] of Object.entries(headers)) {\n // h2 may concat the header value by array\n // e.g. Set-Cookie\n if (Array.isArray(value)) {\n for (const subvalue of value) {\n // we need to provide each header value of header name\n // because the headers handler expect name-value pair\n result.push(Buffer.from(name), Buffer.from(subvalue))\n }\n } else {\n result.push(Buffer.from(name), Buffer.from(value))\n }\n }\n\n return result\n}\n\nasync function connectH2 (client, socket) {\n client[kSocket] = socket\n\n if (!h2ExperimentalWarned) {\n h2ExperimentalWarned = true\n process.emitWarning('H2 support is experimental, expect them to change at any time.', {\n code: 'UNDICI-H2'\n })\n }\n\n const session = http2.connect(client[kUrl], {\n createConnection: () => socket,\n peerMaxConcurrentStreams: client[kMaxConcurrentStreams]\n })\n\n session[kOpenStreams] = 0\n session[kClient] = client\n session[kSocket] = socket\n\n util.addListener(session, 'error', onHttp2SessionError)\n util.addListener(session, 'frameError', onHttp2FrameError)\n util.addListener(session, 'end', onHttp2SessionEnd)\n util.addListener(session, 'goaway', onHTTP2GoAway)\n util.addListener(session, 'close', function () {\n const { [kClient]: client } = this\n const { [kSocket]: socket } = client\n\n const err = this[kSocket][kError] || this[kError] || new SocketError('closed', util.getSocketInfo(socket))\n\n client[kHTTP2Session] = null\n\n if (client.destroyed) {\n assert(client[kPending] === 0)\n\n // Fail entire queue.\n const requests = client[kQueue].splice(client[kRunningIdx])\n for (let i = 0; i < requests.length; i++) {\n const request = requests[i]\n util.errorRequest(client, request, err)\n }\n }\n })\n\n session.unref()\n\n client[kHTTP2Session] = session\n socket[kHTTP2Session] = session\n\n util.addListener(socket, 'error', function (err) {\n assert(err.code !== 'ERR_TLS_CERT_ALTNAME_INVALID')\n\n this[kError] = err\n\n this[kClient][kOnError](err)\n })\n\n util.addListener(socket, 'end', function () {\n util.destroy(this, new SocketError('other side closed', util.getSocketInfo(this)))\n })\n\n util.addListener(socket, 'close', function () {\n const err = this[kError] || new SocketError('closed', util.getSocketInfo(this))\n\n client[kSocket] = null\n\n if (this[kHTTP2Session] != null) {\n this[kHTTP2Session].destroy(err)\n }\n\n client[kPendingIdx] = client[kRunningIdx]\n\n assert(client[kRunning] === 0)\n\n client.emit('disconnect', client[kUrl], [client], err)\n\n client[kResume]()\n })\n\n let closed = false\n socket.on('close', () => {\n closed = true\n })\n\n return {\n version: 'h2',\n defaultPipelining: Infinity,\n write (...args) {\n return writeH2(client, ...args)\n },\n resume () {\n resumeH2(client)\n },\n destroy (err, callback) {\n if (closed) {\n queueMicrotask(callback)\n } else {\n // Destroying the socket will trigger the session close\n socket.destroy(err).on('close', callback)\n }\n },\n get destroyed () {\n return socket.destroyed\n },\n busy () {\n return false\n }\n }\n}\n\nfunction resumeH2 (client) {\n const socket = client[kSocket]\n\n if (socket?.destroyed === false) {\n if (client[kSize] === 0 && client[kMaxConcurrentStreams] === 0) {\n socket.unref()\n client[kHTTP2Session].unref()\n } else {\n socket.ref()\n client[kHTTP2Session].ref()\n }\n }\n}\n\nfunction onHttp2SessionError (err) {\n assert(err.code !== 'ERR_TLS_CERT_ALTNAME_INVALID')\n\n this[kSocket][kError] = err\n this[kClient][kOnError](err)\n}\n\nfunction onHttp2FrameError (type, code, id) {\n if (id === 0) {\n const err = new InformationalError(`HTTP/2: \"frameError\" received - type ${type}, code ${code}`)\n this[kSocket][kError] = err\n this[kClient][kOnError](err)\n }\n}\n\nfunction onHttp2SessionEnd () {\n const err = new SocketError('other side closed', util.getSocketInfo(this[kSocket]))\n this.destroy(err)\n util.destroy(this[kSocket], err)\n}\n\n/**\n * This is the root cause of #3011\n * We need to handle GOAWAY frames properly, and trigger the session close\n * along with the socket right away\n */\nfunction onHTTP2GoAway (code) {\n // We cannot recover, so best to close the session and the socket\n const err = this[kError] || new SocketError(`HTTP/2: \"GOAWAY\" frame received with code ${code}`, util.getSocketInfo(this))\n const client = this[kClient]\n\n client[kSocket] = null\n client[kHTTPContext] = null\n\n if (this[kHTTP2Session] != null) {\n this[kHTTP2Session].destroy(err)\n this[kHTTP2Session] = null\n }\n\n util.destroy(this[kSocket], err)\n\n // Fail head of pipeline.\n if (client[kRunningIdx] < client[kQueue].length) {\n const request = client[kQueue][client[kRunningIdx]]\n client[kQueue][client[kRunningIdx]++] = null\n util.errorRequest(client, request, err)\n client[kPendingIdx] = client[kRunningIdx]\n }\n\n assert(client[kRunning] === 0)\n\n client.emit('disconnect', client[kUrl], [client], err)\n\n client[kResume]()\n}\n\n// https://www.rfc-editor.org/rfc/rfc7230#section-3.3.2\nfunction shouldSendContentLength (method) {\n return method !== 'GET' && method !== 'HEAD' && method !== 'OPTIONS' && method !== 'TRACE' && method !== 'CONNECT'\n}\n\nfunction writeH2 (client, request) {\n const session = client[kHTTP2Session]\n const { method, path, host, upgrade, expectContinue, signal, headers: reqHeaders } = request\n let { body } = request\n\n if (upgrade) {\n util.errorRequest(client, request, new Error('Upgrade not supported for H2'))\n return false\n }\n\n const headers = {}\n for (let n = 0; n < reqHeaders.length; n += 2) {\n const key = reqHeaders[n + 0]\n const val = reqHeaders[n + 1]\n\n if (Array.isArray(val)) {\n for (let i = 0; i < val.length; i++) {\n if (headers[key]) {\n headers[key] += `,${val[i]}`\n } else {\n headers[key] = val[i]\n }\n }\n } else {\n headers[key] = val\n }\n }\n\n /** @type {import('node:http2').ClientHttp2Stream} */\n let stream\n\n const { hostname, port } = client[kUrl]\n\n headers[HTTP2_HEADER_AUTHORITY] = host || `${hostname}${port ? `:${port}` : ''}`\n headers[HTTP2_HEADER_METHOD] = method\n\n const abort = (err) => {\n if (request.aborted || request.completed) {\n return\n }\n\n err = err || new RequestAbortedError()\n\n util.errorRequest(client, request, err)\n\n if (stream != null) {\n util.destroy(stream, err)\n }\n\n // We do not destroy the socket as we can continue using the session\n // the stream get's destroyed and the session remains to create new streams\n util.destroy(body, err)\n client[kQueue][client[kRunningIdx]++] = null\n client[kResume]()\n }\n\n try {\n // We are already connected, streams are pending.\n // We can call on connect, and wait for abort\n request.onConnect(abort)\n } catch (err) {\n util.errorRequest(client, request, err)\n }\n\n if (request.aborted) {\n return false\n }\n\n if (method === 'CONNECT') {\n session.ref()\n // We are already connected, streams are pending, first request\n // will create a new stream. We trigger a request to create the stream and wait until\n // `ready` event is triggered\n // We disabled endStream to allow the user to write to the stream\n stream = session.request(headers, { endStream: false, signal })\n\n if (stream.id && !stream.pending) {\n request.onUpgrade(null, null, stream)\n ++session[kOpenStreams]\n client[kQueue][client[kRunningIdx]++] = null\n } else {\n stream.once('ready', () => {\n request.onUpgrade(null, null, stream)\n ++session[kOpenStreams]\n client[kQueue][client[kRunningIdx]++] = null\n })\n }\n\n stream.once('close', () => {\n session[kOpenStreams] -= 1\n if (session[kOpenStreams] === 0) session.unref()\n })\n\n return true\n }\n\n // https://tools.ietf.org/html/rfc7540#section-8.3\n // :path and :scheme headers must be omitted when sending CONNECT\n\n headers[HTTP2_HEADER_PATH] = path\n headers[HTTP2_HEADER_SCHEME] = 'https'\n\n // https://tools.ietf.org/html/rfc7231#section-4.3.1\n // https://tools.ietf.org/html/rfc7231#section-4.3.2\n // https://tools.ietf.org/html/rfc7231#section-4.3.5\n\n // Sending a payload body on a request that does not\n // expect it can cause undefined behavior on some\n // servers and corrupt connection state. Do not\n // re-use the connection for further requests.\n\n const expectsPayload = (\n method === 'PUT' ||\n method === 'POST' ||\n method === 'PATCH'\n )\n\n if (body && typeof body.read === 'function') {\n // Try to read EOF in order to get length.\n body.read(0)\n }\n\n let contentLength = util.bodyLength(body)\n\n if (util.isFormDataLike(body)) {\n extractBody ??= require('../web/fetch/body.js').extractBody\n\n const [bodyStream, contentType] = extractBody(body)\n headers['content-type'] = contentType\n\n body = bodyStream.stream\n contentLength = bodyStream.length\n }\n\n if (contentLength == null) {\n contentLength = request.contentLength\n }\n\n if (contentLength === 0 || !expectsPayload) {\n // https://tools.ietf.org/html/rfc7230#section-3.3.2\n // A user agent SHOULD NOT send a Content-Length header field when\n // the request message does not contain a payload body and the method\n // semantics do not anticipate such a body.\n\n contentLength = null\n }\n\n // https://github.com/nodejs/undici/issues/2046\n // A user agent may send a Content-Length header with 0 value, this should be allowed.\n if (shouldSendContentLength(method) && contentLength > 0 && request.contentLength != null && request.contentLength !== contentLength) {\n if (client[kStrictContentLength]) {\n util.errorRequest(client, request, new RequestContentLengthMismatchError())\n return false\n }\n\n process.emitWarning(new RequestContentLengthMismatchError())\n }\n\n if (contentLength != null) {\n assert(body, 'no body must not have content length')\n headers[HTTP2_HEADER_CONTENT_LENGTH] = `${contentLength}`\n }\n\n session.ref()\n\n const shouldEndStream = method === 'GET' || method === 'HEAD' || body === null\n if (expectContinue) {\n headers[HTTP2_HEADER_EXPECT] = '100-continue'\n stream = session.request(headers, { endStream: shouldEndStream, signal })\n\n stream.once('continue', writeBodyH2)\n } else {\n stream = session.request(headers, {\n endStream: shouldEndStream,\n signal\n })\n writeBodyH2()\n }\n\n // Increment counter as we have new streams open\n ++session[kOpenStreams]\n\n stream.once('response', headers => {\n const { [HTTP2_HEADER_STATUS]: statusCode, ...realHeaders } = headers\n request.onResponseStarted()\n\n // Due to the stream nature, it is possible we face a race condition\n // where the stream has been assigned, but the request has been aborted\n // the request remains in-flight and headers hasn't been received yet\n // for those scenarios, best effort is to destroy the stream immediately\n // as there's no value to keep it open.\n if (request.aborted) {\n const err = new RequestAbortedError()\n util.errorRequest(client, request, err)\n util.destroy(stream, err)\n return\n }\n\n if (request.onHeaders(Number(statusCode), parseH2Headers(realHeaders), stream.resume.bind(stream), '') === false) {\n stream.pause()\n }\n\n stream.on('data', (chunk) => {\n if (request.onData(chunk) === false) {\n stream.pause()\n }\n })\n })\n\n stream.once('end', () => {\n // When state is null, it means we haven't consumed body and the stream still do not have\n // a state.\n // Present specially when using pipeline or stream\n if (stream.state?.state == null || stream.state.state < 6) {\n request.onComplete([])\n }\n\n if (session[kOpenStreams] === 0) {\n // Stream is closed or half-closed-remote (6), decrement counter and cleanup\n // It does not have sense to continue working with the stream as we do not\n // have yet RST_STREAM support on client-side\n\n session.unref()\n }\n\n abort(new InformationalError('HTTP/2: stream half-closed (remote)'))\n client[kQueue][client[kRunningIdx]++] = null\n client[kPendingIdx] = client[kRunningIdx]\n client[kResume]()\n })\n\n stream.once('close', () => {\n session[kOpenStreams] -= 1\n if (session[kOpenStreams] === 0) {\n session.unref()\n }\n })\n\n stream.once('error', function (err) {\n abort(err)\n })\n\n stream.once('frameError', (type, code) => {\n abort(new InformationalError(`HTTP/2: \"frameError\" received - type ${type}, code ${code}`))\n })\n\n // stream.on('aborted', () => {\n // // TODO(HTTP/2): Support aborted\n // })\n\n // stream.on('timeout', () => {\n // // TODO(HTTP/2): Support timeout\n // })\n\n // stream.on('push', headers => {\n // // TODO(HTTP/2): Support push\n // })\n\n // stream.on('trailers', headers => {\n // // TODO(HTTP/2): Support trailers\n // })\n\n return true\n\n function writeBodyH2 () {\n /* istanbul ignore else: assertion */\n if (!body || contentLength === 0) {\n writeBuffer(\n abort,\n stream,\n null,\n client,\n request,\n client[kSocket],\n contentLength,\n expectsPayload\n )\n } else if (util.isBuffer(body)) {\n writeBuffer(\n abort,\n stream,\n body,\n client,\n request,\n client[kSocket],\n contentLength,\n expectsPayload\n )\n } else if (util.isBlobLike(body)) {\n if (typeof body.stream === 'function') {\n writeIterable(\n abort,\n stream,\n body.stream(),\n client,\n request,\n client[kSocket],\n contentLength,\n expectsPayload\n )\n } else {\n writeBlob(\n abort,\n stream,\n body,\n client,\n request,\n client[kSocket],\n contentLength,\n expectsPayload\n )\n }\n } else if (util.isStream(body)) {\n writeStream(\n abort,\n client[kSocket],\n expectsPayload,\n stream,\n body,\n client,\n request,\n contentLength\n )\n } else if (util.isIterable(body)) {\n writeIterable(\n abort,\n stream,\n body,\n client,\n request,\n client[kSocket],\n contentLength,\n expectsPayload\n )\n } else {\n assert(false)\n }\n }\n}\n\nfunction writeBuffer (abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {\n try {\n if (body != null && util.isBuffer(body)) {\n assert(contentLength === body.byteLength, 'buffer body must have content length')\n h2stream.cork()\n h2stream.write(body)\n h2stream.uncork()\n h2stream.end()\n\n request.onBodySent(body)\n }\n\n if (!expectsPayload) {\n socket[kReset] = true\n }\n\n request.onRequestSent()\n client[kResume]()\n } catch (error) {\n abort(error)\n }\n}\n\nfunction writeStream (abort, socket, expectsPayload, h2stream, body, client, request, contentLength) {\n assert(contentLength !== 0 || client[kRunning] === 0, 'stream body cannot be pipelined')\n\n // For HTTP/2, is enough to pipe the stream\n const pipe = pipeline(\n body,\n h2stream,\n (err) => {\n if (err) {\n util.destroy(pipe, err)\n abort(err)\n } else {\n util.removeAllListeners(pipe)\n request.onRequestSent()\n\n if (!expectsPayload) {\n socket[kReset] = true\n }\n\n client[kResume]()\n }\n }\n )\n\n util.addListener(pipe, 'data', onPipeData)\n\n function onPipeData (chunk) {\n request.onBodySent(chunk)\n }\n}\n\nasync function writeBlob (abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {\n assert(contentLength === body.size, 'blob body must have content length')\n\n try {\n if (contentLength != null && contentLength !== body.size) {\n throw new RequestContentLengthMismatchError()\n }\n\n const buffer = Buffer.from(await body.arrayBuffer())\n\n h2stream.cork()\n h2stream.write(buffer)\n h2stream.uncork()\n h2stream.end()\n\n request.onBodySent(buffer)\n request.onRequestSent()\n\n if (!expectsPayload) {\n socket[kReset] = true\n }\n\n client[kResume]()\n } catch (err) {\n abort(err)\n }\n}\n\nasync function writeIterable (abort, h2stream, body, client, request, socket, contentLength, expectsPayload) {\n assert(contentLength !== 0 || client[kRunning] === 0, 'iterator body cannot be pipelined')\n\n let callback = null\n function onDrain () {\n if (callback) {\n const cb = callback\n callback = null\n cb()\n }\n }\n\n const waitForDrain = () => new Promise((resolve, reject) => {\n assert(callback === null)\n\n if (socket[kError]) {\n reject(socket[kError])\n } else {\n callback = resolve\n }\n })\n\n h2stream\n .on('close', onDrain)\n .on('drain', onDrain)\n\n try {\n // It's up to the user to somehow abort the async iterable.\n for await (const chunk of body) {\n if (socket[kError]) {\n throw socket[kError]\n }\n\n const res = h2stream.write(chunk)\n request.onBodySent(chunk)\n if (!res) {\n await waitForDrain()\n }\n }\n\n h2stream.end()\n\n request.onRequestSent()\n\n if (!expectsPayload) {\n socket[kReset] = true\n }\n\n client[kResume]()\n } catch (err) {\n abort(err)\n } finally {\n h2stream\n .off('close', onDrain)\n .off('drain', onDrain)\n }\n}\n\nmodule.exports = connectH2\n", "'use strict'\n\nconst util = require('../core/util')\nconst { kBodyUsed } = require('../core/symbols')\nconst assert = require('node:assert')\nconst { InvalidArgumentError } = require('../core/errors')\nconst EE = require('node:events')\n\nconst redirectableStatusCodes = [300, 301, 302, 303, 307, 308]\n\nconst kBody = Symbol('body')\n\nclass BodyAsyncIterable {\n constructor (body) {\n this[kBody] = body\n this[kBodyUsed] = false\n }\n\n async * [Symbol.asyncIterator] () {\n assert(!this[kBodyUsed], 'disturbed')\n this[kBodyUsed] = true\n yield * this[kBody]\n }\n}\n\nclass RedirectHandler {\n constructor (dispatch, maxRedirections, opts, handler) {\n if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) {\n throw new InvalidArgumentError('maxRedirections must be a positive number')\n }\n\n util.validateHandler(handler, opts.method, opts.upgrade)\n\n this.dispatch = dispatch\n this.location = null\n this.abort = null\n this.opts = { ...opts, maxRedirections: 0 } // opts must be a copy\n this.maxRedirections = maxRedirections\n this.handler = handler\n this.history = []\n this.redirectionLimitReached = false\n\n if (util.isStream(this.opts.body)) {\n // TODO (fix): Provide some way for the user to cache the file to e.g. /tmp\n // so that it can be dispatched again?\n // TODO (fix): Do we need 100-expect support to provide a way to do this properly?\n if (util.bodyLength(this.opts.body) === 0) {\n this.opts.body\n .on('data', function () {\n assert(false)\n })\n }\n\n if (typeof this.opts.body.readableDidRead !== 'boolean') {\n this.opts.body[kBodyUsed] = false\n EE.prototype.on.call(this.opts.body, 'data', function () {\n this[kBodyUsed] = true\n })\n }\n } else if (this.opts.body && typeof this.opts.body.pipeTo === 'function') {\n // TODO (fix): We can't access ReadableStream internal state\n // to determine whether or not it has been disturbed. This is just\n // a workaround.\n this.opts.body = new BodyAsyncIterable(this.opts.body)\n } else if (\n this.opts.body &&\n typeof this.opts.body !== 'string' &&\n !ArrayBuffer.isView(this.opts.body) &&\n util.isIterable(this.opts.body)\n ) {\n // TODO: Should we allow re-using iterable if !this.opts.idempotent\n // or through some other flag?\n this.opts.body = new BodyAsyncIterable(this.opts.body)\n }\n }\n\n onConnect (abort) {\n this.abort = abort\n this.handler.onConnect(abort, { history: this.history })\n }\n\n onUpgrade (statusCode, headers, socket) {\n this.handler.onUpgrade(statusCode, headers, socket)\n }\n\n onError (error) {\n this.handler.onError(error)\n }\n\n onHeaders (statusCode, headers, resume, statusText) {\n this.location = this.history.length >= this.maxRedirections || util.isDisturbed(this.opts.body)\n ? null\n : parseLocation(statusCode, headers)\n\n if (this.opts.throwOnMaxRedirect && this.history.length >= this.maxRedirections) {\n if (this.request) {\n this.request.abort(new Error('max redirects'))\n }\n\n this.redirectionLimitReached = true\n this.abort(new Error('max redirects'))\n return\n }\n\n if (this.opts.origin) {\n this.history.push(new URL(this.opts.path, this.opts.origin))\n }\n\n if (!this.location) {\n return this.handler.onHeaders(statusCode, headers, resume, statusText)\n }\n\n const { origin, pathname, search } = util.parseURL(new URL(this.location, this.opts.origin && new URL(this.opts.path, this.opts.origin)))\n const path = search ? `${pathname}${search}` : pathname\n\n // Remove headers referring to the original URL.\n // By default it is Host only, unless it's a 303 (see below), which removes also all Content-* headers.\n // https://tools.ietf.org/html/rfc7231#section-6.4\n this.opts.headers = cleanRequestHeaders(this.opts.headers, statusCode === 303, this.opts.origin !== origin)\n this.opts.path = path\n this.opts.origin = origin\n this.opts.maxRedirections = 0\n this.opts.query = null\n\n // https://tools.ietf.org/html/rfc7231#section-6.4.4\n // In case of HTTP 303, always replace method to be either HEAD or GET\n if (statusCode === 303 && this.opts.method !== 'HEAD') {\n this.opts.method = 'GET'\n this.opts.body = null\n }\n }\n\n onData (chunk) {\n if (this.location) {\n /*\n https://tools.ietf.org/html/rfc7231#section-6.4\n\n TLDR: undici always ignores 3xx response bodies.\n\n Redirection is used to serve the requested resource from another URL, so it is assumes that\n no body is generated (and thus can be ignored). Even though generating a body is not prohibited.\n\n For status 301, 302, 303, 307 and 308 (the latter from RFC 7238), the specs mention that the body usually\n (which means it's optional and not mandated) contain just an hyperlink to the value of\n the Location response header, so the body can be ignored safely.\n\n For status 300, which is \"Multiple Choices\", the spec mentions both generating a Location\n response header AND a response body with the other possible location to follow.\n Since the spec explicitly chooses not to specify a format for such body and leave it to\n servers and browsers implementors, we ignore the body as there is no specified way to eventually parse it.\n */\n } else {\n return this.handler.onData(chunk)\n }\n }\n\n onComplete (trailers) {\n if (this.location) {\n /*\n https://tools.ietf.org/html/rfc7231#section-6.4\n\n TLDR: undici always ignores 3xx response trailers as they are not expected in case of redirections\n and neither are useful if present.\n\n See comment on onData method above for more detailed information.\n */\n\n this.location = null\n this.abort = null\n\n this.dispatch(this.opts, this)\n } else {\n this.handler.onComplete(trailers)\n }\n }\n\n onBodySent (chunk) {\n if (this.handler.onBodySent) {\n this.handler.onBodySent(chunk)\n }\n }\n}\n\nfunction parseLocation (statusCode, headers) {\n if (redirectableStatusCodes.indexOf(statusCode) === -1) {\n return null\n }\n\n for (let i = 0; i < headers.length; i += 2) {\n if (headers[i].length === 8 && util.headerNameToString(headers[i]) === 'location') {\n return headers[i + 1]\n }\n }\n}\n\n// https://tools.ietf.org/html/rfc7231#section-6.4.4\nfunction shouldRemoveHeader (header, removeContent, unknownOrigin) {\n if (header.length === 4) {\n return util.headerNameToString(header) === 'host'\n }\n if (removeContent && util.headerNameToString(header).startsWith('content-')) {\n return true\n }\n if (unknownOrigin && (header.length === 13 || header.length === 6 || header.length === 19)) {\n const name = util.headerNameToString(header)\n return name === 'authorization' || name === 'cookie' || name === 'proxy-authorization'\n }\n return false\n}\n\n// https://tools.ietf.org/html/rfc7231#section-6.4\nfunction cleanRequestHeaders (headers, removeContent, unknownOrigin) {\n const ret = []\n if (Array.isArray(headers)) {\n for (let i = 0; i < headers.length; i += 2) {\n if (!shouldRemoveHeader(headers[i], removeContent, unknownOrigin)) {\n ret.push(headers[i], headers[i + 1])\n }\n }\n } else if (headers && typeof headers === 'object') {\n for (const key of Object.keys(headers)) {\n if (!shouldRemoveHeader(key, removeContent, unknownOrigin)) {\n ret.push(key, headers[key])\n }\n }\n } else {\n assert(headers == null, 'headers must be an object or an array')\n }\n return ret\n}\n\nmodule.exports = RedirectHandler\n", "'use strict'\n\nconst RedirectHandler = require('../handler/redirect-handler')\n\nfunction createRedirectInterceptor ({ maxRedirections: defaultMaxRedirections }) {\n return (dispatch) => {\n return function Intercept (opts, handler) {\n const { maxRedirections = defaultMaxRedirections } = opts\n\n if (!maxRedirections) {\n return dispatch(opts, handler)\n }\n\n const redirectHandler = new RedirectHandler(dispatch, maxRedirections, opts, handler)\n opts = { ...opts, maxRedirections: 0 } // Stop sub dispatcher from also redirecting.\n return dispatch(opts, redirectHandler)\n }\n }\n}\n\nmodule.exports = createRedirectInterceptor\n", "// @ts-check\n\n'use strict'\n\nconst assert = require('node:assert')\nconst net = require('node:net')\nconst http = require('node:http')\nconst util = require('../core/util.js')\nconst { channels } = require('../core/diagnostics.js')\nconst Request = require('../core/request.js')\nconst DispatcherBase = require('./dispatcher-base')\nconst {\n InvalidArgumentError,\n InformationalError,\n ClientDestroyedError\n} = require('../core/errors.js')\nconst buildConnector = require('../core/connect.js')\nconst {\n kUrl,\n kServerName,\n kClient,\n kBusy,\n kConnect,\n kResuming,\n kRunning,\n kPending,\n kSize,\n kQueue,\n kConnected,\n kConnecting,\n kNeedDrain,\n kKeepAliveDefaultTimeout,\n kHostHeader,\n kPendingIdx,\n kRunningIdx,\n kError,\n kPipelining,\n kKeepAliveTimeoutValue,\n kMaxHeadersSize,\n kKeepAliveMaxTimeout,\n kKeepAliveTimeoutThreshold,\n kHeadersTimeout,\n kBodyTimeout,\n kStrictContentLength,\n kConnector,\n kMaxRedirections,\n kMaxRequests,\n kCounter,\n kClose,\n kDestroy,\n kDispatch,\n kInterceptors,\n kLocalAddress,\n kMaxResponseSize,\n kOnError,\n kHTTPContext,\n kMaxConcurrentStreams,\n kResume\n} = require('../core/symbols.js')\nconst connectH1 = require('./client-h1.js')\nconst connectH2 = require('./client-h2.js')\nlet deprecatedInterceptorWarned = false\n\nconst kClosedResolve = Symbol('kClosedResolve')\n\nconst noop = () => {}\n\nfunction getPipelining (client) {\n return client[kPipelining] ?? client[kHTTPContext]?.defaultPipelining ?? 1\n}\n\n/**\n * @type {import('../../types/client.js').default}\n */\nclass Client extends DispatcherBase {\n /**\n *\n * @param {string|URL} url\n * @param {import('../../types/client.js').Client.Options} options\n */\n constructor (url, {\n interceptors,\n maxHeaderSize,\n headersTimeout,\n socketTimeout,\n requestTimeout,\n connectTimeout,\n bodyTimeout,\n idleTimeout,\n keepAlive,\n keepAliveTimeout,\n maxKeepAliveTimeout,\n keepAliveMaxTimeout,\n keepAliveTimeoutThreshold,\n socketPath,\n pipelining,\n tls,\n strictContentLength,\n maxCachedSessions,\n maxRedirections,\n connect,\n maxRequestsPerClient,\n localAddress,\n maxResponseSize,\n autoSelectFamily,\n autoSelectFamilyAttemptTimeout,\n // h2\n maxConcurrentStreams,\n allowH2\n } = {}) {\n super()\n\n if (keepAlive !== undefined) {\n throw new InvalidArgumentError('unsupported keepAlive, use pipelining=0 instead')\n }\n\n if (socketTimeout !== undefined) {\n throw new InvalidArgumentError('unsupported socketTimeout, use headersTimeout & bodyTimeout instead')\n }\n\n if (requestTimeout !== undefined) {\n throw new InvalidArgumentError('unsupported requestTimeout, use headersTimeout & bodyTimeout instead')\n }\n\n if (idleTimeout !== undefined) {\n throw new InvalidArgumentError('unsupported idleTimeout, use keepAliveTimeout instead')\n }\n\n if (maxKeepAliveTimeout !== undefined) {\n throw new InvalidArgumentError('unsupported maxKeepAliveTimeout, use keepAliveMaxTimeout instead')\n }\n\n if (maxHeaderSize != null && !Number.isFinite(maxHeaderSize)) {\n throw new InvalidArgumentError('invalid maxHeaderSize')\n }\n\n if (socketPath != null && typeof socketPath !== 'string') {\n throw new InvalidArgumentError('invalid socketPath')\n }\n\n if (connectTimeout != null && (!Number.isFinite(connectTimeout) || connectTimeout < 0)) {\n throw new InvalidArgumentError('invalid connectTimeout')\n }\n\n if (keepAliveTimeout != null && (!Number.isFinite(keepAliveTimeout) || keepAliveTimeout <= 0)) {\n throw new InvalidArgumentError('invalid keepAliveTimeout')\n }\n\n if (keepAliveMaxTimeout != null && (!Number.isFinite(keepAliveMaxTimeout) || keepAliveMaxTimeout <= 0)) {\n throw new InvalidArgumentError('invalid keepAliveMaxTimeout')\n }\n\n if (keepAliveTimeoutThreshold != null && !Number.isFinite(keepAliveTimeoutThreshold)) {\n throw new InvalidArgumentError('invalid keepAliveTimeoutThreshold')\n }\n\n if (headersTimeout != null && (!Number.isInteger(headersTimeout) || headersTimeout < 0)) {\n throw new InvalidArgumentError('headersTimeout must be a positive integer or zero')\n }\n\n if (bodyTimeout != null && (!Number.isInteger(bodyTimeout) || bodyTimeout < 0)) {\n throw new InvalidArgumentError('bodyTimeout must be a positive integer or zero')\n }\n\n if (connect != null && typeof connect !== 'function' && typeof connect !== 'object') {\n throw new InvalidArgumentError('connect must be a function or an object')\n }\n\n if (maxRedirections != null && (!Number.isInteger(maxRedirections) || maxRedirections < 0)) {\n throw new InvalidArgumentError('maxRedirections must be a positive number')\n }\n\n if (maxRequestsPerClient != null && (!Number.isInteger(maxRequestsPerClient) || maxRequestsPerClient < 0)) {\n throw new InvalidArgumentError('maxRequestsPerClient must be a positive number')\n }\n\n if (localAddress != null && (typeof localAddress !== 'string' || net.isIP(localAddress) === 0)) {\n throw new InvalidArgumentError('localAddress must be valid string IP address')\n }\n\n if (maxResponseSize != null && (!Number.isInteger(maxResponseSize) || maxResponseSize < -1)) {\n throw new InvalidArgumentError('maxResponseSize must be a positive number')\n }\n\n if (\n autoSelectFamilyAttemptTimeout != null &&\n (!Number.isInteger(autoSelectFamilyAttemptTimeout) || autoSelectFamilyAttemptTimeout < -1)\n ) {\n throw new InvalidArgumentError('autoSelectFamilyAttemptTimeout must be a positive number')\n }\n\n // h2\n if (allowH2 != null && typeof allowH2 !== 'boolean') {\n throw new InvalidArgumentError('allowH2 must be a valid boolean value')\n }\n\n if (maxConcurrentStreams != null && (typeof maxConcurrentStreams !== 'number' || maxConcurrentStreams < 1)) {\n throw new InvalidArgumentError('maxConcurrentStreams must be a positive integer, greater than 0')\n }\n\n if (typeof connect !== 'function') {\n connect = buildConnector({\n ...tls,\n maxCachedSessions,\n allowH2,\n socketPath,\n timeout: connectTimeout,\n ...(autoSelectFamily ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : undefined),\n ...connect\n })\n }\n\n if (interceptors?.Client && Array.isArray(interceptors.Client)) {\n this[kInterceptors] = interceptors.Client\n if (!deprecatedInterceptorWarned) {\n deprecatedInterceptorWarned = true\n process.emitWarning('Client.Options#interceptor is deprecated. Use Dispatcher#compose instead.', {\n code: 'UNDICI-CLIENT-INTERCEPTOR-DEPRECATED'\n })\n }\n } else {\n this[kInterceptors] = [createRedirectInterceptor({ maxRedirections })]\n }\n\n this[kUrl] = util.parseOrigin(url)\n this[kConnector] = connect\n this[kPipelining] = pipelining != null ? pipelining : 1\n this[kMaxHeadersSize] = maxHeaderSize || http.maxHeaderSize\n this[kKeepAliveDefaultTimeout] = keepAliveTimeout == null ? 4e3 : keepAliveTimeout\n this[kKeepAliveMaxTimeout] = keepAliveMaxTimeout == null ? 600e3 : keepAliveMaxTimeout\n this[kKeepAliveTimeoutThreshold] = keepAliveTimeoutThreshold == null ? 2e3 : keepAliveTimeoutThreshold\n this[kKeepAliveTimeoutValue] = this[kKeepAliveDefaultTimeout]\n this[kServerName] = null\n this[kLocalAddress] = localAddress != null ? localAddress : null\n this[kResuming] = 0 // 0, idle, 1, scheduled, 2 resuming\n this[kNeedDrain] = 0 // 0, idle, 1, scheduled, 2 resuming\n this[kHostHeader] = `host: ${this[kUrl].hostname}${this[kUrl].port ? `:${this[kUrl].port}` : ''}\\r\\n`\n this[kBodyTimeout] = bodyTimeout != null ? bodyTimeout : 300e3\n this[kHeadersTimeout] = headersTimeout != null ? headersTimeout : 300e3\n this[kStrictContentLength] = strictContentLength == null ? true : strictContentLength\n this[kMaxRedirections] = maxRedirections\n this[kMaxRequests] = maxRequestsPerClient\n this[kClosedResolve] = null\n this[kMaxResponseSize] = maxResponseSize > -1 ? maxResponseSize : -1\n this[kMaxConcurrentStreams] = maxConcurrentStreams != null ? maxConcurrentStreams : 100 // Max peerConcurrentStreams for a Node h2 server\n this[kHTTPContext] = null\n\n // kQueue is built up of 3 sections separated by\n // the kRunningIdx and kPendingIdx indices.\n // | complete | running | pending |\n // ^ kRunningIdx ^ kPendingIdx ^ kQueue.length\n // kRunningIdx points to the first running element.\n // kPendingIdx points to the first pending element.\n // This implements a fast queue with an amortized\n // time of O(1).\n\n this[kQueue] = []\n this[kRunningIdx] = 0\n this[kPendingIdx] = 0\n\n this[kResume] = (sync) => resume(this, sync)\n this[kOnError] = (err) => onError(this, err)\n }\n\n get pipelining () {\n return this[kPipelining]\n }\n\n set pipelining (value) {\n this[kPipelining] = value\n this[kResume](true)\n }\n\n get [kPending] () {\n return this[kQueue].length - this[kPendingIdx]\n }\n\n get [kRunning] () {\n return this[kPendingIdx] - this[kRunningIdx]\n }\n\n get [kSize] () {\n return this[kQueue].length - this[kRunningIdx]\n }\n\n get [kConnected] () {\n return !!this[kHTTPContext] && !this[kConnecting] && !this[kHTTPContext].destroyed\n }\n\n get [kBusy] () {\n return Boolean(\n this[kHTTPContext]?.busy(null) ||\n (this[kSize] >= (getPipelining(this) || 1)) ||\n this[kPending] > 0\n )\n }\n\n /* istanbul ignore: only used for test */\n [kConnect] (cb) {\n connect(this)\n this.once('connect', cb)\n }\n\n [kDispatch] (opts, handler) {\n const origin = opts.origin || this[kUrl].origin\n const request = new Request(origin, opts, handler)\n\n this[kQueue].push(request)\n if (this[kResuming]) {\n // Do nothing.\n } else if (util.bodyLength(request.body) == null && util.isIterable(request.body)) {\n // Wait a tick in case stream/iterator is ended in the same tick.\n this[kResuming] = 1\n queueMicrotask(() => resume(this))\n } else {\n this[kResume](true)\n }\n\n if (this[kResuming] && this[kNeedDrain] !== 2 && this[kBusy]) {\n this[kNeedDrain] = 2\n }\n\n return this[kNeedDrain] < 2\n }\n\n async [kClose] () {\n // TODO: for H2 we need to gracefully flush the remaining enqueued\n // request and close each stream.\n return new Promise((resolve) => {\n if (this[kSize]) {\n this[kClosedResolve] = resolve\n } else {\n resolve(null)\n }\n })\n }\n\n async [kDestroy] (err) {\n return new Promise((resolve) => {\n const requests = this[kQueue].splice(this[kPendingIdx])\n for (let i = 0; i < requests.length; i++) {\n const request = requests[i]\n util.errorRequest(this, request, err)\n }\n\n const callback = () => {\n if (this[kClosedResolve]) {\n // TODO (fix): Should we error here with ClientDestroyedError?\n this[kClosedResolve]()\n this[kClosedResolve] = null\n }\n resolve(null)\n }\n\n if (this[kHTTPContext]) {\n this[kHTTPContext].destroy(err, callback)\n this[kHTTPContext] = null\n } else {\n queueMicrotask(callback)\n }\n\n this[kResume]()\n })\n }\n}\n\nconst createRedirectInterceptor = require('../interceptor/redirect-interceptor.js')\n\nfunction onError (client, err) {\n if (\n client[kRunning] === 0 &&\n err.code !== 'UND_ERR_INFO' &&\n err.code !== 'UND_ERR_SOCKET'\n ) {\n // Error is not caused by running request and not a recoverable\n // socket error.\n\n assert(client[kPendingIdx] === client[kRunningIdx])\n\n const requests = client[kQueue].splice(client[kRunningIdx])\n\n for (let i = 0; i < requests.length; i++) {\n const request = requests[i]\n util.errorRequest(client, request, err)\n }\n assert(client[kSize] === 0)\n }\n}\n\n/**\n * @param {Client} client\n * @returns\n */\nasync function connect (client) {\n assert(!client[kConnecting])\n assert(!client[kHTTPContext])\n\n let { host, hostname, protocol, port } = client[kUrl]\n\n // Resolve ipv6\n if (hostname[0] === '[') {\n const idx = hostname.indexOf(']')\n\n assert(idx !== -1)\n const ip = hostname.substring(1, idx)\n\n assert(net.isIP(ip))\n hostname = ip\n }\n\n client[kConnecting] = true\n\n if (channels.beforeConnect.hasSubscribers) {\n channels.beforeConnect.publish({\n connectParams: {\n host,\n hostname,\n protocol,\n port,\n version: client[kHTTPContext]?.version,\n servername: client[kServerName],\n localAddress: client[kLocalAddress]\n },\n connector: client[kConnector]\n })\n }\n\n try {\n const socket = await new Promise((resolve, reject) => {\n client[kConnector]({\n host,\n hostname,\n protocol,\n port,\n servername: client[kServerName],\n localAddress: client[kLocalAddress]\n }, (err, socket) => {\n if (err) {\n reject(err)\n } else {\n resolve(socket)\n }\n })\n })\n\n if (client.destroyed) {\n util.destroy(socket.on('error', noop), new ClientDestroyedError())\n return\n }\n\n assert(socket)\n\n try {\n client[kHTTPContext] = socket.alpnProtocol === 'h2'\n ? await connectH2(client, socket)\n : await connectH1(client, socket)\n } catch (err) {\n socket.destroy().on('error', noop)\n throw err\n }\n\n client[kConnecting] = false\n\n socket[kCounter] = 0\n socket[kMaxRequests] = client[kMaxRequests]\n socket[kClient] = client\n socket[kError] = null\n\n if (channels.connected.hasSubscribers) {\n channels.connected.publish({\n connectParams: {\n host,\n hostname,\n protocol,\n port,\n version: client[kHTTPContext]?.version,\n servername: client[kServerName],\n localAddress: client[kLocalAddress]\n },\n connector: client[kConnector],\n socket\n })\n }\n client.emit('connect', client[kUrl], [client])\n } catch (err) {\n if (client.destroyed) {\n return\n }\n\n client[kConnecting] = false\n\n if (channels.connectError.hasSubscribers) {\n channels.connectError.publish({\n connectParams: {\n host,\n hostname,\n protocol,\n port,\n version: client[kHTTPContext]?.version,\n servername: client[kServerName],\n localAddress: client[kLocalAddress]\n },\n connector: client[kConnector],\n error: err\n })\n }\n\n if (err.code === 'ERR_TLS_CERT_ALTNAME_INVALID') {\n assert(client[kRunning] === 0)\n while (client[kPending] > 0 && client[kQueue][client[kPendingIdx]].servername === client[kServerName]) {\n const request = client[kQueue][client[kPendingIdx]++]\n util.errorRequest(client, request, err)\n }\n } else {\n onError(client, err)\n }\n\n client.emit('connectionError', client[kUrl], [client], err)\n }\n\n client[kResume]()\n}\n\nfunction emitDrain (client) {\n client[kNeedDrain] = 0\n client.emit('drain', client[kUrl], [client])\n}\n\nfunction resume (client, sync) {\n if (client[kResuming] === 2) {\n return\n }\n\n client[kResuming] = 2\n\n _resume(client, sync)\n client[kResuming] = 0\n\n if (client[kRunningIdx] > 256) {\n client[kQueue].splice(0, client[kRunningIdx])\n client[kPendingIdx] -= client[kRunningIdx]\n client[kRunningIdx] = 0\n }\n}\n\nfunction _resume (client, sync) {\n while (true) {\n if (client.destroyed) {\n assert(client[kPending] === 0)\n return\n }\n\n if (client[kClosedResolve] && !client[kSize]) {\n client[kClosedResolve]()\n client[kClosedResolve] = null\n return\n }\n\n if (client[kHTTPContext]) {\n client[kHTTPContext].resume()\n }\n\n if (client[kBusy]) {\n client[kNeedDrain] = 2\n } else if (client[kNeedDrain] === 2) {\n if (sync) {\n client[kNeedDrain] = 1\n queueMicrotask(() => emitDrain(client))\n } else {\n emitDrain(client)\n }\n continue\n }\n\n if (client[kPending] === 0) {\n return\n }\n\n if (client[kRunning] >= (getPipelining(client) || 1)) {\n return\n }\n\n const request = client[kQueue][client[kPendingIdx]]\n\n if (client[kUrl].protocol === 'https:' && client[kServerName] !== request.servername) {\n if (client[kRunning] > 0) {\n return\n }\n\n client[kServerName] = request.servername\n client[kHTTPContext]?.destroy(new InformationalError('servername changed'), () => {\n client[kHTTPContext] = null\n resume(client)\n })\n }\n\n if (client[kConnecting]) {\n return\n }\n\n if (!client[kHTTPContext]) {\n connect(client)\n return\n }\n\n if (client[kHTTPContext].destroyed) {\n return\n }\n\n if (client[kHTTPContext].busy(request)) {\n return\n }\n\n if (!request.aborted && client[kHTTPContext].write(request)) {\n client[kPendingIdx]++\n } else {\n client[kQueue].splice(client[kPendingIdx], 1)\n }\n }\n}\n\nmodule.exports = Client\n", "/* eslint-disable */\n\n'use strict'\n\n// Extracted from node/lib/internal/fixed_queue.js\n\n// Currently optimal queue size, tested on V8 6.0 - 6.6. Must be power of two.\nconst kSize = 2048;\nconst kMask = kSize - 1;\n\n// The FixedQueue is implemented as a singly-linked list of fixed-size\n// circular buffers. It looks something like this:\n//\n// head tail\n// | |\n// v v\n// +-----------+ <-----\\ +-----------+ <------\\ +-----------+\n// | [null] | \\----- | next | \\------- | next |\n// +-----------+ +-----------+ +-----------+\n// | item | <-- bottom | item | <-- bottom | [empty] |\n// | item | | item | | [empty] |\n// | item | | item | | [empty] |\n// | item | | item | | [empty] |\n// | item | | item | bottom --> | item |\n// | item | | item | | item |\n// | ... | | ... | | ... |\n// | item | | item | | item |\n// | item | | item | | item |\n// | [empty] | <-- top | item | | item |\n// | [empty] | | item | | item |\n// | [empty] | | [empty] | <-- top top --> | [empty] |\n// +-----------+ +-----------+ +-----------+\n//\n// Or, if there is only one circular buffer, it looks something\n// like either of these:\n//\n// head tail head tail\n// | | | |\n// v v v v\n// +-----------+ +-----------+\n// | [null] | | [null] |\n// +-----------+ +-----------+\n// | [empty] | | item |\n// | [empty] | | item |\n// | item | <-- bottom top --> | [empty] |\n// | item | | [empty] |\n// | [empty] | <-- top bottom --> | item |\n// | [empty] | | item |\n// +-----------+ +-----------+\n//\n// Adding a value means moving `top` forward by one, removing means\n// moving `bottom` forward by one. After reaching the end, the queue\n// wraps around.\n//\n// When `top === bottom` the current queue is empty and when\n// `top + 1 === bottom` it's full. This wastes a single space of storage\n// but allows much quicker checks.\n\nclass FixedCircularBuffer {\n constructor() {\n this.bottom = 0;\n this.top = 0;\n this.list = new Array(kSize);\n this.next = null;\n }\n\n isEmpty() {\n return this.top === this.bottom;\n }\n\n isFull() {\n return ((this.top + 1) & kMask) === this.bottom;\n }\n\n push(data) {\n this.list[this.top] = data;\n this.top = (this.top + 1) & kMask;\n }\n\n shift() {\n const nextItem = this.list[this.bottom];\n if (nextItem === undefined)\n return null;\n this.list[this.bottom] = undefined;\n this.bottom = (this.bottom + 1) & kMask;\n return nextItem;\n }\n}\n\nmodule.exports = class FixedQueue {\n constructor() {\n this.head = this.tail = new FixedCircularBuffer();\n }\n\n isEmpty() {\n return this.head.isEmpty();\n }\n\n push(data) {\n if (this.head.isFull()) {\n // Head is full: Creates a new queue, sets the old queue's `.next` to it,\n // and sets it as the new main queue.\n this.head = this.head.next = new FixedCircularBuffer();\n }\n this.head.push(data);\n }\n\n shift() {\n const tail = this.tail;\n const next = tail.shift();\n if (tail.isEmpty() && tail.next !== null) {\n // If there is another queue, it forms the new tail.\n this.tail = tail.next;\n }\n return next;\n }\n};\n", "const { kFree, kConnected, kPending, kQueued, kRunning, kSize } = require('../core/symbols')\nconst kPool = Symbol('pool')\n\nclass PoolStats {\n constructor (pool) {\n this[kPool] = pool\n }\n\n get connected () {\n return this[kPool][kConnected]\n }\n\n get free () {\n return this[kPool][kFree]\n }\n\n get pending () {\n return this[kPool][kPending]\n }\n\n get queued () {\n return this[kPool][kQueued]\n }\n\n get running () {\n return this[kPool][kRunning]\n }\n\n get size () {\n return this[kPool][kSize]\n }\n}\n\nmodule.exports = PoolStats\n", "'use strict'\n\nconst DispatcherBase = require('./dispatcher-base')\nconst FixedQueue = require('./fixed-queue')\nconst { kConnected, kSize, kRunning, kPending, kQueued, kBusy, kFree, kUrl, kClose, kDestroy, kDispatch } = require('../core/symbols')\nconst PoolStats = require('./pool-stats')\n\nconst kClients = Symbol('clients')\nconst kNeedDrain = Symbol('needDrain')\nconst kQueue = Symbol('queue')\nconst kClosedResolve = Symbol('closed resolve')\nconst kOnDrain = Symbol('onDrain')\nconst kOnConnect = Symbol('onConnect')\nconst kOnDisconnect = Symbol('onDisconnect')\nconst kOnConnectionError = Symbol('onConnectionError')\nconst kGetDispatcher = Symbol('get dispatcher')\nconst kAddClient = Symbol('add client')\nconst kRemoveClient = Symbol('remove client')\nconst kStats = Symbol('stats')\n\nclass PoolBase extends DispatcherBase {\n constructor () {\n super()\n\n this[kQueue] = new FixedQueue()\n this[kClients] = []\n this[kQueued] = 0\n\n const pool = this\n\n this[kOnDrain] = function onDrain (origin, targets) {\n const queue = pool[kQueue]\n\n let needDrain = false\n\n while (!needDrain) {\n const item = queue.shift()\n if (!item) {\n break\n }\n pool[kQueued]--\n needDrain = !this.dispatch(item.opts, item.handler)\n }\n\n this[kNeedDrain] = needDrain\n\n if (!this[kNeedDrain] && pool[kNeedDrain]) {\n pool[kNeedDrain] = false\n pool.emit('drain', origin, [pool, ...targets])\n }\n\n if (pool[kClosedResolve] && queue.isEmpty()) {\n Promise\n .all(pool[kClients].map(c => c.close()))\n .then(pool[kClosedResolve])\n }\n }\n\n this[kOnConnect] = (origin, targets) => {\n pool.emit('connect', origin, [pool, ...targets])\n }\n\n this[kOnDisconnect] = (origin, targets, err) => {\n pool.emit('disconnect', origin, [pool, ...targets], err)\n }\n\n this[kOnConnectionError] = (origin, targets, err) => {\n pool.emit('connectionError', origin, [pool, ...targets], err)\n }\n\n this[kStats] = new PoolStats(this)\n }\n\n get [kBusy] () {\n return this[kNeedDrain]\n }\n\n get [kConnected] () {\n return this[kClients].filter(client => client[kConnected]).length\n }\n\n get [kFree] () {\n return this[kClients].filter(client => client[kConnected] && !client[kNeedDrain]).length\n }\n\n get [kPending] () {\n let ret = this[kQueued]\n for (const { [kPending]: pending } of this[kClients]) {\n ret += pending\n }\n return ret\n }\n\n get [kRunning] () {\n let ret = 0\n for (const { [kRunning]: running } of this[kClients]) {\n ret += running\n }\n return ret\n }\n\n get [kSize] () {\n let ret = this[kQueued]\n for (const { [kSize]: size } of this[kClients]) {\n ret += size\n }\n return ret\n }\n\n get stats () {\n return this[kStats]\n }\n\n async [kClose] () {\n if (this[kQueue].isEmpty()) {\n await Promise.all(this[kClients].map(c => c.close()))\n } else {\n await new Promise((resolve) => {\n this[kClosedResolve] = resolve\n })\n }\n }\n\n async [kDestroy] (err) {\n while (true) {\n const item = this[kQueue].shift()\n if (!item) {\n break\n }\n item.handler.onError(err)\n }\n\n await Promise.all(this[kClients].map(c => c.destroy(err)))\n }\n\n [kDispatch] (opts, handler) {\n const dispatcher = this[kGetDispatcher]()\n\n if (!dispatcher) {\n this[kNeedDrain] = true\n this[kQueue].push({ opts, handler })\n this[kQueued]++\n } else if (!dispatcher.dispatch(opts, handler)) {\n dispatcher[kNeedDrain] = true\n this[kNeedDrain] = !this[kGetDispatcher]()\n }\n\n return !this[kNeedDrain]\n }\n\n [kAddClient] (client) {\n client\n .on('drain', this[kOnDrain])\n .on('connect', this[kOnConnect])\n .on('disconnect', this[kOnDisconnect])\n .on('connectionError', this[kOnConnectionError])\n\n this[kClients].push(client)\n\n if (this[kNeedDrain]) {\n queueMicrotask(() => {\n if (this[kNeedDrain]) {\n this[kOnDrain](client[kUrl], [this, client])\n }\n })\n }\n\n return this\n }\n\n [kRemoveClient] (client) {\n client.close(() => {\n const idx = this[kClients].indexOf(client)\n if (idx !== -1) {\n this[kClients].splice(idx, 1)\n }\n })\n\n this[kNeedDrain] = this[kClients].some(dispatcher => (\n !dispatcher[kNeedDrain] &&\n dispatcher.closed !== true &&\n dispatcher.destroyed !== true\n ))\n }\n}\n\nmodule.exports = {\n PoolBase,\n kClients,\n kNeedDrain,\n kAddClient,\n kRemoveClient,\n kGetDispatcher\n}\n", "'use strict'\n\nconst {\n PoolBase,\n kClients,\n kNeedDrain,\n kAddClient,\n kGetDispatcher\n} = require('./pool-base')\nconst Client = require('./client')\nconst {\n InvalidArgumentError\n} = require('../core/errors')\nconst util = require('../core/util')\nconst { kUrl, kInterceptors } = require('../core/symbols')\nconst buildConnector = require('../core/connect')\n\nconst kOptions = Symbol('options')\nconst kConnections = Symbol('connections')\nconst kFactory = Symbol('factory')\n\nfunction defaultFactory (origin, opts) {\n return new Client(origin, opts)\n}\n\nclass Pool extends PoolBase {\n constructor (origin, {\n connections,\n factory = defaultFactory,\n connect,\n connectTimeout,\n tls,\n maxCachedSessions,\n socketPath,\n autoSelectFamily,\n autoSelectFamilyAttemptTimeout,\n allowH2,\n ...options\n } = {}) {\n super()\n\n if (connections != null && (!Number.isFinite(connections) || connections < 0)) {\n throw new InvalidArgumentError('invalid connections')\n }\n\n if (typeof factory !== 'function') {\n throw new InvalidArgumentError('factory must be a function.')\n }\n\n if (connect != null && typeof connect !== 'function' && typeof connect !== 'object') {\n throw new InvalidArgumentError('connect must be a function or an object')\n }\n\n if (typeof connect !== 'function') {\n connect = buildConnector({\n ...tls,\n maxCachedSessions,\n allowH2,\n socketPath,\n timeout: connectTimeout,\n ...(autoSelectFamily ? { autoSelectFamily, autoSelectFamilyAttemptTimeout } : undefined),\n ...connect\n })\n }\n\n this[kInterceptors] = options.interceptors?.Pool && Array.isArray(options.interceptors.Pool)\n ? options.interceptors.Pool\n : []\n this[kConnections] = connections || null\n this[kUrl] = util.parseOrigin(origin)\n this[kOptions] = { ...util.deepClone(options), connect, allowH2 }\n this[kOptions].interceptors = options.interceptors\n ? { ...options.interceptors }\n : undefined\n this[kFactory] = factory\n\n this.on('connectionError', (origin, targets, error) => {\n // If a connection error occurs, we remove the client from the pool,\n // and emit a connectionError event. They will not be re-used.\n // Fixes https://github.com/nodejs/undici/issues/3895\n for (const target of targets) {\n // Do not use kRemoveClient here, as it will close the client,\n // but the client cannot be closed in this state.\n const idx = this[kClients].indexOf(target)\n if (idx !== -1) {\n this[kClients].splice(idx, 1)\n }\n }\n })\n }\n\n [kGetDispatcher] () {\n for (const client of this[kClients]) {\n if (!client[kNeedDrain]) {\n return client\n }\n }\n\n if (!this[kConnections] || this[kClients].length < this[kConnections]) {\n const dispatcher = this[kFactory](this[kUrl], this[kOptions])\n this[kAddClient](dispatcher)\n return dispatcher\n }\n }\n}\n\nmodule.exports = Pool\n", "'use strict'\n\nconst {\n BalancedPoolMissingUpstreamError,\n InvalidArgumentError\n} = require('../core/errors')\nconst {\n PoolBase,\n kClients,\n kNeedDrain,\n kAddClient,\n kRemoveClient,\n kGetDispatcher\n} = require('./pool-base')\nconst Pool = require('./pool')\nconst { kUrl, kInterceptors } = require('../core/symbols')\nconst { parseOrigin } = require('../core/util')\nconst kFactory = Symbol('factory')\n\nconst kOptions = Symbol('options')\nconst kGreatestCommonDivisor = Symbol('kGreatestCommonDivisor')\nconst kCurrentWeight = Symbol('kCurrentWeight')\nconst kIndex = Symbol('kIndex')\nconst kWeight = Symbol('kWeight')\nconst kMaxWeightPerServer = Symbol('kMaxWeightPerServer')\nconst kErrorPenalty = Symbol('kErrorPenalty')\n\n/**\n * Calculate the greatest common divisor of two numbers by\n * using the Euclidean algorithm.\n *\n * @param {number} a\n * @param {number} b\n * @returns {number}\n */\nfunction getGreatestCommonDivisor (a, b) {\n if (a === 0) return b\n\n while (b !== 0) {\n const t = b\n b = a % b\n a = t\n }\n return a\n}\n\nfunction defaultFactory (origin, opts) {\n return new Pool(origin, opts)\n}\n\nclass BalancedPool extends PoolBase {\n constructor (upstreams = [], { factory = defaultFactory, ...opts } = {}) {\n super()\n\n this[kOptions] = opts\n this[kIndex] = -1\n this[kCurrentWeight] = 0\n\n this[kMaxWeightPerServer] = this[kOptions].maxWeightPerServer || 100\n this[kErrorPenalty] = this[kOptions].errorPenalty || 15\n\n if (!Array.isArray(upstreams)) {\n upstreams = [upstreams]\n }\n\n if (typeof factory !== 'function') {\n throw new InvalidArgumentError('factory must be a function.')\n }\n\n this[kInterceptors] = opts.interceptors?.BalancedPool && Array.isArray(opts.interceptors.BalancedPool)\n ? opts.interceptors.BalancedPool\n : []\n this[kFactory] = factory\n\n for (const upstream of upstreams) {\n this.addUpstream(upstream)\n }\n this._updateBalancedPoolStats()\n }\n\n addUpstream (upstream) {\n const upstreamOrigin = parseOrigin(upstream).origin\n\n if (this[kClients].find((pool) => (\n pool[kUrl].origin === upstreamOrigin &&\n pool.closed !== true &&\n pool.destroyed !== true\n ))) {\n return this\n }\n const pool = this[kFactory](upstreamOrigin, Object.assign({}, this[kOptions]))\n\n this[kAddClient](pool)\n pool.on('connect', () => {\n pool[kWeight] = Math.min(this[kMaxWeightPerServer], pool[kWeight] + this[kErrorPenalty])\n })\n\n pool.on('connectionError', () => {\n pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty])\n this._updateBalancedPoolStats()\n })\n\n pool.on('disconnect', (...args) => {\n const err = args[2]\n if (err && err.code === 'UND_ERR_SOCKET') {\n // decrease the weight of the pool.\n pool[kWeight] = Math.max(1, pool[kWeight] - this[kErrorPenalty])\n this._updateBalancedPoolStats()\n }\n })\n\n for (const client of this[kClients]) {\n client[kWeight] = this[kMaxWeightPerServer]\n }\n\n this._updateBalancedPoolStats()\n\n return this\n }\n\n _updateBalancedPoolStats () {\n let result = 0\n for (let i = 0; i < this[kClients].length; i++) {\n result = getGreatestCommonDivisor(this[kClients][i][kWeight], result)\n }\n\n this[kGreatestCommonDivisor] = result\n }\n\n removeUpstream (upstream) {\n const upstreamOrigin = parseOrigin(upstream).origin\n\n const pool = this[kClients].find((pool) => (\n pool[kUrl].origin === upstreamOrigin &&\n pool.closed !== true &&\n pool.destroyed !== true\n ))\n\n if (pool) {\n this[kRemoveClient](pool)\n }\n\n return this\n }\n\n get upstreams () {\n return this[kClients]\n .filter(dispatcher => dispatcher.closed !== true && dispatcher.destroyed !== true)\n .map((p) => p[kUrl].origin)\n }\n\n [kGetDispatcher] () {\n // We validate that pools is greater than 0,\n // otherwise we would have to wait until an upstream\n // is added, which might never happen.\n if (this[kClients].length === 0) {\n throw new BalancedPoolMissingUpstreamError()\n }\n\n const dispatcher = this[kClients].find(dispatcher => (\n !dispatcher[kNeedDrain] &&\n dispatcher.closed !== true &&\n dispatcher.destroyed !== true\n ))\n\n if (!dispatcher) {\n return\n }\n\n const allClientsBusy = this[kClients].map(pool => pool[kNeedDrain]).reduce((a, b) => a && b, true)\n\n if (allClientsBusy) {\n return\n }\n\n let counter = 0\n\n let maxWeightIndex = this[kClients].findIndex(pool => !pool[kNeedDrain])\n\n while (counter++ < this[kClients].length) {\n this[kIndex] = (this[kIndex] + 1) % this[kClients].length\n const pool = this[kClients][this[kIndex]]\n\n // find pool index with the largest weight\n if (pool[kWeight] > this[kClients][maxWeightIndex][kWeight] && !pool[kNeedDrain]) {\n maxWeightIndex = this[kIndex]\n }\n\n // decrease the current weight every `this[kClients].length`.\n if (this[kIndex] === 0) {\n // Set the current weight to the next lower weight.\n this[kCurrentWeight] = this[kCurrentWeight] - this[kGreatestCommonDivisor]\n\n if (this[kCurrentWeight] <= 0) {\n this[kCurrentWeight] = this[kMaxWeightPerServer]\n }\n }\n if (pool[kWeight] >= this[kCurrentWeight] && (!pool[kNeedDrain])) {\n return pool\n }\n }\n\n this[kCurrentWeight] = this[kClients][maxWeightIndex][kWeight]\n this[kIndex] = maxWeightIndex\n return this[kClients][maxWeightIndex]\n }\n}\n\nmodule.exports = BalancedPool\n", "'use strict'\n\nconst { InvalidArgumentError } = require('../core/errors')\nconst { kClients, kRunning, kClose, kDestroy, kDispatch, kInterceptors } = require('../core/symbols')\nconst DispatcherBase = require('./dispatcher-base')\nconst Pool = require('./pool')\nconst Client = require('./client')\nconst util = require('../core/util')\nconst createRedirectInterceptor = require('../interceptor/redirect-interceptor')\n\nconst kOnConnect = Symbol('onConnect')\nconst kOnDisconnect = Symbol('onDisconnect')\nconst kOnConnectionError = Symbol('onConnectionError')\nconst kMaxRedirections = Symbol('maxRedirections')\nconst kOnDrain = Symbol('onDrain')\nconst kFactory = Symbol('factory')\nconst kOptions = Symbol('options')\n\nfunction defaultFactory (origin, opts) {\n return opts && opts.connections === 1\n ? new Client(origin, opts)\n : new Pool(origin, opts)\n}\n\nclass Agent extends DispatcherBase {\n constructor ({ factory = defaultFactory, maxRedirections = 0, connect, ...options } = {}) {\n super()\n\n if (typeof factory !== 'function') {\n throw new InvalidArgumentError('factory must be a function.')\n }\n\n if (connect != null && typeof connect !== 'function' && typeof connect !== 'object') {\n throw new InvalidArgumentError('connect must be a function or an object')\n }\n\n if (!Number.isInteger(maxRedirections) || maxRedirections < 0) {\n throw new InvalidArgumentError('maxRedirections must be a positive number')\n }\n\n if (connect && typeof connect !== 'function') {\n connect = { ...connect }\n }\n\n this[kInterceptors] = options.interceptors?.Agent && Array.isArray(options.interceptors.Agent)\n ? options.interceptors.Agent\n : [createRedirectInterceptor({ maxRedirections })]\n\n this[kOptions] = { ...util.deepClone(options), connect }\n this[kOptions].interceptors = options.interceptors\n ? { ...options.interceptors }\n : undefined\n this[kMaxRedirections] = maxRedirections\n this[kFactory] = factory\n this[kClients] = new Map()\n\n this[kOnDrain] = (origin, targets) => {\n this.emit('drain', origin, [this, ...targets])\n }\n\n this[kOnConnect] = (origin, targets) => {\n this.emit('connect', origin, [this, ...targets])\n }\n\n this[kOnDisconnect] = (origin, targets, err) => {\n this.emit('disconnect', origin, [this, ...targets], err)\n }\n\n this[kOnConnectionError] = (origin, targets, err) => {\n this.emit('connectionError', origin, [this, ...targets], err)\n }\n }\n\n get [kRunning] () {\n let ret = 0\n for (const client of this[kClients].values()) {\n ret += client[kRunning]\n }\n return ret\n }\n\n [kDispatch] (opts, handler) {\n let key\n if (opts.origin && (typeof opts.origin === 'string' || opts.origin instanceof URL)) {\n key = String(opts.origin)\n } else {\n throw new InvalidArgumentError('opts.origin must be a non-empty string or URL.')\n }\n\n let dispatcher = this[kClients].get(key)\n\n if (!dispatcher) {\n dispatcher = this[kFactory](opts.origin, this[kOptions])\n .on('drain', this[kOnDrain])\n .on('connect', this[kOnConnect])\n .on('disconnect', this[kOnDisconnect])\n .on('connectionError', this[kOnConnectionError])\n\n // This introduces a tiny memory leak, as dispatchers are never removed from the map.\n // TODO(mcollina): remove te timer when the client/pool do not have any more\n // active connections.\n this[kClients].set(key, dispatcher)\n }\n\n return dispatcher.dispatch(opts, handler)\n }\n\n async [kClose] () {\n const closePromises = []\n for (const client of this[kClients].values()) {\n closePromises.push(client.close())\n }\n this[kClients].clear()\n\n await Promise.all(closePromises)\n }\n\n async [kDestroy] (err) {\n const destroyPromises = []\n for (const client of this[kClients].values()) {\n destroyPromises.push(client.destroy(err))\n }\n this[kClients].clear()\n\n await Promise.all(destroyPromises)\n }\n}\n\nmodule.exports = Agent\n", "'use strict'\n\nconst { kProxy, kClose, kDestroy, kDispatch, kInterceptors } = require('../core/symbols')\nconst { URL } = require('node:url')\nconst Agent = require('./agent')\nconst Pool = require('./pool')\nconst DispatcherBase = require('./dispatcher-base')\nconst { InvalidArgumentError, RequestAbortedError, SecureProxyConnectionError } = require('../core/errors')\nconst buildConnector = require('../core/connect')\nconst Client = require('./client')\n\nconst kAgent = Symbol('proxy agent')\nconst kClient = Symbol('proxy client')\nconst kProxyHeaders = Symbol('proxy headers')\nconst kRequestTls = Symbol('request tls settings')\nconst kProxyTls = Symbol('proxy tls settings')\nconst kConnectEndpoint = Symbol('connect endpoint function')\nconst kTunnelProxy = Symbol('tunnel proxy')\n\nfunction defaultProtocolPort (protocol) {\n return protocol === 'https:' ? 443 : 80\n}\n\nfunction defaultFactory (origin, opts) {\n return new Pool(origin, opts)\n}\n\nconst noop = () => {}\n\nfunction defaultAgentFactory (origin, opts) {\n if (opts.connections === 1) {\n return new Client(origin, opts)\n }\n return new Pool(origin, opts)\n}\n\nclass Http1ProxyWrapper extends DispatcherBase {\n #client\n\n constructor (proxyUrl, { headers = {}, connect, factory }) {\n super()\n if (!proxyUrl) {\n throw new InvalidArgumentError('Proxy URL is mandatory')\n }\n\n this[kProxyHeaders] = headers\n if (factory) {\n this.#client = factory(proxyUrl, { connect })\n } else {\n this.#client = new Client(proxyUrl, { connect })\n }\n }\n\n [kDispatch] (opts, handler) {\n const onHeaders = handler.onHeaders\n handler.onHeaders = function (statusCode, data, resume) {\n if (statusCode === 407) {\n if (typeof handler.onError === 'function') {\n handler.onError(new InvalidArgumentError('Proxy Authentication Required (407)'))\n }\n return\n }\n if (onHeaders) onHeaders.call(this, statusCode, data, resume)\n }\n\n // Rewrite request as an HTTP1 Proxy request, without tunneling.\n const {\n origin,\n path = '/',\n headers = {}\n } = opts\n\n opts.path = origin + path\n\n if (!('host' in headers) && !('Host' in headers)) {\n const { host } = new URL(origin)\n headers.host = host\n }\n opts.headers = { ...this[kProxyHeaders], ...headers }\n\n return this.#client[kDispatch](opts, handler)\n }\n\n async [kClose] () {\n return this.#client.close()\n }\n\n async [kDestroy] (err) {\n return this.#client.destroy(err)\n }\n}\n\nclass ProxyAgent extends DispatcherBase {\n constructor (opts) {\n super()\n\n if (!opts || (typeof opts === 'object' && !(opts instanceof URL) && !opts.uri)) {\n throw new InvalidArgumentError('Proxy uri is mandatory')\n }\n\n const { clientFactory = defaultFactory } = opts\n if (typeof clientFactory !== 'function') {\n throw new InvalidArgumentError('Proxy opts.clientFactory must be a function.')\n }\n\n const { proxyTunnel = true } = opts\n\n const url = this.#getUrl(opts)\n const { href, origin, port, protocol, username, password, hostname: proxyHostname } = url\n\n this[kProxy] = { uri: href, protocol }\n this[kInterceptors] = opts.interceptors?.ProxyAgent && Array.isArray(opts.interceptors.ProxyAgent)\n ? opts.interceptors.ProxyAgent\n : []\n this[kRequestTls] = opts.requestTls\n this[kProxyTls] = opts.proxyTls\n this[kProxyHeaders] = opts.headers || {}\n this[kTunnelProxy] = proxyTunnel\n\n if (opts.auth && opts.token) {\n throw new InvalidArgumentError('opts.auth cannot be used in combination with opts.token')\n } else if (opts.auth) {\n /* @deprecated in favour of opts.token */\n this[kProxyHeaders]['proxy-authorization'] = `Basic ${opts.auth}`\n } else if (opts.token) {\n this[kProxyHeaders]['proxy-authorization'] = opts.token\n } else if (username && password) {\n this[kProxyHeaders]['proxy-authorization'] = `Basic ${Buffer.from(`${decodeURIComponent(username)}:${decodeURIComponent(password)}`).toString('base64')}`\n }\n\n const connect = buildConnector({ ...opts.proxyTls })\n this[kConnectEndpoint] = buildConnector({ ...opts.requestTls })\n\n const agentFactory = opts.factory || defaultAgentFactory\n const factory = (origin, options) => {\n const { protocol } = new URL(origin)\n if (!this[kTunnelProxy] && protocol === 'http:' && this[kProxy].protocol === 'http:') {\n return new Http1ProxyWrapper(this[kProxy].uri, {\n headers: this[kProxyHeaders],\n connect,\n factory: agentFactory\n })\n }\n return agentFactory(origin, options)\n }\n this[kClient] = clientFactory(url, { connect })\n this[kAgent] = new Agent({\n ...opts,\n factory,\n connect: async (opts, callback) => {\n let requestedPath = opts.host\n if (!opts.port) {\n requestedPath += `:${defaultProtocolPort(opts.protocol)}`\n }\n try {\n const { socket, statusCode } = await this[kClient].connect({\n origin,\n port,\n path: requestedPath,\n signal: opts.signal,\n headers: {\n ...this[kProxyHeaders],\n host: opts.host\n },\n servername: this[kProxyTls]?.servername || proxyHostname\n })\n if (statusCode !== 200) {\n socket.on('error', noop).destroy()\n callback(new RequestAbortedError(`Proxy response (${statusCode}) !== 200 when HTTP Tunneling`))\n }\n if (opts.protocol !== 'https:') {\n callback(null, socket)\n return\n }\n let servername\n if (this[kRequestTls]) {\n servername = this[kRequestTls].servername\n } else {\n servername = opts.servername\n }\n this[kConnectEndpoint]({ ...opts, servername, httpSocket: socket }, callback)\n } catch (err) {\n if (err.code === 'ERR_TLS_CERT_ALTNAME_INVALID') {\n // Throw a custom error to avoid loop in client.js#connect\n callback(new SecureProxyConnectionError(err))\n } else {\n callback(err)\n }\n }\n }\n })\n }\n\n dispatch (opts, handler) {\n const headers = buildHeaders(opts.headers)\n throwIfProxyAuthIsSent(headers)\n\n if (headers && !('host' in headers) && !('Host' in headers)) {\n const { host } = new URL(opts.origin)\n headers.host = host\n }\n\n return this[kAgent].dispatch(\n {\n ...opts,\n headers\n },\n handler\n )\n }\n\n /**\n * @param {import('../types/proxy-agent').ProxyAgent.Options | string | URL} opts\n * @returns {URL}\n */\n #getUrl (opts) {\n if (typeof opts === 'string') {\n return new URL(opts)\n } else if (opts instanceof URL) {\n return opts\n } else {\n return new URL(opts.uri)\n }\n }\n\n async [kClose] () {\n await this[kAgent].close()\n await this[kClient].close()\n }\n\n async [kDestroy] () {\n await this[kAgent].destroy()\n await this[kClient].destroy()\n }\n}\n\n/**\n * @param {string[] | Record} headers\n * @returns {Record}\n */\nfunction buildHeaders (headers) {\n // When using undici.fetch, the headers list is stored\n // as an array.\n if (Array.isArray(headers)) {\n /** @type {Record} */\n const headersPair = {}\n\n for (let i = 0; i < headers.length; i += 2) {\n headersPair[headers[i]] = headers[i + 1]\n }\n\n return headersPair\n }\n\n return headers\n}\n\n/**\n * @param {Record} headers\n *\n * Previous versions of ProxyAgent suggests the Proxy-Authorization in request headers\n * Nevertheless, it was changed and to avoid a security vulnerability by end users\n * this check was created.\n * It should be removed in the next major version for performance reasons\n */\nfunction throwIfProxyAuthIsSent (headers) {\n const existProxyAuth = headers && Object.keys(headers)\n .find((key) => key.toLowerCase() === 'proxy-authorization')\n if (existProxyAuth) {\n throw new InvalidArgumentError('Proxy-Authorization should be sent in ProxyAgent constructor')\n }\n}\n\nmodule.exports = ProxyAgent\n", "'use strict'\n\nconst DispatcherBase = require('./dispatcher-base')\nconst { kClose, kDestroy, kClosed, kDestroyed, kDispatch, kNoProxyAgent, kHttpProxyAgent, kHttpsProxyAgent } = require('../core/symbols')\nconst ProxyAgent = require('./proxy-agent')\nconst Agent = require('./agent')\n\nconst DEFAULT_PORTS = {\n 'http:': 80,\n 'https:': 443\n}\n\nlet experimentalWarned = false\n\nclass EnvHttpProxyAgent extends DispatcherBase {\n #noProxyValue = null\n #noProxyEntries = null\n #opts = null\n\n constructor (opts = {}) {\n super()\n this.#opts = opts\n\n if (!experimentalWarned) {\n experimentalWarned = true\n process.emitWarning('EnvHttpProxyAgent is experimental, expect them to change at any time.', {\n code: 'UNDICI-EHPA'\n })\n }\n\n const { httpProxy, httpsProxy, noProxy, ...agentOpts } = opts\n\n this[kNoProxyAgent] = new Agent(agentOpts)\n\n const HTTP_PROXY = httpProxy ?? process.env.http_proxy ?? process.env.HTTP_PROXY\n if (HTTP_PROXY) {\n this[kHttpProxyAgent] = new ProxyAgent({ ...agentOpts, uri: HTTP_PROXY })\n } else {\n this[kHttpProxyAgent] = this[kNoProxyAgent]\n }\n\n const HTTPS_PROXY = httpsProxy ?? process.env.https_proxy ?? process.env.HTTPS_PROXY\n if (HTTPS_PROXY) {\n this[kHttpsProxyAgent] = new ProxyAgent({ ...agentOpts, uri: HTTPS_PROXY })\n } else {\n this[kHttpsProxyAgent] = this[kHttpProxyAgent]\n }\n\n this.#parseNoProxy()\n }\n\n [kDispatch] (opts, handler) {\n const url = new URL(opts.origin)\n const agent = this.#getProxyAgentForUrl(url)\n return agent.dispatch(opts, handler)\n }\n\n async [kClose] () {\n await this[kNoProxyAgent].close()\n if (!this[kHttpProxyAgent][kClosed]) {\n await this[kHttpProxyAgent].close()\n }\n if (!this[kHttpsProxyAgent][kClosed]) {\n await this[kHttpsProxyAgent].close()\n }\n }\n\n async [kDestroy] (err) {\n await this[kNoProxyAgent].destroy(err)\n if (!this[kHttpProxyAgent][kDestroyed]) {\n await this[kHttpProxyAgent].destroy(err)\n }\n if (!this[kHttpsProxyAgent][kDestroyed]) {\n await this[kHttpsProxyAgent].destroy(err)\n }\n }\n\n #getProxyAgentForUrl (url) {\n let { protocol, host: hostname, port } = url\n\n // Stripping ports in this way instead of using parsedUrl.hostname to make\n // sure that the brackets around IPv6 addresses are kept.\n hostname = hostname.replace(/:\\d*$/, '').toLowerCase()\n port = Number.parseInt(port, 10) || DEFAULT_PORTS[protocol] || 0\n if (!this.#shouldProxy(hostname, port)) {\n return this[kNoProxyAgent]\n }\n if (protocol === 'https:') {\n return this[kHttpsProxyAgent]\n }\n return this[kHttpProxyAgent]\n }\n\n #shouldProxy (hostname, port) {\n if (this.#noProxyChanged) {\n this.#parseNoProxy()\n }\n\n if (this.#noProxyEntries.length === 0) {\n return true // Always proxy if NO_PROXY is not set or empty.\n }\n if (this.#noProxyValue === '*') {\n return false // Never proxy if wildcard is set.\n }\n\n for (let i = 0; i < this.#noProxyEntries.length; i++) {\n const entry = this.#noProxyEntries[i]\n if (entry.port && entry.port !== port) {\n continue // Skip if ports don't match.\n }\n if (!/^[.*]/.test(entry.hostname)) {\n // No wildcards, so don't proxy only if there is not an exact match.\n if (hostname === entry.hostname) {\n return false\n }\n } else {\n // Don't proxy if the hostname ends with the no_proxy host.\n if (hostname.endsWith(entry.hostname.replace(/^\\*/, ''))) {\n return false\n }\n }\n }\n\n return true\n }\n\n #parseNoProxy () {\n const noProxyValue = this.#opts.noProxy ?? this.#noProxyEnv\n const noProxySplit = noProxyValue.split(/[,\\s]/)\n const noProxyEntries = []\n\n for (let i = 0; i < noProxySplit.length; i++) {\n const entry = noProxySplit[i]\n if (!entry) {\n continue\n }\n const parsed = entry.match(/^(.+):(\\d+)$/)\n noProxyEntries.push({\n hostname: (parsed ? parsed[1] : entry).toLowerCase(),\n port: parsed ? Number.parseInt(parsed[2], 10) : 0\n })\n }\n\n this.#noProxyValue = noProxyValue\n this.#noProxyEntries = noProxyEntries\n }\n\n get #noProxyChanged () {\n if (this.#opts.noProxy !== undefined) {\n return false\n }\n return this.#noProxyValue !== this.#noProxyEnv\n }\n\n get #noProxyEnv () {\n return process.env.no_proxy ?? process.env.NO_PROXY ?? ''\n }\n}\n\nmodule.exports = EnvHttpProxyAgent\n", "'use strict'\nconst assert = require('node:assert')\n\nconst { kRetryHandlerDefaultRetry } = require('../core/symbols')\nconst { RequestRetryError } = require('../core/errors')\nconst {\n isDisturbed,\n parseHeaders,\n parseRangeHeader,\n wrapRequestBody\n} = require('../core/util')\n\nfunction calculateRetryAfterHeader (retryAfter) {\n const current = Date.now()\n return new Date(retryAfter).getTime() - current\n}\n\nclass RetryHandler {\n constructor (opts, handlers) {\n const { retryOptions, ...dispatchOpts } = opts\n const {\n // Retry scoped\n retry: retryFn,\n maxRetries,\n maxTimeout,\n minTimeout,\n timeoutFactor,\n // Response scoped\n methods,\n errorCodes,\n retryAfter,\n statusCodes\n } = retryOptions ?? {}\n\n this.dispatch = handlers.dispatch\n this.handler = handlers.handler\n this.opts = { ...dispatchOpts, body: wrapRequestBody(opts.body) }\n this.abort = null\n this.aborted = false\n this.retryOpts = {\n retry: retryFn ?? RetryHandler[kRetryHandlerDefaultRetry],\n retryAfter: retryAfter ?? true,\n maxTimeout: maxTimeout ?? 30 * 1000, // 30s,\n minTimeout: minTimeout ?? 500, // .5s\n timeoutFactor: timeoutFactor ?? 2,\n maxRetries: maxRetries ?? 5,\n // What errors we should retry\n methods: methods ?? ['GET', 'HEAD', 'OPTIONS', 'PUT', 'DELETE', 'TRACE'],\n // Indicates which errors to retry\n statusCodes: statusCodes ?? [500, 502, 503, 504, 429],\n // List of errors to retry\n errorCodes: errorCodes ?? [\n 'ECONNRESET',\n 'ECONNREFUSED',\n 'ENOTFOUND',\n 'ENETDOWN',\n 'ENETUNREACH',\n 'EHOSTDOWN',\n 'EHOSTUNREACH',\n 'EPIPE',\n 'UND_ERR_SOCKET'\n ]\n }\n\n this.retryCount = 0\n this.retryCountCheckpoint = 0\n this.start = 0\n this.end = null\n this.etag = null\n this.resume = null\n\n // Handle possible onConnect duplication\n this.handler.onConnect(reason => {\n this.aborted = true\n if (this.abort) {\n this.abort(reason)\n } else {\n this.reason = reason\n }\n })\n }\n\n onRequestSent () {\n if (this.handler.onRequestSent) {\n this.handler.onRequestSent()\n }\n }\n\n onUpgrade (statusCode, headers, socket) {\n if (this.handler.onUpgrade) {\n this.handler.onUpgrade(statusCode, headers, socket)\n }\n }\n\n onConnect (abort) {\n if (this.aborted) {\n abort(this.reason)\n } else {\n this.abort = abort\n }\n }\n\n onBodySent (chunk) {\n if (this.handler.onBodySent) return this.handler.onBodySent(chunk)\n }\n\n static [kRetryHandlerDefaultRetry] (err, { state, opts }, cb) {\n const { statusCode, code, headers } = err\n const { method, retryOptions } = opts\n const {\n maxRetries,\n minTimeout,\n maxTimeout,\n timeoutFactor,\n statusCodes,\n errorCodes,\n methods\n } = retryOptions\n const { counter } = state\n\n // Any code that is not a Undici's originated and allowed to retry\n if (code && code !== 'UND_ERR_REQ_RETRY' && !errorCodes.includes(code)) {\n cb(err)\n return\n }\n\n // If a set of method are provided and the current method is not in the list\n if (Array.isArray(methods) && !methods.includes(method)) {\n cb(err)\n return\n }\n\n // If a set of status code are provided and the current status code is not in the list\n if (\n statusCode != null &&\n Array.isArray(statusCodes) &&\n !statusCodes.includes(statusCode)\n ) {\n cb(err)\n return\n }\n\n // If we reached the max number of retries\n if (counter > maxRetries) {\n cb(err)\n return\n }\n\n let retryAfterHeader = headers?.['retry-after']\n if (retryAfterHeader) {\n retryAfterHeader = Number(retryAfterHeader)\n retryAfterHeader = Number.isNaN(retryAfterHeader)\n ? calculateRetryAfterHeader(retryAfterHeader)\n : retryAfterHeader * 1e3 // Retry-After is in seconds\n }\n\n const retryTimeout =\n retryAfterHeader > 0\n ? Math.min(retryAfterHeader, maxTimeout)\n : Math.min(minTimeout * timeoutFactor ** (counter - 1), maxTimeout)\n\n setTimeout(() => cb(null), retryTimeout)\n }\n\n onHeaders (statusCode, rawHeaders, resume, statusMessage) {\n const headers = parseHeaders(rawHeaders)\n\n this.retryCount += 1\n\n if (statusCode >= 300) {\n if (this.retryOpts.statusCodes.includes(statusCode) === false) {\n return this.handler.onHeaders(\n statusCode,\n rawHeaders,\n resume,\n statusMessage\n )\n } else {\n this.abort(\n new RequestRetryError('Request failed', statusCode, {\n headers,\n data: {\n count: this.retryCount\n }\n })\n )\n return false\n }\n }\n\n // Checkpoint for resume from where we left it\n if (this.resume != null) {\n this.resume = null\n\n // Only Partial Content 206 supposed to provide Content-Range,\n // any other status code that partially consumed the payload\n // should not be retry because it would result in downstream\n // wrongly concatanete multiple responses.\n if (statusCode !== 206 && (this.start > 0 || statusCode !== 200)) {\n this.abort(\n new RequestRetryError('server does not support the range header and the payload was partially consumed', statusCode, {\n headers,\n data: { count: this.retryCount }\n })\n )\n return false\n }\n\n const contentRange = parseRangeHeader(headers['content-range'])\n // If no content range\n if (!contentRange) {\n this.abort(\n new RequestRetryError('Content-Range mismatch', statusCode, {\n headers,\n data: { count: this.retryCount }\n })\n )\n return false\n }\n\n // Let's start with a weak etag check\n if (this.etag != null && this.etag !== headers.etag) {\n this.abort(\n new RequestRetryError('ETag mismatch', statusCode, {\n headers,\n data: { count: this.retryCount }\n })\n )\n return false\n }\n\n const { start, size, end = size - 1 } = contentRange\n\n assert(this.start === start, 'content-range mismatch')\n assert(this.end == null || this.end === end, 'content-range mismatch')\n\n this.resume = resume\n return true\n }\n\n if (this.end == null) {\n if (statusCode === 206) {\n // First time we receive 206\n const range = parseRangeHeader(headers['content-range'])\n\n if (range == null) {\n return this.handler.onHeaders(\n statusCode,\n rawHeaders,\n resume,\n statusMessage\n )\n }\n\n const { start, size, end = size - 1 } = range\n assert(\n start != null && Number.isFinite(start),\n 'content-range mismatch'\n )\n assert(end != null && Number.isFinite(end), 'invalid content-length')\n\n this.start = start\n this.end = end\n }\n\n // We make our best to checkpoint the body for further range headers\n if (this.end == null) {\n const contentLength = headers['content-length']\n this.end = contentLength != null ? Number(contentLength) - 1 : null\n }\n\n assert(Number.isFinite(this.start))\n assert(\n this.end == null || Number.isFinite(this.end),\n 'invalid content-length'\n )\n\n this.resume = resume\n this.etag = headers.etag != null ? headers.etag : null\n\n // Weak etags are not useful for comparison nor cache\n // for instance not safe to assume if the response is byte-per-byte\n // equal\n if (this.etag != null && this.etag.startsWith('W/')) {\n this.etag = null\n }\n\n return this.handler.onHeaders(\n statusCode,\n rawHeaders,\n resume,\n statusMessage\n )\n }\n\n const err = new RequestRetryError('Request failed', statusCode, {\n headers,\n data: { count: this.retryCount }\n })\n\n this.abort(err)\n\n return false\n }\n\n onData (chunk) {\n this.start += chunk.length\n\n return this.handler.onData(chunk)\n }\n\n onComplete (rawTrailers) {\n this.retryCount = 0\n return this.handler.onComplete(rawTrailers)\n }\n\n onError (err) {\n if (this.aborted || isDisturbed(this.opts.body)) {\n return this.handler.onError(err)\n }\n\n // We reconcile in case of a mix between network errors\n // and server error response\n if (this.retryCount - this.retryCountCheckpoint > 0) {\n // We count the difference between the last checkpoint and the current retry count\n this.retryCount =\n this.retryCountCheckpoint +\n (this.retryCount - this.retryCountCheckpoint)\n } else {\n this.retryCount += 1\n }\n\n this.retryOpts.retry(\n err,\n {\n state: { counter: this.retryCount },\n opts: { retryOptions: this.retryOpts, ...this.opts }\n },\n onRetry.bind(this)\n )\n\n function onRetry (err) {\n if (err != null || this.aborted || isDisturbed(this.opts.body)) {\n return this.handler.onError(err)\n }\n\n if (this.start !== 0) {\n const headers = { range: `bytes=${this.start}-${this.end ?? ''}` }\n\n // Weak etag check - weak etags will make comparison algorithms never match\n if (this.etag != null) {\n headers['if-match'] = this.etag\n }\n\n this.opts = {\n ...this.opts,\n headers: {\n ...this.opts.headers,\n ...headers\n }\n }\n }\n\n try {\n this.retryCountCheckpoint = this.retryCount\n this.dispatch(this.opts, this)\n } catch (err) {\n this.handler.onError(err)\n }\n }\n }\n}\n\nmodule.exports = RetryHandler\n", "'use strict'\n\nconst Dispatcher = require('./dispatcher')\nconst RetryHandler = require('../handler/retry-handler')\n\nclass RetryAgent extends Dispatcher {\n #agent = null\n #options = null\n constructor (agent, options = {}) {\n super(options)\n this.#agent = agent\n this.#options = options\n }\n\n dispatch (opts, handler) {\n const retry = new RetryHandler({\n ...opts,\n retryOptions: this.#options\n }, {\n dispatch: this.#agent.dispatch.bind(this.#agent),\n handler\n })\n return this.#agent.dispatch(opts, retry)\n }\n\n close () {\n return this.#agent.close()\n }\n\n destroy () {\n return this.#agent.destroy()\n }\n}\n\nmodule.exports = RetryAgent\n", "// Ported from https://github.com/nodejs/undici/pull/907\n\n'use strict'\n\nconst assert = require('node:assert')\nconst { Readable } = require('node:stream')\nconst { RequestAbortedError, NotSupportedError, InvalidArgumentError, AbortError } = require('../core/errors')\nconst util = require('../core/util')\nconst { ReadableStreamFrom } = require('../core/util')\n\nconst kConsume = Symbol('kConsume')\nconst kReading = Symbol('kReading')\nconst kBody = Symbol('kBody')\nconst kAbort = Symbol('kAbort')\nconst kContentType = Symbol('kContentType')\nconst kContentLength = Symbol('kContentLength')\n\nconst noop = () => {}\n\nclass BodyReadable extends Readable {\n constructor ({\n resume,\n abort,\n contentType = '',\n contentLength,\n highWaterMark = 64 * 1024 // Same as nodejs fs streams.\n }) {\n super({\n autoDestroy: true,\n read: resume,\n highWaterMark\n })\n\n this._readableState.dataEmitted = false\n\n this[kAbort] = abort\n this[kConsume] = null\n this[kBody] = null\n this[kContentType] = contentType\n this[kContentLength] = contentLength\n\n // Is stream being consumed through Readable API?\n // This is an optimization so that we avoid checking\n // for 'data' and 'readable' listeners in the hot path\n // inside push().\n this[kReading] = false\n }\n\n destroy (err) {\n if (!err && !this._readableState.endEmitted) {\n err = new RequestAbortedError()\n }\n\n if (err) {\n this[kAbort]()\n }\n\n return super.destroy(err)\n }\n\n _destroy (err, callback) {\n // Workaround for Node \"bug\". If the stream is destroyed in same\n // tick as it is created, then a user who is waiting for a\n // promise (i.e micro tick) for installing a 'error' listener will\n // never get a chance and will always encounter an unhandled exception.\n if (!this[kReading]) {\n setImmediate(() => {\n callback(err)\n })\n } else {\n callback(err)\n }\n }\n\n on (ev, ...args) {\n if (ev === 'data' || ev === 'readable') {\n this[kReading] = true\n }\n return super.on(ev, ...args)\n }\n\n addListener (ev, ...args) {\n return this.on(ev, ...args)\n }\n\n off (ev, ...args) {\n const ret = super.off(ev, ...args)\n if (ev === 'data' || ev === 'readable') {\n this[kReading] = (\n this.listenerCount('data') > 0 ||\n this.listenerCount('readable') > 0\n )\n }\n return ret\n }\n\n removeListener (ev, ...args) {\n return this.off(ev, ...args)\n }\n\n push (chunk) {\n if (this[kConsume] && chunk !== null) {\n consumePush(this[kConsume], chunk)\n return this[kReading] ? super.push(chunk) : true\n }\n return super.push(chunk)\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-text\n async text () {\n return consume(this, 'text')\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-json\n async json () {\n return consume(this, 'json')\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-blob\n async blob () {\n return consume(this, 'blob')\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-bytes\n async bytes () {\n return consume(this, 'bytes')\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-arraybuffer\n async arrayBuffer () {\n return consume(this, 'arrayBuffer')\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-formdata\n async formData () {\n // TODO: Implement.\n throw new NotSupportedError()\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-bodyused\n get bodyUsed () {\n return util.isDisturbed(this)\n }\n\n // https://fetch.spec.whatwg.org/#dom-body-body\n get body () {\n if (!this[kBody]) {\n this[kBody] = ReadableStreamFrom(this)\n if (this[kConsume]) {\n // TODO: Is this the best way to force a lock?\n this[kBody].getReader() // Ensure stream is locked.\n assert(this[kBody].locked)\n }\n }\n return this[kBody]\n }\n\n async dump (opts) {\n let limit = Number.isFinite(opts?.limit) ? opts.limit : 128 * 1024\n const signal = opts?.signal\n\n if (signal != null && (typeof signal !== 'object' || !('aborted' in signal))) {\n throw new InvalidArgumentError('signal must be an AbortSignal')\n }\n\n signal?.throwIfAborted()\n\n if (this._readableState.closeEmitted) {\n return null\n }\n\n return await new Promise((resolve, reject) => {\n if (this[kContentLength] > limit) {\n this.destroy(new AbortError())\n }\n\n const onAbort = () => {\n this.destroy(signal.reason ?? new AbortError())\n }\n signal?.addEventListener('abort', onAbort)\n\n this\n .on('close', function () {\n signal?.removeEventListener('abort', onAbort)\n if (signal?.aborted) {\n reject(signal.reason ?? new AbortError())\n } else {\n resolve(null)\n }\n })\n .on('error', noop)\n .on('data', function (chunk) {\n limit -= chunk.length\n if (limit <= 0) {\n this.destroy()\n }\n })\n .resume()\n })\n }\n}\n\n// https://streams.spec.whatwg.org/#readablestream-locked\nfunction isLocked (self) {\n // Consume is an implicit lock.\n return (self[kBody] && self[kBody].locked === true) || self[kConsume]\n}\n\n// https://fetch.spec.whatwg.org/#body-unusable\nfunction isUnusable (self) {\n return util.isDisturbed(self) || isLocked(self)\n}\n\nasync function consume (stream, type) {\n assert(!stream[kConsume])\n\n return new Promise((resolve, reject) => {\n if (isUnusable(stream)) {\n const rState = stream._readableState\n if (rState.destroyed && rState.closeEmitted === false) {\n stream\n .on('error', err => {\n reject(err)\n })\n .on('close', () => {\n reject(new TypeError('unusable'))\n })\n } else {\n reject(rState.errored ?? new TypeError('unusable'))\n }\n } else {\n queueMicrotask(() => {\n stream[kConsume] = {\n type,\n stream,\n resolve,\n reject,\n length: 0,\n body: []\n }\n\n stream\n .on('error', function (err) {\n consumeFinish(this[kConsume], err)\n })\n .on('close', function () {\n if (this[kConsume].body !== null) {\n consumeFinish(this[kConsume], new RequestAbortedError())\n }\n })\n\n consumeStart(stream[kConsume])\n })\n }\n })\n}\n\nfunction consumeStart (consume) {\n if (consume.body === null) {\n return\n }\n\n const { _readableState: state } = consume.stream\n\n if (state.bufferIndex) {\n const start = state.bufferIndex\n const end = state.buffer.length\n for (let n = start; n < end; n++) {\n consumePush(consume, state.buffer[n])\n }\n } else {\n for (const chunk of state.buffer) {\n consumePush(consume, chunk)\n }\n }\n\n if (state.endEmitted) {\n consumeEnd(this[kConsume])\n } else {\n consume.stream.on('end', function () {\n consumeEnd(this[kConsume])\n })\n }\n\n consume.stream.resume()\n\n while (consume.stream.read() != null) {\n // Loop\n }\n}\n\n/**\n * @param {Buffer[]} chunks\n * @param {number} length\n */\nfunction chunksDecode (chunks, length) {\n if (chunks.length === 0 || length === 0) {\n return ''\n }\n const buffer = chunks.length === 1 ? chunks[0] : Buffer.concat(chunks, length)\n const bufferLength = buffer.length\n\n // Skip BOM.\n const start =\n bufferLength > 2 &&\n buffer[0] === 0xef &&\n buffer[1] === 0xbb &&\n buffer[2] === 0xbf\n ? 3\n : 0\n return buffer.utf8Slice(start, bufferLength)\n}\n\n/**\n * @param {Buffer[]} chunks\n * @param {number} length\n * @returns {Uint8Array}\n */\nfunction chunksConcat (chunks, length) {\n if (chunks.length === 0 || length === 0) {\n return new Uint8Array(0)\n }\n if (chunks.length === 1) {\n // fast-path\n return new Uint8Array(chunks[0])\n }\n const buffer = new Uint8Array(Buffer.allocUnsafeSlow(length).buffer)\n\n let offset = 0\n for (let i = 0; i < chunks.length; ++i) {\n const chunk = chunks[i]\n buffer.set(chunk, offset)\n offset += chunk.length\n }\n\n return buffer\n}\n\nfunction consumeEnd (consume) {\n const { type, body, resolve, stream, length } = consume\n\n try {\n if (type === 'text') {\n resolve(chunksDecode(body, length))\n } else if (type === 'json') {\n resolve(JSON.parse(chunksDecode(body, length)))\n } else if (type === 'arrayBuffer') {\n resolve(chunksConcat(body, length).buffer)\n } else if (type === 'blob') {\n resolve(new Blob(body, { type: stream[kContentType] }))\n } else if (type === 'bytes') {\n resolve(chunksConcat(body, length))\n }\n\n consumeFinish(consume)\n } catch (err) {\n stream.destroy(err)\n }\n}\n\nfunction consumePush (consume, chunk) {\n consume.length += chunk.length\n consume.body.push(chunk)\n}\n\nfunction consumeFinish (consume, err) {\n if (consume.body === null) {\n return\n }\n\n if (err) {\n consume.reject(err)\n } else {\n consume.resolve()\n }\n\n consume.type = null\n consume.stream = null\n consume.resolve = null\n consume.reject = null\n consume.length = 0\n consume.body = null\n}\n\nmodule.exports = { Readable: BodyReadable, chunksDecode }\n", "const assert = require('node:assert')\nconst {\n ResponseStatusCodeError\n} = require('../core/errors')\n\nconst { chunksDecode } = require('./readable')\nconst CHUNK_LIMIT = 128 * 1024\n\nasync function getResolveErrorBodyCallback ({ callback, body, contentType, statusCode, statusMessage, headers }) {\n assert(body)\n\n let chunks = []\n let length = 0\n\n try {\n for await (const chunk of body) {\n chunks.push(chunk)\n length += chunk.length\n if (length > CHUNK_LIMIT) {\n chunks = []\n length = 0\n break\n }\n }\n } catch {\n chunks = []\n length = 0\n // Do nothing....\n }\n\n const message = `Response status code ${statusCode}${statusMessage ? `: ${statusMessage}` : ''}`\n\n if (statusCode === 204 || !contentType || !length) {\n queueMicrotask(() => callback(new ResponseStatusCodeError(message, statusCode, headers)))\n return\n }\n\n const stackTraceLimit = Error.stackTraceLimit\n Error.stackTraceLimit = 0\n let payload\n\n try {\n if (isContentTypeApplicationJson(contentType)) {\n payload = JSON.parse(chunksDecode(chunks, length))\n } else if (isContentTypeText(contentType)) {\n payload = chunksDecode(chunks, length)\n }\n } catch {\n // process in a callback to avoid throwing in the microtask queue\n } finally {\n Error.stackTraceLimit = stackTraceLimit\n }\n queueMicrotask(() => callback(new ResponseStatusCodeError(message, statusCode, headers, payload)))\n}\n\nconst isContentTypeApplicationJson = (contentType) => {\n return (\n contentType.length > 15 &&\n contentType[11] === '/' &&\n contentType[0] === 'a' &&\n contentType[1] === 'p' &&\n contentType[2] === 'p' &&\n contentType[3] === 'l' &&\n contentType[4] === 'i' &&\n contentType[5] === 'c' &&\n contentType[6] === 'a' &&\n contentType[7] === 't' &&\n contentType[8] === 'i' &&\n contentType[9] === 'o' &&\n contentType[10] === 'n' &&\n contentType[12] === 'j' &&\n contentType[13] === 's' &&\n contentType[14] === 'o' &&\n contentType[15] === 'n'\n )\n}\n\nconst isContentTypeText = (contentType) => {\n return (\n contentType.length > 4 &&\n contentType[4] === '/' &&\n contentType[0] === 't' &&\n contentType[1] === 'e' &&\n contentType[2] === 'x' &&\n contentType[3] === 't'\n )\n}\n\nmodule.exports = {\n getResolveErrorBodyCallback,\n isContentTypeApplicationJson,\n isContentTypeText\n}\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { Readable } = require('./readable')\nconst { InvalidArgumentError, RequestAbortedError } = require('../core/errors')\nconst util = require('../core/util')\nconst { getResolveErrorBodyCallback } = require('./util')\nconst { AsyncResource } = require('node:async_hooks')\n\nclass RequestHandler extends AsyncResource {\n constructor (opts, callback) {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n const { signal, method, opaque, body, onInfo, responseHeaders, throwOnError, highWaterMark } = opts\n\n try {\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n if (highWaterMark && (typeof highWaterMark !== 'number' || highWaterMark < 0)) {\n throw new InvalidArgumentError('invalid highWaterMark')\n }\n\n if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {\n throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')\n }\n\n if (method === 'CONNECT') {\n throw new InvalidArgumentError('invalid method')\n }\n\n if (onInfo && typeof onInfo !== 'function') {\n throw new InvalidArgumentError('invalid onInfo callback')\n }\n\n super('UNDICI_REQUEST')\n } catch (err) {\n if (util.isStream(body)) {\n util.destroy(body.on('error', util.nop), err)\n }\n throw err\n }\n\n this.method = method\n this.responseHeaders = responseHeaders || null\n this.opaque = opaque || null\n this.callback = callback\n this.res = null\n this.abort = null\n this.body = body\n this.trailers = {}\n this.context = null\n this.onInfo = onInfo || null\n this.throwOnError = throwOnError\n this.highWaterMark = highWaterMark\n this.signal = signal\n this.reason = null\n this.removeAbortListener = null\n\n if (util.isStream(body)) {\n body.on('error', (err) => {\n this.onError(err)\n })\n }\n\n if (this.signal) {\n if (this.signal.aborted) {\n this.reason = this.signal.reason ?? new RequestAbortedError()\n } else {\n this.removeAbortListener = util.addAbortListener(this.signal, () => {\n this.reason = this.signal.reason ?? new RequestAbortedError()\n if (this.res) {\n util.destroy(this.res.on('error', util.nop), this.reason)\n } else if (this.abort) {\n this.abort(this.reason)\n }\n\n if (this.removeAbortListener) {\n this.res?.off('close', this.removeAbortListener)\n this.removeAbortListener()\n this.removeAbortListener = null\n }\n })\n }\n }\n }\n\n onConnect (abort, context) {\n if (this.reason) {\n abort(this.reason)\n return\n }\n\n assert(this.callback)\n\n this.abort = abort\n this.context = context\n }\n\n onHeaders (statusCode, rawHeaders, resume, statusMessage) {\n const { callback, opaque, abort, context, responseHeaders, highWaterMark } = this\n\n const headers = responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n\n if (statusCode < 200) {\n if (this.onInfo) {\n this.onInfo({ statusCode, headers })\n }\n return\n }\n\n const parsedHeaders = responseHeaders === 'raw' ? util.parseHeaders(rawHeaders) : headers\n const contentType = parsedHeaders['content-type']\n const contentLength = parsedHeaders['content-length']\n const res = new Readable({\n resume,\n abort,\n contentType,\n contentLength: this.method !== 'HEAD' && contentLength\n ? Number(contentLength)\n : null,\n highWaterMark\n })\n\n if (this.removeAbortListener) {\n res.on('close', this.removeAbortListener)\n }\n\n this.callback = null\n this.res = res\n if (callback !== null) {\n if (this.throwOnError && statusCode >= 400) {\n this.runInAsyncScope(getResolveErrorBodyCallback, null,\n { callback, body: res, contentType, statusCode, statusMessage, headers }\n )\n } else {\n this.runInAsyncScope(callback, null, null, {\n statusCode,\n headers,\n trailers: this.trailers,\n opaque,\n body: res,\n context\n })\n }\n }\n }\n\n onData (chunk) {\n return this.res.push(chunk)\n }\n\n onComplete (trailers) {\n util.parseHeaders(trailers, this.trailers)\n this.res.push(null)\n }\n\n onError (err) {\n const { res, callback, body, opaque } = this\n\n if (callback) {\n // TODO: Does this need queueMicrotask?\n this.callback = null\n queueMicrotask(() => {\n this.runInAsyncScope(callback, null, err, { opaque })\n })\n }\n\n if (res) {\n this.res = null\n // Ensure all queued handlers are invoked before destroying res.\n queueMicrotask(() => {\n util.destroy(res, err)\n })\n }\n\n if (body) {\n this.body = null\n util.destroy(body, err)\n }\n\n if (this.removeAbortListener) {\n res?.off('close', this.removeAbortListener)\n this.removeAbortListener()\n this.removeAbortListener = null\n }\n }\n}\n\nfunction request (opts, callback) {\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n request.call(this, opts, (err, data) => {\n return err ? reject(err) : resolve(data)\n })\n })\n }\n\n try {\n this.dispatch(opts, new RequestHandler(opts, callback))\n } catch (err) {\n if (typeof callback !== 'function') {\n throw err\n }\n const opaque = opts?.opaque\n queueMicrotask(() => callback(err, { opaque }))\n }\n}\n\nmodule.exports = request\nmodule.exports.RequestHandler = RequestHandler\n", "const { addAbortListener } = require('../core/util')\nconst { RequestAbortedError } = require('../core/errors')\n\nconst kListener = Symbol('kListener')\nconst kSignal = Symbol('kSignal')\n\nfunction abort (self) {\n if (self.abort) {\n self.abort(self[kSignal]?.reason)\n } else {\n self.reason = self[kSignal]?.reason ?? new RequestAbortedError()\n }\n removeSignal(self)\n}\n\nfunction addSignal (self, signal) {\n self.reason = null\n\n self[kSignal] = null\n self[kListener] = null\n\n if (!signal) {\n return\n }\n\n if (signal.aborted) {\n abort(self)\n return\n }\n\n self[kSignal] = signal\n self[kListener] = () => {\n abort(self)\n }\n\n addAbortListener(self[kSignal], self[kListener])\n}\n\nfunction removeSignal (self) {\n if (!self[kSignal]) {\n return\n }\n\n if ('removeEventListener' in self[kSignal]) {\n self[kSignal].removeEventListener('abort', self[kListener])\n } else {\n self[kSignal].removeListener('abort', self[kListener])\n }\n\n self[kSignal] = null\n self[kListener] = null\n}\n\nmodule.exports = {\n addSignal,\n removeSignal\n}\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { finished, PassThrough } = require('node:stream')\nconst { InvalidArgumentError, InvalidReturnValueError } = require('../core/errors')\nconst util = require('../core/util')\nconst { getResolveErrorBodyCallback } = require('./util')\nconst { AsyncResource } = require('node:async_hooks')\nconst { addSignal, removeSignal } = require('./abort-signal')\n\nclass StreamHandler extends AsyncResource {\n constructor (opts, factory, callback) {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n const { signal, method, opaque, body, onInfo, responseHeaders, throwOnError } = opts\n\n try {\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n if (typeof factory !== 'function') {\n throw new InvalidArgumentError('invalid factory')\n }\n\n if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {\n throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')\n }\n\n if (method === 'CONNECT') {\n throw new InvalidArgumentError('invalid method')\n }\n\n if (onInfo && typeof onInfo !== 'function') {\n throw new InvalidArgumentError('invalid onInfo callback')\n }\n\n super('UNDICI_STREAM')\n } catch (err) {\n if (util.isStream(body)) {\n util.destroy(body.on('error', util.nop), err)\n }\n throw err\n }\n\n this.responseHeaders = responseHeaders || null\n this.opaque = opaque || null\n this.factory = factory\n this.callback = callback\n this.res = null\n this.abort = null\n this.context = null\n this.trailers = null\n this.body = body\n this.onInfo = onInfo || null\n this.throwOnError = throwOnError || false\n\n if (util.isStream(body)) {\n body.on('error', (err) => {\n this.onError(err)\n })\n }\n\n addSignal(this, signal)\n }\n\n onConnect (abort, context) {\n if (this.reason) {\n abort(this.reason)\n return\n }\n\n assert(this.callback)\n\n this.abort = abort\n this.context = context\n }\n\n onHeaders (statusCode, rawHeaders, resume, statusMessage) {\n const { factory, opaque, context, callback, responseHeaders } = this\n\n const headers = responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n\n if (statusCode < 200) {\n if (this.onInfo) {\n this.onInfo({ statusCode, headers })\n }\n return\n }\n\n this.factory = null\n\n let res\n\n if (this.throwOnError && statusCode >= 400) {\n const parsedHeaders = responseHeaders === 'raw' ? util.parseHeaders(rawHeaders) : headers\n const contentType = parsedHeaders['content-type']\n res = new PassThrough()\n\n this.callback = null\n this.runInAsyncScope(getResolveErrorBodyCallback, null,\n { callback, body: res, contentType, statusCode, statusMessage, headers }\n )\n } else {\n if (factory === null) {\n return\n }\n\n res = this.runInAsyncScope(factory, null, {\n statusCode,\n headers,\n opaque,\n context\n })\n\n if (\n !res ||\n typeof res.write !== 'function' ||\n typeof res.end !== 'function' ||\n typeof res.on !== 'function'\n ) {\n throw new InvalidReturnValueError('expected Writable')\n }\n\n // TODO: Avoid finished. It registers an unnecessary amount of listeners.\n finished(res, { readable: false }, (err) => {\n const { callback, res, opaque, trailers, abort } = this\n\n this.res = null\n if (err || !res.readable) {\n util.destroy(res, err)\n }\n\n this.callback = null\n this.runInAsyncScope(callback, null, err || null, { opaque, trailers })\n\n if (err) {\n abort()\n }\n })\n }\n\n res.on('drain', resume)\n\n this.res = res\n\n const needDrain = res.writableNeedDrain !== undefined\n ? res.writableNeedDrain\n : res._writableState?.needDrain\n\n return needDrain !== true\n }\n\n onData (chunk) {\n const { res } = this\n\n return res ? res.write(chunk) : true\n }\n\n onComplete (trailers) {\n const { res } = this\n\n removeSignal(this)\n\n if (!res) {\n return\n }\n\n this.trailers = util.parseHeaders(trailers)\n\n res.end()\n }\n\n onError (err) {\n const { res, callback, opaque, body } = this\n\n removeSignal(this)\n\n this.factory = null\n\n if (res) {\n this.res = null\n util.destroy(res, err)\n } else if (callback) {\n this.callback = null\n queueMicrotask(() => {\n this.runInAsyncScope(callback, null, err, { opaque })\n })\n }\n\n if (body) {\n this.body = null\n util.destroy(body, err)\n }\n }\n}\n\nfunction stream (opts, factory, callback) {\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n stream.call(this, opts, factory, (err, data) => {\n return err ? reject(err) : resolve(data)\n })\n })\n }\n\n try {\n this.dispatch(opts, new StreamHandler(opts, factory, callback))\n } catch (err) {\n if (typeof callback !== 'function') {\n throw err\n }\n const opaque = opts?.opaque\n queueMicrotask(() => callback(err, { opaque }))\n }\n}\n\nmodule.exports = stream\n", "'use strict'\n\nconst {\n Readable,\n Duplex,\n PassThrough\n} = require('node:stream')\nconst {\n InvalidArgumentError,\n InvalidReturnValueError,\n RequestAbortedError\n} = require('../core/errors')\nconst util = require('../core/util')\nconst { AsyncResource } = require('node:async_hooks')\nconst { addSignal, removeSignal } = require('./abort-signal')\nconst assert = require('node:assert')\n\nconst kResume = Symbol('resume')\n\nclass PipelineRequest extends Readable {\n constructor () {\n super({ autoDestroy: true })\n\n this[kResume] = null\n }\n\n _read () {\n const { [kResume]: resume } = this\n\n if (resume) {\n this[kResume] = null\n resume()\n }\n }\n\n _destroy (err, callback) {\n this._read()\n\n callback(err)\n }\n}\n\nclass PipelineResponse extends Readable {\n constructor (resume) {\n super({ autoDestroy: true })\n this[kResume] = resume\n }\n\n _read () {\n this[kResume]()\n }\n\n _destroy (err, callback) {\n if (!err && !this._readableState.endEmitted) {\n err = new RequestAbortedError()\n }\n\n callback(err)\n }\n}\n\nclass PipelineHandler extends AsyncResource {\n constructor (opts, handler) {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n if (typeof handler !== 'function') {\n throw new InvalidArgumentError('invalid handler')\n }\n\n const { signal, method, opaque, onInfo, responseHeaders } = opts\n\n if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {\n throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')\n }\n\n if (method === 'CONNECT') {\n throw new InvalidArgumentError('invalid method')\n }\n\n if (onInfo && typeof onInfo !== 'function') {\n throw new InvalidArgumentError('invalid onInfo callback')\n }\n\n super('UNDICI_PIPELINE')\n\n this.opaque = opaque || null\n this.responseHeaders = responseHeaders || null\n this.handler = handler\n this.abort = null\n this.context = null\n this.onInfo = onInfo || null\n\n this.req = new PipelineRequest().on('error', util.nop)\n\n this.ret = new Duplex({\n readableObjectMode: opts.objectMode,\n autoDestroy: true,\n read: () => {\n const { body } = this\n\n if (body?.resume) {\n body.resume()\n }\n },\n write: (chunk, encoding, callback) => {\n const { req } = this\n\n if (req.push(chunk, encoding) || req._readableState.destroyed) {\n callback()\n } else {\n req[kResume] = callback\n }\n },\n destroy: (err, callback) => {\n const { body, req, res, ret, abort } = this\n\n if (!err && !ret._readableState.endEmitted) {\n err = new RequestAbortedError()\n }\n\n if (abort && err) {\n abort()\n }\n\n util.destroy(body, err)\n util.destroy(req, err)\n util.destroy(res, err)\n\n removeSignal(this)\n\n callback(err)\n }\n }).on('prefinish', () => {\n const { req } = this\n\n // Node < 15 does not call _final in same tick.\n req.push(null)\n })\n\n this.res = null\n\n addSignal(this, signal)\n }\n\n onConnect (abort, context) {\n const { ret, res } = this\n\n if (this.reason) {\n abort(this.reason)\n return\n }\n\n assert(!res, 'pipeline cannot be retried')\n assert(!ret.destroyed)\n\n this.abort = abort\n this.context = context\n }\n\n onHeaders (statusCode, rawHeaders, resume) {\n const { opaque, handler, context } = this\n\n if (statusCode < 200) {\n if (this.onInfo) {\n const headers = this.responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n this.onInfo({ statusCode, headers })\n }\n return\n }\n\n this.res = new PipelineResponse(resume)\n\n let body\n try {\n this.handler = null\n const headers = this.responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n body = this.runInAsyncScope(handler, null, {\n statusCode,\n headers,\n opaque,\n body: this.res,\n context\n })\n } catch (err) {\n this.res.on('error', util.nop)\n throw err\n }\n\n if (!body || typeof body.on !== 'function') {\n throw new InvalidReturnValueError('expected Readable')\n }\n\n body\n .on('data', (chunk) => {\n const { ret, body } = this\n\n if (!ret.push(chunk) && body.pause) {\n body.pause()\n }\n })\n .on('error', (err) => {\n const { ret } = this\n\n util.destroy(ret, err)\n })\n .on('end', () => {\n const { ret } = this\n\n ret.push(null)\n })\n .on('close', () => {\n const { ret } = this\n\n if (!ret._readableState.ended) {\n util.destroy(ret, new RequestAbortedError())\n }\n })\n\n this.body = body\n }\n\n onData (chunk) {\n const { res } = this\n return res.push(chunk)\n }\n\n onComplete (trailers) {\n const { res } = this\n res.push(null)\n }\n\n onError (err) {\n const { ret } = this\n this.handler = null\n util.destroy(ret, err)\n }\n}\n\nfunction pipeline (opts, handler) {\n try {\n const pipelineHandler = new PipelineHandler(opts, handler)\n this.dispatch({ ...opts, body: pipelineHandler.req }, pipelineHandler)\n return pipelineHandler.ret\n } catch (err) {\n return new PassThrough().destroy(err)\n }\n}\n\nmodule.exports = pipeline\n", "'use strict'\n\nconst { InvalidArgumentError, SocketError } = require('../core/errors')\nconst { AsyncResource } = require('node:async_hooks')\nconst util = require('../core/util')\nconst { addSignal, removeSignal } = require('./abort-signal')\nconst assert = require('node:assert')\n\nclass UpgradeHandler extends AsyncResource {\n constructor (opts, callback) {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n const { signal, opaque, responseHeaders } = opts\n\n if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {\n throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')\n }\n\n super('UNDICI_UPGRADE')\n\n this.responseHeaders = responseHeaders || null\n this.opaque = opaque || null\n this.callback = callback\n this.abort = null\n this.context = null\n\n addSignal(this, signal)\n }\n\n onConnect (abort, context) {\n if (this.reason) {\n abort(this.reason)\n return\n }\n\n assert(this.callback)\n\n this.abort = abort\n this.context = null\n }\n\n onHeaders () {\n throw new SocketError('bad upgrade', null)\n }\n\n onUpgrade (statusCode, rawHeaders, socket) {\n assert(statusCode === 101)\n\n const { callback, opaque, context } = this\n\n removeSignal(this)\n\n this.callback = null\n const headers = this.responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n this.runInAsyncScope(callback, null, null, {\n headers,\n socket,\n opaque,\n context\n })\n }\n\n onError (err) {\n const { callback, opaque } = this\n\n removeSignal(this)\n\n if (callback) {\n this.callback = null\n queueMicrotask(() => {\n this.runInAsyncScope(callback, null, err, { opaque })\n })\n }\n }\n}\n\nfunction upgrade (opts, callback) {\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n upgrade.call(this, opts, (err, data) => {\n return err ? reject(err) : resolve(data)\n })\n })\n }\n\n try {\n const upgradeHandler = new UpgradeHandler(opts, callback)\n this.dispatch({\n ...opts,\n method: opts.method || 'GET',\n upgrade: opts.protocol || 'Websocket'\n }, upgradeHandler)\n } catch (err) {\n if (typeof callback !== 'function') {\n throw err\n }\n const opaque = opts?.opaque\n queueMicrotask(() => callback(err, { opaque }))\n }\n}\n\nmodule.exports = upgrade\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { AsyncResource } = require('node:async_hooks')\nconst { InvalidArgumentError, SocketError } = require('../core/errors')\nconst util = require('../core/util')\nconst { addSignal, removeSignal } = require('./abort-signal')\n\nclass ConnectHandler extends AsyncResource {\n constructor (opts, callback) {\n if (!opts || typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n if (typeof callback !== 'function') {\n throw new InvalidArgumentError('invalid callback')\n }\n\n const { signal, opaque, responseHeaders } = opts\n\n if (signal && typeof signal.on !== 'function' && typeof signal.addEventListener !== 'function') {\n throw new InvalidArgumentError('signal must be an EventEmitter or EventTarget')\n }\n\n super('UNDICI_CONNECT')\n\n this.opaque = opaque || null\n this.responseHeaders = responseHeaders || null\n this.callback = callback\n this.abort = null\n\n addSignal(this, signal)\n }\n\n onConnect (abort, context) {\n if (this.reason) {\n abort(this.reason)\n return\n }\n\n assert(this.callback)\n\n this.abort = abort\n this.context = context\n }\n\n onHeaders () {\n throw new SocketError('bad connect', null)\n }\n\n onUpgrade (statusCode, rawHeaders, socket) {\n const { callback, opaque, context } = this\n\n removeSignal(this)\n\n this.callback = null\n\n let headers = rawHeaders\n // Indicates is an HTTP2Session\n if (headers != null) {\n headers = this.responseHeaders === 'raw' ? util.parseRawHeaders(rawHeaders) : util.parseHeaders(rawHeaders)\n }\n\n this.runInAsyncScope(callback, null, null, {\n statusCode,\n headers,\n socket,\n opaque,\n context\n })\n }\n\n onError (err) {\n const { callback, opaque } = this\n\n removeSignal(this)\n\n if (callback) {\n this.callback = null\n queueMicrotask(() => {\n this.runInAsyncScope(callback, null, err, { opaque })\n })\n }\n }\n}\n\nfunction connect (opts, callback) {\n if (callback === undefined) {\n return new Promise((resolve, reject) => {\n connect.call(this, opts, (err, data) => {\n return err ? reject(err) : resolve(data)\n })\n })\n }\n\n try {\n const connectHandler = new ConnectHandler(opts, callback)\n this.dispatch({ ...opts, method: 'CONNECT' }, connectHandler)\n } catch (err) {\n if (typeof callback !== 'function') {\n throw err\n }\n const opaque = opts?.opaque\n queueMicrotask(() => callback(err, { opaque }))\n }\n}\n\nmodule.exports = connect\n", "'use strict'\n\nmodule.exports.request = require('./api-request')\nmodule.exports.stream = require('./api-stream')\nmodule.exports.pipeline = require('./api-pipeline')\nmodule.exports.upgrade = require('./api-upgrade')\nmodule.exports.connect = require('./api-connect')\n", "'use strict'\n\nconst { UndiciError } = require('../core/errors')\n\nconst kMockNotMatchedError = Symbol.for('undici.error.UND_MOCK_ERR_MOCK_NOT_MATCHED')\n\n/**\n * The request does not match any registered mock dispatches.\n */\nclass MockNotMatchedError extends UndiciError {\n constructor (message) {\n super(message)\n Error.captureStackTrace(this, MockNotMatchedError)\n this.name = 'MockNotMatchedError'\n this.message = message || 'The request does not match any registered mock dispatches'\n this.code = 'UND_MOCK_ERR_MOCK_NOT_MATCHED'\n }\n\n static [Symbol.hasInstance] (instance) {\n return instance && instance[kMockNotMatchedError] === true\n }\n\n [kMockNotMatchedError] = true\n}\n\nmodule.exports = {\n MockNotMatchedError\n}\n", "'use strict'\n\nmodule.exports = {\n kAgent: Symbol('agent'),\n kOptions: Symbol('options'),\n kFactory: Symbol('factory'),\n kDispatches: Symbol('dispatches'),\n kDispatchKey: Symbol('dispatch key'),\n kDefaultHeaders: Symbol('default headers'),\n kDefaultTrailers: Symbol('default trailers'),\n kContentLength: Symbol('content length'),\n kMockAgent: Symbol('mock agent'),\n kMockAgentSet: Symbol('mock agent set'),\n kMockAgentGet: Symbol('mock agent get'),\n kMockDispatch: Symbol('mock dispatch'),\n kClose: Symbol('close'),\n kOriginalClose: Symbol('original agent close'),\n kOrigin: Symbol('origin'),\n kIsMockActive: Symbol('is mock active'),\n kNetConnect: Symbol('net connect'),\n kGetNetConnect: Symbol('get net connect'),\n kConnected: Symbol('connected')\n}\n", "'use strict'\n\nconst { MockNotMatchedError } = require('./mock-errors')\nconst {\n kDispatches,\n kMockAgent,\n kOriginalDispatch,\n kOrigin,\n kGetNetConnect\n} = require('./mock-symbols')\nconst { buildURL } = require('../core/util')\nconst { STATUS_CODES } = require('node:http')\nconst {\n types: {\n isPromise\n }\n} = require('node:util')\n\nfunction matchValue (match, value) {\n if (typeof match === 'string') {\n return match === value\n }\n if (match instanceof RegExp) {\n return match.test(value)\n }\n if (typeof match === 'function') {\n return match(value) === true\n }\n return false\n}\n\nfunction lowerCaseEntries (headers) {\n return Object.fromEntries(\n Object.entries(headers).map(([headerName, headerValue]) => {\n return [headerName.toLocaleLowerCase(), headerValue]\n })\n )\n}\n\n/**\n * @param {import('../../index').Headers|string[]|Record} headers\n * @param {string} key\n */\nfunction getHeaderByName (headers, key) {\n if (Array.isArray(headers)) {\n for (let i = 0; i < headers.length; i += 2) {\n if (headers[i].toLocaleLowerCase() === key.toLocaleLowerCase()) {\n return headers[i + 1]\n }\n }\n\n return undefined\n } else if (typeof headers.get === 'function') {\n return headers.get(key)\n } else {\n return lowerCaseEntries(headers)[key.toLocaleLowerCase()]\n }\n}\n\n/** @param {string[]} headers */\nfunction buildHeadersFromArray (headers) { // fetch HeadersList\n const clone = headers.slice()\n const entries = []\n for (let index = 0; index < clone.length; index += 2) {\n entries.push([clone[index], clone[index + 1]])\n }\n return Object.fromEntries(entries)\n}\n\nfunction matchHeaders (mockDispatch, headers) {\n if (typeof mockDispatch.headers === 'function') {\n if (Array.isArray(headers)) { // fetch HeadersList\n headers = buildHeadersFromArray(headers)\n }\n return mockDispatch.headers(headers ? lowerCaseEntries(headers) : {})\n }\n if (typeof mockDispatch.headers === 'undefined') {\n return true\n }\n if (typeof headers !== 'object' || typeof mockDispatch.headers !== 'object') {\n return false\n }\n\n for (const [matchHeaderName, matchHeaderValue] of Object.entries(mockDispatch.headers)) {\n const headerValue = getHeaderByName(headers, matchHeaderName)\n\n if (!matchValue(matchHeaderValue, headerValue)) {\n return false\n }\n }\n return true\n}\n\nfunction safeUrl (path) {\n if (typeof path !== 'string') {\n return path\n }\n\n const pathSegments = path.split('?')\n\n if (pathSegments.length !== 2) {\n return path\n }\n\n const qp = new URLSearchParams(pathSegments.pop())\n qp.sort()\n return [...pathSegments, qp.toString()].join('?')\n}\n\nfunction matchKey (mockDispatch, { path, method, body, headers }) {\n const pathMatch = matchValue(mockDispatch.path, path)\n const methodMatch = matchValue(mockDispatch.method, method)\n const bodyMatch = typeof mockDispatch.body !== 'undefined' ? matchValue(mockDispatch.body, body) : true\n const headersMatch = matchHeaders(mockDispatch, headers)\n return pathMatch && methodMatch && bodyMatch && headersMatch\n}\n\nfunction getResponseData (data) {\n if (Buffer.isBuffer(data)) {\n return data\n } else if (data instanceof Uint8Array) {\n return data\n } else if (data instanceof ArrayBuffer) {\n return data\n } else if (typeof data === 'object') {\n return JSON.stringify(data)\n } else {\n return data.toString()\n }\n}\n\nfunction getMockDispatch (mockDispatches, key) {\n const basePath = key.query ? buildURL(key.path, key.query) : key.path\n const resolvedPath = typeof basePath === 'string' ? safeUrl(basePath) : basePath\n\n // Match path\n let matchedMockDispatches = mockDispatches.filter(({ consumed }) => !consumed).filter(({ path }) => matchValue(safeUrl(path), resolvedPath))\n if (matchedMockDispatches.length === 0) {\n throw new MockNotMatchedError(`Mock dispatch not matched for path '${resolvedPath}'`)\n }\n\n // Match method\n matchedMockDispatches = matchedMockDispatches.filter(({ method }) => matchValue(method, key.method))\n if (matchedMockDispatches.length === 0) {\n throw new MockNotMatchedError(`Mock dispatch not matched for method '${key.method}' on path '${resolvedPath}'`)\n }\n\n // Match body\n matchedMockDispatches = matchedMockDispatches.filter(({ body }) => typeof body !== 'undefined' ? matchValue(body, key.body) : true)\n if (matchedMockDispatches.length === 0) {\n throw new MockNotMatchedError(`Mock dispatch not matched for body '${key.body}' on path '${resolvedPath}'`)\n }\n\n // Match headers\n matchedMockDispatches = matchedMockDispatches.filter((mockDispatch) => matchHeaders(mockDispatch, key.headers))\n if (matchedMockDispatches.length === 0) {\n const headers = typeof key.headers === 'object' ? JSON.stringify(key.headers) : key.headers\n throw new MockNotMatchedError(`Mock dispatch not matched for headers '${headers}' on path '${resolvedPath}'`)\n }\n\n return matchedMockDispatches[0]\n}\n\nfunction addMockDispatch (mockDispatches, key, data) {\n const baseData = { timesInvoked: 0, times: 1, persist: false, consumed: false }\n const replyData = typeof data === 'function' ? { callback: data } : { ...data }\n const newMockDispatch = { ...baseData, ...key, pending: true, data: { error: null, ...replyData } }\n mockDispatches.push(newMockDispatch)\n return newMockDispatch\n}\n\nfunction deleteMockDispatch (mockDispatches, key) {\n const index = mockDispatches.findIndex(dispatch => {\n if (!dispatch.consumed) {\n return false\n }\n return matchKey(dispatch, key)\n })\n if (index !== -1) {\n mockDispatches.splice(index, 1)\n }\n}\n\nfunction buildKey (opts) {\n const { path, method, body, headers, query } = opts\n return {\n path,\n method,\n body,\n headers,\n query\n }\n}\n\nfunction generateKeyValues (data) {\n const keys = Object.keys(data)\n const result = []\n for (let i = 0; i < keys.length; ++i) {\n const key = keys[i]\n const value = data[key]\n const name = Buffer.from(`${key}`)\n if (Array.isArray(value)) {\n for (let j = 0; j < value.length; ++j) {\n result.push(name, Buffer.from(`${value[j]}`))\n }\n } else {\n result.push(name, Buffer.from(`${value}`))\n }\n }\n return result\n}\n\n/**\n * @see https://developer.mozilla.org/en-US/docs/Web/HTTP/Status\n * @param {number} statusCode\n */\nfunction getStatusText (statusCode) {\n return STATUS_CODES[statusCode] || 'unknown'\n}\n\nasync function getResponse (body) {\n const buffers = []\n for await (const data of body) {\n buffers.push(data)\n }\n return Buffer.concat(buffers).toString('utf8')\n}\n\n/**\n * Mock dispatch function used to simulate undici dispatches\n */\nfunction mockDispatch (opts, handler) {\n // Get mock dispatch from built key\n const key = buildKey(opts)\n const mockDispatch = getMockDispatch(this[kDispatches], key)\n\n mockDispatch.timesInvoked++\n\n // Here's where we resolve a callback if a callback is present for the dispatch data.\n if (mockDispatch.data.callback) {\n mockDispatch.data = { ...mockDispatch.data, ...mockDispatch.data.callback(opts) }\n }\n\n // Parse mockDispatch data\n const { data: { statusCode, data, headers, trailers, error }, delay, persist } = mockDispatch\n const { timesInvoked, times } = mockDispatch\n\n // If it's used up and not persistent, mark as consumed\n mockDispatch.consumed = !persist && timesInvoked >= times\n mockDispatch.pending = timesInvoked < times\n\n // If specified, trigger dispatch error\n if (error !== null) {\n deleteMockDispatch(this[kDispatches], key)\n handler.onError(error)\n return true\n }\n\n // Handle the request with a delay if necessary\n if (typeof delay === 'number' && delay > 0) {\n setTimeout(() => {\n handleReply(this[kDispatches])\n }, delay)\n } else {\n handleReply(this[kDispatches])\n }\n\n function handleReply (mockDispatches, _data = data) {\n // fetch's HeadersList is a 1D string array\n const optsHeaders = Array.isArray(opts.headers)\n ? buildHeadersFromArray(opts.headers)\n : opts.headers\n const body = typeof _data === 'function'\n ? _data({ ...opts, headers: optsHeaders })\n : _data\n\n // util.types.isPromise is likely needed for jest.\n if (isPromise(body)) {\n // If handleReply is asynchronous, throwing an error\n // in the callback will reject the promise, rather than\n // synchronously throw the error, which breaks some tests.\n // Rather, we wait for the callback to resolve if it is a\n // promise, and then re-run handleReply with the new body.\n body.then((newData) => handleReply(mockDispatches, newData))\n return\n }\n\n const responseData = getResponseData(body)\n const responseHeaders = generateKeyValues(headers)\n const responseTrailers = generateKeyValues(trailers)\n\n handler.onConnect?.(err => handler.onError(err), null)\n handler.onHeaders?.(statusCode, responseHeaders, resume, getStatusText(statusCode))\n handler.onData?.(Buffer.from(responseData))\n handler.onComplete?.(responseTrailers)\n deleteMockDispatch(mockDispatches, key)\n }\n\n function resume () {}\n\n return true\n}\n\nfunction buildMockDispatch () {\n const agent = this[kMockAgent]\n const origin = this[kOrigin]\n const originalDispatch = this[kOriginalDispatch]\n\n return function dispatch (opts, handler) {\n if (agent.isMockActive) {\n try {\n mockDispatch.call(this, opts, handler)\n } catch (error) {\n if (error instanceof MockNotMatchedError) {\n const netConnect = agent[kGetNetConnect]()\n if (netConnect === false) {\n throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect disabled)`)\n }\n if (checkNetConnect(netConnect, origin)) {\n originalDispatch.call(this, opts, handler)\n } else {\n throw new MockNotMatchedError(`${error.message}: subsequent request to origin ${origin} was not allowed (net.connect is not enabled for this origin)`)\n }\n } else {\n throw error\n }\n }\n } else {\n originalDispatch.call(this, opts, handler)\n }\n }\n}\n\nfunction checkNetConnect (netConnect, origin) {\n const url = new URL(origin)\n if (netConnect === true) {\n return true\n } else if (Array.isArray(netConnect) && netConnect.some((matcher) => matchValue(matcher, url.host))) {\n return true\n }\n return false\n}\n\nfunction buildMockOptions (opts) {\n if (opts) {\n const { agent, ...mockOptions } = opts\n return mockOptions\n }\n}\n\nmodule.exports = {\n getResponseData,\n getMockDispatch,\n addMockDispatch,\n deleteMockDispatch,\n buildKey,\n generateKeyValues,\n matchValue,\n getResponse,\n getStatusText,\n mockDispatch,\n buildMockDispatch,\n checkNetConnect,\n buildMockOptions,\n getHeaderByName,\n buildHeadersFromArray\n}\n", "'use strict'\n\nconst { getResponseData, buildKey, addMockDispatch } = require('./mock-utils')\nconst {\n kDispatches,\n kDispatchKey,\n kDefaultHeaders,\n kDefaultTrailers,\n kContentLength,\n kMockDispatch\n} = require('./mock-symbols')\nconst { InvalidArgumentError } = require('../core/errors')\nconst { buildURL } = require('../core/util')\n\n/**\n * Defines the scope API for an interceptor reply\n */\nclass MockScope {\n constructor (mockDispatch) {\n this[kMockDispatch] = mockDispatch\n }\n\n /**\n * Delay a reply by a set amount in ms.\n */\n delay (waitInMs) {\n if (typeof waitInMs !== 'number' || !Number.isInteger(waitInMs) || waitInMs <= 0) {\n throw new InvalidArgumentError('waitInMs must be a valid integer > 0')\n }\n\n this[kMockDispatch].delay = waitInMs\n return this\n }\n\n /**\n * For a defined reply, never mark as consumed.\n */\n persist () {\n this[kMockDispatch].persist = true\n return this\n }\n\n /**\n * Allow one to define a reply for a set amount of matching requests.\n */\n times (repeatTimes) {\n if (typeof repeatTimes !== 'number' || !Number.isInteger(repeatTimes) || repeatTimes <= 0) {\n throw new InvalidArgumentError('repeatTimes must be a valid integer > 0')\n }\n\n this[kMockDispatch].times = repeatTimes\n return this\n }\n}\n\n/**\n * Defines an interceptor for a Mock\n */\nclass MockInterceptor {\n constructor (opts, mockDispatches) {\n if (typeof opts !== 'object') {\n throw new InvalidArgumentError('opts must be an object')\n }\n if (typeof opts.path === 'undefined') {\n throw new InvalidArgumentError('opts.path must be defined')\n }\n if (typeof opts.method === 'undefined') {\n opts.method = 'GET'\n }\n // See https://github.com/nodejs/undici/issues/1245\n // As per RFC 3986, clients are not supposed to send URI\n // fragments to servers when they retrieve a document,\n if (typeof opts.path === 'string') {\n if (opts.query) {\n opts.path = buildURL(opts.path, opts.query)\n } else {\n // Matches https://github.com/nodejs/undici/blob/main/lib/web/fetch/index.js#L1811\n const parsedURL = new URL(opts.path, 'data://')\n opts.path = parsedURL.pathname + parsedURL.search\n }\n }\n if (typeof opts.method === 'string') {\n opts.method = opts.method.toUpperCase()\n }\n\n this[kDispatchKey] = buildKey(opts)\n this[kDispatches] = mockDispatches\n this[kDefaultHeaders] = {}\n this[kDefaultTrailers] = {}\n this[kContentLength] = false\n }\n\n createMockScopeDispatchData ({ statusCode, data, responseOptions }) {\n const responseData = getResponseData(data)\n const contentLength = this[kContentLength] ? { 'content-length': responseData.length } : {}\n const headers = { ...this[kDefaultHeaders], ...contentLength, ...responseOptions.headers }\n const trailers = { ...this[kDefaultTrailers], ...responseOptions.trailers }\n\n return { statusCode, data, headers, trailers }\n }\n\n validateReplyParameters (replyParameters) {\n if (typeof replyParameters.statusCode === 'undefined') {\n throw new InvalidArgumentError('statusCode must be defined')\n }\n if (typeof replyParameters.responseOptions !== 'object' || replyParameters.responseOptions === null) {\n throw new InvalidArgumentError('responseOptions must be an object')\n }\n }\n\n /**\n * Mock an undici request with a defined reply.\n */\n reply (replyOptionsCallbackOrStatusCode) {\n // Values of reply aren't available right now as they\n // can only be available when the reply callback is invoked.\n if (typeof replyOptionsCallbackOrStatusCode === 'function') {\n // We'll first wrap the provided callback in another function,\n // this function will properly resolve the data from the callback\n // when invoked.\n const wrappedDefaultsCallback = (opts) => {\n // Our reply options callback contains the parameter for statusCode, data and options.\n const resolvedData = replyOptionsCallbackOrStatusCode(opts)\n\n // Check if it is in the right format\n if (typeof resolvedData !== 'object' || resolvedData === null) {\n throw new InvalidArgumentError('reply options callback must return an object')\n }\n\n const replyParameters = { data: '', responseOptions: {}, ...resolvedData }\n this.validateReplyParameters(replyParameters)\n // Since the values can be obtained immediately we return them\n // from this higher order function that will be resolved later.\n return {\n ...this.createMockScopeDispatchData(replyParameters)\n }\n }\n\n // Add usual dispatch data, but this time set the data parameter to function that will eventually provide data.\n const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], wrappedDefaultsCallback)\n return new MockScope(newMockDispatch)\n }\n\n // We can have either one or three parameters, if we get here,\n // we should have 1-3 parameters. So we spread the arguments of\n // this function to obtain the parameters, since replyData will always\n // just be the statusCode.\n const replyParameters = {\n statusCode: replyOptionsCallbackOrStatusCode,\n data: arguments[1] === undefined ? '' : arguments[1],\n responseOptions: arguments[2] === undefined ? {} : arguments[2]\n }\n this.validateReplyParameters(replyParameters)\n\n // Send in-already provided data like usual\n const dispatchData = this.createMockScopeDispatchData(replyParameters)\n const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], dispatchData)\n return new MockScope(newMockDispatch)\n }\n\n /**\n * Mock an undici request with a defined error.\n */\n replyWithError (error) {\n if (typeof error === 'undefined') {\n throw new InvalidArgumentError('error must be defined')\n }\n\n const newMockDispatch = addMockDispatch(this[kDispatches], this[kDispatchKey], { error })\n return new MockScope(newMockDispatch)\n }\n\n /**\n * Set default reply headers on the interceptor for subsequent replies\n */\n defaultReplyHeaders (headers) {\n if (typeof headers === 'undefined') {\n throw new InvalidArgumentError('headers must be defined')\n }\n\n this[kDefaultHeaders] = headers\n return this\n }\n\n /**\n * Set default reply trailers on the interceptor for subsequent replies\n */\n defaultReplyTrailers (trailers) {\n if (typeof trailers === 'undefined') {\n throw new InvalidArgumentError('trailers must be defined')\n }\n\n this[kDefaultTrailers] = trailers\n return this\n }\n\n /**\n * Set reply content length header for replies on the interceptor\n */\n replyContentLength () {\n this[kContentLength] = true\n return this\n }\n}\n\nmodule.exports.MockInterceptor = MockInterceptor\nmodule.exports.MockScope = MockScope\n", "'use strict'\n\nconst { promisify } = require('node:util')\nconst Client = require('../dispatcher/client')\nconst { buildMockDispatch } = require('./mock-utils')\nconst {\n kDispatches,\n kMockAgent,\n kClose,\n kOriginalClose,\n kOrigin,\n kOriginalDispatch,\n kConnected\n} = require('./mock-symbols')\nconst { MockInterceptor } = require('./mock-interceptor')\nconst Symbols = require('../core/symbols')\nconst { InvalidArgumentError } = require('../core/errors')\n\n/**\n * MockClient provides an API that extends the Client to influence the mockDispatches.\n */\nclass MockClient extends Client {\n constructor (origin, opts) {\n super(origin, opts)\n\n if (!opts || !opts.agent || typeof opts.agent.dispatch !== 'function') {\n throw new InvalidArgumentError('Argument opts.agent must implement Agent')\n }\n\n this[kMockAgent] = opts.agent\n this[kOrigin] = origin\n this[kDispatches] = []\n this[kConnected] = 1\n this[kOriginalDispatch] = this.dispatch\n this[kOriginalClose] = this.close.bind(this)\n\n this.dispatch = buildMockDispatch.call(this)\n this.close = this[kClose]\n }\n\n get [Symbols.kConnected] () {\n return this[kConnected]\n }\n\n /**\n * Sets up the base interceptor for mocking replies from undici.\n */\n intercept (opts) {\n return new MockInterceptor(opts, this[kDispatches])\n }\n\n async [kClose] () {\n await promisify(this[kOriginalClose])()\n this[kConnected] = 0\n this[kMockAgent][Symbols.kClients].delete(this[kOrigin])\n }\n}\n\nmodule.exports = MockClient\n", "'use strict'\n\nconst { promisify } = require('node:util')\nconst Pool = require('../dispatcher/pool')\nconst { buildMockDispatch } = require('./mock-utils')\nconst {\n kDispatches,\n kMockAgent,\n kClose,\n kOriginalClose,\n kOrigin,\n kOriginalDispatch,\n kConnected\n} = require('./mock-symbols')\nconst { MockInterceptor } = require('./mock-interceptor')\nconst Symbols = require('../core/symbols')\nconst { InvalidArgumentError } = require('../core/errors')\n\n/**\n * MockPool provides an API that extends the Pool to influence the mockDispatches.\n */\nclass MockPool extends Pool {\n constructor (origin, opts) {\n super(origin, opts)\n\n if (!opts || !opts.agent || typeof opts.agent.dispatch !== 'function') {\n throw new InvalidArgumentError('Argument opts.agent must implement Agent')\n }\n\n this[kMockAgent] = opts.agent\n this[kOrigin] = origin\n this[kDispatches] = []\n this[kConnected] = 1\n this[kOriginalDispatch] = this.dispatch\n this[kOriginalClose] = this.close.bind(this)\n\n this.dispatch = buildMockDispatch.call(this)\n this.close = this[kClose]\n }\n\n get [Symbols.kConnected] () {\n return this[kConnected]\n }\n\n /**\n * Sets up the base interceptor for mocking replies from undici.\n */\n intercept (opts) {\n return new MockInterceptor(opts, this[kDispatches])\n }\n\n async [kClose] () {\n await promisify(this[kOriginalClose])()\n this[kConnected] = 0\n this[kMockAgent][Symbols.kClients].delete(this[kOrigin])\n }\n}\n\nmodule.exports = MockPool\n", "'use strict'\n\nconst singulars = {\n pronoun: 'it',\n is: 'is',\n was: 'was',\n this: 'this'\n}\n\nconst plurals = {\n pronoun: 'they',\n is: 'are',\n was: 'were',\n this: 'these'\n}\n\nmodule.exports = class Pluralizer {\n constructor (singular, plural) {\n this.singular = singular\n this.plural = plural\n }\n\n pluralize (count) {\n const one = count === 1\n const keys = one ? singulars : plurals\n const noun = one ? this.singular : this.plural\n return { ...keys, count, noun }\n }\n}\n", "'use strict'\n\nconst { Transform } = require('node:stream')\nconst { Console } = require('node:console')\n\nconst PERSISTENT = process.versions.icu ? '\u2705' : 'Y '\nconst NOT_PERSISTENT = process.versions.icu ? '\u274C' : 'N '\n\n/**\n * Gets the output of `console.table(\u2026)` as a string.\n */\nmodule.exports = class PendingInterceptorsFormatter {\n constructor ({ disableColors } = {}) {\n this.transform = new Transform({\n transform (chunk, _enc, cb) {\n cb(null, chunk)\n }\n })\n\n this.logger = new Console({\n stdout: this.transform,\n inspectOptions: {\n colors: !disableColors && !process.env.CI\n }\n })\n }\n\n format (pendingInterceptors) {\n const withPrettyHeaders = pendingInterceptors.map(\n ({ method, path, data: { statusCode }, persist, times, timesInvoked, origin }) => ({\n Method: method,\n Origin: origin,\n Path: path,\n 'Status code': statusCode,\n Persistent: persist ? PERSISTENT : NOT_PERSISTENT,\n Invocations: timesInvoked,\n Remaining: persist ? Infinity : times - timesInvoked\n }))\n\n this.logger.table(withPrettyHeaders)\n return this.transform.read().toString()\n }\n}\n", "'use strict'\n\nconst { kClients } = require('../core/symbols')\nconst Agent = require('../dispatcher/agent')\nconst {\n kAgent,\n kMockAgentSet,\n kMockAgentGet,\n kDispatches,\n kIsMockActive,\n kNetConnect,\n kGetNetConnect,\n kOptions,\n kFactory\n} = require('./mock-symbols')\nconst MockClient = require('./mock-client')\nconst MockPool = require('./mock-pool')\nconst { matchValue, buildMockOptions } = require('./mock-utils')\nconst { InvalidArgumentError, UndiciError } = require('../core/errors')\nconst Dispatcher = require('../dispatcher/dispatcher')\nconst Pluralizer = require('./pluralizer')\nconst PendingInterceptorsFormatter = require('./pending-interceptors-formatter')\n\nclass MockAgent extends Dispatcher {\n constructor (opts) {\n super(opts)\n\n this[kNetConnect] = true\n this[kIsMockActive] = true\n\n // Instantiate Agent and encapsulate\n if ((opts?.agent && typeof opts.agent.dispatch !== 'function')) {\n throw new InvalidArgumentError('Argument opts.agent must implement Agent')\n }\n const agent = opts?.agent ? opts.agent : new Agent(opts)\n this[kAgent] = agent\n\n this[kClients] = agent[kClients]\n this[kOptions] = buildMockOptions(opts)\n }\n\n get (origin) {\n let dispatcher = this[kMockAgentGet](origin)\n\n if (!dispatcher) {\n dispatcher = this[kFactory](origin)\n this[kMockAgentSet](origin, dispatcher)\n }\n return dispatcher\n }\n\n dispatch (opts, handler) {\n // Call MockAgent.get to perform additional setup before dispatching as normal\n this.get(opts.origin)\n return this[kAgent].dispatch(opts, handler)\n }\n\n async close () {\n await this[kAgent].close()\n this[kClients].clear()\n }\n\n deactivate () {\n this[kIsMockActive] = false\n }\n\n activate () {\n this[kIsMockActive] = true\n }\n\n enableNetConnect (matcher) {\n if (typeof matcher === 'string' || typeof matcher === 'function' || matcher instanceof RegExp) {\n if (Array.isArray(this[kNetConnect])) {\n this[kNetConnect].push(matcher)\n } else {\n this[kNetConnect] = [matcher]\n }\n } else if (typeof matcher === 'undefined') {\n this[kNetConnect] = true\n } else {\n throw new InvalidArgumentError('Unsupported matcher. Must be one of String|Function|RegExp.')\n }\n }\n\n disableNetConnect () {\n this[kNetConnect] = false\n }\n\n // This is required to bypass issues caused by using global symbols - see:\n // https://github.com/nodejs/undici/issues/1447\n get isMockActive () {\n return this[kIsMockActive]\n }\n\n [kMockAgentSet] (origin, dispatcher) {\n this[kClients].set(origin, dispatcher)\n }\n\n [kFactory] (origin) {\n const mockOptions = Object.assign({ agent: this }, this[kOptions])\n return this[kOptions] && this[kOptions].connections === 1\n ? new MockClient(origin, mockOptions)\n : new MockPool(origin, mockOptions)\n }\n\n [kMockAgentGet] (origin) {\n // First check if we can immediately find it\n const client = this[kClients].get(origin)\n if (client) {\n return client\n }\n\n // If the origin is not a string create a dummy parent pool and return to user\n if (typeof origin !== 'string') {\n const dispatcher = this[kFactory]('http://localhost:9999')\n this[kMockAgentSet](origin, dispatcher)\n return dispatcher\n }\n\n // If we match, create a pool and assign the same dispatches\n for (const [keyMatcher, nonExplicitDispatcher] of Array.from(this[kClients])) {\n if (nonExplicitDispatcher && typeof keyMatcher !== 'string' && matchValue(keyMatcher, origin)) {\n const dispatcher = this[kFactory](origin)\n this[kMockAgentSet](origin, dispatcher)\n dispatcher[kDispatches] = nonExplicitDispatcher[kDispatches]\n return dispatcher\n }\n }\n }\n\n [kGetNetConnect] () {\n return this[kNetConnect]\n }\n\n pendingInterceptors () {\n const mockAgentClients = this[kClients]\n\n return Array.from(mockAgentClients.entries())\n .flatMap(([origin, scope]) => scope[kDispatches].map(dispatch => ({ ...dispatch, origin })))\n .filter(({ pending }) => pending)\n }\n\n assertNoPendingInterceptors ({ pendingInterceptorsFormatter = new PendingInterceptorsFormatter() } = {}) {\n const pending = this.pendingInterceptors()\n\n if (pending.length === 0) {\n return\n }\n\n const pluralizer = new Pluralizer('interceptor', 'interceptors').pluralize(pending.length)\n\n throw new UndiciError(`\n${pluralizer.count} ${pluralizer.noun} ${pluralizer.is} pending:\n\n${pendingInterceptorsFormatter.format(pending)}\n`.trim())\n }\n}\n\nmodule.exports = MockAgent\n", "'use strict'\n\n// We include a version number for the Dispatcher API. In case of breaking changes,\n// this version number must be increased to avoid conflicts.\nconst globalDispatcher = Symbol.for('undici.globalDispatcher.1')\nconst { InvalidArgumentError } = require('./core/errors')\nconst Agent = require('./dispatcher/agent')\n\nif (getGlobalDispatcher() === undefined) {\n setGlobalDispatcher(new Agent())\n}\n\nfunction setGlobalDispatcher (agent) {\n if (!agent || typeof agent.dispatch !== 'function') {\n throw new InvalidArgumentError('Argument agent must implement Agent')\n }\n Object.defineProperty(globalThis, globalDispatcher, {\n value: agent,\n writable: true,\n enumerable: false,\n configurable: false\n })\n}\n\nfunction getGlobalDispatcher () {\n return globalThis[globalDispatcher]\n}\n\nmodule.exports = {\n setGlobalDispatcher,\n getGlobalDispatcher\n}\n", "'use strict'\n\nmodule.exports = class DecoratorHandler {\n #handler\n\n constructor (handler) {\n if (typeof handler !== 'object' || handler === null) {\n throw new TypeError('handler must be an object')\n }\n this.#handler = handler\n }\n\n onConnect (...args) {\n return this.#handler.onConnect?.(...args)\n }\n\n onError (...args) {\n return this.#handler.onError?.(...args)\n }\n\n onUpgrade (...args) {\n return this.#handler.onUpgrade?.(...args)\n }\n\n onResponseStarted (...args) {\n return this.#handler.onResponseStarted?.(...args)\n }\n\n onHeaders (...args) {\n return this.#handler.onHeaders?.(...args)\n }\n\n onData (...args) {\n return this.#handler.onData?.(...args)\n }\n\n onComplete (...args) {\n return this.#handler.onComplete?.(...args)\n }\n\n onBodySent (...args) {\n return this.#handler.onBodySent?.(...args)\n }\n}\n", "'use strict'\nconst RedirectHandler = require('../handler/redirect-handler')\n\nmodule.exports = opts => {\n const globalMaxRedirections = opts?.maxRedirections\n return dispatch => {\n return function redirectInterceptor (opts, handler) {\n const { maxRedirections = globalMaxRedirections, ...baseOpts } = opts\n\n if (!maxRedirections) {\n return dispatch(opts, handler)\n }\n\n const redirectHandler = new RedirectHandler(\n dispatch,\n maxRedirections,\n opts,\n handler\n )\n\n return dispatch(baseOpts, redirectHandler)\n }\n }\n}\n", "'use strict'\nconst RetryHandler = require('../handler/retry-handler')\n\nmodule.exports = globalOpts => {\n return dispatch => {\n return function retryInterceptor (opts, handler) {\n return dispatch(\n opts,\n new RetryHandler(\n { ...opts, retryOptions: { ...globalOpts, ...opts.retryOptions } },\n {\n handler,\n dispatch\n }\n )\n )\n }\n }\n}\n", "'use strict'\n\nconst util = require('../core/util')\nconst { InvalidArgumentError, RequestAbortedError } = require('../core/errors')\nconst DecoratorHandler = require('../handler/decorator-handler')\n\nclass DumpHandler extends DecoratorHandler {\n #maxSize = 1024 * 1024\n #abort = null\n #dumped = false\n #aborted = false\n #size = 0\n #reason = null\n #handler = null\n\n constructor ({ maxSize }, handler) {\n super(handler)\n\n if (maxSize != null && (!Number.isFinite(maxSize) || maxSize < 1)) {\n throw new InvalidArgumentError('maxSize must be a number greater than 0')\n }\n\n this.#maxSize = maxSize ?? this.#maxSize\n this.#handler = handler\n }\n\n onConnect (abort) {\n this.#abort = abort\n\n this.#handler.onConnect(this.#customAbort.bind(this))\n }\n\n #customAbort (reason) {\n this.#aborted = true\n this.#reason = reason\n }\n\n // TODO: will require adjustment after new hooks are out\n onHeaders (statusCode, rawHeaders, resume, statusMessage) {\n const headers = util.parseHeaders(rawHeaders)\n const contentLength = headers['content-length']\n\n if (contentLength != null && contentLength > this.#maxSize) {\n throw new RequestAbortedError(\n `Response size (${contentLength}) larger than maxSize (${\n this.#maxSize\n })`\n )\n }\n\n if (this.#aborted) {\n return true\n }\n\n return this.#handler.onHeaders(\n statusCode,\n rawHeaders,\n resume,\n statusMessage\n )\n }\n\n onError (err) {\n if (this.#dumped) {\n return\n }\n\n err = this.#reason ?? err\n\n this.#handler.onError(err)\n }\n\n onData (chunk) {\n this.#size = this.#size + chunk.length\n\n if (this.#size >= this.#maxSize) {\n this.#dumped = true\n\n if (this.#aborted) {\n this.#handler.onError(this.#reason)\n } else {\n this.#handler.onComplete([])\n }\n }\n\n return true\n }\n\n onComplete (trailers) {\n if (this.#dumped) {\n return\n }\n\n if (this.#aborted) {\n this.#handler.onError(this.reason)\n return\n }\n\n this.#handler.onComplete(trailers)\n }\n}\n\nfunction createDumpInterceptor (\n { maxSize: defaultMaxSize } = {\n maxSize: 1024 * 1024\n }\n) {\n return dispatch => {\n return function Intercept (opts, handler) {\n const { dumpMaxSize = defaultMaxSize } =\n opts\n\n const dumpHandler = new DumpHandler(\n { maxSize: dumpMaxSize },\n handler\n )\n\n return dispatch(opts, dumpHandler)\n }\n }\n}\n\nmodule.exports = createDumpInterceptor\n", "'use strict'\nconst { isIP } = require('node:net')\nconst { lookup } = require('node:dns')\nconst DecoratorHandler = require('../handler/decorator-handler')\nconst { InvalidArgumentError, InformationalError } = require('../core/errors')\nconst maxInt = Math.pow(2, 31) - 1\n\nclass DNSInstance {\n #maxTTL = 0\n #maxItems = 0\n #records = new Map()\n dualStack = true\n affinity = null\n lookup = null\n pick = null\n\n constructor (opts) {\n this.#maxTTL = opts.maxTTL\n this.#maxItems = opts.maxItems\n this.dualStack = opts.dualStack\n this.affinity = opts.affinity\n this.lookup = opts.lookup ?? this.#defaultLookup\n this.pick = opts.pick ?? this.#defaultPick\n }\n\n get full () {\n return this.#records.size === this.#maxItems\n }\n\n runLookup (origin, opts, cb) {\n const ips = this.#records.get(origin.hostname)\n\n // If full, we just return the origin\n if (ips == null && this.full) {\n cb(null, origin.origin)\n return\n }\n\n const newOpts = {\n affinity: this.affinity,\n dualStack: this.dualStack,\n lookup: this.lookup,\n pick: this.pick,\n ...opts.dns,\n maxTTL: this.#maxTTL,\n maxItems: this.#maxItems\n }\n\n // If no IPs we lookup\n if (ips == null) {\n this.lookup(origin, newOpts, (err, addresses) => {\n if (err || addresses == null || addresses.length === 0) {\n cb(err ?? new InformationalError('No DNS entries found'))\n return\n }\n\n this.setRecords(origin, addresses)\n const records = this.#records.get(origin.hostname)\n\n const ip = this.pick(\n origin,\n records,\n newOpts.affinity\n )\n\n let port\n if (typeof ip.port === 'number') {\n port = `:${ip.port}`\n } else if (origin.port !== '') {\n port = `:${origin.port}`\n } else {\n port = ''\n }\n\n cb(\n null,\n `${origin.protocol}//${\n ip.family === 6 ? `[${ip.address}]` : ip.address\n }${port}`\n )\n })\n } else {\n // If there's IPs we pick\n const ip = this.pick(\n origin,\n ips,\n newOpts.affinity\n )\n\n // If no IPs we lookup - deleting old records\n if (ip == null) {\n this.#records.delete(origin.hostname)\n this.runLookup(origin, opts, cb)\n return\n }\n\n let port\n if (typeof ip.port === 'number') {\n port = `:${ip.port}`\n } else if (origin.port !== '') {\n port = `:${origin.port}`\n } else {\n port = ''\n }\n\n cb(\n null,\n `${origin.protocol}//${\n ip.family === 6 ? `[${ip.address}]` : ip.address\n }${port}`\n )\n }\n }\n\n #defaultLookup (origin, opts, cb) {\n lookup(\n origin.hostname,\n {\n all: true,\n family: this.dualStack === false ? this.affinity : 0,\n order: 'ipv4first'\n },\n (err, addresses) => {\n if (err) {\n return cb(err)\n }\n\n const results = new Map()\n\n for (const addr of addresses) {\n // On linux we found duplicates, we attempt to remove them with\n // the latest record\n results.set(`${addr.address}:${addr.family}`, addr)\n }\n\n cb(null, results.values())\n }\n )\n }\n\n #defaultPick (origin, hostnameRecords, affinity) {\n let ip = null\n const { records, offset } = hostnameRecords\n\n let family\n if (this.dualStack) {\n if (affinity == null) {\n // Balance between ip families\n if (offset == null || offset === maxInt) {\n hostnameRecords.offset = 0\n affinity = 4\n } else {\n hostnameRecords.offset++\n affinity = (hostnameRecords.offset & 1) === 1 ? 6 : 4\n }\n }\n\n if (records[affinity] != null && records[affinity].ips.length > 0) {\n family = records[affinity]\n } else {\n family = records[affinity === 4 ? 6 : 4]\n }\n } else {\n family = records[affinity]\n }\n\n // If no IPs we return null\n if (family == null || family.ips.length === 0) {\n return ip\n }\n\n if (family.offset == null || family.offset === maxInt) {\n family.offset = 0\n } else {\n family.offset++\n }\n\n const position = family.offset % family.ips.length\n ip = family.ips[position] ?? null\n\n if (ip == null) {\n return ip\n }\n\n if (Date.now() - ip.timestamp > ip.ttl) { // record TTL is already in ms\n // We delete expired records\n // It is possible that they have different TTL, so we manage them individually\n family.ips.splice(position, 1)\n return this.pick(origin, hostnameRecords, affinity)\n }\n\n return ip\n }\n\n setRecords (origin, addresses) {\n const timestamp = Date.now()\n const records = { records: { 4: null, 6: null } }\n for (const record of addresses) {\n record.timestamp = timestamp\n if (typeof record.ttl === 'number') {\n // The record TTL is expected to be in ms\n record.ttl = Math.min(record.ttl, this.#maxTTL)\n } else {\n record.ttl = this.#maxTTL\n }\n\n const familyRecords = records.records[record.family] ?? { ips: [] }\n\n familyRecords.ips.push(record)\n records.records[record.family] = familyRecords\n }\n\n this.#records.set(origin.hostname, records)\n }\n\n getHandler (meta, opts) {\n return new DNSDispatchHandler(this, meta, opts)\n }\n}\n\nclass DNSDispatchHandler extends DecoratorHandler {\n #state = null\n #opts = null\n #dispatch = null\n #handler = null\n #origin = null\n\n constructor (state, { origin, handler, dispatch }, opts) {\n super(handler)\n this.#origin = origin\n this.#handler = handler\n this.#opts = { ...opts }\n this.#state = state\n this.#dispatch = dispatch\n }\n\n onError (err) {\n switch (err.code) {\n case 'ETIMEDOUT':\n case 'ECONNREFUSED': {\n if (this.#state.dualStack) {\n // We delete the record and retry\n this.#state.runLookup(this.#origin, this.#opts, (err, newOrigin) => {\n if (err) {\n return this.#handler.onError(err)\n }\n\n const dispatchOpts = {\n ...this.#opts,\n origin: newOrigin\n }\n\n this.#dispatch(dispatchOpts, this)\n })\n\n // if dual-stack disabled, we error out\n return\n }\n\n this.#handler.onError(err)\n return\n }\n case 'ENOTFOUND':\n this.#state.deleteRecord(this.#origin)\n // eslint-disable-next-line no-fallthrough\n default:\n this.#handler.onError(err)\n break\n }\n }\n}\n\nmodule.exports = interceptorOpts => {\n if (\n interceptorOpts?.maxTTL != null &&\n (typeof interceptorOpts?.maxTTL !== 'number' || interceptorOpts?.maxTTL < 0)\n ) {\n throw new InvalidArgumentError('Invalid maxTTL. Must be a positive number')\n }\n\n if (\n interceptorOpts?.maxItems != null &&\n (typeof interceptorOpts?.maxItems !== 'number' ||\n interceptorOpts?.maxItems < 1)\n ) {\n throw new InvalidArgumentError(\n 'Invalid maxItems. Must be a positive number and greater than zero'\n )\n }\n\n if (\n interceptorOpts?.affinity != null &&\n interceptorOpts?.affinity !== 4 &&\n interceptorOpts?.affinity !== 6\n ) {\n throw new InvalidArgumentError('Invalid affinity. Must be either 4 or 6')\n }\n\n if (\n interceptorOpts?.dualStack != null &&\n typeof interceptorOpts?.dualStack !== 'boolean'\n ) {\n throw new InvalidArgumentError('Invalid dualStack. Must be a boolean')\n }\n\n if (\n interceptorOpts?.lookup != null &&\n typeof interceptorOpts?.lookup !== 'function'\n ) {\n throw new InvalidArgumentError('Invalid lookup. Must be a function')\n }\n\n if (\n interceptorOpts?.pick != null &&\n typeof interceptorOpts?.pick !== 'function'\n ) {\n throw new InvalidArgumentError('Invalid pick. Must be a function')\n }\n\n const dualStack = interceptorOpts?.dualStack ?? true\n let affinity\n if (dualStack) {\n affinity = interceptorOpts?.affinity ?? null\n } else {\n affinity = interceptorOpts?.affinity ?? 4\n }\n\n const opts = {\n maxTTL: interceptorOpts?.maxTTL ?? 10e3, // Expressed in ms\n lookup: interceptorOpts?.lookup ?? null,\n pick: interceptorOpts?.pick ?? null,\n dualStack,\n affinity,\n maxItems: interceptorOpts?.maxItems ?? Infinity\n }\n\n const instance = new DNSInstance(opts)\n\n return dispatch => {\n return function dnsInterceptor (origDispatchOpts, handler) {\n const origin =\n origDispatchOpts.origin.constructor === URL\n ? origDispatchOpts.origin\n : new URL(origDispatchOpts.origin)\n\n if (isIP(origin.hostname) !== 0) {\n return dispatch(origDispatchOpts, handler)\n }\n\n instance.runLookup(origin, origDispatchOpts, (err, newOrigin) => {\n if (err) {\n return handler.onError(err)\n }\n\n let dispatchOpts = null\n dispatchOpts = {\n ...origDispatchOpts,\n servername: origin.hostname, // For SNI on TLS\n origin: newOrigin,\n headers: {\n host: origin.hostname,\n ...origDispatchOpts.headers\n }\n }\n\n dispatch(\n dispatchOpts,\n instance.getHandler({ origin, dispatch, handler }, origDispatchOpts)\n )\n })\n\n return true\n }\n }\n}\n", "// https://github.com/Ethan-Arrowood/undici-fetch\n\n'use strict'\n\nconst { kConstruct } = require('../../core/symbols')\nconst { kEnumerableProperty } = require('../../core/util')\nconst {\n iteratorMixin,\n isValidHeaderName,\n isValidHeaderValue\n} = require('./util')\nconst { webidl } = require('./webidl')\nconst assert = require('node:assert')\nconst util = require('node:util')\n\nconst kHeadersMap = Symbol('headers map')\nconst kHeadersSortedMap = Symbol('headers map sorted')\n\n/**\n * @param {number} code\n */\nfunction isHTTPWhiteSpaceCharCode (code) {\n return code === 0x00a || code === 0x00d || code === 0x009 || code === 0x020\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-header-value-normalize\n * @param {string} potentialValue\n */\nfunction headerValueNormalize (potentialValue) {\n // To normalize a byte sequence potentialValue, remove\n // any leading and trailing HTTP whitespace bytes from\n // potentialValue.\n let i = 0; let j = potentialValue.length\n\n while (j > i && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(j - 1))) --j\n while (j > i && isHTTPWhiteSpaceCharCode(potentialValue.charCodeAt(i))) ++i\n\n return i === 0 && j === potentialValue.length ? potentialValue : potentialValue.substring(i, j)\n}\n\nfunction fill (headers, object) {\n // To fill a Headers object headers with a given object object, run these steps:\n\n // 1. If object is a sequence, then for each header in object:\n // Note: webidl conversion to array has already been done.\n if (Array.isArray(object)) {\n for (let i = 0; i < object.length; ++i) {\n const header = object[i]\n // 1. If header does not contain exactly two items, then throw a TypeError.\n if (header.length !== 2) {\n throw webidl.errors.exception({\n header: 'Headers constructor',\n message: `expected name/value pair to be length 2, found ${header.length}.`\n })\n }\n\n // 2. Append (header\u2019s first item, header\u2019s second item) to headers.\n appendHeader(headers, header[0], header[1])\n }\n } else if (typeof object === 'object' && object !== null) {\n // Note: null should throw\n\n // 2. Otherwise, object is a record, then for each key \u2192 value in object,\n // append (key, value) to headers\n const keys = Object.keys(object)\n for (let i = 0; i < keys.length; ++i) {\n appendHeader(headers, keys[i], object[keys[i]])\n }\n } else {\n throw webidl.errors.conversionFailed({\n prefix: 'Headers constructor',\n argument: 'Argument 1',\n types: ['sequence>', 'record']\n })\n }\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#concept-headers-append\n */\nfunction appendHeader (headers, name, value) {\n // 1. Normalize value.\n value = headerValueNormalize(value)\n\n // 2. If name is not a header name or value is not a\n // header value, then throw a TypeError.\n if (!isValidHeaderName(name)) {\n throw webidl.errors.invalidArgument({\n prefix: 'Headers.append',\n value: name,\n type: 'header name'\n })\n } else if (!isValidHeaderValue(value)) {\n throw webidl.errors.invalidArgument({\n prefix: 'Headers.append',\n value,\n type: 'header value'\n })\n }\n\n // 3. If headers\u2019s guard is \"immutable\", then throw a TypeError.\n // 4. Otherwise, if headers\u2019s guard is \"request\" and name is a\n // forbidden header name, return.\n // 5. Otherwise, if headers\u2019s guard is \"request-no-cors\":\n // TODO\n // Note: undici does not implement forbidden header names\n if (getHeadersGuard(headers) === 'immutable') {\n throw new TypeError('immutable')\n }\n\n // 6. Otherwise, if headers\u2019s guard is \"response\" and name is a\n // forbidden response-header name, return.\n\n // 7. Append (name, value) to headers\u2019s header list.\n return getHeadersList(headers).append(name, value, false)\n\n // 8. If headers\u2019s guard is \"request-no-cors\", then remove\n // privileged no-CORS request headers from headers\n}\n\nfunction compareHeaderName (a, b) {\n return a[0] < b[0] ? -1 : 1\n}\n\nclass HeadersList {\n /** @type {[string, string][]|null} */\n cookies = null\n\n constructor (init) {\n if (init instanceof HeadersList) {\n this[kHeadersMap] = new Map(init[kHeadersMap])\n this[kHeadersSortedMap] = init[kHeadersSortedMap]\n this.cookies = init.cookies === null ? null : [...init.cookies]\n } else {\n this[kHeadersMap] = new Map(init)\n this[kHeadersSortedMap] = null\n }\n }\n\n /**\n * @see https://fetch.spec.whatwg.org/#header-list-contains\n * @param {string} name\n * @param {boolean} isLowerCase\n */\n contains (name, isLowerCase) {\n // A header list list contains a header name name if list\n // contains a header whose name is a byte-case-insensitive\n // match for name.\n\n return this[kHeadersMap].has(isLowerCase ? name : name.toLowerCase())\n }\n\n clear () {\n this[kHeadersMap].clear()\n this[kHeadersSortedMap] = null\n this.cookies = null\n }\n\n /**\n * @see https://fetch.spec.whatwg.org/#concept-header-list-append\n * @param {string} name\n * @param {string} value\n * @param {boolean} isLowerCase\n */\n append (name, value, isLowerCase) {\n this[kHeadersSortedMap] = null\n\n // 1. If list contains name, then set name to the first such\n // header\u2019s name.\n const lowercaseName = isLowerCase ? name : name.toLowerCase()\n const exists = this[kHeadersMap].get(lowercaseName)\n\n // 2. Append (name, value) to list.\n if (exists) {\n const delimiter = lowercaseName === 'cookie' ? '; ' : ', '\n this[kHeadersMap].set(lowercaseName, {\n name: exists.name,\n value: `${exists.value}${delimiter}${value}`\n })\n } else {\n this[kHeadersMap].set(lowercaseName, { name, value })\n }\n\n if (lowercaseName === 'set-cookie') {\n (this.cookies ??= []).push(value)\n }\n }\n\n /**\n * @see https://fetch.spec.whatwg.org/#concept-header-list-set\n * @param {string} name\n * @param {string} value\n * @param {boolean} isLowerCase\n */\n set (name, value, isLowerCase) {\n this[kHeadersSortedMap] = null\n const lowercaseName = isLowerCase ? name : name.toLowerCase()\n\n if (lowercaseName === 'set-cookie') {\n this.cookies = [value]\n }\n\n // 1. If list contains name, then set the value of\n // the first such header to value and remove the\n // others.\n // 2. Otherwise, append header (name, value) to list.\n this[kHeadersMap].set(lowercaseName, { name, value })\n }\n\n /**\n * @see https://fetch.spec.whatwg.org/#concept-header-list-delete\n * @param {string} name\n * @param {boolean} isLowerCase\n */\n delete (name, isLowerCase) {\n this[kHeadersSortedMap] = null\n if (!isLowerCase) name = name.toLowerCase()\n\n if (name === 'set-cookie') {\n this.cookies = null\n }\n\n this[kHeadersMap].delete(name)\n }\n\n /**\n * @see https://fetch.spec.whatwg.org/#concept-header-list-get\n * @param {string} name\n * @param {boolean} isLowerCase\n * @returns {string | null}\n */\n get (name, isLowerCase) {\n // 1. If list does not contain name, then return null.\n // 2. Return the values of all headers in list whose name\n // is a byte-case-insensitive match for name,\n // separated from each other by 0x2C 0x20, in order.\n return this[kHeadersMap].get(isLowerCase ? name : name.toLowerCase())?.value ?? null\n }\n\n * [Symbol.iterator] () {\n // use the lowercased name\n for (const { 0: name, 1: { value } } of this[kHeadersMap]) {\n yield [name, value]\n }\n }\n\n get entries () {\n const headers = {}\n\n if (this[kHeadersMap].size !== 0) {\n for (const { name, value } of this[kHeadersMap].values()) {\n headers[name] = value\n }\n }\n\n return headers\n }\n\n rawValues () {\n return this[kHeadersMap].values()\n }\n\n get entriesList () {\n const headers = []\n\n if (this[kHeadersMap].size !== 0) {\n for (const { 0: lowerName, 1: { name, value } } of this[kHeadersMap]) {\n if (lowerName === 'set-cookie') {\n for (const cookie of this.cookies) {\n headers.push([name, cookie])\n }\n } else {\n headers.push([name, value])\n }\n }\n }\n\n return headers\n }\n\n // https://fetch.spec.whatwg.org/#convert-header-names-to-a-sorted-lowercase-set\n toSortedArray () {\n const size = this[kHeadersMap].size\n const array = new Array(size)\n // In most cases, you will use the fast-path.\n // fast-path: Use binary insertion sort for small arrays.\n if (size <= 32) {\n if (size === 0) {\n // If empty, it is an empty array. To avoid the first index assignment.\n return array\n }\n // Improve performance by unrolling loop and avoiding double-loop.\n // Double-loop-less version of the binary insertion sort.\n const iterator = this[kHeadersMap][Symbol.iterator]()\n const firstValue = iterator.next().value\n // set [name, value] to first index.\n array[0] = [firstValue[0], firstValue[1].value]\n // https://fetch.spec.whatwg.org/#concept-header-list-sort-and-combine\n // 3.2.2. Assert: value is non-null.\n assert(firstValue[1].value !== null)\n for (\n let i = 1, j = 0, right = 0, left = 0, pivot = 0, x, value;\n i < size;\n ++i\n ) {\n // get next value\n value = iterator.next().value\n // set [name, value] to current index.\n x = array[i] = [value[0], value[1].value]\n // https://fetch.spec.whatwg.org/#concept-header-list-sort-and-combine\n // 3.2.2. Assert: value is non-null.\n assert(x[1] !== null)\n left = 0\n right = i\n // binary search\n while (left < right) {\n // middle index\n pivot = left + ((right - left) >> 1)\n // compare header name\n if (array[pivot][0] <= x[0]) {\n left = pivot + 1\n } else {\n right = pivot\n }\n }\n if (i !== pivot) {\n j = i\n while (j > left) {\n array[j] = array[--j]\n }\n array[left] = x\n }\n }\n /* c8 ignore next 4 */\n if (!iterator.next().done) {\n // This is for debugging and will never be called.\n throw new TypeError('Unreachable')\n }\n return array\n } else {\n // This case would be a rare occurrence.\n // slow-path: fallback\n let i = 0\n for (const { 0: name, 1: { value } } of this[kHeadersMap]) {\n array[i++] = [name, value]\n // https://fetch.spec.whatwg.org/#concept-header-list-sort-and-combine\n // 3.2.2. Assert: value is non-null.\n assert(value !== null)\n }\n return array.sort(compareHeaderName)\n }\n }\n}\n\n// https://fetch.spec.whatwg.org/#headers-class\nclass Headers {\n #guard\n #headersList\n\n constructor (init = undefined) {\n webidl.util.markAsUncloneable(this)\n\n if (init === kConstruct) {\n return\n }\n\n this.#headersList = new HeadersList()\n\n // The new Headers(init) constructor steps are:\n\n // 1. Set this\u2019s guard to \"none\".\n this.#guard = 'none'\n\n // 2. If init is given, then fill this with init.\n if (init !== undefined) {\n init = webidl.converters.HeadersInit(init, 'Headers contructor', 'init')\n fill(this, init)\n }\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-append\n append (name, value) {\n webidl.brandCheck(this, Headers)\n\n webidl.argumentLengthCheck(arguments, 2, 'Headers.append')\n\n const prefix = 'Headers.append'\n name = webidl.converters.ByteString(name, prefix, 'name')\n value = webidl.converters.ByteString(value, prefix, 'value')\n\n return appendHeader(this, name, value)\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-delete\n delete (name) {\n webidl.brandCheck(this, Headers)\n\n webidl.argumentLengthCheck(arguments, 1, 'Headers.delete')\n\n const prefix = 'Headers.delete'\n name = webidl.converters.ByteString(name, prefix, 'name')\n\n // 1. If name is not a header name, then throw a TypeError.\n if (!isValidHeaderName(name)) {\n throw webidl.errors.invalidArgument({\n prefix: 'Headers.delete',\n value: name,\n type: 'header name'\n })\n }\n\n // 2. If this\u2019s guard is \"immutable\", then throw a TypeError.\n // 3. Otherwise, if this\u2019s guard is \"request\" and name is a\n // forbidden header name, return.\n // 4. Otherwise, if this\u2019s guard is \"request-no-cors\", name\n // is not a no-CORS-safelisted request-header name, and\n // name is not a privileged no-CORS request-header name,\n // return.\n // 5. Otherwise, if this\u2019s guard is \"response\" and name is\n // a forbidden response-header name, return.\n // Note: undici does not implement forbidden header names\n if (this.#guard === 'immutable') {\n throw new TypeError('immutable')\n }\n\n // 6. If this\u2019s header list does not contain name, then\n // return.\n if (!this.#headersList.contains(name, false)) {\n return\n }\n\n // 7. Delete name from this\u2019s header list.\n // 8. If this\u2019s guard is \"request-no-cors\", then remove\n // privileged no-CORS request headers from this.\n this.#headersList.delete(name, false)\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-get\n get (name) {\n webidl.brandCheck(this, Headers)\n\n webidl.argumentLengthCheck(arguments, 1, 'Headers.get')\n\n const prefix = 'Headers.get'\n name = webidl.converters.ByteString(name, prefix, 'name')\n\n // 1. If name is not a header name, then throw a TypeError.\n if (!isValidHeaderName(name)) {\n throw webidl.errors.invalidArgument({\n prefix,\n value: name,\n type: 'header name'\n })\n }\n\n // 2. Return the result of getting name from this\u2019s header\n // list.\n return this.#headersList.get(name, false)\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-has\n has (name) {\n webidl.brandCheck(this, Headers)\n\n webidl.argumentLengthCheck(arguments, 1, 'Headers.has')\n\n const prefix = 'Headers.has'\n name = webidl.converters.ByteString(name, prefix, 'name')\n\n // 1. If name is not a header name, then throw a TypeError.\n if (!isValidHeaderName(name)) {\n throw webidl.errors.invalidArgument({\n prefix,\n value: name,\n type: 'header name'\n })\n }\n\n // 2. Return true if this\u2019s header list contains name;\n // otherwise false.\n return this.#headersList.contains(name, false)\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-set\n set (name, value) {\n webidl.brandCheck(this, Headers)\n\n webidl.argumentLengthCheck(arguments, 2, 'Headers.set')\n\n const prefix = 'Headers.set'\n name = webidl.converters.ByteString(name, prefix, 'name')\n value = webidl.converters.ByteString(value, prefix, 'value')\n\n // 1. Normalize value.\n value = headerValueNormalize(value)\n\n // 2. If name is not a header name or value is not a\n // header value, then throw a TypeError.\n if (!isValidHeaderName(name)) {\n throw webidl.errors.invalidArgument({\n prefix,\n value: name,\n type: 'header name'\n })\n } else if (!isValidHeaderValue(value)) {\n throw webidl.errors.invalidArgument({\n prefix,\n value,\n type: 'header value'\n })\n }\n\n // 3. If this\u2019s guard is \"immutable\", then throw a TypeError.\n // 4. Otherwise, if this\u2019s guard is \"request\" and name is a\n // forbidden header name, return.\n // 5. Otherwise, if this\u2019s guard is \"request-no-cors\" and\n // name/value is not a no-CORS-safelisted request-header,\n // return.\n // 6. Otherwise, if this\u2019s guard is \"response\" and name is a\n // forbidden response-header name, return.\n // Note: undici does not implement forbidden header names\n if (this.#guard === 'immutable') {\n throw new TypeError('immutable')\n }\n\n // 7. Set (name, value) in this\u2019s header list.\n // 8. If this\u2019s guard is \"request-no-cors\", then remove\n // privileged no-CORS request headers from this\n this.#headersList.set(name, value, false)\n }\n\n // https://fetch.spec.whatwg.org/#dom-headers-getsetcookie\n getSetCookie () {\n webidl.brandCheck(this, Headers)\n\n // 1. If this\u2019s header list does not contain `Set-Cookie`, then return \u00AB \u00BB.\n // 2. Return the values of all headers in this\u2019s header list whose name is\n // a byte-case-insensitive match for `Set-Cookie`, in order.\n\n const list = this.#headersList.cookies\n\n if (list) {\n return [...list]\n }\n\n return []\n }\n\n // https://fetch.spec.whatwg.org/#concept-header-list-sort-and-combine\n get [kHeadersSortedMap] () {\n if (this.#headersList[kHeadersSortedMap]) {\n return this.#headersList[kHeadersSortedMap]\n }\n\n // 1. Let headers be an empty list of headers with the key being the name\n // and value the value.\n const headers = []\n\n // 2. Let names be the result of convert header names to a sorted-lowercase\n // set with all the names of the headers in list.\n const names = this.#headersList.toSortedArray()\n\n const cookies = this.#headersList.cookies\n\n // fast-path\n if (cookies === null || cookies.length === 1) {\n // Note: The non-null assertion of value has already been done by `HeadersList#toSortedArray`\n return (this.#headersList[kHeadersSortedMap] = names)\n }\n\n // 3. For each name of names:\n for (let i = 0; i < names.length; ++i) {\n const { 0: name, 1: value } = names[i]\n // 1. If name is `set-cookie`, then:\n if (name === 'set-cookie') {\n // 1. Let values be a list of all values of headers in list whose name\n // is a byte-case-insensitive match for name, in order.\n\n // 2. For each value of values:\n // 1. Append (name, value) to headers.\n for (let j = 0; j < cookies.length; ++j) {\n headers.push([name, cookies[j]])\n }\n } else {\n // 2. Otherwise:\n\n // 1. Let value be the result of getting name from list.\n\n // 2. Assert: value is non-null.\n // Note: This operation was done by `HeadersList#toSortedArray`.\n\n // 3. Append (name, value) to headers.\n headers.push([name, value])\n }\n }\n\n // 4. Return headers.\n return (this.#headersList[kHeadersSortedMap] = headers)\n }\n\n [util.inspect.custom] (depth, options) {\n options.depth ??= depth\n\n return `Headers ${util.formatWithOptions(options, this.#headersList.entries)}`\n }\n\n static getHeadersGuard (o) {\n return o.#guard\n }\n\n static setHeadersGuard (o, guard) {\n o.#guard = guard\n }\n\n static getHeadersList (o) {\n return o.#headersList\n }\n\n static setHeadersList (o, list) {\n o.#headersList = list\n }\n}\n\nconst { getHeadersGuard, setHeadersGuard, getHeadersList, setHeadersList } = Headers\nReflect.deleteProperty(Headers, 'getHeadersGuard')\nReflect.deleteProperty(Headers, 'setHeadersGuard')\nReflect.deleteProperty(Headers, 'getHeadersList')\nReflect.deleteProperty(Headers, 'setHeadersList')\n\niteratorMixin('Headers', Headers, kHeadersSortedMap, 0, 1)\n\nObject.defineProperties(Headers.prototype, {\n append: kEnumerableProperty,\n delete: kEnumerableProperty,\n get: kEnumerableProperty,\n has: kEnumerableProperty,\n set: kEnumerableProperty,\n getSetCookie: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'Headers',\n configurable: true\n },\n [util.inspect.custom]: {\n enumerable: false\n }\n})\n\nwebidl.converters.HeadersInit = function (V, prefix, argument) {\n if (webidl.util.Type(V) === 'Object') {\n const iterator = Reflect.get(V, Symbol.iterator)\n\n // A work-around to ensure we send the properly-cased Headers when V is a Headers object.\n // Read https://github.com/nodejs/undici/pull/3159#issuecomment-2075537226 before touching, please.\n if (!util.types.isProxy(V) && iterator === Headers.prototype.entries) { // Headers object\n try {\n return getHeadersList(V).entriesList\n } catch {\n // fall-through\n }\n }\n\n if (typeof iterator === 'function') {\n return webidl.converters['sequence>'](V, prefix, argument, iterator.bind(V))\n }\n\n return webidl.converters['record'](V, prefix, argument)\n }\n\n throw webidl.errors.conversionFailed({\n prefix: 'Headers constructor',\n argument: 'Argument 1',\n types: ['sequence>', 'record']\n })\n}\n\nmodule.exports = {\n fill,\n // for test.\n compareHeaderName,\n Headers,\n HeadersList,\n getHeadersGuard,\n setHeadersGuard,\n setHeadersList,\n getHeadersList\n}\n", "'use strict'\n\nconst { Headers, HeadersList, fill, getHeadersGuard, setHeadersGuard, setHeadersList } = require('./headers')\nconst { extractBody, cloneBody, mixinBody, hasFinalizationRegistry, streamRegistry, bodyUnusable } = require('./body')\nconst util = require('../../core/util')\nconst nodeUtil = require('node:util')\nconst { kEnumerableProperty } = util\nconst {\n isValidReasonPhrase,\n isCancelled,\n isAborted,\n isBlobLike,\n serializeJavascriptValueToJSONString,\n isErrorLike,\n isomorphicEncode,\n environmentSettingsObject: relevantRealm\n} = require('./util')\nconst {\n redirectStatusSet,\n nullBodyStatus\n} = require('./constants')\nconst { kState, kHeaders } = require('./symbols')\nconst { webidl } = require('./webidl')\nconst { FormData } = require('./formdata')\nconst { URLSerializer } = require('./data-url')\nconst { kConstruct } = require('../../core/symbols')\nconst assert = require('node:assert')\nconst { types } = require('node:util')\n\nconst textEncoder = new TextEncoder('utf-8')\n\n// https://fetch.spec.whatwg.org/#response-class\nclass Response {\n // Creates network error Response.\n static error () {\n // The static error() method steps are to return the result of creating a\n // Response object, given a new network error, \"immutable\", and this\u2019s\n // relevant Realm.\n const responseObject = fromInnerResponse(makeNetworkError(), 'immutable')\n\n return responseObject\n }\n\n // https://fetch.spec.whatwg.org/#dom-response-json\n static json (data, init = {}) {\n webidl.argumentLengthCheck(arguments, 1, 'Response.json')\n\n if (init !== null) {\n init = webidl.converters.ResponseInit(init)\n }\n\n // 1. Let bytes the result of running serialize a JavaScript value to JSON bytes on data.\n const bytes = textEncoder.encode(\n serializeJavascriptValueToJSONString(data)\n )\n\n // 2. Let body be the result of extracting bytes.\n const body = extractBody(bytes)\n\n // 3. Let responseObject be the result of creating a Response object, given a new response,\n // \"response\", and this\u2019s relevant Realm.\n const responseObject = fromInnerResponse(makeResponse({}), 'response')\n\n // 4. Perform initialize a response given responseObject, init, and (body, \"application/json\").\n initializeResponse(responseObject, init, { body: body[0], type: 'application/json' })\n\n // 5. Return responseObject.\n return responseObject\n }\n\n // Creates a redirect Response that redirects to url with status status.\n static redirect (url, status = 302) {\n webidl.argumentLengthCheck(arguments, 1, 'Response.redirect')\n\n url = webidl.converters.USVString(url)\n status = webidl.converters['unsigned short'](status)\n\n // 1. Let parsedURL be the result of parsing url with current settings\n // object\u2019s API base URL.\n // 2. If parsedURL is failure, then throw a TypeError.\n // TODO: base-URL?\n let parsedURL\n try {\n parsedURL = new URL(url, relevantRealm.settingsObject.baseUrl)\n } catch (err) {\n throw new TypeError(`Failed to parse URL from ${url}`, { cause: err })\n }\n\n // 3. If status is not a redirect status, then throw a RangeError.\n if (!redirectStatusSet.has(status)) {\n throw new RangeError(`Invalid status code ${status}`)\n }\n\n // 4. Let responseObject be the result of creating a Response object,\n // given a new response, \"immutable\", and this\u2019s relevant Realm.\n const responseObject = fromInnerResponse(makeResponse({}), 'immutable')\n\n // 5. Set responseObject\u2019s response\u2019s status to status.\n responseObject[kState].status = status\n\n // 6. Let value be parsedURL, serialized and isomorphic encoded.\n const value = isomorphicEncode(URLSerializer(parsedURL))\n\n // 7. Append `Location`/value to responseObject\u2019s response\u2019s header list.\n responseObject[kState].headersList.append('location', value, true)\n\n // 8. Return responseObject.\n return responseObject\n }\n\n // https://fetch.spec.whatwg.org/#dom-response\n constructor (body = null, init = {}) {\n webidl.util.markAsUncloneable(this)\n if (body === kConstruct) {\n return\n }\n\n if (body !== null) {\n body = webidl.converters.BodyInit(body)\n }\n\n init = webidl.converters.ResponseInit(init)\n\n // 1. Set this\u2019s response to a new response.\n this[kState] = makeResponse({})\n\n // 2. Set this\u2019s headers to a new Headers object with this\u2019s relevant\n // Realm, whose header list is this\u2019s response\u2019s header list and guard\n // is \"response\".\n this[kHeaders] = new Headers(kConstruct)\n setHeadersGuard(this[kHeaders], 'response')\n setHeadersList(this[kHeaders], this[kState].headersList)\n\n // 3. Let bodyWithType be null.\n let bodyWithType = null\n\n // 4. If body is non-null, then set bodyWithType to the result of extracting body.\n if (body != null) {\n const [extractedBody, type] = extractBody(body)\n bodyWithType = { body: extractedBody, type }\n }\n\n // 5. Perform initialize a response given this, init, and bodyWithType.\n initializeResponse(this, init, bodyWithType)\n }\n\n // Returns response\u2019s type, e.g., \"cors\".\n get type () {\n webidl.brandCheck(this, Response)\n\n // The type getter steps are to return this\u2019s response\u2019s type.\n return this[kState].type\n }\n\n // Returns response\u2019s URL, if it has one; otherwise the empty string.\n get url () {\n webidl.brandCheck(this, Response)\n\n const urlList = this[kState].urlList\n\n // The url getter steps are to return the empty string if this\u2019s\n // response\u2019s URL is null; otherwise this\u2019s response\u2019s URL,\n // serialized with exclude fragment set to true.\n const url = urlList[urlList.length - 1] ?? null\n\n if (url === null) {\n return ''\n }\n\n return URLSerializer(url, true)\n }\n\n // Returns whether response was obtained through a redirect.\n get redirected () {\n webidl.brandCheck(this, Response)\n\n // The redirected getter steps are to return true if this\u2019s response\u2019s URL\n // list has more than one item; otherwise false.\n return this[kState].urlList.length > 1\n }\n\n // Returns response\u2019s status.\n get status () {\n webidl.brandCheck(this, Response)\n\n // The status getter steps are to return this\u2019s response\u2019s status.\n return this[kState].status\n }\n\n // Returns whether response\u2019s status is an ok status.\n get ok () {\n webidl.brandCheck(this, Response)\n\n // The ok getter steps are to return true if this\u2019s response\u2019s status is an\n // ok status; otherwise false.\n return this[kState].status >= 200 && this[kState].status <= 299\n }\n\n // Returns response\u2019s status message.\n get statusText () {\n webidl.brandCheck(this, Response)\n\n // The statusText getter steps are to return this\u2019s response\u2019s status\n // message.\n return this[kState].statusText\n }\n\n // Returns response\u2019s headers as Headers.\n get headers () {\n webidl.brandCheck(this, Response)\n\n // The headers getter steps are to return this\u2019s headers.\n return this[kHeaders]\n }\n\n get body () {\n webidl.brandCheck(this, Response)\n\n return this[kState].body ? this[kState].body.stream : null\n }\n\n get bodyUsed () {\n webidl.brandCheck(this, Response)\n\n return !!this[kState].body && util.isDisturbed(this[kState].body.stream)\n }\n\n // Returns a clone of response.\n clone () {\n webidl.brandCheck(this, Response)\n\n // 1. If this is unusable, then throw a TypeError.\n if (bodyUnusable(this)) {\n throw webidl.errors.exception({\n header: 'Response.clone',\n message: 'Body has already been consumed.'\n })\n }\n\n // 2. Let clonedResponse be the result of cloning this\u2019s response.\n const clonedResponse = cloneResponse(this[kState])\n\n // Note: To re-register because of a new stream.\n if (hasFinalizationRegistry && this[kState].body?.stream) {\n streamRegistry.register(this, new WeakRef(this[kState].body.stream))\n }\n\n // 3. Return the result of creating a Response object, given\n // clonedResponse, this\u2019s headers\u2019s guard, and this\u2019s relevant Realm.\n return fromInnerResponse(clonedResponse, getHeadersGuard(this[kHeaders]))\n }\n\n [nodeUtil.inspect.custom] (depth, options) {\n if (options.depth === null) {\n options.depth = 2\n }\n\n options.colors ??= true\n\n const properties = {\n status: this.status,\n statusText: this.statusText,\n headers: this.headers,\n body: this.body,\n bodyUsed: this.bodyUsed,\n ok: this.ok,\n redirected: this.redirected,\n type: this.type,\n url: this.url\n }\n\n return `Response ${nodeUtil.formatWithOptions(options, properties)}`\n }\n}\n\nmixinBody(Response)\n\nObject.defineProperties(Response.prototype, {\n type: kEnumerableProperty,\n url: kEnumerableProperty,\n status: kEnumerableProperty,\n ok: kEnumerableProperty,\n redirected: kEnumerableProperty,\n statusText: kEnumerableProperty,\n headers: kEnumerableProperty,\n clone: kEnumerableProperty,\n body: kEnumerableProperty,\n bodyUsed: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'Response',\n configurable: true\n }\n})\n\nObject.defineProperties(Response, {\n json: kEnumerableProperty,\n redirect: kEnumerableProperty,\n error: kEnumerableProperty\n})\n\n// https://fetch.spec.whatwg.org/#concept-response-clone\nfunction cloneResponse (response) {\n // To clone a response response, run these steps:\n\n // 1. If response is a filtered response, then return a new identical\n // filtered response whose internal response is a clone of response\u2019s\n // internal response.\n if (response.internalResponse) {\n return filterResponse(\n cloneResponse(response.internalResponse),\n response.type\n )\n }\n\n // 2. Let newResponse be a copy of response, except for its body.\n const newResponse = makeResponse({ ...response, body: null })\n\n // 3. If response\u2019s body is non-null, then set newResponse\u2019s body to the\n // result of cloning response\u2019s body.\n if (response.body != null) {\n newResponse.body = cloneBody(newResponse, response.body)\n }\n\n // 4. Return newResponse.\n return newResponse\n}\n\nfunction makeResponse (init) {\n return {\n aborted: false,\n rangeRequested: false,\n timingAllowPassed: false,\n requestIncludesCredentials: false,\n type: 'default',\n status: 200,\n timingInfo: null,\n cacheState: '',\n statusText: '',\n ...init,\n headersList: init?.headersList\n ? new HeadersList(init?.headersList)\n : new HeadersList(),\n urlList: init?.urlList ? [...init.urlList] : []\n }\n}\n\nfunction makeNetworkError (reason) {\n const isError = isErrorLike(reason)\n return makeResponse({\n type: 'error',\n status: 0,\n error: isError\n ? reason\n : new Error(reason ? String(reason) : reason),\n aborted: reason && reason.name === 'AbortError'\n })\n}\n\n// @see https://fetch.spec.whatwg.org/#concept-network-error\nfunction isNetworkError (response) {\n return (\n // A network error is a response whose type is \"error\",\n response.type === 'error' &&\n // status is 0\n response.status === 0\n )\n}\n\nfunction makeFilteredResponse (response, state) {\n state = {\n internalResponse: response,\n ...state\n }\n\n return new Proxy(response, {\n get (target, p) {\n return p in state ? state[p] : target[p]\n },\n set (target, p, value) {\n assert(!(p in state))\n target[p] = value\n return true\n }\n })\n}\n\n// https://fetch.spec.whatwg.org/#concept-filtered-response\nfunction filterResponse (response, type) {\n // Set response to the following filtered response with response as its\n // internal response, depending on request\u2019s response tainting:\n if (type === 'basic') {\n // A basic filtered response is a filtered response whose type is \"basic\"\n // and header list excludes any headers in internal response\u2019s header list\n // whose name is a forbidden response-header name.\n\n // Note: undici does not implement forbidden response-header names\n return makeFilteredResponse(response, {\n type: 'basic',\n headersList: response.headersList\n })\n } else if (type === 'cors') {\n // A CORS filtered response is a filtered response whose type is \"cors\"\n // and header list excludes any headers in internal response\u2019s header\n // list whose name is not a CORS-safelisted response-header name, given\n // internal response\u2019s CORS-exposed header-name list.\n\n // Note: undici does not implement CORS-safelisted response-header names\n return makeFilteredResponse(response, {\n type: 'cors',\n headersList: response.headersList\n })\n } else if (type === 'opaque') {\n // An opaque filtered response is a filtered response whose type is\n // \"opaque\", URL list is the empty list, status is 0, status message\n // is the empty byte sequence, header list is empty, and body is null.\n\n return makeFilteredResponse(response, {\n type: 'opaque',\n urlList: Object.freeze([]),\n status: 0,\n statusText: '',\n body: null\n })\n } else if (type === 'opaqueredirect') {\n // An opaque-redirect filtered response is a filtered response whose type\n // is \"opaqueredirect\", status is 0, status message is the empty byte\n // sequence, header list is empty, and body is null.\n\n return makeFilteredResponse(response, {\n type: 'opaqueredirect',\n status: 0,\n statusText: '',\n headersList: [],\n body: null\n })\n } else {\n assert(false)\n }\n}\n\n// https://fetch.spec.whatwg.org/#appropriate-network-error\nfunction makeAppropriateNetworkError (fetchParams, err = null) {\n // 1. Assert: fetchParams is canceled.\n assert(isCancelled(fetchParams))\n\n // 2. Return an aborted network error if fetchParams is aborted;\n // otherwise return a network error.\n return isAborted(fetchParams)\n ? makeNetworkError(Object.assign(new DOMException('The operation was aborted.', 'AbortError'), { cause: err }))\n : makeNetworkError(Object.assign(new DOMException('Request was cancelled.'), { cause: err }))\n}\n\n// https://whatpr.org/fetch/1392.html#initialize-a-response\nfunction initializeResponse (response, init, body) {\n // 1. If init[\"status\"] is not in the range 200 to 599, inclusive, then\n // throw a RangeError.\n if (init.status !== null && (init.status < 200 || init.status > 599)) {\n throw new RangeError('init[\"status\"] must be in the range of 200 to 599, inclusive.')\n }\n\n // 2. If init[\"statusText\"] does not match the reason-phrase token production,\n // then throw a TypeError.\n if ('statusText' in init && init.statusText != null) {\n // See, https://datatracker.ietf.org/doc/html/rfc7230#section-3.1.2:\n // reason-phrase = *( HTAB / SP / VCHAR / obs-text )\n if (!isValidReasonPhrase(String(init.statusText))) {\n throw new TypeError('Invalid statusText')\n }\n }\n\n // 3. Set response\u2019s response\u2019s status to init[\"status\"].\n if ('status' in init && init.status != null) {\n response[kState].status = init.status\n }\n\n // 4. Set response\u2019s response\u2019s status message to init[\"statusText\"].\n if ('statusText' in init && init.statusText != null) {\n response[kState].statusText = init.statusText\n }\n\n // 5. If init[\"headers\"] exists, then fill response\u2019s headers with init[\"headers\"].\n if ('headers' in init && init.headers != null) {\n fill(response[kHeaders], init.headers)\n }\n\n // 6. If body was given, then:\n if (body) {\n // 1. If response's status is a null body status, then throw a TypeError.\n if (nullBodyStatus.includes(response.status)) {\n throw webidl.errors.exception({\n header: 'Response constructor',\n message: `Invalid response status code ${response.status}`\n })\n }\n\n // 2. Set response's body to body's body.\n response[kState].body = body.body\n\n // 3. If body's type is non-null and response's header list does not contain\n // `Content-Type`, then append (`Content-Type`, body's type) to response's header list.\n if (body.type != null && !response[kState].headersList.contains('content-type', true)) {\n response[kState].headersList.append('content-type', body.type, true)\n }\n }\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#response-create\n * @param {any} innerResponse\n * @param {'request' | 'immutable' | 'request-no-cors' | 'response' | 'none'} guard\n * @returns {Response}\n */\nfunction fromInnerResponse (innerResponse, guard) {\n const response = new Response(kConstruct)\n response[kState] = innerResponse\n response[kHeaders] = new Headers(kConstruct)\n setHeadersList(response[kHeaders], innerResponse.headersList)\n setHeadersGuard(response[kHeaders], guard)\n\n if (hasFinalizationRegistry && innerResponse.body?.stream) {\n // If the target (response) is reclaimed, the cleanup callback may be called at some point with\n // the held value provided for it (innerResponse.body.stream). The held value can be any value:\n // a primitive or an object, even undefined. If the held value is an object, the registry keeps\n // a strong reference to it (so it can pass it to the cleanup callback later). Reworded from\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n streamRegistry.register(response, new WeakRef(innerResponse.body.stream))\n }\n\n return response\n}\n\nwebidl.converters.ReadableStream = webidl.interfaceConverter(\n ReadableStream\n)\n\nwebidl.converters.FormData = webidl.interfaceConverter(\n FormData\n)\n\nwebidl.converters.URLSearchParams = webidl.interfaceConverter(\n URLSearchParams\n)\n\n// https://fetch.spec.whatwg.org/#typedefdef-xmlhttprequestbodyinit\nwebidl.converters.XMLHttpRequestBodyInit = function (V, prefix, name) {\n if (typeof V === 'string') {\n return webidl.converters.USVString(V, prefix, name)\n }\n\n if (isBlobLike(V)) {\n return webidl.converters.Blob(V, prefix, name, { strict: false })\n }\n\n if (ArrayBuffer.isView(V) || types.isArrayBuffer(V)) {\n return webidl.converters.BufferSource(V, prefix, name)\n }\n\n if (util.isFormDataLike(V)) {\n return webidl.converters.FormData(V, prefix, name, { strict: false })\n }\n\n if (V instanceof URLSearchParams) {\n return webidl.converters.URLSearchParams(V, prefix, name)\n }\n\n return webidl.converters.DOMString(V, prefix, name)\n}\n\n// https://fetch.spec.whatwg.org/#bodyinit\nwebidl.converters.BodyInit = function (V, prefix, argument) {\n if (V instanceof ReadableStream) {\n return webidl.converters.ReadableStream(V, prefix, argument)\n }\n\n // Note: the spec doesn't include async iterables,\n // this is an undici extension.\n if (V?.[Symbol.asyncIterator]) {\n return V\n }\n\n return webidl.converters.XMLHttpRequestBodyInit(V, prefix, argument)\n}\n\nwebidl.converters.ResponseInit = webidl.dictionaryConverter([\n {\n key: 'status',\n converter: webidl.converters['unsigned short'],\n defaultValue: () => 200\n },\n {\n key: 'statusText',\n converter: webidl.converters.ByteString,\n defaultValue: () => ''\n },\n {\n key: 'headers',\n converter: webidl.converters.HeadersInit\n }\n])\n\nmodule.exports = {\n isNetworkError,\n makeNetworkError,\n makeResponse,\n makeAppropriateNetworkError,\n filterResponse,\n Response,\n cloneResponse,\n fromInnerResponse\n}\n", "'use strict'\n\nconst { kConnected, kSize } = require('../../core/symbols')\n\nclass CompatWeakRef {\n constructor (value) {\n this.value = value\n }\n\n deref () {\n return this.value[kConnected] === 0 && this.value[kSize] === 0\n ? undefined\n : this.value\n }\n}\n\nclass CompatFinalizer {\n constructor (finalizer) {\n this.finalizer = finalizer\n }\n\n register (dispatcher, key) {\n if (dispatcher.on) {\n dispatcher.on('disconnect', () => {\n if (dispatcher[kConnected] === 0 && dispatcher[kSize] === 0) {\n this.finalizer(key)\n }\n })\n }\n }\n\n unregister (key) {}\n}\n\nmodule.exports = function () {\n // FIXME: remove workaround when the Node bug is backported to v18\n // https://github.com/nodejs/node/issues/49344#issuecomment-1741776308\n if (process.env.NODE_V8_COVERAGE && process.version.startsWith('v18')) {\n process._rawDebug('Using compatibility WeakRef and FinalizationRegistry')\n return {\n WeakRef: CompatWeakRef,\n FinalizationRegistry: CompatFinalizer\n }\n }\n return { WeakRef, FinalizationRegistry }\n}\n", "/* globals AbortController */\n\n'use strict'\n\nconst { extractBody, mixinBody, cloneBody, bodyUnusable } = require('./body')\nconst { Headers, fill: fillHeaders, HeadersList, setHeadersGuard, getHeadersGuard, setHeadersList, getHeadersList } = require('./headers')\nconst { FinalizationRegistry } = require('./dispatcher-weakref')()\nconst util = require('../../core/util')\nconst nodeUtil = require('node:util')\nconst {\n isValidHTTPToken,\n sameOrigin,\n environmentSettingsObject\n} = require('./util')\nconst {\n forbiddenMethodsSet,\n corsSafeListedMethodsSet,\n referrerPolicy,\n requestRedirect,\n requestMode,\n requestCredentials,\n requestCache,\n requestDuplex\n} = require('./constants')\nconst { kEnumerableProperty, normalizedMethodRecordsBase, normalizedMethodRecords } = util\nconst { kHeaders, kSignal, kState, kDispatcher } = require('./symbols')\nconst { webidl } = require('./webidl')\nconst { URLSerializer } = require('./data-url')\nconst { kConstruct } = require('../../core/symbols')\nconst assert = require('node:assert')\nconst { getMaxListeners, setMaxListeners, getEventListeners, defaultMaxListeners } = require('node:events')\n\nconst kAbortController = Symbol('abortController')\n\nconst requestFinalizer = new FinalizationRegistry(({ signal, abort }) => {\n signal.removeEventListener('abort', abort)\n})\n\nconst dependentControllerMap = new WeakMap()\n\nfunction buildAbort (acRef) {\n return abort\n\n function abort () {\n const ac = acRef.deref()\n if (ac !== undefined) {\n // Currently, there is a problem with FinalizationRegistry.\n // https://github.com/nodejs/node/issues/49344\n // https://github.com/nodejs/node/issues/47748\n // In the case of abort, the first step is to unregister from it.\n // If the controller can refer to it, it is still registered.\n // It will be removed in the future.\n requestFinalizer.unregister(abort)\n\n // Unsubscribe a listener.\n // FinalizationRegistry will no longer be called, so this must be done.\n this.removeEventListener('abort', abort)\n\n ac.abort(this.reason)\n\n const controllerList = dependentControllerMap.get(ac.signal)\n\n if (controllerList !== undefined) {\n if (controllerList.size !== 0) {\n for (const ref of controllerList) {\n const ctrl = ref.deref()\n if (ctrl !== undefined) {\n ctrl.abort(this.reason)\n }\n }\n controllerList.clear()\n }\n dependentControllerMap.delete(ac.signal)\n }\n }\n }\n}\n\nlet patchMethodWarning = false\n\n// https://fetch.spec.whatwg.org/#request-class\nclass Request {\n // https://fetch.spec.whatwg.org/#dom-request\n constructor (input, init = {}) {\n webidl.util.markAsUncloneable(this)\n if (input === kConstruct) {\n return\n }\n\n const prefix = 'Request constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n input = webidl.converters.RequestInfo(input, prefix, 'input')\n init = webidl.converters.RequestInit(init, prefix, 'init')\n\n // 1. Let request be null.\n let request = null\n\n // 2. Let fallbackMode be null.\n let fallbackMode = null\n\n // 3. Let baseURL be this\u2019s relevant settings object\u2019s API base URL.\n const baseUrl = environmentSettingsObject.settingsObject.baseUrl\n\n // 4. Let signal be null.\n let signal = null\n\n // 5. If input is a string, then:\n if (typeof input === 'string') {\n this[kDispatcher] = init.dispatcher\n\n // 1. Let parsedURL be the result of parsing input with baseURL.\n // 2. If parsedURL is failure, then throw a TypeError.\n let parsedURL\n try {\n parsedURL = new URL(input, baseUrl)\n } catch (err) {\n throw new TypeError('Failed to parse URL from ' + input, { cause: err })\n }\n\n // 3. If parsedURL includes credentials, then throw a TypeError.\n if (parsedURL.username || parsedURL.password) {\n throw new TypeError(\n 'Request cannot be constructed from a URL that includes credentials: ' +\n input\n )\n }\n\n // 4. Set request to a new request whose URL is parsedURL.\n request = makeRequest({ urlList: [parsedURL] })\n\n // 5. Set fallbackMode to \"cors\".\n fallbackMode = 'cors'\n } else {\n this[kDispatcher] = init.dispatcher || input[kDispatcher]\n\n // 6. Otherwise:\n\n // 7. Assert: input is a Request object.\n assert(input instanceof Request)\n\n // 8. Set request to input\u2019s request.\n request = input[kState]\n\n // 9. Set signal to input\u2019s signal.\n signal = input[kSignal]\n }\n\n // 7. Let origin be this\u2019s relevant settings object\u2019s origin.\n const origin = environmentSettingsObject.settingsObject.origin\n\n // 8. Let window be \"client\".\n let window = 'client'\n\n // 9. If request\u2019s window is an environment settings object and its origin\n // is same origin with origin, then set window to request\u2019s window.\n if (\n request.window?.constructor?.name === 'EnvironmentSettingsObject' &&\n sameOrigin(request.window, origin)\n ) {\n window = request.window\n }\n\n // 10. If init[\"window\"] exists and is non-null, then throw a TypeError.\n if (init.window != null) {\n throw new TypeError(`'window' option '${window}' must be null`)\n }\n\n // 11. If init[\"window\"] exists, then set window to \"no-window\".\n if ('window' in init) {\n window = 'no-window'\n }\n\n // 12. Set request to a new request with the following properties:\n request = makeRequest({\n // URL request\u2019s URL.\n // undici implementation note: this is set as the first item in request's urlList in makeRequest\n // method request\u2019s method.\n method: request.method,\n // header list A copy of request\u2019s header list.\n // undici implementation note: headersList is cloned in makeRequest\n headersList: request.headersList,\n // unsafe-request flag Set.\n unsafeRequest: request.unsafeRequest,\n // client This\u2019s relevant settings object.\n client: environmentSettingsObject.settingsObject,\n // window window.\n window,\n // priority request\u2019s priority.\n priority: request.priority,\n // origin request\u2019s origin. The propagation of the origin is only significant for navigation requests\n // being handled by a service worker. In this scenario a request can have an origin that is different\n // from the current client.\n origin: request.origin,\n // referrer request\u2019s referrer.\n referrer: request.referrer,\n // referrer policy request\u2019s referrer policy.\n referrerPolicy: request.referrerPolicy,\n // mode request\u2019s mode.\n mode: request.mode,\n // credentials mode request\u2019s credentials mode.\n credentials: request.credentials,\n // cache mode request\u2019s cache mode.\n cache: request.cache,\n // redirect mode request\u2019s redirect mode.\n redirect: request.redirect,\n // integrity metadata request\u2019s integrity metadata.\n integrity: request.integrity,\n // keepalive request\u2019s keepalive.\n keepalive: request.keepalive,\n // reload-navigation flag request\u2019s reload-navigation flag.\n reloadNavigation: request.reloadNavigation,\n // history-navigation flag request\u2019s history-navigation flag.\n historyNavigation: request.historyNavigation,\n // URL list A clone of request\u2019s URL list.\n urlList: [...request.urlList]\n })\n\n const initHasKey = Object.keys(init).length !== 0\n\n // 13. If init is not empty, then:\n if (initHasKey) {\n // 1. If request\u2019s mode is \"navigate\", then set it to \"same-origin\".\n if (request.mode === 'navigate') {\n request.mode = 'same-origin'\n }\n\n // 2. Unset request\u2019s reload-navigation flag.\n request.reloadNavigation = false\n\n // 3. Unset request\u2019s history-navigation flag.\n request.historyNavigation = false\n\n // 4. Set request\u2019s origin to \"client\".\n request.origin = 'client'\n\n // 5. Set request\u2019s referrer to \"client\"\n request.referrer = 'client'\n\n // 6. Set request\u2019s referrer policy to the empty string.\n request.referrerPolicy = ''\n\n // 7. Set request\u2019s URL to request\u2019s current URL.\n request.url = request.urlList[request.urlList.length - 1]\n\n // 8. Set request\u2019s URL list to \u00AB request\u2019s URL \u00BB.\n request.urlList = [request.url]\n }\n\n // 14. If init[\"referrer\"] exists, then:\n if (init.referrer !== undefined) {\n // 1. Let referrer be init[\"referrer\"].\n const referrer = init.referrer\n\n // 2. If referrer is the empty string, then set request\u2019s referrer to \"no-referrer\".\n if (referrer === '') {\n request.referrer = 'no-referrer'\n } else {\n // 1. Let parsedReferrer be the result of parsing referrer with\n // baseURL.\n // 2. If parsedReferrer is failure, then throw a TypeError.\n let parsedReferrer\n try {\n parsedReferrer = new URL(referrer, baseUrl)\n } catch (err) {\n throw new TypeError(`Referrer \"${referrer}\" is not a valid URL.`, { cause: err })\n }\n\n // 3. If one of the following is true\n // - parsedReferrer\u2019s scheme is \"about\" and path is the string \"client\"\n // - parsedReferrer\u2019s origin is not same origin with origin\n // then set request\u2019s referrer to \"client\".\n if (\n (parsedReferrer.protocol === 'about:' && parsedReferrer.hostname === 'client') ||\n (origin && !sameOrigin(parsedReferrer, environmentSettingsObject.settingsObject.baseUrl))\n ) {\n request.referrer = 'client'\n } else {\n // 4. Otherwise, set request\u2019s referrer to parsedReferrer.\n request.referrer = parsedReferrer\n }\n }\n }\n\n // 15. If init[\"referrerPolicy\"] exists, then set request\u2019s referrer policy\n // to it.\n if (init.referrerPolicy !== undefined) {\n request.referrerPolicy = init.referrerPolicy\n }\n\n // 16. Let mode be init[\"mode\"] if it exists, and fallbackMode otherwise.\n let mode\n if (init.mode !== undefined) {\n mode = init.mode\n } else {\n mode = fallbackMode\n }\n\n // 17. If mode is \"navigate\", then throw a TypeError.\n if (mode === 'navigate') {\n throw webidl.errors.exception({\n header: 'Request constructor',\n message: 'invalid request mode navigate.'\n })\n }\n\n // 18. If mode is non-null, set request\u2019s mode to mode.\n if (mode != null) {\n request.mode = mode\n }\n\n // 19. If init[\"credentials\"] exists, then set request\u2019s credentials mode\n // to it.\n if (init.credentials !== undefined) {\n request.credentials = init.credentials\n }\n\n // 18. If init[\"cache\"] exists, then set request\u2019s cache mode to it.\n if (init.cache !== undefined) {\n request.cache = init.cache\n }\n\n // 21. If request\u2019s cache mode is \"only-if-cached\" and request\u2019s mode is\n // not \"same-origin\", then throw a TypeError.\n if (request.cache === 'only-if-cached' && request.mode !== 'same-origin') {\n throw new TypeError(\n \"'only-if-cached' can be set only with 'same-origin' mode\"\n )\n }\n\n // 22. If init[\"redirect\"] exists, then set request\u2019s redirect mode to it.\n if (init.redirect !== undefined) {\n request.redirect = init.redirect\n }\n\n // 23. If init[\"integrity\"] exists, then set request\u2019s integrity metadata to it.\n if (init.integrity != null) {\n request.integrity = String(init.integrity)\n }\n\n // 24. If init[\"keepalive\"] exists, then set request\u2019s keepalive to it.\n if (init.keepalive !== undefined) {\n request.keepalive = Boolean(init.keepalive)\n }\n\n // 25. If init[\"method\"] exists, then:\n if (init.method !== undefined) {\n // 1. Let method be init[\"method\"].\n let method = init.method\n\n const mayBeNormalized = normalizedMethodRecords[method]\n\n if (mayBeNormalized !== undefined) {\n // Note: Bypass validation DELETE, GET, HEAD, OPTIONS, POST, PUT, PATCH and these lowercase ones\n request.method = mayBeNormalized\n } else {\n // 2. If method is not a method or method is a forbidden method, then\n // throw a TypeError.\n if (!isValidHTTPToken(method)) {\n throw new TypeError(`'${method}' is not a valid HTTP method.`)\n }\n\n const upperCase = method.toUpperCase()\n\n if (forbiddenMethodsSet.has(upperCase)) {\n throw new TypeError(`'${method}' HTTP method is unsupported.`)\n }\n\n // 3. Normalize method.\n // https://fetch.spec.whatwg.org/#concept-method-normalize\n // Note: must be in uppercase\n method = normalizedMethodRecordsBase[upperCase] ?? method\n\n // 4. Set request\u2019s method to method.\n request.method = method\n }\n\n if (!patchMethodWarning && request.method === 'patch') {\n process.emitWarning('Using `patch` is highly likely to result in a `405 Method Not Allowed`. `PATCH` is much more likely to succeed.', {\n code: 'UNDICI-FETCH-patch'\n })\n\n patchMethodWarning = true\n }\n }\n\n // 26. If init[\"signal\"] exists, then set signal to it.\n if (init.signal !== undefined) {\n signal = init.signal\n }\n\n // 27. Set this\u2019s request to request.\n this[kState] = request\n\n // 28. Set this\u2019s signal to a new AbortSignal object with this\u2019s relevant\n // Realm.\n // TODO: could this be simplified with AbortSignal.any\n // (https://dom.spec.whatwg.org/#dom-abortsignal-any)\n const ac = new AbortController()\n this[kSignal] = ac.signal\n\n // 29. If signal is not null, then make this\u2019s signal follow signal.\n if (signal != null) {\n if (\n !signal ||\n typeof signal.aborted !== 'boolean' ||\n typeof signal.addEventListener !== 'function'\n ) {\n throw new TypeError(\n \"Failed to construct 'Request': member signal is not of type AbortSignal.\"\n )\n }\n\n if (signal.aborted) {\n ac.abort(signal.reason)\n } else {\n // Keep a strong ref to ac while request object\n // is alive. This is needed to prevent AbortController\n // from being prematurely garbage collected.\n // See, https://github.com/nodejs/undici/issues/1926.\n this[kAbortController] = ac\n\n const acRef = new WeakRef(ac)\n const abort = buildAbort(acRef)\n\n // Third-party AbortControllers may not work with these.\n // See, https://github.com/nodejs/undici/pull/1910#issuecomment-1464495619.\n try {\n // If the max amount of listeners is equal to the default, increase it\n // This is only available in node >= v19.9.0\n if (typeof getMaxListeners === 'function' && getMaxListeners(signal) === defaultMaxListeners) {\n setMaxListeners(1500, signal)\n } else if (getEventListeners(signal, 'abort').length >= defaultMaxListeners) {\n setMaxListeners(1500, signal)\n }\n } catch {}\n\n util.addAbortListener(signal, abort)\n // The third argument must be a registry key to be unregistered.\n // Without it, you cannot unregister.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/FinalizationRegistry\n // abort is used as the unregister key. (because it is unique)\n requestFinalizer.register(ac, { signal, abort }, abort)\n }\n }\n\n // 30. Set this\u2019s headers to a new Headers object with this\u2019s relevant\n // Realm, whose header list is request\u2019s header list and guard is\n // \"request\".\n this[kHeaders] = new Headers(kConstruct)\n setHeadersList(this[kHeaders], request.headersList)\n setHeadersGuard(this[kHeaders], 'request')\n\n // 31. If this\u2019s request\u2019s mode is \"no-cors\", then:\n if (mode === 'no-cors') {\n // 1. If this\u2019s request\u2019s method is not a CORS-safelisted method,\n // then throw a TypeError.\n if (!corsSafeListedMethodsSet.has(request.method)) {\n throw new TypeError(\n `'${request.method} is unsupported in no-cors mode.`\n )\n }\n\n // 2. Set this\u2019s headers\u2019s guard to \"request-no-cors\".\n setHeadersGuard(this[kHeaders], 'request-no-cors')\n }\n\n // 32. If init is not empty, then:\n if (initHasKey) {\n /** @type {HeadersList} */\n const headersList = getHeadersList(this[kHeaders])\n // 1. Let headers be a copy of this\u2019s headers and its associated header\n // list.\n // 2. If init[\"headers\"] exists, then set headers to init[\"headers\"].\n const headers = init.headers !== undefined ? init.headers : new HeadersList(headersList)\n\n // 3. Empty this\u2019s headers\u2019s header list.\n headersList.clear()\n\n // 4. If headers is a Headers object, then for each header in its header\n // list, append header\u2019s name/header\u2019s value to this\u2019s headers.\n if (headers instanceof HeadersList) {\n for (const { name, value } of headers.rawValues()) {\n headersList.append(name, value, false)\n }\n // Note: Copy the `set-cookie` meta-data.\n headersList.cookies = headers.cookies\n } else {\n // 5. Otherwise, fill this\u2019s headers with headers.\n fillHeaders(this[kHeaders], headers)\n }\n }\n\n // 33. Let inputBody be input\u2019s request\u2019s body if input is a Request\n // object; otherwise null.\n const inputBody = input instanceof Request ? input[kState].body : null\n\n // 34. If either init[\"body\"] exists and is non-null or inputBody is\n // non-null, and request\u2019s method is `GET` or `HEAD`, then throw a\n // TypeError.\n if (\n (init.body != null || inputBody != null) &&\n (request.method === 'GET' || request.method === 'HEAD')\n ) {\n throw new TypeError('Request with GET/HEAD method cannot have body.')\n }\n\n // 35. Let initBody be null.\n let initBody = null\n\n // 36. If init[\"body\"] exists and is non-null, then:\n if (init.body != null) {\n // 1. Let Content-Type be null.\n // 2. Set initBody and Content-Type to the result of extracting\n // init[\"body\"], with keepalive set to request\u2019s keepalive.\n const [extractedBody, contentType] = extractBody(\n init.body,\n request.keepalive\n )\n initBody = extractedBody\n\n // 3, If Content-Type is non-null and this\u2019s headers\u2019s header list does\n // not contain `Content-Type`, then append `Content-Type`/Content-Type to\n // this\u2019s headers.\n if (contentType && !getHeadersList(this[kHeaders]).contains('content-type', true)) {\n this[kHeaders].append('content-type', contentType)\n }\n }\n\n // 37. Let inputOrInitBody be initBody if it is non-null; otherwise\n // inputBody.\n const inputOrInitBody = initBody ?? inputBody\n\n // 38. If inputOrInitBody is non-null and inputOrInitBody\u2019s source is\n // null, then:\n if (inputOrInitBody != null && inputOrInitBody.source == null) {\n // 1. If initBody is non-null and init[\"duplex\"] does not exist,\n // then throw a TypeError.\n if (initBody != null && init.duplex == null) {\n throw new TypeError('RequestInit: duplex option is required when sending a body.')\n }\n\n // 2. If this\u2019s request\u2019s mode is neither \"same-origin\" nor \"cors\",\n // then throw a TypeError.\n if (request.mode !== 'same-origin' && request.mode !== 'cors') {\n throw new TypeError(\n 'If request is made from ReadableStream, mode should be \"same-origin\" or \"cors\"'\n )\n }\n\n // 3. Set this\u2019s request\u2019s use-CORS-preflight flag.\n request.useCORSPreflightFlag = true\n }\n\n // 39. Let finalBody be inputOrInitBody.\n let finalBody = inputOrInitBody\n\n // 40. If initBody is null and inputBody is non-null, then:\n if (initBody == null && inputBody != null) {\n // 1. If input is unusable, then throw a TypeError.\n if (bodyUnusable(input)) {\n throw new TypeError(\n 'Cannot construct a Request with a Request object that has already been used.'\n )\n }\n\n // 2. Set finalBody to the result of creating a proxy for inputBody.\n // https://streams.spec.whatwg.org/#readablestream-create-a-proxy\n const identityTransform = new TransformStream()\n inputBody.stream.pipeThrough(identityTransform)\n finalBody = {\n source: inputBody.source,\n length: inputBody.length,\n stream: identityTransform.readable\n }\n }\n\n // 41. Set this\u2019s request\u2019s body to finalBody.\n this[kState].body = finalBody\n }\n\n // Returns request\u2019s HTTP method, which is \"GET\" by default.\n get method () {\n webidl.brandCheck(this, Request)\n\n // The method getter steps are to return this\u2019s request\u2019s method.\n return this[kState].method\n }\n\n // Returns the URL of request as a string.\n get url () {\n webidl.brandCheck(this, Request)\n\n // The url getter steps are to return this\u2019s request\u2019s URL, serialized.\n return URLSerializer(this[kState].url)\n }\n\n // Returns a Headers object consisting of the headers associated with request.\n // Note that headers added in the network layer by the user agent will not\n // be accounted for in this object, e.g., the \"Host\" header.\n get headers () {\n webidl.brandCheck(this, Request)\n\n // The headers getter steps are to return this\u2019s headers.\n return this[kHeaders]\n }\n\n // Returns the kind of resource requested by request, e.g., \"document\"\n // or \"script\".\n get destination () {\n webidl.brandCheck(this, Request)\n\n // The destination getter are to return this\u2019s request\u2019s destination.\n return this[kState].destination\n }\n\n // Returns the referrer of request. Its value can be a same-origin URL if\n // explicitly set in init, the empty string to indicate no referrer, and\n // \"about:client\" when defaulting to the global\u2019s default. This is used\n // during fetching to determine the value of the `Referer` header of the\n // request being made.\n get referrer () {\n webidl.brandCheck(this, Request)\n\n // 1. If this\u2019s request\u2019s referrer is \"no-referrer\", then return the\n // empty string.\n if (this[kState].referrer === 'no-referrer') {\n return ''\n }\n\n // 2. If this\u2019s request\u2019s referrer is \"client\", then return\n // \"about:client\".\n if (this[kState].referrer === 'client') {\n return 'about:client'\n }\n\n // Return this\u2019s request\u2019s referrer, serialized.\n return this[kState].referrer.toString()\n }\n\n // Returns the referrer policy associated with request.\n // This is used during fetching to compute the value of the request\u2019s\n // referrer.\n get referrerPolicy () {\n webidl.brandCheck(this, Request)\n\n // The referrerPolicy getter steps are to return this\u2019s request\u2019s referrer policy.\n return this[kState].referrerPolicy\n }\n\n // Returns the mode associated with request, which is a string indicating\n // whether the request will use CORS, or will be restricted to same-origin\n // URLs.\n get mode () {\n webidl.brandCheck(this, Request)\n\n // The mode getter steps are to return this\u2019s request\u2019s mode.\n return this[kState].mode\n }\n\n // Returns the credentials mode associated with request,\n // which is a string indicating whether credentials will be sent with the\n // request always, never, or only when sent to a same-origin URL.\n get credentials () {\n // The credentials getter steps are to return this\u2019s request\u2019s credentials mode.\n return this[kState].credentials\n }\n\n // Returns the cache mode associated with request,\n // which is a string indicating how the request will\n // interact with the browser\u2019s cache when fetching.\n get cache () {\n webidl.brandCheck(this, Request)\n\n // The cache getter steps are to return this\u2019s request\u2019s cache mode.\n return this[kState].cache\n }\n\n // Returns the redirect mode associated with request,\n // which is a string indicating how redirects for the\n // request will be handled during fetching. A request\n // will follow redirects by default.\n get redirect () {\n webidl.brandCheck(this, Request)\n\n // The redirect getter steps are to return this\u2019s request\u2019s redirect mode.\n return this[kState].redirect\n }\n\n // Returns request\u2019s subresource integrity metadata, which is a\n // cryptographic hash of the resource being fetched. Its value\n // consists of multiple hashes separated by whitespace. [SRI]\n get integrity () {\n webidl.brandCheck(this, Request)\n\n // The integrity getter steps are to return this\u2019s request\u2019s integrity\n // metadata.\n return this[kState].integrity\n }\n\n // Returns a boolean indicating whether or not request can outlive the\n // global in which it was created.\n get keepalive () {\n webidl.brandCheck(this, Request)\n\n // The keepalive getter steps are to return this\u2019s request\u2019s keepalive.\n return this[kState].keepalive\n }\n\n // Returns a boolean indicating whether or not request is for a reload\n // navigation.\n get isReloadNavigation () {\n webidl.brandCheck(this, Request)\n\n // The isReloadNavigation getter steps are to return true if this\u2019s\n // request\u2019s reload-navigation flag is set; otherwise false.\n return this[kState].reloadNavigation\n }\n\n // Returns a boolean indicating whether or not request is for a history\n // navigation (a.k.a. back-forward navigation).\n get isHistoryNavigation () {\n webidl.brandCheck(this, Request)\n\n // The isHistoryNavigation getter steps are to return true if this\u2019s request\u2019s\n // history-navigation flag is set; otherwise false.\n return this[kState].historyNavigation\n }\n\n // Returns the signal associated with request, which is an AbortSignal\n // object indicating whether or not request has been aborted, and its\n // abort event handler.\n get signal () {\n webidl.brandCheck(this, Request)\n\n // The signal getter steps are to return this\u2019s signal.\n return this[kSignal]\n }\n\n get body () {\n webidl.brandCheck(this, Request)\n\n return this[kState].body ? this[kState].body.stream : null\n }\n\n get bodyUsed () {\n webidl.brandCheck(this, Request)\n\n return !!this[kState].body && util.isDisturbed(this[kState].body.stream)\n }\n\n get duplex () {\n webidl.brandCheck(this, Request)\n\n return 'half'\n }\n\n // Returns a clone of request.\n clone () {\n webidl.brandCheck(this, Request)\n\n // 1. If this is unusable, then throw a TypeError.\n if (bodyUnusable(this)) {\n throw new TypeError('unusable')\n }\n\n // 2. Let clonedRequest be the result of cloning this\u2019s request.\n const clonedRequest = cloneRequest(this[kState])\n\n // 3. Let clonedRequestObject be the result of creating a Request object,\n // given clonedRequest, this\u2019s headers\u2019s guard, and this\u2019s relevant Realm.\n // 4. Make clonedRequestObject\u2019s signal follow this\u2019s signal.\n const ac = new AbortController()\n if (this.signal.aborted) {\n ac.abort(this.signal.reason)\n } else {\n let list = dependentControllerMap.get(this.signal)\n if (list === undefined) {\n list = new Set()\n dependentControllerMap.set(this.signal, list)\n }\n const acRef = new WeakRef(ac)\n list.add(acRef)\n util.addAbortListener(\n ac.signal,\n buildAbort(acRef)\n )\n }\n\n // 4. Return clonedRequestObject.\n return fromInnerRequest(clonedRequest, ac.signal, getHeadersGuard(this[kHeaders]))\n }\n\n [nodeUtil.inspect.custom] (depth, options) {\n if (options.depth === null) {\n options.depth = 2\n }\n\n options.colors ??= true\n\n const properties = {\n method: this.method,\n url: this.url,\n headers: this.headers,\n destination: this.destination,\n referrer: this.referrer,\n referrerPolicy: this.referrerPolicy,\n mode: this.mode,\n credentials: this.credentials,\n cache: this.cache,\n redirect: this.redirect,\n integrity: this.integrity,\n keepalive: this.keepalive,\n isReloadNavigation: this.isReloadNavigation,\n isHistoryNavigation: this.isHistoryNavigation,\n signal: this.signal\n }\n\n return `Request ${nodeUtil.formatWithOptions(options, properties)}`\n }\n}\n\nmixinBody(Request)\n\n// https://fetch.spec.whatwg.org/#requests\nfunction makeRequest (init) {\n return {\n method: init.method ?? 'GET',\n localURLsOnly: init.localURLsOnly ?? false,\n unsafeRequest: init.unsafeRequest ?? false,\n body: init.body ?? null,\n client: init.client ?? null,\n reservedClient: init.reservedClient ?? null,\n replacesClientId: init.replacesClientId ?? '',\n window: init.window ?? 'client',\n keepalive: init.keepalive ?? false,\n serviceWorkers: init.serviceWorkers ?? 'all',\n initiator: init.initiator ?? '',\n destination: init.destination ?? '',\n priority: init.priority ?? null,\n origin: init.origin ?? 'client',\n policyContainer: init.policyContainer ?? 'client',\n referrer: init.referrer ?? 'client',\n referrerPolicy: init.referrerPolicy ?? '',\n mode: init.mode ?? 'no-cors',\n useCORSPreflightFlag: init.useCORSPreflightFlag ?? false,\n credentials: init.credentials ?? 'same-origin',\n useCredentials: init.useCredentials ?? false,\n cache: init.cache ?? 'default',\n redirect: init.redirect ?? 'follow',\n integrity: init.integrity ?? '',\n cryptoGraphicsNonceMetadata: init.cryptoGraphicsNonceMetadata ?? '',\n parserMetadata: init.parserMetadata ?? '',\n reloadNavigation: init.reloadNavigation ?? false,\n historyNavigation: init.historyNavigation ?? false,\n userActivation: init.userActivation ?? false,\n taintedOrigin: init.taintedOrigin ?? false,\n redirectCount: init.redirectCount ?? 0,\n responseTainting: init.responseTainting ?? 'basic',\n preventNoCacheCacheControlHeaderModification: init.preventNoCacheCacheControlHeaderModification ?? false,\n done: init.done ?? false,\n timingAllowFailed: init.timingAllowFailed ?? false,\n urlList: init.urlList,\n url: init.urlList[0],\n headersList: init.headersList\n ? new HeadersList(init.headersList)\n : new HeadersList()\n }\n}\n\n// https://fetch.spec.whatwg.org/#concept-request-clone\nfunction cloneRequest (request) {\n // To clone a request request, run these steps:\n\n // 1. Let newRequest be a copy of request, except for its body.\n const newRequest = makeRequest({ ...request, body: null })\n\n // 2. If request\u2019s body is non-null, set newRequest\u2019s body to the\n // result of cloning request\u2019s body.\n if (request.body != null) {\n newRequest.body = cloneBody(newRequest, request.body)\n }\n\n // 3. Return newRequest.\n return newRequest\n}\n\n/**\n * @see https://fetch.spec.whatwg.org/#request-create\n * @param {any} innerRequest\n * @param {AbortSignal} signal\n * @param {'request' | 'immutable' | 'request-no-cors' | 'response' | 'none'} guard\n * @returns {Request}\n */\nfunction fromInnerRequest (innerRequest, signal, guard) {\n const request = new Request(kConstruct)\n request[kState] = innerRequest\n request[kSignal] = signal\n request[kHeaders] = new Headers(kConstruct)\n setHeadersList(request[kHeaders], innerRequest.headersList)\n setHeadersGuard(request[kHeaders], guard)\n return request\n}\n\nObject.defineProperties(Request.prototype, {\n method: kEnumerableProperty,\n url: kEnumerableProperty,\n headers: kEnumerableProperty,\n redirect: kEnumerableProperty,\n clone: kEnumerableProperty,\n signal: kEnumerableProperty,\n duplex: kEnumerableProperty,\n destination: kEnumerableProperty,\n body: kEnumerableProperty,\n bodyUsed: kEnumerableProperty,\n isHistoryNavigation: kEnumerableProperty,\n isReloadNavigation: kEnumerableProperty,\n keepalive: kEnumerableProperty,\n integrity: kEnumerableProperty,\n cache: kEnumerableProperty,\n credentials: kEnumerableProperty,\n attribute: kEnumerableProperty,\n referrerPolicy: kEnumerableProperty,\n referrer: kEnumerableProperty,\n mode: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'Request',\n configurable: true\n }\n})\n\nwebidl.converters.Request = webidl.interfaceConverter(\n Request\n)\n\n// https://fetch.spec.whatwg.org/#requestinfo\nwebidl.converters.RequestInfo = function (V, prefix, argument) {\n if (typeof V === 'string') {\n return webidl.converters.USVString(V, prefix, argument)\n }\n\n if (V instanceof Request) {\n return webidl.converters.Request(V, prefix, argument)\n }\n\n return webidl.converters.USVString(V, prefix, argument)\n}\n\nwebidl.converters.AbortSignal = webidl.interfaceConverter(\n AbortSignal\n)\n\n// https://fetch.spec.whatwg.org/#requestinit\nwebidl.converters.RequestInit = webidl.dictionaryConverter([\n {\n key: 'method',\n converter: webidl.converters.ByteString\n },\n {\n key: 'headers',\n converter: webidl.converters.HeadersInit\n },\n {\n key: 'body',\n converter: webidl.nullableConverter(\n webidl.converters.BodyInit\n )\n },\n {\n key: 'referrer',\n converter: webidl.converters.USVString\n },\n {\n key: 'referrerPolicy',\n converter: webidl.converters.DOMString,\n // https://w3c.github.io/webappsec-referrer-policy/#referrer-policy\n allowedValues: referrerPolicy\n },\n {\n key: 'mode',\n converter: webidl.converters.DOMString,\n // https://fetch.spec.whatwg.org/#concept-request-mode\n allowedValues: requestMode\n },\n {\n key: 'credentials',\n converter: webidl.converters.DOMString,\n // https://fetch.spec.whatwg.org/#requestcredentials\n allowedValues: requestCredentials\n },\n {\n key: 'cache',\n converter: webidl.converters.DOMString,\n // https://fetch.spec.whatwg.org/#requestcache\n allowedValues: requestCache\n },\n {\n key: 'redirect',\n converter: webidl.converters.DOMString,\n // https://fetch.spec.whatwg.org/#requestredirect\n allowedValues: requestRedirect\n },\n {\n key: 'integrity',\n converter: webidl.converters.DOMString\n },\n {\n key: 'keepalive',\n converter: webidl.converters.boolean\n },\n {\n key: 'signal',\n converter: webidl.nullableConverter(\n (signal) => webidl.converters.AbortSignal(\n signal,\n 'RequestInit',\n 'signal',\n { strict: false }\n )\n )\n },\n {\n key: 'window',\n converter: webidl.converters.any\n },\n {\n key: 'duplex',\n converter: webidl.converters.DOMString,\n allowedValues: requestDuplex\n },\n {\n key: 'dispatcher', // undici specific option\n converter: webidl.converters.any\n }\n])\n\nmodule.exports = { Request, makeRequest, fromInnerRequest, cloneRequest }\n", "// https://github.com/Ethan-Arrowood/undici-fetch\n\n'use strict'\n\nconst {\n makeNetworkError,\n makeAppropriateNetworkError,\n filterResponse,\n makeResponse,\n fromInnerResponse\n} = require('./response')\nconst { HeadersList } = require('./headers')\nconst { Request, cloneRequest } = require('./request')\nconst zlib = require('node:zlib')\nconst {\n bytesMatch,\n makePolicyContainer,\n clonePolicyContainer,\n requestBadPort,\n TAOCheck,\n appendRequestOriginHeader,\n responseLocationURL,\n requestCurrentURL,\n setRequestReferrerPolicyOnRedirect,\n tryUpgradeRequestToAPotentiallyTrustworthyURL,\n createOpaqueTimingInfo,\n appendFetchMetadata,\n corsCheck,\n crossOriginResourcePolicyCheck,\n determineRequestsReferrer,\n coarsenedSharedCurrentTime,\n createDeferredPromise,\n isBlobLike,\n sameOrigin,\n isCancelled,\n isAborted,\n isErrorLike,\n fullyReadBody,\n readableStreamClose,\n isomorphicEncode,\n urlIsLocal,\n urlIsHttpHttpsScheme,\n urlHasHttpsScheme,\n clampAndCoarsenConnectionTimingInfo,\n simpleRangeHeaderValue,\n buildContentRange,\n createInflate,\n extractMimeType\n} = require('./util')\nconst { kState, kDispatcher } = require('./symbols')\nconst assert = require('node:assert')\nconst { safelyExtractBody, extractBody } = require('./body')\nconst {\n redirectStatusSet,\n nullBodyStatus,\n safeMethodsSet,\n requestBodyHeader,\n subresourceSet\n} = require('./constants')\nconst EE = require('node:events')\nconst { Readable, pipeline, finished } = require('node:stream')\nconst { addAbortListener, isErrored, isReadable, bufferToLowerCasedHeaderName } = require('../../core/util')\nconst { dataURLProcessor, serializeAMimeType, minimizeSupportedMimeType } = require('./data-url')\nconst { getGlobalDispatcher } = require('../../global')\nconst { webidl } = require('./webidl')\nconst { STATUS_CODES } = require('node:http')\nconst GET_OR_HEAD = ['GET', 'HEAD']\n\nconst defaultUserAgent = typeof __UNDICI_IS_NODE__ !== 'undefined' || typeof esbuildDetection !== 'undefined'\n ? 'node'\n : 'undici'\n\n/** @type {import('buffer').resolveObjectURL} */\nlet resolveObjectURL\n\nclass Fetch extends EE {\n constructor (dispatcher) {\n super()\n\n this.dispatcher = dispatcher\n this.connection = null\n this.dump = false\n this.state = 'ongoing'\n }\n\n terminate (reason) {\n if (this.state !== 'ongoing') {\n return\n }\n\n this.state = 'terminated'\n this.connection?.destroy(reason)\n this.emit('terminated', reason)\n }\n\n // https://fetch.spec.whatwg.org/#fetch-controller-abort\n abort (error) {\n if (this.state !== 'ongoing') {\n return\n }\n\n // 1. Set controller\u2019s state to \"aborted\".\n this.state = 'aborted'\n\n // 2. Let fallbackError be an \"AbortError\" DOMException.\n // 3. Set error to fallbackError if it is not given.\n if (!error) {\n error = new DOMException('The operation was aborted.', 'AbortError')\n }\n\n // 4. Let serializedError be StructuredSerialize(error).\n // If that threw an exception, catch it, and let\n // serializedError be StructuredSerialize(fallbackError).\n\n // 5. Set controller\u2019s serialized abort reason to serializedError.\n this.serializedAbortReason = error\n\n this.connection?.destroy(error)\n this.emit('terminated', error)\n }\n}\n\nfunction handleFetchDone (response) {\n finalizeAndReportTiming(response, 'fetch')\n}\n\n// https://fetch.spec.whatwg.org/#fetch-method\nfunction fetch (input, init = undefined) {\n webidl.argumentLengthCheck(arguments, 1, 'globalThis.fetch')\n\n // 1. Let p be a new promise.\n let p = createDeferredPromise()\n\n // 2. Let requestObject be the result of invoking the initial value of\n // Request as constructor with input and init as arguments. If this throws\n // an exception, reject p with it and return p.\n let requestObject\n\n try {\n requestObject = new Request(input, init)\n } catch (e) {\n p.reject(e)\n return p.promise\n }\n\n // 3. Let request be requestObject\u2019s request.\n const request = requestObject[kState]\n\n // 4. If requestObject\u2019s signal\u2019s aborted flag is set, then:\n if (requestObject.signal.aborted) {\n // 1. Abort the fetch() call with p, request, null, and\n // requestObject\u2019s signal\u2019s abort reason.\n abortFetch(p, request, null, requestObject.signal.reason)\n\n // 2. Return p.\n return p.promise\n }\n\n // 5. Let globalObject be request\u2019s client\u2019s global object.\n const globalObject = request.client.globalObject\n\n // 6. If globalObject is a ServiceWorkerGlobalScope object, then set\n // request\u2019s service-workers mode to \"none\".\n if (globalObject?.constructor?.name === 'ServiceWorkerGlobalScope') {\n request.serviceWorkers = 'none'\n }\n\n // 7. Let responseObject be null.\n let responseObject = null\n\n // 8. Let relevantRealm be this\u2019s relevant Realm.\n\n // 9. Let locallyAborted be false.\n let locallyAborted = false\n\n // 10. Let controller be null.\n let controller = null\n\n // 11. Add the following abort steps to requestObject\u2019s signal:\n addAbortListener(\n requestObject.signal,\n () => {\n // 1. Set locallyAborted to true.\n locallyAborted = true\n\n // 2. Assert: controller is non-null.\n assert(controller != null)\n\n // 3. Abort controller with requestObject\u2019s signal\u2019s abort reason.\n controller.abort(requestObject.signal.reason)\n\n const realResponse = responseObject?.deref()\n\n // 4. Abort the fetch() call with p, request, responseObject,\n // and requestObject\u2019s signal\u2019s abort reason.\n abortFetch(p, request, realResponse, requestObject.signal.reason)\n }\n )\n\n // 12. Let handleFetchDone given response response be to finalize and\n // report timing with response, globalObject, and \"fetch\".\n // see function handleFetchDone\n\n // 13. Set controller to the result of calling fetch given request,\n // with processResponseEndOfBody set to handleFetchDone, and processResponse\n // given response being these substeps:\n\n const processResponse = (response) => {\n // 1. If locallyAborted is true, terminate these substeps.\n if (locallyAborted) {\n return\n }\n\n // 2. If response\u2019s aborted flag is set, then:\n if (response.aborted) {\n // 1. Let deserializedError be the result of deserialize a serialized\n // abort reason given controller\u2019s serialized abort reason and\n // relevantRealm.\n\n // 2. Abort the fetch() call with p, request, responseObject, and\n // deserializedError.\n\n abortFetch(p, request, responseObject, controller.serializedAbortReason)\n return\n }\n\n // 3. If response is a network error, then reject p with a TypeError\n // and terminate these substeps.\n if (response.type === 'error') {\n p.reject(new TypeError('fetch failed', { cause: response.error }))\n return\n }\n\n // 4. Set responseObject to the result of creating a Response object,\n // given response, \"immutable\", and relevantRealm.\n responseObject = new WeakRef(fromInnerResponse(response, 'immutable'))\n\n // 5. Resolve p with responseObject.\n p.resolve(responseObject.deref())\n p = null\n }\n\n controller = fetching({\n request,\n processResponseEndOfBody: handleFetchDone,\n processResponse,\n dispatcher: requestObject[kDispatcher] // undici\n })\n\n // 14. Return p.\n return p.promise\n}\n\n// https://fetch.spec.whatwg.org/#finalize-and-report-timing\nfunction finalizeAndReportTiming (response, initiatorType = 'other') {\n // 1. If response is an aborted network error, then return.\n if (response.type === 'error' && response.aborted) {\n return\n }\n\n // 2. If response\u2019s URL list is null or empty, then return.\n if (!response.urlList?.length) {\n return\n }\n\n // 3. Let originalURL be response\u2019s URL list[0].\n const originalURL = response.urlList[0]\n\n // 4. Let timingInfo be response\u2019s timing info.\n let timingInfo = response.timingInfo\n\n // 5. Let cacheState be response\u2019s cache state.\n let cacheState = response.cacheState\n\n // 6. If originalURL\u2019s scheme is not an HTTP(S) scheme, then return.\n if (!urlIsHttpHttpsScheme(originalURL)) {\n return\n }\n\n // 7. If timingInfo is null, then return.\n if (timingInfo === null) {\n return\n }\n\n // 8. If response\u2019s timing allow passed flag is not set, then:\n if (!response.timingAllowPassed) {\n // 1. Set timingInfo to a the result of creating an opaque timing info for timingInfo.\n timingInfo = createOpaqueTimingInfo({\n startTime: timingInfo.startTime\n })\n\n // 2. Set cacheState to the empty string.\n cacheState = ''\n }\n\n // 9. Set timingInfo\u2019s end time to the coarsened shared current time\n // given global\u2019s relevant settings object\u2019s cross-origin isolated\n // capability.\n // TODO: given global\u2019s relevant settings object\u2019s cross-origin isolated\n // capability?\n timingInfo.endTime = coarsenedSharedCurrentTime()\n\n // 10. Set response\u2019s timing info to timingInfo.\n response.timingInfo = timingInfo\n\n // 11. Mark resource timing for timingInfo, originalURL, initiatorType,\n // global, and cacheState.\n markResourceTiming(\n timingInfo,\n originalURL.href,\n initiatorType,\n globalThis,\n cacheState\n )\n}\n\n// https://w3c.github.io/resource-timing/#dfn-mark-resource-timing\nconst markResourceTiming = performance.markResourceTiming\n\n// https://fetch.spec.whatwg.org/#abort-fetch\nfunction abortFetch (p, request, responseObject, error) {\n // 1. Reject promise with error.\n if (p) {\n // We might have already resolved the promise at this stage\n p.reject(error)\n }\n\n // 2. If request\u2019s body is not null and is readable, then cancel request\u2019s\n // body with error.\n if (request.body != null && isReadable(request.body?.stream)) {\n request.body.stream.cancel(error).catch((err) => {\n if (err.code === 'ERR_INVALID_STATE') {\n // Node bug?\n return\n }\n throw err\n })\n }\n\n // 3. If responseObject is null, then return.\n if (responseObject == null) {\n return\n }\n\n // 4. Let response be responseObject\u2019s response.\n const response = responseObject[kState]\n\n // 5. If response\u2019s body is not null and is readable, then error response\u2019s\n // body with error.\n if (response.body != null && isReadable(response.body?.stream)) {\n response.body.stream.cancel(error).catch((err) => {\n if (err.code === 'ERR_INVALID_STATE') {\n // Node bug?\n return\n }\n throw err\n })\n }\n}\n\n// https://fetch.spec.whatwg.org/#fetching\nfunction fetching ({\n request,\n processRequestBodyChunkLength,\n processRequestEndOfBody,\n processResponse,\n processResponseEndOfBody,\n processResponseConsumeBody,\n useParallelQueue = false,\n dispatcher = getGlobalDispatcher() // undici\n}) {\n // Ensure that the dispatcher is set accordingly\n assert(dispatcher)\n\n // 1. Let taskDestination be null.\n let taskDestination = null\n\n // 2. Let crossOriginIsolatedCapability be false.\n let crossOriginIsolatedCapability = false\n\n // 3. If request\u2019s client is non-null, then:\n if (request.client != null) {\n // 1. Set taskDestination to request\u2019s client\u2019s global object.\n taskDestination = request.client.globalObject\n\n // 2. Set crossOriginIsolatedCapability to request\u2019s client\u2019s cross-origin\n // isolated capability.\n crossOriginIsolatedCapability =\n request.client.crossOriginIsolatedCapability\n }\n\n // 4. If useParallelQueue is true, then set taskDestination to the result of\n // starting a new parallel queue.\n // TODO\n\n // 5. Let timingInfo be a new fetch timing info whose start time and\n // post-redirect start time are the coarsened shared current time given\n // crossOriginIsolatedCapability.\n const currentTime = coarsenedSharedCurrentTime(crossOriginIsolatedCapability)\n const timingInfo = createOpaqueTimingInfo({\n startTime: currentTime\n })\n\n // 6. Let fetchParams be a new fetch params whose\n // request is request,\n // timing info is timingInfo,\n // process request body chunk length is processRequestBodyChunkLength,\n // process request end-of-body is processRequestEndOfBody,\n // process response is processResponse,\n // process response consume body is processResponseConsumeBody,\n // process response end-of-body is processResponseEndOfBody,\n // task destination is taskDestination,\n // and cross-origin isolated capability is crossOriginIsolatedCapability.\n const fetchParams = {\n controller: new Fetch(dispatcher),\n request,\n timingInfo,\n processRequestBodyChunkLength,\n processRequestEndOfBody,\n processResponse,\n processResponseConsumeBody,\n processResponseEndOfBody,\n taskDestination,\n crossOriginIsolatedCapability\n }\n\n // 7. If request\u2019s body is a byte sequence, then set request\u2019s body to\n // request\u2019s body as a body.\n // NOTE: Since fetching is only called from fetch, body should already be\n // extracted.\n assert(!request.body || request.body.stream)\n\n // 8. If request\u2019s window is \"client\", then set request\u2019s window to request\u2019s\n // client, if request\u2019s client\u2019s global object is a Window object; otherwise\n // \"no-window\".\n if (request.window === 'client') {\n // TODO: What if request.client is null?\n request.window =\n request.client?.globalObject?.constructor?.name === 'Window'\n ? request.client\n : 'no-window'\n }\n\n // 9. If request\u2019s origin is \"client\", then set request\u2019s origin to request\u2019s\n // client\u2019s origin.\n if (request.origin === 'client') {\n request.origin = request.client.origin\n }\n\n // 10. If all of the following conditions are true:\n // TODO\n\n // 11. If request\u2019s policy container is \"client\", then:\n if (request.policyContainer === 'client') {\n // 1. If request\u2019s client is non-null, then set request\u2019s policy\n // container to a clone of request\u2019s client\u2019s policy container. [HTML]\n if (request.client != null) {\n request.policyContainer = clonePolicyContainer(\n request.client.policyContainer\n )\n } else {\n // 2. Otherwise, set request\u2019s policy container to a new policy\n // container.\n request.policyContainer = makePolicyContainer()\n }\n }\n\n // 12. If request\u2019s header list does not contain `Accept`, then:\n if (!request.headersList.contains('accept', true)) {\n // 1. Let value be `*/*`.\n const value = '*/*'\n\n // 2. A user agent should set value to the first matching statement, if\n // any, switching on request\u2019s destination:\n // \"document\"\n // \"frame\"\n // \"iframe\"\n // `text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8`\n // \"image\"\n // `image/png,image/svg+xml,image/*;q=0.8,*/*;q=0.5`\n // \"style\"\n // `text/css,*/*;q=0.1`\n // TODO\n\n // 3. Append `Accept`/value to request\u2019s header list.\n request.headersList.append('accept', value, true)\n }\n\n // 13. If request\u2019s header list does not contain `Accept-Language`, then\n // user agents should append `Accept-Language`/an appropriate value to\n // request\u2019s header list.\n if (!request.headersList.contains('accept-language', true)) {\n request.headersList.append('accept-language', '*', true)\n }\n\n // 14. If request\u2019s priority is null, then use request\u2019s initiator and\n // destination appropriately in setting request\u2019s priority to a\n // user-agent-defined object.\n if (request.priority === null) {\n // TODO\n }\n\n // 15. If request is a subresource request, then:\n if (subresourceSet.has(request.destination)) {\n // TODO\n }\n\n // 16. Run main fetch given fetchParams.\n mainFetch(fetchParams)\n .catch(err => {\n fetchParams.controller.terminate(err)\n })\n\n // 17. Return fetchParam's controller\n return fetchParams.controller\n}\n\n// https://fetch.spec.whatwg.org/#concept-main-fetch\nasync function mainFetch (fetchParams, recursive = false) {\n // 1. Let request be fetchParams\u2019s request.\n const request = fetchParams.request\n\n // 2. Let response be null.\n let response = null\n\n // 3. If request\u2019s local-URLs-only flag is set and request\u2019s current URL is\n // not local, then set response to a network error.\n if (request.localURLsOnly && !urlIsLocal(requestCurrentURL(request))) {\n response = makeNetworkError('local URLs only')\n }\n\n // 4. Run report Content Security Policy violations for request.\n // TODO\n\n // 5. Upgrade request to a potentially trustworthy URL, if appropriate.\n tryUpgradeRequestToAPotentiallyTrustworthyURL(request)\n\n // 6. If should request be blocked due to a bad port, should fetching request\n // be blocked as mixed content, or should request be blocked by Content\n // Security Policy returns blocked, then set response to a network error.\n if (requestBadPort(request) === 'blocked') {\n response = makeNetworkError('bad port')\n }\n // TODO: should fetching request be blocked as mixed content?\n // TODO: should request be blocked by Content Security Policy?\n\n // 7. If request\u2019s referrer policy is the empty string, then set request\u2019s\n // referrer policy to request\u2019s policy container\u2019s referrer policy.\n if (request.referrerPolicy === '') {\n request.referrerPolicy = request.policyContainer.referrerPolicy\n }\n\n // 8. If request\u2019s referrer is not \"no-referrer\", then set request\u2019s\n // referrer to the result of invoking determine request\u2019s referrer.\n if (request.referrer !== 'no-referrer') {\n request.referrer = determineRequestsReferrer(request)\n }\n\n // 9. Set request\u2019s current URL\u2019s scheme to \"https\" if all of the following\n // conditions are true:\n // - request\u2019s current URL\u2019s scheme is \"http\"\n // - request\u2019s current URL\u2019s host is a domain\n // - Matching request\u2019s current URL\u2019s host per Known HSTS Host Domain Name\n // Matching results in either a superdomain match with an asserted\n // includeSubDomains directive or a congruent match (with or without an\n // asserted includeSubDomains directive). [HSTS]\n // TODO\n\n // 10. If recursive is false, then run the remaining steps in parallel.\n // TODO\n\n // 11. If response is null, then set response to the result of running\n // the steps corresponding to the first matching statement:\n if (response === null) {\n response = await (async () => {\n const currentURL = requestCurrentURL(request)\n\n if (\n // - request\u2019s current URL\u2019s origin is same origin with request\u2019s origin,\n // and request\u2019s response tainting is \"basic\"\n (sameOrigin(currentURL, request.url) && request.responseTainting === 'basic') ||\n // request\u2019s current URL\u2019s scheme is \"data\"\n (currentURL.protocol === 'data:') ||\n // - request\u2019s mode is \"navigate\" or \"websocket\"\n (request.mode === 'navigate' || request.mode === 'websocket')\n ) {\n // 1. Set request\u2019s response tainting to \"basic\".\n request.responseTainting = 'basic'\n\n // 2. Return the result of running scheme fetch given fetchParams.\n return await schemeFetch(fetchParams)\n }\n\n // request\u2019s mode is \"same-origin\"\n if (request.mode === 'same-origin') {\n // 1. Return a network error.\n return makeNetworkError('request mode cannot be \"same-origin\"')\n }\n\n // request\u2019s mode is \"no-cors\"\n if (request.mode === 'no-cors') {\n // 1. If request\u2019s redirect mode is not \"follow\", then return a network\n // error.\n if (request.redirect !== 'follow') {\n return makeNetworkError(\n 'redirect mode cannot be \"follow\" for \"no-cors\" request'\n )\n }\n\n // 2. Set request\u2019s response tainting to \"opaque\".\n request.responseTainting = 'opaque'\n\n // 3. Return the result of running scheme fetch given fetchParams.\n return await schemeFetch(fetchParams)\n }\n\n // request\u2019s current URL\u2019s scheme is not an HTTP(S) scheme\n if (!urlIsHttpHttpsScheme(requestCurrentURL(request))) {\n // Return a network error.\n return makeNetworkError('URL scheme must be a HTTP(S) scheme')\n }\n\n // - request\u2019s use-CORS-preflight flag is set\n // - request\u2019s unsafe-request flag is set and either request\u2019s method is\n // not a CORS-safelisted method or CORS-unsafe request-header names with\n // request\u2019s header list is not empty\n // 1. Set request\u2019s response tainting to \"cors\".\n // 2. Let corsWithPreflightResponse be the result of running HTTP fetch\n // given fetchParams and true.\n // 3. If corsWithPreflightResponse is a network error, then clear cache\n // entries using request.\n // 4. Return corsWithPreflightResponse.\n // TODO\n\n // Otherwise\n // 1. Set request\u2019s response tainting to \"cors\".\n request.responseTainting = 'cors'\n\n // 2. Return the result of running HTTP fetch given fetchParams.\n return await httpFetch(fetchParams)\n })()\n }\n\n // 12. If recursive is true, then return response.\n if (recursive) {\n return response\n }\n\n // 13. If response is not a network error and response is not a filtered\n // response, then:\n if (response.status !== 0 && !response.internalResponse) {\n // If request\u2019s response tainting is \"cors\", then:\n if (request.responseTainting === 'cors') {\n // 1. Let headerNames be the result of extracting header list values\n // given `Access-Control-Expose-Headers` and response\u2019s header list.\n // TODO\n // 2. If request\u2019s credentials mode is not \"include\" and headerNames\n // contains `*`, then set response\u2019s CORS-exposed header-name list to\n // all unique header names in response\u2019s header list.\n // TODO\n // 3. Otherwise, if headerNames is not null or failure, then set\n // response\u2019s CORS-exposed header-name list to headerNames.\n // TODO\n }\n\n // Set response to the following filtered response with response as its\n // internal response, depending on request\u2019s response tainting:\n if (request.responseTainting === 'basic') {\n response = filterResponse(response, 'basic')\n } else if (request.responseTainting === 'cors') {\n response = filterResponse(response, 'cors')\n } else if (request.responseTainting === 'opaque') {\n response = filterResponse(response, 'opaque')\n } else {\n assert(false)\n }\n }\n\n // 14. Let internalResponse be response, if response is a network error,\n // and response\u2019s internal response otherwise.\n let internalResponse =\n response.status === 0 ? response : response.internalResponse\n\n // 15. If internalResponse\u2019s URL list is empty, then set it to a clone of\n // request\u2019s URL list.\n if (internalResponse.urlList.length === 0) {\n internalResponse.urlList.push(...request.urlList)\n }\n\n // 16. If request\u2019s timing allow failed flag is unset, then set\n // internalResponse\u2019s timing allow passed flag.\n if (!request.timingAllowFailed) {\n response.timingAllowPassed = true\n }\n\n // 17. If response is not a network error and any of the following returns\n // blocked\n // - should internalResponse to request be blocked as mixed content\n // - should internalResponse to request be blocked by Content Security Policy\n // - should internalResponse to request be blocked due to its MIME type\n // - should internalResponse to request be blocked due to nosniff\n // TODO\n\n // 18. If response\u2019s type is \"opaque\", internalResponse\u2019s status is 206,\n // internalResponse\u2019s range-requested flag is set, and request\u2019s header\n // list does not contain `Range`, then set response and internalResponse\n // to a network error.\n if (\n response.type === 'opaque' &&\n internalResponse.status === 206 &&\n internalResponse.rangeRequested &&\n !request.headers.contains('range', true)\n ) {\n response = internalResponse = makeNetworkError()\n }\n\n // 19. If response is not a network error and either request\u2019s method is\n // `HEAD` or `CONNECT`, or internalResponse\u2019s status is a null body status,\n // set internalResponse\u2019s body to null and disregard any enqueuing toward\n // it (if any).\n if (\n response.status !== 0 &&\n (request.method === 'HEAD' ||\n request.method === 'CONNECT' ||\n nullBodyStatus.includes(internalResponse.status))\n ) {\n internalResponse.body = null\n fetchParams.controller.dump = true\n }\n\n // 20. If request\u2019s integrity metadata is not the empty string, then:\n if (request.integrity) {\n // 1. Let processBodyError be this step: run fetch finale given fetchParams\n // and a network error.\n const processBodyError = (reason) =>\n fetchFinale(fetchParams, makeNetworkError(reason))\n\n // 2. If request\u2019s response tainting is \"opaque\", or response\u2019s body is null,\n // then run processBodyError and abort these steps.\n if (request.responseTainting === 'opaque' || response.body == null) {\n processBodyError(response.error)\n return\n }\n\n // 3. Let processBody given bytes be these steps:\n const processBody = (bytes) => {\n // 1. If bytes do not match request\u2019s integrity metadata,\n // then run processBodyError and abort these steps. [SRI]\n if (!bytesMatch(bytes, request.integrity)) {\n processBodyError('integrity mismatch')\n return\n }\n\n // 2. Set response\u2019s body to bytes as a body.\n response.body = safelyExtractBody(bytes)[0]\n\n // 3. Run fetch finale given fetchParams and response.\n fetchFinale(fetchParams, response)\n }\n\n // 4. Fully read response\u2019s body given processBody and processBodyError.\n await fullyReadBody(response.body, processBody, processBodyError)\n } else {\n // 21. Otherwise, run fetch finale given fetchParams and response.\n fetchFinale(fetchParams, response)\n }\n}\n\n// https://fetch.spec.whatwg.org/#concept-scheme-fetch\n// given a fetch params fetchParams\nfunction schemeFetch (fetchParams) {\n // Note: since the connection is destroyed on redirect, which sets fetchParams to a\n // cancelled state, we do not want this condition to trigger *unless* there have been\n // no redirects. See https://github.com/nodejs/undici/issues/1776\n // 1. If fetchParams is canceled, then return the appropriate network error for fetchParams.\n if (isCancelled(fetchParams) && fetchParams.request.redirectCount === 0) {\n return Promise.resolve(makeAppropriateNetworkError(fetchParams))\n }\n\n // 2. Let request be fetchParams\u2019s request.\n const { request } = fetchParams\n\n const { protocol: scheme } = requestCurrentURL(request)\n\n // 3. Switch on request\u2019s current URL\u2019s scheme and run the associated steps:\n switch (scheme) {\n case 'about:': {\n // If request\u2019s current URL\u2019s path is the string \"blank\", then return a new response\n // whose status message is `OK`, header list is \u00AB (`Content-Type`, `text/html;charset=utf-8`) \u00BB,\n // and body is the empty byte sequence as a body.\n\n // Otherwise, return a network error.\n return Promise.resolve(makeNetworkError('about scheme is not supported'))\n }\n case 'blob:': {\n if (!resolveObjectURL) {\n resolveObjectURL = require('node:buffer').resolveObjectURL\n }\n\n // 1. Let blobURLEntry be request\u2019s current URL\u2019s blob URL entry.\n const blobURLEntry = requestCurrentURL(request)\n\n // https://github.com/web-platform-tests/wpt/blob/7b0ebaccc62b566a1965396e5be7bb2bc06f841f/FileAPI/url/resources/fetch-tests.js#L52-L56\n // Buffer.resolveObjectURL does not ignore URL queries.\n if (blobURLEntry.search.length !== 0) {\n return Promise.resolve(makeNetworkError('NetworkError when attempting to fetch resource.'))\n }\n\n const blob = resolveObjectURL(blobURLEntry.toString())\n\n // 2. If request\u2019s method is not `GET`, blobURLEntry is null, or blobURLEntry\u2019s\n // object is not a Blob object, then return a network error.\n if (request.method !== 'GET' || !isBlobLike(blob)) {\n return Promise.resolve(makeNetworkError('invalid method'))\n }\n\n // 3. Let blob be blobURLEntry\u2019s object.\n // Note: done above\n\n // 4. Let response be a new response.\n const response = makeResponse()\n\n // 5. Let fullLength be blob\u2019s size.\n const fullLength = blob.size\n\n // 6. Let serializedFullLength be fullLength, serialized and isomorphic encoded.\n const serializedFullLength = isomorphicEncode(`${fullLength}`)\n\n // 7. Let type be blob\u2019s type.\n const type = blob.type\n\n // 8. If request\u2019s header list does not contain `Range`:\n // 9. Otherwise:\n if (!request.headersList.contains('range', true)) {\n // 1. Let bodyWithType be the result of safely extracting blob.\n // Note: in the FileAPI a blob \"object\" is a Blob *or* a MediaSource.\n // In node, this can only ever be a Blob. Therefore we can safely\n // use extractBody directly.\n const bodyWithType = extractBody(blob)\n\n // 2. Set response\u2019s status message to `OK`.\n response.statusText = 'OK'\n\n // 3. Set response\u2019s body to bodyWithType\u2019s body.\n response.body = bodyWithType[0]\n\n // 4. Set response\u2019s header list to \u00AB (`Content-Length`, serializedFullLength), (`Content-Type`, type) \u00BB.\n response.headersList.set('content-length', serializedFullLength, true)\n response.headersList.set('content-type', type, true)\n } else {\n // 1. Set response\u2019s range-requested flag.\n response.rangeRequested = true\n\n // 2. Let rangeHeader be the result of getting `Range` from request\u2019s header list.\n const rangeHeader = request.headersList.get('range', true)\n\n // 3. Let rangeValue be the result of parsing a single range header value given rangeHeader and true.\n const rangeValue = simpleRangeHeaderValue(rangeHeader, true)\n\n // 4. If rangeValue is failure, then return a network error.\n if (rangeValue === 'failure') {\n return Promise.resolve(makeNetworkError('failed to fetch the data URL'))\n }\n\n // 5. Let (rangeStart, rangeEnd) be rangeValue.\n let { rangeStartValue: rangeStart, rangeEndValue: rangeEnd } = rangeValue\n\n // 6. If rangeStart is null:\n // 7. Otherwise:\n if (rangeStart === null) {\n // 1. Set rangeStart to fullLength \u2212 rangeEnd.\n rangeStart = fullLength - rangeEnd\n\n // 2. Set rangeEnd to rangeStart + rangeEnd \u2212 1.\n rangeEnd = rangeStart + rangeEnd - 1\n } else {\n // 1. If rangeStart is greater than or equal to fullLength, then return a network error.\n if (rangeStart >= fullLength) {\n return Promise.resolve(makeNetworkError('Range start is greater than the blob\\'s size.'))\n }\n\n // 2. If rangeEnd is null or rangeEnd is greater than or equal to fullLength, then set\n // rangeEnd to fullLength \u2212 1.\n if (rangeEnd === null || rangeEnd >= fullLength) {\n rangeEnd = fullLength - 1\n }\n }\n\n // 8. Let slicedBlob be the result of invoking slice blob given blob, rangeStart,\n // rangeEnd + 1, and type.\n const slicedBlob = blob.slice(rangeStart, rangeEnd, type)\n\n // 9. Let slicedBodyWithType be the result of safely extracting slicedBlob.\n // Note: same reason as mentioned above as to why we use extractBody\n const slicedBodyWithType = extractBody(slicedBlob)\n\n // 10. Set response\u2019s body to slicedBodyWithType\u2019s body.\n response.body = slicedBodyWithType[0]\n\n // 11. Let serializedSlicedLength be slicedBlob\u2019s size, serialized and isomorphic encoded.\n const serializedSlicedLength = isomorphicEncode(`${slicedBlob.size}`)\n\n // 12. Let contentRange be the result of invoking build a content range given rangeStart,\n // rangeEnd, and fullLength.\n const contentRange = buildContentRange(rangeStart, rangeEnd, fullLength)\n\n // 13. Set response\u2019s status to 206.\n response.status = 206\n\n // 14. Set response\u2019s status message to `Partial Content`.\n response.statusText = 'Partial Content'\n\n // 15. Set response\u2019s header list to \u00AB (`Content-Length`, serializedSlicedLength),\n // (`Content-Type`, type), (`Content-Range`, contentRange) \u00BB.\n response.headersList.set('content-length', serializedSlicedLength, true)\n response.headersList.set('content-type', type, true)\n response.headersList.set('content-range', contentRange, true)\n }\n\n // 10. Return response.\n return Promise.resolve(response)\n }\n case 'data:': {\n // 1. Let dataURLStruct be the result of running the\n // data: URL processor on request\u2019s current URL.\n const currentURL = requestCurrentURL(request)\n const dataURLStruct = dataURLProcessor(currentURL)\n\n // 2. If dataURLStruct is failure, then return a\n // network error.\n if (dataURLStruct === 'failure') {\n return Promise.resolve(makeNetworkError('failed to fetch the data URL'))\n }\n\n // 3. Let mimeType be dataURLStruct\u2019s MIME type, serialized.\n const mimeType = serializeAMimeType(dataURLStruct.mimeType)\n\n // 4. Return a response whose status message is `OK`,\n // header list is \u00AB (`Content-Type`, mimeType) \u00BB,\n // and body is dataURLStruct\u2019s body as a body.\n return Promise.resolve(makeResponse({\n statusText: 'OK',\n headersList: [\n ['content-type', { name: 'Content-Type', value: mimeType }]\n ],\n body: safelyExtractBody(dataURLStruct.body)[0]\n }))\n }\n case 'file:': {\n // For now, unfortunate as it is, file URLs are left as an exercise for the reader.\n // When in doubt, return a network error.\n return Promise.resolve(makeNetworkError('not implemented... yet...'))\n }\n case 'http:':\n case 'https:': {\n // Return the result of running HTTP fetch given fetchParams.\n\n return httpFetch(fetchParams)\n .catch((err) => makeNetworkError(err))\n }\n default: {\n return Promise.resolve(makeNetworkError('unknown scheme'))\n }\n }\n}\n\n// https://fetch.spec.whatwg.org/#finalize-response\nfunction finalizeResponse (fetchParams, response) {\n // 1. Set fetchParams\u2019s request\u2019s done flag.\n fetchParams.request.done = true\n\n // 2, If fetchParams\u2019s process response done is not null, then queue a fetch\n // task to run fetchParams\u2019s process response done given response, with\n // fetchParams\u2019s task destination.\n if (fetchParams.processResponseDone != null) {\n queueMicrotask(() => fetchParams.processResponseDone(response))\n }\n}\n\n// https://fetch.spec.whatwg.org/#fetch-finale\nfunction fetchFinale (fetchParams, response) {\n // 1. Let timingInfo be fetchParams\u2019s timing info.\n let timingInfo = fetchParams.timingInfo\n\n // 2. If response is not a network error and fetchParams\u2019s request\u2019s client is a secure context,\n // then set timingInfo\u2019s server-timing headers to the result of getting, decoding, and splitting\n // `Server-Timing` from response\u2019s internal response\u2019s header list.\n // TODO\n\n // 3. Let processResponseEndOfBody be the following steps:\n const processResponseEndOfBody = () => {\n // 1. Let unsafeEndTime be the unsafe shared current time.\n const unsafeEndTime = Date.now() // ?\n\n // 2. If fetchParams\u2019s request\u2019s destination is \"document\", then set fetchParams\u2019s controller\u2019s\n // full timing info to fetchParams\u2019s timing info.\n if (fetchParams.request.destination === 'document') {\n fetchParams.controller.fullTimingInfo = timingInfo\n }\n\n // 3. Set fetchParams\u2019s controller\u2019s report timing steps to the following steps given a global object global:\n fetchParams.controller.reportTimingSteps = () => {\n // 1. If fetchParams\u2019s request\u2019s URL\u2019s scheme is not an HTTP(S) scheme, then return.\n if (fetchParams.request.url.protocol !== 'https:') {\n return\n }\n\n // 2. Set timingInfo\u2019s end time to the relative high resolution time given unsafeEndTime and global.\n timingInfo.endTime = unsafeEndTime\n\n // 3. Let cacheState be response\u2019s cache state.\n let cacheState = response.cacheState\n\n // 4. Let bodyInfo be response\u2019s body info.\n const bodyInfo = response.bodyInfo\n\n // 5. If response\u2019s timing allow passed flag is not set, then set timingInfo to the result of creating an\n // opaque timing info for timingInfo and set cacheState to the empty string.\n if (!response.timingAllowPassed) {\n timingInfo = createOpaqueTimingInfo(timingInfo)\n\n cacheState = ''\n }\n\n // 6. Let responseStatus be 0.\n let responseStatus = 0\n\n // 7. If fetchParams\u2019s request\u2019s mode is not \"navigate\" or response\u2019s has-cross-origin-redirects is false:\n if (fetchParams.request.mode !== 'navigator' || !response.hasCrossOriginRedirects) {\n // 1. Set responseStatus to response\u2019s status.\n responseStatus = response.status\n\n // 2. Let mimeType be the result of extracting a MIME type from response\u2019s header list.\n const mimeType = extractMimeType(response.headersList)\n\n // 3. If mimeType is not failure, then set bodyInfo\u2019s content type to the result of minimizing a supported MIME type given mimeType.\n if (mimeType !== 'failure') {\n bodyInfo.contentType = minimizeSupportedMimeType(mimeType)\n }\n }\n\n // 8. If fetchParams\u2019s request\u2019s initiator type is non-null, then mark resource timing given timingInfo,\n // fetchParams\u2019s request\u2019s URL, fetchParams\u2019s request\u2019s initiator type, global, cacheState, bodyInfo,\n // and responseStatus.\n if (fetchParams.request.initiatorType != null) {\n // TODO: update markresourcetiming\n markResourceTiming(timingInfo, fetchParams.request.url.href, fetchParams.request.initiatorType, globalThis, cacheState, bodyInfo, responseStatus)\n }\n }\n\n // 4. Let processResponseEndOfBodyTask be the following steps:\n const processResponseEndOfBodyTask = () => {\n // 1. Set fetchParams\u2019s request\u2019s done flag.\n fetchParams.request.done = true\n\n // 2. If fetchParams\u2019s process response end-of-body is non-null, then run fetchParams\u2019s process\n // response end-of-body given response.\n if (fetchParams.processResponseEndOfBody != null) {\n queueMicrotask(() => fetchParams.processResponseEndOfBody(response))\n }\n\n // 3. If fetchParams\u2019s request\u2019s initiator type is non-null and fetchParams\u2019s request\u2019s client\u2019s\n // global object is fetchParams\u2019s task destination, then run fetchParams\u2019s controller\u2019s report\n // timing steps given fetchParams\u2019s request\u2019s client\u2019s global object.\n if (fetchParams.request.initiatorType != null) {\n fetchParams.controller.reportTimingSteps()\n }\n }\n\n // 5. Queue a fetch task to run processResponseEndOfBodyTask with fetchParams\u2019s task destination\n queueMicrotask(() => processResponseEndOfBodyTask())\n }\n\n // 4. If fetchParams\u2019s process response is non-null, then queue a fetch task to run fetchParams\u2019s\n // process response given response, with fetchParams\u2019s task destination.\n if (fetchParams.processResponse != null) {\n queueMicrotask(() => {\n fetchParams.processResponse(response)\n fetchParams.processResponse = null\n })\n }\n\n // 5. Let internalResponse be response, if response is a network error; otherwise response\u2019s internal response.\n const internalResponse = response.type === 'error' ? response : (response.internalResponse ?? response)\n\n // 6. If internalResponse\u2019s body is null, then run processResponseEndOfBody.\n // 7. Otherwise:\n if (internalResponse.body == null) {\n processResponseEndOfBody()\n } else {\n // mcollina: all the following steps of the specs are skipped.\n // The internal transform stream is not needed.\n // See https://github.com/nodejs/undici/pull/3093#issuecomment-2050198541\n\n // 1. Let transformStream be a new TransformStream.\n // 2. Let identityTransformAlgorithm be an algorithm which, given chunk, enqueues chunk in transformStream.\n // 3. Set up transformStream with transformAlgorithm set to identityTransformAlgorithm and flushAlgorithm\n // set to processResponseEndOfBody.\n // 4. Set internalResponse\u2019s body\u2019s stream to the result of internalResponse\u2019s body\u2019s stream piped through transformStream.\n\n finished(internalResponse.body.stream, () => {\n processResponseEndOfBody()\n })\n }\n}\n\n// https://fetch.spec.whatwg.org/#http-fetch\nasync function httpFetch (fetchParams) {\n // 1. Let request be fetchParams\u2019s request.\n const request = fetchParams.request\n\n // 2. Let response be null.\n let response = null\n\n // 3. Let actualResponse be null.\n let actualResponse = null\n\n // 4. Let timingInfo be fetchParams\u2019s timing info.\n const timingInfo = fetchParams.timingInfo\n\n // 5. If request\u2019s service-workers mode is \"all\", then:\n if (request.serviceWorkers === 'all') {\n // TODO\n }\n\n // 6. If response is null, then:\n if (response === null) {\n // 1. If makeCORSPreflight is true and one of these conditions is true:\n // TODO\n\n // 2. If request\u2019s redirect mode is \"follow\", then set request\u2019s\n // service-workers mode to \"none\".\n if (request.redirect === 'follow') {\n request.serviceWorkers = 'none'\n }\n\n // 3. Set response and actualResponse to the result of running\n // HTTP-network-or-cache fetch given fetchParams.\n actualResponse = response = await httpNetworkOrCacheFetch(fetchParams)\n\n // 4. If request\u2019s response tainting is \"cors\" and a CORS check\n // for request and response returns failure, then return a network error.\n if (\n request.responseTainting === 'cors' &&\n corsCheck(request, response) === 'failure'\n ) {\n return makeNetworkError('cors failure')\n }\n\n // 5. If the TAO check for request and response returns failure, then set\n // request\u2019s timing allow failed flag.\n if (TAOCheck(request, response) === 'failure') {\n request.timingAllowFailed = true\n }\n }\n\n // 7. If either request\u2019s response tainting or response\u2019s type\n // is \"opaque\", and the cross-origin resource policy check with\n // request\u2019s origin, request\u2019s client, request\u2019s destination,\n // and actualResponse returns blocked, then return a network error.\n if (\n (request.responseTainting === 'opaque' || response.type === 'opaque') &&\n crossOriginResourcePolicyCheck(\n request.origin,\n request.client,\n request.destination,\n actualResponse\n ) === 'blocked'\n ) {\n return makeNetworkError('blocked')\n }\n\n // 8. If actualResponse\u2019s status is a redirect status, then:\n if (redirectStatusSet.has(actualResponse.status)) {\n // 1. If actualResponse\u2019s status is not 303, request\u2019s body is not null,\n // and the connection uses HTTP/2, then user agents may, and are even\n // encouraged to, transmit an RST_STREAM frame.\n // See, https://github.com/whatwg/fetch/issues/1288\n if (request.redirect !== 'manual') {\n fetchParams.controller.connection.destroy(undefined, false)\n }\n\n // 2. Switch on request\u2019s redirect mode:\n if (request.redirect === 'error') {\n // Set response to a network error.\n response = makeNetworkError('unexpected redirect')\n } else if (request.redirect === 'manual') {\n // Set response to an opaque-redirect filtered response whose internal\n // response is actualResponse.\n // NOTE(spec): On the web this would return an `opaqueredirect` response,\n // but that doesn't make sense server side.\n // See https://github.com/nodejs/undici/issues/1193.\n response = actualResponse\n } else if (request.redirect === 'follow') {\n // Set response to the result of running HTTP-redirect fetch given\n // fetchParams and response.\n response = await httpRedirectFetch(fetchParams, response)\n } else {\n assert(false)\n }\n }\n\n // 9. Set response\u2019s timing info to timingInfo.\n response.timingInfo = timingInfo\n\n // 10. Return response.\n return response\n}\n\n// https://fetch.spec.whatwg.org/#http-redirect-fetch\nfunction httpRedirectFetch (fetchParams, response) {\n // 1. Let request be fetchParams\u2019s request.\n const request = fetchParams.request\n\n // 2. Let actualResponse be response, if response is not a filtered response,\n // and response\u2019s internal response otherwise.\n const actualResponse = response.internalResponse\n ? response.internalResponse\n : response\n\n // 3. Let locationURL be actualResponse\u2019s location URL given request\u2019s current\n // URL\u2019s fragment.\n let locationURL\n\n try {\n locationURL = responseLocationURL(\n actualResponse,\n requestCurrentURL(request).hash\n )\n\n // 4. If locationURL is null, then return response.\n if (locationURL == null) {\n return response\n }\n } catch (err) {\n // 5. If locationURL is failure, then return a network error.\n return Promise.resolve(makeNetworkError(err))\n }\n\n // 6. If locationURL\u2019s scheme is not an HTTP(S) scheme, then return a network\n // error.\n if (!urlIsHttpHttpsScheme(locationURL)) {\n return Promise.resolve(makeNetworkError('URL scheme must be a HTTP(S) scheme'))\n }\n\n // 7. If request\u2019s redirect count is 20, then return a network error.\n if (request.redirectCount === 20) {\n return Promise.resolve(makeNetworkError('redirect count exceeded'))\n }\n\n // 8. Increase request\u2019s redirect count by 1.\n request.redirectCount += 1\n\n // 9. If request\u2019s mode is \"cors\", locationURL includes credentials, and\n // request\u2019s origin is not same origin with locationURL\u2019s origin, then return\n // a network error.\n if (\n request.mode === 'cors' &&\n (locationURL.username || locationURL.password) &&\n !sameOrigin(request, locationURL)\n ) {\n return Promise.resolve(makeNetworkError('cross origin not allowed for request mode \"cors\"'))\n }\n\n // 10. If request\u2019s response tainting is \"cors\" and locationURL includes\n // credentials, then return a network error.\n if (\n request.responseTainting === 'cors' &&\n (locationURL.username || locationURL.password)\n ) {\n return Promise.resolve(makeNetworkError(\n 'URL cannot contain credentials for request mode \"cors\"'\n ))\n }\n\n // 11. If actualResponse\u2019s status is not 303, request\u2019s body is non-null,\n // and request\u2019s body\u2019s source is null, then return a network error.\n if (\n actualResponse.status !== 303 &&\n request.body != null &&\n request.body.source == null\n ) {\n return Promise.resolve(makeNetworkError())\n }\n\n // 12. If one of the following is true\n // - actualResponse\u2019s status is 301 or 302 and request\u2019s method is `POST`\n // - actualResponse\u2019s status is 303 and request\u2019s method is not `GET` or `HEAD`\n if (\n ([301, 302].includes(actualResponse.status) && request.method === 'POST') ||\n (actualResponse.status === 303 &&\n !GET_OR_HEAD.includes(request.method))\n ) {\n // then:\n // 1. Set request\u2019s method to `GET` and request\u2019s body to null.\n request.method = 'GET'\n request.body = null\n\n // 2. For each headerName of request-body-header name, delete headerName from\n // request\u2019s header list.\n for (const headerName of requestBodyHeader) {\n request.headersList.delete(headerName)\n }\n }\n\n // 13. If request\u2019s current URL\u2019s origin is not same origin with locationURL\u2019s\n // origin, then for each headerName of CORS non-wildcard request-header name,\n // delete headerName from request\u2019s header list.\n if (!sameOrigin(requestCurrentURL(request), locationURL)) {\n // https://fetch.spec.whatwg.org/#cors-non-wildcard-request-header-name\n request.headersList.delete('authorization', true)\n\n // https://fetch.spec.whatwg.org/#authentication-entries\n request.headersList.delete('proxy-authorization', true)\n\n // \"Cookie\" and \"Host\" are forbidden request-headers, which undici doesn't implement.\n request.headersList.delete('cookie', true)\n request.headersList.delete('host', true)\n }\n\n // 14. If request\u2019s body is non-null, then set request\u2019s body to the first return\n // value of safely extracting request\u2019s body\u2019s source.\n if (request.body != null) {\n assert(request.body.source != null)\n request.body = safelyExtractBody(request.body.source)[0]\n }\n\n // 15. Let timingInfo be fetchParams\u2019s timing info.\n const timingInfo = fetchParams.timingInfo\n\n // 16. Set timingInfo\u2019s redirect end time and post-redirect start time to the\n // coarsened shared current time given fetchParams\u2019s cross-origin isolated\n // capability.\n timingInfo.redirectEndTime = timingInfo.postRedirectStartTime =\n coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability)\n\n // 17. If timingInfo\u2019s redirect start time is 0, then set timingInfo\u2019s\n // redirect start time to timingInfo\u2019s start time.\n if (timingInfo.redirectStartTime === 0) {\n timingInfo.redirectStartTime = timingInfo.startTime\n }\n\n // 18. Append locationURL to request\u2019s URL list.\n request.urlList.push(locationURL)\n\n // 19. Invoke set request\u2019s referrer policy on redirect on request and\n // actualResponse.\n setRequestReferrerPolicyOnRedirect(request, actualResponse)\n\n // 20. Return the result of running main fetch given fetchParams and true.\n return mainFetch(fetchParams, true)\n}\n\n// https://fetch.spec.whatwg.org/#http-network-or-cache-fetch\nasync function httpNetworkOrCacheFetch (\n fetchParams,\n isAuthenticationFetch = false,\n isNewConnectionFetch = false\n) {\n // 1. Let request be fetchParams\u2019s request.\n const request = fetchParams.request\n\n // 2. Let httpFetchParams be null.\n let httpFetchParams = null\n\n // 3. Let httpRequest be null.\n let httpRequest = null\n\n // 4. Let response be null.\n let response = null\n\n // 5. Let storedResponse be null.\n // TODO: cache\n\n // 6. Let httpCache be null.\n const httpCache = null\n\n // 7. Let the revalidatingFlag be unset.\n const revalidatingFlag = false\n\n // 8. Run these steps, but abort when the ongoing fetch is terminated:\n\n // 1. If request\u2019s window is \"no-window\" and request\u2019s redirect mode is\n // \"error\", then set httpFetchParams to fetchParams and httpRequest to\n // request.\n if (request.window === 'no-window' && request.redirect === 'error') {\n httpFetchParams = fetchParams\n httpRequest = request\n } else {\n // Otherwise:\n\n // 1. Set httpRequest to a clone of request.\n httpRequest = cloneRequest(request)\n\n // 2. Set httpFetchParams to a copy of fetchParams.\n httpFetchParams = { ...fetchParams }\n\n // 3. Set httpFetchParams\u2019s request to httpRequest.\n httpFetchParams.request = httpRequest\n }\n\n // 3. Let includeCredentials be true if one of\n const includeCredentials =\n request.credentials === 'include' ||\n (request.credentials === 'same-origin' &&\n request.responseTainting === 'basic')\n\n // 4. Let contentLength be httpRequest\u2019s body\u2019s length, if httpRequest\u2019s\n // body is non-null; otherwise null.\n const contentLength = httpRequest.body ? httpRequest.body.length : null\n\n // 5. Let contentLengthHeaderValue be null.\n let contentLengthHeaderValue = null\n\n // 6. If httpRequest\u2019s body is null and httpRequest\u2019s method is `POST` or\n // `PUT`, then set contentLengthHeaderValue to `0`.\n if (\n httpRequest.body == null &&\n ['POST', 'PUT'].includes(httpRequest.method)\n ) {\n contentLengthHeaderValue = '0'\n }\n\n // 7. If contentLength is non-null, then set contentLengthHeaderValue to\n // contentLength, serialized and isomorphic encoded.\n if (contentLength != null) {\n contentLengthHeaderValue = isomorphicEncode(`${contentLength}`)\n }\n\n // 8. If contentLengthHeaderValue is non-null, then append\n // `Content-Length`/contentLengthHeaderValue to httpRequest\u2019s header\n // list.\n if (contentLengthHeaderValue != null) {\n httpRequest.headersList.append('content-length', contentLengthHeaderValue, true)\n }\n\n // 9. If contentLengthHeaderValue is non-null, then append (`Content-Length`,\n // contentLengthHeaderValue) to httpRequest\u2019s header list.\n\n // 10. If contentLength is non-null and httpRequest\u2019s keepalive is true,\n // then:\n if (contentLength != null && httpRequest.keepalive) {\n // NOTE: keepalive is a noop outside of browser context.\n }\n\n // 11. If httpRequest\u2019s referrer is a URL, then append\n // `Referer`/httpRequest\u2019s referrer, serialized and isomorphic encoded,\n // to httpRequest\u2019s header list.\n if (httpRequest.referrer instanceof URL) {\n httpRequest.headersList.append('referer', isomorphicEncode(httpRequest.referrer.href), true)\n }\n\n // 12. Append a request `Origin` header for httpRequest.\n appendRequestOriginHeader(httpRequest)\n\n // 13. Append the Fetch metadata headers for httpRequest. [FETCH-METADATA]\n appendFetchMetadata(httpRequest)\n\n // 14. If httpRequest\u2019s header list does not contain `User-Agent`, then\n // user agents should append `User-Agent`/default `User-Agent` value to\n // httpRequest\u2019s header list.\n if (!httpRequest.headersList.contains('user-agent', true)) {\n httpRequest.headersList.append('user-agent', defaultUserAgent)\n }\n\n // 15. If httpRequest\u2019s cache mode is \"default\" and httpRequest\u2019s header\n // list contains `If-Modified-Since`, `If-None-Match`,\n // `If-Unmodified-Since`, `If-Match`, or `If-Range`, then set\n // httpRequest\u2019s cache mode to \"no-store\".\n if (\n httpRequest.cache === 'default' &&\n (httpRequest.headersList.contains('if-modified-since', true) ||\n httpRequest.headersList.contains('if-none-match', true) ||\n httpRequest.headersList.contains('if-unmodified-since', true) ||\n httpRequest.headersList.contains('if-match', true) ||\n httpRequest.headersList.contains('if-range', true))\n ) {\n httpRequest.cache = 'no-store'\n }\n\n // 16. If httpRequest\u2019s cache mode is \"no-cache\", httpRequest\u2019s prevent\n // no-cache cache-control header modification flag is unset, and\n // httpRequest\u2019s header list does not contain `Cache-Control`, then append\n // `Cache-Control`/`max-age=0` to httpRequest\u2019s header list.\n if (\n httpRequest.cache === 'no-cache' &&\n !httpRequest.preventNoCacheCacheControlHeaderModification &&\n !httpRequest.headersList.contains('cache-control', true)\n ) {\n httpRequest.headersList.append('cache-control', 'max-age=0', true)\n }\n\n // 17. If httpRequest\u2019s cache mode is \"no-store\" or \"reload\", then:\n if (httpRequest.cache === 'no-store' || httpRequest.cache === 'reload') {\n // 1. If httpRequest\u2019s header list does not contain `Pragma`, then append\n // `Pragma`/`no-cache` to httpRequest\u2019s header list.\n if (!httpRequest.headersList.contains('pragma', true)) {\n httpRequest.headersList.append('pragma', 'no-cache', true)\n }\n\n // 2. If httpRequest\u2019s header list does not contain `Cache-Control`,\n // then append `Cache-Control`/`no-cache` to httpRequest\u2019s header list.\n if (!httpRequest.headersList.contains('cache-control', true)) {\n httpRequest.headersList.append('cache-control', 'no-cache', true)\n }\n }\n\n // 18. If httpRequest\u2019s header list contains `Range`, then append\n // `Accept-Encoding`/`identity` to httpRequest\u2019s header list.\n if (httpRequest.headersList.contains('range', true)) {\n httpRequest.headersList.append('accept-encoding', 'identity', true)\n }\n\n // 19. Modify httpRequest\u2019s header list per HTTP. Do not append a given\n // header if httpRequest\u2019s header list contains that header\u2019s name.\n // TODO: https://github.com/whatwg/fetch/issues/1285#issuecomment-896560129\n if (!httpRequest.headersList.contains('accept-encoding', true)) {\n if (urlHasHttpsScheme(requestCurrentURL(httpRequest))) {\n httpRequest.headersList.append('accept-encoding', 'br, gzip, deflate', true)\n } else {\n httpRequest.headersList.append('accept-encoding', 'gzip, deflate', true)\n }\n }\n\n httpRequest.headersList.delete('host', true)\n\n // 20. If includeCredentials is true, then:\n if (includeCredentials) {\n // 1. If the user agent is not configured to block cookies for httpRequest\n // (see section 7 of [COOKIES]), then:\n // TODO: credentials\n // 2. If httpRequest\u2019s header list does not contain `Authorization`, then:\n // TODO: credentials\n }\n\n // 21. If there\u2019s a proxy-authentication entry, use it as appropriate.\n // TODO: proxy-authentication\n\n // 22. Set httpCache to the result of determining the HTTP cache\n // partition, given httpRequest.\n // TODO: cache\n\n // 23. If httpCache is null, then set httpRequest\u2019s cache mode to\n // \"no-store\".\n if (httpCache == null) {\n httpRequest.cache = 'no-store'\n }\n\n // 24. If httpRequest\u2019s cache mode is neither \"no-store\" nor \"reload\",\n // then:\n if (httpRequest.cache !== 'no-store' && httpRequest.cache !== 'reload') {\n // TODO: cache\n }\n\n // 9. If aborted, then return the appropriate network error for fetchParams.\n // TODO\n\n // 10. If response is null, then:\n if (response == null) {\n // 1. If httpRequest\u2019s cache mode is \"only-if-cached\", then return a\n // network error.\n if (httpRequest.cache === 'only-if-cached') {\n return makeNetworkError('only if cached')\n }\n\n // 2. Let forwardResponse be the result of running HTTP-network fetch\n // given httpFetchParams, includeCredentials, and isNewConnectionFetch.\n const forwardResponse = await httpNetworkFetch(\n httpFetchParams,\n includeCredentials,\n isNewConnectionFetch\n )\n\n // 3. If httpRequest\u2019s method is unsafe and forwardResponse\u2019s status is\n // in the range 200 to 399, inclusive, invalidate appropriate stored\n // responses in httpCache, as per the \"Invalidation\" chapter of HTTP\n // Caching, and set storedResponse to null. [HTTP-CACHING]\n if (\n !safeMethodsSet.has(httpRequest.method) &&\n forwardResponse.status >= 200 &&\n forwardResponse.status <= 399\n ) {\n // TODO: cache\n }\n\n // 4. If the revalidatingFlag is set and forwardResponse\u2019s status is 304,\n // then:\n if (revalidatingFlag && forwardResponse.status === 304) {\n // TODO: cache\n }\n\n // 5. If response is null, then:\n if (response == null) {\n // 1. Set response to forwardResponse.\n response = forwardResponse\n\n // 2. Store httpRequest and forwardResponse in httpCache, as per the\n // \"Storing Responses in Caches\" chapter of HTTP Caching. [HTTP-CACHING]\n // TODO: cache\n }\n }\n\n // 11. Set response\u2019s URL list to a clone of httpRequest\u2019s URL list.\n response.urlList = [...httpRequest.urlList]\n\n // 12. If httpRequest\u2019s header list contains `Range`, then set response\u2019s\n // range-requested flag.\n if (httpRequest.headersList.contains('range', true)) {\n response.rangeRequested = true\n }\n\n // 13. Set response\u2019s request-includes-credentials to includeCredentials.\n response.requestIncludesCredentials = includeCredentials\n\n // 14. If response\u2019s status is 401, httpRequest\u2019s response tainting is not\n // \"cors\", includeCredentials is true, and request\u2019s window is an environment\n // settings object, then:\n // TODO\n\n // 15. If response\u2019s status is 407, then:\n if (response.status === 407) {\n // 1. If request\u2019s window is \"no-window\", then return a network error.\n if (request.window === 'no-window') {\n return makeNetworkError()\n }\n\n // 2. ???\n\n // 3. If fetchParams is canceled, then return the appropriate network error for fetchParams.\n if (isCancelled(fetchParams)) {\n return makeAppropriateNetworkError(fetchParams)\n }\n\n // 4. Prompt the end user as appropriate in request\u2019s window and store\n // the result as a proxy-authentication entry. [HTTP-AUTH]\n // TODO: Invoke some kind of callback?\n\n // 5. Set response to the result of running HTTP-network-or-cache fetch given\n // fetchParams.\n // TODO\n return makeNetworkError('proxy authentication required')\n }\n\n // 16. If all of the following are true\n if (\n // response\u2019s status is 421\n response.status === 421 &&\n // isNewConnectionFetch is false\n !isNewConnectionFetch &&\n // request\u2019s body is null, or request\u2019s body is non-null and request\u2019s body\u2019s source is non-null\n (request.body == null || request.body.source != null)\n ) {\n // then:\n\n // 1. If fetchParams is canceled, then return the appropriate network error for fetchParams.\n if (isCancelled(fetchParams)) {\n return makeAppropriateNetworkError(fetchParams)\n }\n\n // 2. Set response to the result of running HTTP-network-or-cache\n // fetch given fetchParams, isAuthenticationFetch, and true.\n\n // TODO (spec): The spec doesn't specify this but we need to cancel\n // the active response before we can start a new one.\n // https://github.com/whatwg/fetch/issues/1293\n fetchParams.controller.connection.destroy()\n\n response = await httpNetworkOrCacheFetch(\n fetchParams,\n isAuthenticationFetch,\n true\n )\n }\n\n // 17. If isAuthenticationFetch is true, then create an authentication entry\n if (isAuthenticationFetch) {\n // TODO\n }\n\n // 18. Return response.\n return response\n}\n\n// https://fetch.spec.whatwg.org/#http-network-fetch\nasync function httpNetworkFetch (\n fetchParams,\n includeCredentials = false,\n forceNewConnection = false\n) {\n assert(!fetchParams.controller.connection || fetchParams.controller.connection.destroyed)\n\n fetchParams.controller.connection = {\n abort: null,\n destroyed: false,\n destroy (err, abort = true) {\n if (!this.destroyed) {\n this.destroyed = true\n if (abort) {\n this.abort?.(err ?? new DOMException('The operation was aborted.', 'AbortError'))\n }\n }\n }\n }\n\n // 1. Let request be fetchParams\u2019s request.\n const request = fetchParams.request\n\n // 2. Let response be null.\n let response = null\n\n // 3. Let timingInfo be fetchParams\u2019s timing info.\n const timingInfo = fetchParams.timingInfo\n\n // 4. Let httpCache be the result of determining the HTTP cache partition,\n // given request.\n // TODO: cache\n const httpCache = null\n\n // 5. If httpCache is null, then set request\u2019s cache mode to \"no-store\".\n if (httpCache == null) {\n request.cache = 'no-store'\n }\n\n // 6. Let networkPartitionKey be the result of determining the network\n // partition key given request.\n // TODO\n\n // 7. Let newConnection be \"yes\" if forceNewConnection is true; otherwise\n // \"no\".\n const newConnection = forceNewConnection ? 'yes' : 'no' // eslint-disable-line no-unused-vars\n\n // 8. Switch on request\u2019s mode:\n if (request.mode === 'websocket') {\n // Let connection be the result of obtaining a WebSocket connection,\n // given request\u2019s current URL.\n // TODO\n } else {\n // Let connection be the result of obtaining a connection, given\n // networkPartitionKey, request\u2019s current URL\u2019s origin,\n // includeCredentials, and forceNewConnection.\n // TODO\n }\n\n // 9. Run these steps, but abort when the ongoing fetch is terminated:\n\n // 1. If connection is failure, then return a network error.\n\n // 2. Set timingInfo\u2019s final connection timing info to the result of\n // calling clamp and coarsen connection timing info with connection\u2019s\n // timing info, timingInfo\u2019s post-redirect start time, and fetchParams\u2019s\n // cross-origin isolated capability.\n\n // 3. If connection is not an HTTP/2 connection, request\u2019s body is non-null,\n // and request\u2019s body\u2019s source is null, then append (`Transfer-Encoding`,\n // `chunked`) to request\u2019s header list.\n\n // 4. Set timingInfo\u2019s final network-request start time to the coarsened\n // shared current time given fetchParams\u2019s cross-origin isolated\n // capability.\n\n // 5. Set response to the result of making an HTTP request over connection\n // using request with the following caveats:\n\n // - Follow the relevant requirements from HTTP. [HTTP] [HTTP-SEMANTICS]\n // [HTTP-COND] [HTTP-CACHING] [HTTP-AUTH]\n\n // - If request\u2019s body is non-null, and request\u2019s body\u2019s source is null,\n // then the user agent may have a buffer of up to 64 kibibytes and store\n // a part of request\u2019s body in that buffer. If the user agent reads from\n // request\u2019s body beyond that buffer\u2019s size and the user agent needs to\n // resend request, then instead return a network error.\n\n // - Set timingInfo\u2019s final network-response start time to the coarsened\n // shared current time given fetchParams\u2019s cross-origin isolated capability,\n // immediately after the user agent\u2019s HTTP parser receives the first byte\n // of the response (e.g., frame header bytes for HTTP/2 or response status\n // line for HTTP/1.x).\n\n // - Wait until all the headers are transmitted.\n\n // - Any responses whose status is in the range 100 to 199, inclusive,\n // and is not 101, are to be ignored, except for the purposes of setting\n // timingInfo\u2019s final network-response start time above.\n\n // - If request\u2019s header list contains `Transfer-Encoding`/`chunked` and\n // response is transferred via HTTP/1.0 or older, then return a network\n // error.\n\n // - If the HTTP request results in a TLS client certificate dialog, then:\n\n // 1. If request\u2019s window is an environment settings object, make the\n // dialog available in request\u2019s window.\n\n // 2. Otherwise, return a network error.\n\n // To transmit request\u2019s body body, run these steps:\n let requestBody = null\n // 1. If body is null and fetchParams\u2019s process request end-of-body is\n // non-null, then queue a fetch task given fetchParams\u2019s process request\n // end-of-body and fetchParams\u2019s task destination.\n if (request.body == null && fetchParams.processRequestEndOfBody) {\n queueMicrotask(() => fetchParams.processRequestEndOfBody())\n } else if (request.body != null) {\n // 2. Otherwise, if body is non-null:\n\n // 1. Let processBodyChunk given bytes be these steps:\n const processBodyChunk = async function * (bytes) {\n // 1. If the ongoing fetch is terminated, then abort these steps.\n if (isCancelled(fetchParams)) {\n return\n }\n\n // 2. Run this step in parallel: transmit bytes.\n yield bytes\n\n // 3. If fetchParams\u2019s process request body is non-null, then run\n // fetchParams\u2019s process request body given bytes\u2019s length.\n fetchParams.processRequestBodyChunkLength?.(bytes.byteLength)\n }\n\n // 2. Let processEndOfBody be these steps:\n const processEndOfBody = () => {\n // 1. If fetchParams is canceled, then abort these steps.\n if (isCancelled(fetchParams)) {\n return\n }\n\n // 2. If fetchParams\u2019s process request end-of-body is non-null,\n // then run fetchParams\u2019s process request end-of-body.\n if (fetchParams.processRequestEndOfBody) {\n fetchParams.processRequestEndOfBody()\n }\n }\n\n // 3. Let processBodyError given e be these steps:\n const processBodyError = (e) => {\n // 1. If fetchParams is canceled, then abort these steps.\n if (isCancelled(fetchParams)) {\n return\n }\n\n // 2. If e is an \"AbortError\" DOMException, then abort fetchParams\u2019s controller.\n if (e.name === 'AbortError') {\n fetchParams.controller.abort()\n } else {\n fetchParams.controller.terminate(e)\n }\n }\n\n // 4. Incrementally read request\u2019s body given processBodyChunk, processEndOfBody,\n // processBodyError, and fetchParams\u2019s task destination.\n requestBody = (async function * () {\n try {\n for await (const bytes of request.body.stream) {\n yield * processBodyChunk(bytes)\n }\n processEndOfBody()\n } catch (err) {\n processBodyError(err)\n }\n })()\n }\n\n try {\n // socket is only provided for websockets\n const { body, status, statusText, headersList, socket } = await dispatch({ body: requestBody })\n\n if (socket) {\n response = makeResponse({ status, statusText, headersList, socket })\n } else {\n const iterator = body[Symbol.asyncIterator]()\n fetchParams.controller.next = () => iterator.next()\n\n response = makeResponse({ status, statusText, headersList })\n }\n } catch (err) {\n // 10. If aborted, then:\n if (err.name === 'AbortError') {\n // 1. If connection uses HTTP/2, then transmit an RST_STREAM frame.\n fetchParams.controller.connection.destroy()\n\n // 2. Return the appropriate network error for fetchParams.\n return makeAppropriateNetworkError(fetchParams, err)\n }\n\n return makeNetworkError(err)\n }\n\n // 11. Let pullAlgorithm be an action that resumes the ongoing fetch\n // if it is suspended.\n const pullAlgorithm = async () => {\n await fetchParams.controller.resume()\n }\n\n // 12. Let cancelAlgorithm be an algorithm that aborts fetchParams\u2019s\n // controller with reason, given reason.\n const cancelAlgorithm = (reason) => {\n // If the aborted fetch was already terminated, then we do not\n // need to do anything.\n if (!isCancelled(fetchParams)) {\n fetchParams.controller.abort(reason)\n }\n }\n\n // 13. Let highWaterMark be a non-negative, non-NaN number, chosen by\n // the user agent.\n // TODO\n\n // 14. Let sizeAlgorithm be an algorithm that accepts a chunk object\n // and returns a non-negative, non-NaN, non-infinite number, chosen by the user agent.\n // TODO\n\n // 15. Let stream be a new ReadableStream.\n // 16. Set up stream with byte reading support with pullAlgorithm set to pullAlgorithm,\n // cancelAlgorithm set to cancelAlgorithm.\n const stream = new ReadableStream(\n {\n async start (controller) {\n fetchParams.controller.controller = controller\n },\n async pull (controller) {\n await pullAlgorithm(controller)\n },\n async cancel (reason) {\n await cancelAlgorithm(reason)\n },\n type: 'bytes'\n }\n )\n\n // 17. Run these steps, but abort when the ongoing fetch is terminated:\n\n // 1. Set response\u2019s body to a new body whose stream is stream.\n response.body = { stream, source: null, length: null }\n\n // 2. If response is not a network error and request\u2019s cache mode is\n // not \"no-store\", then update response in httpCache for request.\n // TODO\n\n // 3. If includeCredentials is true and the user agent is not configured\n // to block cookies for request (see section 7 of [COOKIES]), then run the\n // \"set-cookie-string\" parsing algorithm (see section 5.2 of [COOKIES]) on\n // the value of each header whose name is a byte-case-insensitive match for\n // `Set-Cookie` in response\u2019s header list, if any, and request\u2019s current URL.\n // TODO\n\n // 18. If aborted, then:\n // TODO\n\n // 19. Run these steps in parallel:\n\n // 1. Run these steps, but abort when fetchParams is canceled:\n fetchParams.controller.onAborted = onAborted\n fetchParams.controller.on('terminated', onAborted)\n fetchParams.controller.resume = async () => {\n // 1. While true\n while (true) {\n // 1-3. See onData...\n\n // 4. Set bytes to the result of handling content codings given\n // codings and bytes.\n let bytes\n let isFailure\n try {\n const { done, value } = await fetchParams.controller.next()\n\n if (isAborted(fetchParams)) {\n break\n }\n\n bytes = done ? undefined : value\n } catch (err) {\n if (fetchParams.controller.ended && !timingInfo.encodedBodySize) {\n // zlib doesn't like empty streams.\n bytes = undefined\n } else {\n bytes = err\n\n // err may be propagated from the result of calling readablestream.cancel,\n // which might not be an error. https://github.com/nodejs/undici/issues/2009\n isFailure = true\n }\n }\n\n if (bytes === undefined) {\n // 2. Otherwise, if the bytes transmission for response\u2019s message\n // body is done normally and stream is readable, then close\n // stream, finalize response for fetchParams and response, and\n // abort these in-parallel steps.\n readableStreamClose(fetchParams.controller.controller)\n\n finalizeResponse(fetchParams, response)\n\n return\n }\n\n // 5. Increase timingInfo\u2019s decoded body size by bytes\u2019s length.\n timingInfo.decodedBodySize += bytes?.byteLength ?? 0\n\n // 6. If bytes is failure, then terminate fetchParams\u2019s controller.\n if (isFailure) {\n fetchParams.controller.terminate(bytes)\n return\n }\n\n // 7. Enqueue a Uint8Array wrapping an ArrayBuffer containing bytes\n // into stream.\n const buffer = new Uint8Array(bytes)\n if (buffer.byteLength) {\n fetchParams.controller.controller.enqueue(buffer)\n }\n\n // 8. If stream is errored, then terminate the ongoing fetch.\n if (isErrored(stream)) {\n fetchParams.controller.terminate()\n return\n }\n\n // 9. If stream doesn\u2019t need more data ask the user agent to suspend\n // the ongoing fetch.\n if (fetchParams.controller.controller.desiredSize <= 0) {\n return\n }\n }\n }\n\n // 2. If aborted, then:\n function onAborted (reason) {\n // 2. If fetchParams is aborted, then:\n if (isAborted(fetchParams)) {\n // 1. Set response\u2019s aborted flag.\n response.aborted = true\n\n // 2. If stream is readable, then error stream with the result of\n // deserialize a serialized abort reason given fetchParams\u2019s\n // controller\u2019s serialized abort reason and an\n // implementation-defined realm.\n if (isReadable(stream)) {\n fetchParams.controller.controller.error(\n fetchParams.controller.serializedAbortReason\n )\n }\n } else {\n // 3. Otherwise, if stream is readable, error stream with a TypeError.\n if (isReadable(stream)) {\n fetchParams.controller.controller.error(new TypeError('terminated', {\n cause: isErrorLike(reason) ? reason : undefined\n }))\n }\n }\n\n // 4. If connection uses HTTP/2, then transmit an RST_STREAM frame.\n // 5. Otherwise, the user agent should close connection unless it would be bad for performance to do so.\n fetchParams.controller.connection.destroy()\n }\n\n // 20. Return response.\n return response\n\n function dispatch ({ body }) {\n const url = requestCurrentURL(request)\n /** @type {import('../..').Agent} */\n const agent = fetchParams.controller.dispatcher\n\n return new Promise((resolve, reject) => agent.dispatch(\n {\n path: url.pathname + url.search,\n origin: url.origin,\n method: request.method,\n body: agent.isMockActive ? request.body && (request.body.source || request.body.stream) : body,\n headers: request.headersList.entries,\n maxRedirections: 0,\n upgrade: request.mode === 'websocket' ? 'websocket' : undefined\n },\n {\n body: null,\n abort: null,\n\n onConnect (abort) {\n // TODO (fix): Do we need connection here?\n const { connection } = fetchParams.controller\n\n // Set timingInfo\u2019s final connection timing info to the result of calling clamp and coarsen\n // connection timing info with connection\u2019s timing info, timingInfo\u2019s post-redirect start\n // time, and fetchParams\u2019s cross-origin isolated capability.\n // TODO: implement connection timing\n timingInfo.finalConnectionTimingInfo = clampAndCoarsenConnectionTimingInfo(undefined, timingInfo.postRedirectStartTime, fetchParams.crossOriginIsolatedCapability)\n\n if (connection.destroyed) {\n abort(new DOMException('The operation was aborted.', 'AbortError'))\n } else {\n fetchParams.controller.on('terminated', abort)\n this.abort = connection.abort = abort\n }\n\n // Set timingInfo\u2019s final network-request start time to the coarsened shared current time given\n // fetchParams\u2019s cross-origin isolated capability.\n timingInfo.finalNetworkRequestStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability)\n },\n\n onResponseStarted () {\n // Set timingInfo\u2019s final network-response start time to the coarsened shared current\n // time given fetchParams\u2019s cross-origin isolated capability, immediately after the\n // user agent\u2019s HTTP parser receives the first byte of the response (e.g., frame header\n // bytes for HTTP/2 or response status line for HTTP/1.x).\n timingInfo.finalNetworkResponseStartTime = coarsenedSharedCurrentTime(fetchParams.crossOriginIsolatedCapability)\n },\n\n onHeaders (status, rawHeaders, resume, statusText) {\n if (status < 200) {\n return\n }\n\n let location = ''\n\n const headersList = new HeadersList()\n\n for (let i = 0; i < rawHeaders.length; i += 2) {\n headersList.append(bufferToLowerCasedHeaderName(rawHeaders[i]), rawHeaders[i + 1].toString('latin1'), true)\n }\n location = headersList.get('location', true)\n\n this.body = new Readable({ read: resume })\n\n const decoders = []\n\n const willFollow = location && request.redirect === 'follow' &&\n redirectStatusSet.has(status)\n\n // https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Content-Encoding\n if (request.method !== 'HEAD' && request.method !== 'CONNECT' && !nullBodyStatus.includes(status) && !willFollow) {\n // https://www.rfc-editor.org/rfc/rfc7231#section-3.1.2.1\n const contentEncoding = headersList.get('content-encoding', true)\n // \"All content-coding values are case-insensitive...\"\n /** @type {string[]} */\n const codings = contentEncoding ? contentEncoding.toLowerCase().split(',') : []\n\n // Limit the number of content-encodings to prevent resource exhaustion.\n // CVE fix similar to urllib3 (GHSA-gm62-xv2j-4w53) and curl (CVE-2022-32206).\n const maxContentEncodings = 5\n if (codings.length > maxContentEncodings) {\n reject(new Error(`too many content-encodings in response: ${codings.length}, maximum allowed is ${maxContentEncodings}`))\n return true\n }\n\n for (let i = codings.length - 1; i >= 0; --i) {\n const coding = codings[i].trim()\n // https://www.rfc-editor.org/rfc/rfc9112.html#section-7.2\n if (coding === 'x-gzip' || coding === 'gzip') {\n decoders.push(zlib.createGunzip({\n // Be less strict when decoding compressed responses, since sometimes\n // servers send slightly invalid responses that are still accepted\n // by common browsers.\n // Always using Z_SYNC_FLUSH is what cURL does.\n flush: zlib.constants.Z_SYNC_FLUSH,\n finishFlush: zlib.constants.Z_SYNC_FLUSH\n }))\n } else if (coding === 'deflate') {\n decoders.push(createInflate({\n flush: zlib.constants.Z_SYNC_FLUSH,\n finishFlush: zlib.constants.Z_SYNC_FLUSH\n }))\n } else if (coding === 'br') {\n decoders.push(zlib.createBrotliDecompress({\n flush: zlib.constants.BROTLI_OPERATION_FLUSH,\n finishFlush: zlib.constants.BROTLI_OPERATION_FLUSH\n }))\n } else {\n decoders.length = 0\n break\n }\n }\n }\n\n const onError = this.onError.bind(this)\n\n resolve({\n status,\n statusText,\n headersList,\n body: decoders.length\n ? pipeline(this.body, ...decoders, (err) => {\n if (err) {\n this.onError(err)\n }\n }).on('error', onError)\n : this.body.on('error', onError)\n })\n\n return true\n },\n\n onData (chunk) {\n if (fetchParams.controller.dump) {\n return\n }\n\n // 1. If one or more bytes have been transmitted from response\u2019s\n // message body, then:\n\n // 1. Let bytes be the transmitted bytes.\n const bytes = chunk\n\n // 2. Let codings be the result of extracting header list values\n // given `Content-Encoding` and response\u2019s header list.\n // See pullAlgorithm.\n\n // 3. Increase timingInfo\u2019s encoded body size by bytes\u2019s length.\n timingInfo.encodedBodySize += bytes.byteLength\n\n // 4. See pullAlgorithm...\n\n return this.body.push(bytes)\n },\n\n onComplete () {\n if (this.abort) {\n fetchParams.controller.off('terminated', this.abort)\n }\n\n if (fetchParams.controller.onAborted) {\n fetchParams.controller.off('terminated', fetchParams.controller.onAborted)\n }\n\n fetchParams.controller.ended = true\n\n this.body.push(null)\n },\n\n onError (error) {\n if (this.abort) {\n fetchParams.controller.off('terminated', this.abort)\n }\n\n this.body?.destroy(error)\n\n fetchParams.controller.terminate(error)\n\n reject(error)\n },\n\n onUpgrade (status, rawHeaders, socket) {\n if (status !== 101) {\n return\n }\n\n const headersList = new HeadersList()\n\n for (let i = 0; i < rawHeaders.length; i += 2) {\n headersList.append(bufferToLowerCasedHeaderName(rawHeaders[i]), rawHeaders[i + 1].toString('latin1'), true)\n }\n\n resolve({\n status,\n statusText: STATUS_CODES[status],\n headersList,\n socket\n })\n\n return true\n }\n }\n ))\n }\n}\n\nmodule.exports = {\n fetch,\n Fetch,\n fetching,\n finalizeAndReportTiming\n}\n", "'use strict'\n\nmodule.exports = {\n kState: Symbol('FileReader state'),\n kResult: Symbol('FileReader result'),\n kError: Symbol('FileReader error'),\n kLastProgressEventFired: Symbol('FileReader last progress event fired timestamp'),\n kEvents: Symbol('FileReader events'),\n kAborted: Symbol('FileReader aborted')\n}\n", "'use strict'\n\nconst { webidl } = require('../fetch/webidl')\n\nconst kState = Symbol('ProgressEvent state')\n\n/**\n * @see https://xhr.spec.whatwg.org/#progressevent\n */\nclass ProgressEvent extends Event {\n constructor (type, eventInitDict = {}) {\n type = webidl.converters.DOMString(type, 'ProgressEvent constructor', 'type')\n eventInitDict = webidl.converters.ProgressEventInit(eventInitDict ?? {})\n\n super(type, eventInitDict)\n\n this[kState] = {\n lengthComputable: eventInitDict.lengthComputable,\n loaded: eventInitDict.loaded,\n total: eventInitDict.total\n }\n }\n\n get lengthComputable () {\n webidl.brandCheck(this, ProgressEvent)\n\n return this[kState].lengthComputable\n }\n\n get loaded () {\n webidl.brandCheck(this, ProgressEvent)\n\n return this[kState].loaded\n }\n\n get total () {\n webidl.brandCheck(this, ProgressEvent)\n\n return this[kState].total\n }\n}\n\nwebidl.converters.ProgressEventInit = webidl.dictionaryConverter([\n {\n key: 'lengthComputable',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'loaded',\n converter: webidl.converters['unsigned long long'],\n defaultValue: () => 0\n },\n {\n key: 'total',\n converter: webidl.converters['unsigned long long'],\n defaultValue: () => 0\n },\n {\n key: 'bubbles',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'cancelable',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'composed',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n }\n])\n\nmodule.exports = {\n ProgressEvent\n}\n", "'use strict'\n\n/**\n * @see https://encoding.spec.whatwg.org/#concept-encoding-get\n * @param {string|undefined} label\n */\nfunction getEncoding (label) {\n if (!label) {\n return 'failure'\n }\n\n // 1. Remove any leading and trailing ASCII whitespace from label.\n // 2. If label is an ASCII case-insensitive match for any of the\n // labels listed in the table below, then return the\n // corresponding encoding; otherwise return failure.\n switch (label.trim().toLowerCase()) {\n case 'unicode-1-1-utf-8':\n case 'unicode11utf8':\n case 'unicode20utf8':\n case 'utf-8':\n case 'utf8':\n case 'x-unicode20utf8':\n return 'UTF-8'\n case '866':\n case 'cp866':\n case 'csibm866':\n case 'ibm866':\n return 'IBM866'\n case 'csisolatin2':\n case 'iso-8859-2':\n case 'iso-ir-101':\n case 'iso8859-2':\n case 'iso88592':\n case 'iso_8859-2':\n case 'iso_8859-2:1987':\n case 'l2':\n case 'latin2':\n return 'ISO-8859-2'\n case 'csisolatin3':\n case 'iso-8859-3':\n case 'iso-ir-109':\n case 'iso8859-3':\n case 'iso88593':\n case 'iso_8859-3':\n case 'iso_8859-3:1988':\n case 'l3':\n case 'latin3':\n return 'ISO-8859-3'\n case 'csisolatin4':\n case 'iso-8859-4':\n case 'iso-ir-110':\n case 'iso8859-4':\n case 'iso88594':\n case 'iso_8859-4':\n case 'iso_8859-4:1988':\n case 'l4':\n case 'latin4':\n return 'ISO-8859-4'\n case 'csisolatincyrillic':\n case 'cyrillic':\n case 'iso-8859-5':\n case 'iso-ir-144':\n case 'iso8859-5':\n case 'iso88595':\n case 'iso_8859-5':\n case 'iso_8859-5:1988':\n return 'ISO-8859-5'\n case 'arabic':\n case 'asmo-708':\n case 'csiso88596e':\n case 'csiso88596i':\n case 'csisolatinarabic':\n case 'ecma-114':\n case 'iso-8859-6':\n case 'iso-8859-6-e':\n case 'iso-8859-6-i':\n case 'iso-ir-127':\n case 'iso8859-6':\n case 'iso88596':\n case 'iso_8859-6':\n case 'iso_8859-6:1987':\n return 'ISO-8859-6'\n case 'csisolatingreek':\n case 'ecma-118':\n case 'elot_928':\n case 'greek':\n case 'greek8':\n case 'iso-8859-7':\n case 'iso-ir-126':\n case 'iso8859-7':\n case 'iso88597':\n case 'iso_8859-7':\n case 'iso_8859-7:1987':\n case 'sun_eu_greek':\n return 'ISO-8859-7'\n case 'csiso88598e':\n case 'csisolatinhebrew':\n case 'hebrew':\n case 'iso-8859-8':\n case 'iso-8859-8-e':\n case 'iso-ir-138':\n case 'iso8859-8':\n case 'iso88598':\n case 'iso_8859-8':\n case 'iso_8859-8:1988':\n case 'visual':\n return 'ISO-8859-8'\n case 'csiso88598i':\n case 'iso-8859-8-i':\n case 'logical':\n return 'ISO-8859-8-I'\n case 'csisolatin6':\n case 'iso-8859-10':\n case 'iso-ir-157':\n case 'iso8859-10':\n case 'iso885910':\n case 'l6':\n case 'latin6':\n return 'ISO-8859-10'\n case 'iso-8859-13':\n case 'iso8859-13':\n case 'iso885913':\n return 'ISO-8859-13'\n case 'iso-8859-14':\n case 'iso8859-14':\n case 'iso885914':\n return 'ISO-8859-14'\n case 'csisolatin9':\n case 'iso-8859-15':\n case 'iso8859-15':\n case 'iso885915':\n case 'iso_8859-15':\n case 'l9':\n return 'ISO-8859-15'\n case 'iso-8859-16':\n return 'ISO-8859-16'\n case 'cskoi8r':\n case 'koi':\n case 'koi8':\n case 'koi8-r':\n case 'koi8_r':\n return 'KOI8-R'\n case 'koi8-ru':\n case 'koi8-u':\n return 'KOI8-U'\n case 'csmacintosh':\n case 'mac':\n case 'macintosh':\n case 'x-mac-roman':\n return 'macintosh'\n case 'iso-8859-11':\n case 'iso8859-11':\n case 'iso885911':\n case 'tis-620':\n case 'windows-874':\n return 'windows-874'\n case 'cp1250':\n case 'windows-1250':\n case 'x-cp1250':\n return 'windows-1250'\n case 'cp1251':\n case 'windows-1251':\n case 'x-cp1251':\n return 'windows-1251'\n case 'ansi_x3.4-1968':\n case 'ascii':\n case 'cp1252':\n case 'cp819':\n case 'csisolatin1':\n case 'ibm819':\n case 'iso-8859-1':\n case 'iso-ir-100':\n case 'iso8859-1':\n case 'iso88591':\n case 'iso_8859-1':\n case 'iso_8859-1:1987':\n case 'l1':\n case 'latin1':\n case 'us-ascii':\n case 'windows-1252':\n case 'x-cp1252':\n return 'windows-1252'\n case 'cp1253':\n case 'windows-1253':\n case 'x-cp1253':\n return 'windows-1253'\n case 'cp1254':\n case 'csisolatin5':\n case 'iso-8859-9':\n case 'iso-ir-148':\n case 'iso8859-9':\n case 'iso88599':\n case 'iso_8859-9':\n case 'iso_8859-9:1989':\n case 'l5':\n case 'latin5':\n case 'windows-1254':\n case 'x-cp1254':\n return 'windows-1254'\n case 'cp1255':\n case 'windows-1255':\n case 'x-cp1255':\n return 'windows-1255'\n case 'cp1256':\n case 'windows-1256':\n case 'x-cp1256':\n return 'windows-1256'\n case 'cp1257':\n case 'windows-1257':\n case 'x-cp1257':\n return 'windows-1257'\n case 'cp1258':\n case 'windows-1258':\n case 'x-cp1258':\n return 'windows-1258'\n case 'x-mac-cyrillic':\n case 'x-mac-ukrainian':\n return 'x-mac-cyrillic'\n case 'chinese':\n case 'csgb2312':\n case 'csiso58gb231280':\n case 'gb2312':\n case 'gb_2312':\n case 'gb_2312-80':\n case 'gbk':\n case 'iso-ir-58':\n case 'x-gbk':\n return 'GBK'\n case 'gb18030':\n return 'gb18030'\n case 'big5':\n case 'big5-hkscs':\n case 'cn-big5':\n case 'csbig5':\n case 'x-x-big5':\n return 'Big5'\n case 'cseucpkdfmtjapanese':\n case 'euc-jp':\n case 'x-euc-jp':\n return 'EUC-JP'\n case 'csiso2022jp':\n case 'iso-2022-jp':\n return 'ISO-2022-JP'\n case 'csshiftjis':\n case 'ms932':\n case 'ms_kanji':\n case 'shift-jis':\n case 'shift_jis':\n case 'sjis':\n case 'windows-31j':\n case 'x-sjis':\n return 'Shift_JIS'\n case 'cseuckr':\n case 'csksc56011987':\n case 'euc-kr':\n case 'iso-ir-149':\n case 'korean':\n case 'ks_c_5601-1987':\n case 'ks_c_5601-1989':\n case 'ksc5601':\n case 'ksc_5601':\n case 'windows-949':\n return 'EUC-KR'\n case 'csiso2022kr':\n case 'hz-gb-2312':\n case 'iso-2022-cn':\n case 'iso-2022-cn-ext':\n case 'iso-2022-kr':\n case 'replacement':\n return 'replacement'\n case 'unicodefffe':\n case 'utf-16be':\n return 'UTF-16BE'\n case 'csunicode':\n case 'iso-10646-ucs-2':\n case 'ucs-2':\n case 'unicode':\n case 'unicodefeff':\n case 'utf-16':\n case 'utf-16le':\n return 'UTF-16LE'\n case 'x-user-defined':\n return 'x-user-defined'\n default: return 'failure'\n }\n}\n\nmodule.exports = {\n getEncoding\n}\n", "'use strict'\n\nconst {\n kState,\n kError,\n kResult,\n kAborted,\n kLastProgressEventFired\n} = require('./symbols')\nconst { ProgressEvent } = require('./progressevent')\nconst { getEncoding } = require('./encoding')\nconst { serializeAMimeType, parseMIMEType } = require('../fetch/data-url')\nconst { types } = require('node:util')\nconst { StringDecoder } = require('string_decoder')\nconst { btoa } = require('node:buffer')\n\n/** @type {PropertyDescriptor} */\nconst staticPropertyDescriptors = {\n enumerable: true,\n writable: false,\n configurable: false\n}\n\n/**\n * @see https://w3c.github.io/FileAPI/#readOperation\n * @param {import('./filereader').FileReader} fr\n * @param {import('buffer').Blob} blob\n * @param {string} type\n * @param {string?} encodingName\n */\nfunction readOperation (fr, blob, type, encodingName) {\n // 1. If fr\u2019s state is \"loading\", throw an InvalidStateError\n // DOMException.\n if (fr[kState] === 'loading') {\n throw new DOMException('Invalid state', 'InvalidStateError')\n }\n\n // 2. Set fr\u2019s state to \"loading\".\n fr[kState] = 'loading'\n\n // 3. Set fr\u2019s result to null.\n fr[kResult] = null\n\n // 4. Set fr\u2019s error to null.\n fr[kError] = null\n\n // 5. Let stream be the result of calling get stream on blob.\n /** @type {import('stream/web').ReadableStream} */\n const stream = blob.stream()\n\n // 6. Let reader be the result of getting a reader from stream.\n const reader = stream.getReader()\n\n // 7. Let bytes be an empty byte sequence.\n /** @type {Uint8Array[]} */\n const bytes = []\n\n // 8. Let chunkPromise be the result of reading a chunk from\n // stream with reader.\n let chunkPromise = reader.read()\n\n // 9. Let isFirstChunk be true.\n let isFirstChunk = true\n\n // 10. In parallel, while true:\n // Note: \"In parallel\" just means non-blocking\n // Note 2: readOperation itself cannot be async as double\n // reading the body would then reject the promise, instead\n // of throwing an error.\n ;(async () => {\n while (!fr[kAborted]) {\n // 1. Wait for chunkPromise to be fulfilled or rejected.\n try {\n const { done, value } = await chunkPromise\n\n // 2. If chunkPromise is fulfilled, and isFirstChunk is\n // true, queue a task to fire a progress event called\n // loadstart at fr.\n if (isFirstChunk && !fr[kAborted]) {\n queueMicrotask(() => {\n fireAProgressEvent('loadstart', fr)\n })\n }\n\n // 3. Set isFirstChunk to false.\n isFirstChunk = false\n\n // 4. If chunkPromise is fulfilled with an object whose\n // done property is false and whose value property is\n // a Uint8Array object, run these steps:\n if (!done && types.isUint8Array(value)) {\n // 1. Let bs be the byte sequence represented by the\n // Uint8Array object.\n\n // 2. Append bs to bytes.\n bytes.push(value)\n\n // 3. If roughly 50ms have passed since these steps\n // were last invoked, queue a task to fire a\n // progress event called progress at fr.\n if (\n (\n fr[kLastProgressEventFired] === undefined ||\n Date.now() - fr[kLastProgressEventFired] >= 50\n ) &&\n !fr[kAborted]\n ) {\n fr[kLastProgressEventFired] = Date.now()\n queueMicrotask(() => {\n fireAProgressEvent('progress', fr)\n })\n }\n\n // 4. Set chunkPromise to the result of reading a\n // chunk from stream with reader.\n chunkPromise = reader.read()\n } else if (done) {\n // 5. Otherwise, if chunkPromise is fulfilled with an\n // object whose done property is true, queue a task\n // to run the following steps and abort this algorithm:\n queueMicrotask(() => {\n // 1. Set fr\u2019s state to \"done\".\n fr[kState] = 'done'\n\n // 2. Let result be the result of package data given\n // bytes, type, blob\u2019s type, and encodingName.\n try {\n const result = packageData(bytes, type, blob.type, encodingName)\n\n // 4. Else:\n\n if (fr[kAborted]) {\n return\n }\n\n // 1. Set fr\u2019s result to result.\n fr[kResult] = result\n\n // 2. Fire a progress event called load at the fr.\n fireAProgressEvent('load', fr)\n } catch (error) {\n // 3. If package data threw an exception error:\n\n // 1. Set fr\u2019s error to error.\n fr[kError] = error\n\n // 2. Fire a progress event called error at fr.\n fireAProgressEvent('error', fr)\n }\n\n // 5. If fr\u2019s state is not \"loading\", fire a progress\n // event called loadend at the fr.\n if (fr[kState] !== 'loading') {\n fireAProgressEvent('loadend', fr)\n }\n })\n\n break\n }\n } catch (error) {\n if (fr[kAborted]) {\n return\n }\n\n // 6. Otherwise, if chunkPromise is rejected with an\n // error error, queue a task to run the following\n // steps and abort this algorithm:\n queueMicrotask(() => {\n // 1. Set fr\u2019s state to \"done\".\n fr[kState] = 'done'\n\n // 2. Set fr\u2019s error to error.\n fr[kError] = error\n\n // 3. Fire a progress event called error at fr.\n fireAProgressEvent('error', fr)\n\n // 4. If fr\u2019s state is not \"loading\", fire a progress\n // event called loadend at fr.\n if (fr[kState] !== 'loading') {\n fireAProgressEvent('loadend', fr)\n }\n })\n\n break\n }\n }\n })()\n}\n\n/**\n * @see https://w3c.github.io/FileAPI/#fire-a-progress-event\n * @see https://dom.spec.whatwg.org/#concept-event-fire\n * @param {string} e The name of the event\n * @param {import('./filereader').FileReader} reader\n */\nfunction fireAProgressEvent (e, reader) {\n // The progress event e does not bubble. e.bubbles must be false\n // The progress event e is NOT cancelable. e.cancelable must be false\n const event = new ProgressEvent(e, {\n bubbles: false,\n cancelable: false\n })\n\n reader.dispatchEvent(event)\n}\n\n/**\n * @see https://w3c.github.io/FileAPI/#blob-package-data\n * @param {Uint8Array[]} bytes\n * @param {string} type\n * @param {string?} mimeType\n * @param {string?} encodingName\n */\nfunction packageData (bytes, type, mimeType, encodingName) {\n // 1. A Blob has an associated package data algorithm, given\n // bytes, a type, a optional mimeType, and a optional\n // encodingName, which switches on type and runs the\n // associated steps:\n\n switch (type) {\n case 'DataURL': {\n // 1. Return bytes as a DataURL [RFC2397] subject to\n // the considerations below:\n // * Use mimeType as part of the Data URL if it is\n // available in keeping with the Data URL\n // specification [RFC2397].\n // * If mimeType is not available return a Data URL\n // without a media-type. [RFC2397].\n\n // https://datatracker.ietf.org/doc/html/rfc2397#section-3\n // dataurl := \"data:\" [ mediatype ] [ \";base64\" ] \",\" data\n // mediatype := [ type \"/\" subtype ] *( \";\" parameter )\n // data := *urlchar\n // parameter := attribute \"=\" value\n let dataURL = 'data:'\n\n const parsed = parseMIMEType(mimeType || 'application/octet-stream')\n\n if (parsed !== 'failure') {\n dataURL += serializeAMimeType(parsed)\n }\n\n dataURL += ';base64,'\n\n const decoder = new StringDecoder('latin1')\n\n for (const chunk of bytes) {\n dataURL += btoa(decoder.write(chunk))\n }\n\n dataURL += btoa(decoder.end())\n\n return dataURL\n }\n case 'Text': {\n // 1. Let encoding be failure\n let encoding = 'failure'\n\n // 2. If the encodingName is present, set encoding to the\n // result of getting an encoding from encodingName.\n if (encodingName) {\n encoding = getEncoding(encodingName)\n }\n\n // 3. If encoding is failure, and mimeType is present:\n if (encoding === 'failure' && mimeType) {\n // 1. Let type be the result of parse a MIME type\n // given mimeType.\n const type = parseMIMEType(mimeType)\n\n // 2. If type is not failure, set encoding to the result\n // of getting an encoding from type\u2019s parameters[\"charset\"].\n if (type !== 'failure') {\n encoding = getEncoding(type.parameters.get('charset'))\n }\n }\n\n // 4. If encoding is failure, then set encoding to UTF-8.\n if (encoding === 'failure') {\n encoding = 'UTF-8'\n }\n\n // 5. Decode bytes using fallback encoding encoding, and\n // return the result.\n return decode(bytes, encoding)\n }\n case 'ArrayBuffer': {\n // Return a new ArrayBuffer whose contents are bytes.\n const sequence = combineByteSequences(bytes)\n\n return sequence.buffer\n }\n case 'BinaryString': {\n // Return bytes as a binary string, in which every byte\n // is represented by a code unit of equal value [0..255].\n let binaryString = ''\n\n const decoder = new StringDecoder('latin1')\n\n for (const chunk of bytes) {\n binaryString += decoder.write(chunk)\n }\n\n binaryString += decoder.end()\n\n return binaryString\n }\n }\n}\n\n/**\n * @see https://encoding.spec.whatwg.org/#decode\n * @param {Uint8Array[]} ioQueue\n * @param {string} encoding\n */\nfunction decode (ioQueue, encoding) {\n const bytes = combineByteSequences(ioQueue)\n\n // 1. Let BOMEncoding be the result of BOM sniffing ioQueue.\n const BOMEncoding = BOMSniffing(bytes)\n\n let slice = 0\n\n // 2. If BOMEncoding is non-null:\n if (BOMEncoding !== null) {\n // 1. Set encoding to BOMEncoding.\n encoding = BOMEncoding\n\n // 2. Read three bytes from ioQueue, if BOMEncoding is\n // UTF-8; otherwise read two bytes.\n // (Do nothing with those bytes.)\n slice = BOMEncoding === 'UTF-8' ? 3 : 2\n }\n\n // 3. Process a queue with an instance of encoding\u2019s\n // decoder, ioQueue, output, and \"replacement\".\n\n // 4. Return output.\n\n const sliced = bytes.slice(slice)\n return new TextDecoder(encoding).decode(sliced)\n}\n\n/**\n * @see https://encoding.spec.whatwg.org/#bom-sniff\n * @param {Uint8Array} ioQueue\n */\nfunction BOMSniffing (ioQueue) {\n // 1. Let BOM be the result of peeking 3 bytes from ioQueue,\n // converted to a byte sequence.\n const [a, b, c] = ioQueue\n\n // 2. For each of the rows in the table below, starting with\n // the first one and going down, if BOM starts with the\n // bytes given in the first column, then return the\n // encoding given in the cell in the second column of that\n // row. Otherwise, return null.\n if (a === 0xEF && b === 0xBB && c === 0xBF) {\n return 'UTF-8'\n } else if (a === 0xFE && b === 0xFF) {\n return 'UTF-16BE'\n } else if (a === 0xFF && b === 0xFE) {\n return 'UTF-16LE'\n }\n\n return null\n}\n\n/**\n * @param {Uint8Array[]} sequences\n */\nfunction combineByteSequences (sequences) {\n const size = sequences.reduce((a, b) => {\n return a + b.byteLength\n }, 0)\n\n let offset = 0\n\n return sequences.reduce((a, b) => {\n a.set(b, offset)\n offset += b.byteLength\n return a\n }, new Uint8Array(size))\n}\n\nmodule.exports = {\n staticPropertyDescriptors,\n readOperation,\n fireAProgressEvent\n}\n", "'use strict'\n\nconst {\n staticPropertyDescriptors,\n readOperation,\n fireAProgressEvent\n} = require('./util')\nconst {\n kState,\n kError,\n kResult,\n kEvents,\n kAborted\n} = require('./symbols')\nconst { webidl } = require('../fetch/webidl')\nconst { kEnumerableProperty } = require('../../core/util')\n\nclass FileReader extends EventTarget {\n constructor () {\n super()\n\n this[kState] = 'empty'\n this[kResult] = null\n this[kError] = null\n this[kEvents] = {\n loadend: null,\n error: null,\n abort: null,\n load: null,\n progress: null,\n loadstart: null\n }\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dfn-readAsArrayBuffer\n * @param {import('buffer').Blob} blob\n */\n readAsArrayBuffer (blob) {\n webidl.brandCheck(this, FileReader)\n\n webidl.argumentLengthCheck(arguments, 1, 'FileReader.readAsArrayBuffer')\n\n blob = webidl.converters.Blob(blob, { strict: false })\n\n // The readAsArrayBuffer(blob) method, when invoked,\n // must initiate a read operation for blob with ArrayBuffer.\n readOperation(this, blob, 'ArrayBuffer')\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#readAsBinaryString\n * @param {import('buffer').Blob} blob\n */\n readAsBinaryString (blob) {\n webidl.brandCheck(this, FileReader)\n\n webidl.argumentLengthCheck(arguments, 1, 'FileReader.readAsBinaryString')\n\n blob = webidl.converters.Blob(blob, { strict: false })\n\n // The readAsBinaryString(blob) method, when invoked,\n // must initiate a read operation for blob with BinaryString.\n readOperation(this, blob, 'BinaryString')\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#readAsDataText\n * @param {import('buffer').Blob} blob\n * @param {string?} encoding\n */\n readAsText (blob, encoding = undefined) {\n webidl.brandCheck(this, FileReader)\n\n webidl.argumentLengthCheck(arguments, 1, 'FileReader.readAsText')\n\n blob = webidl.converters.Blob(blob, { strict: false })\n\n if (encoding !== undefined) {\n encoding = webidl.converters.DOMString(encoding, 'FileReader.readAsText', 'encoding')\n }\n\n // The readAsText(blob, encoding) method, when invoked,\n // must initiate a read operation for blob with Text and encoding.\n readOperation(this, blob, 'Text', encoding)\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dfn-readAsDataURL\n * @param {import('buffer').Blob} blob\n */\n readAsDataURL (blob) {\n webidl.brandCheck(this, FileReader)\n\n webidl.argumentLengthCheck(arguments, 1, 'FileReader.readAsDataURL')\n\n blob = webidl.converters.Blob(blob, { strict: false })\n\n // The readAsDataURL(blob) method, when invoked, must\n // initiate a read operation for blob with DataURL.\n readOperation(this, blob, 'DataURL')\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dfn-abort\n */\n abort () {\n // 1. If this's state is \"empty\" or if this's state is\n // \"done\" set this's result to null and terminate\n // this algorithm.\n if (this[kState] === 'empty' || this[kState] === 'done') {\n this[kResult] = null\n return\n }\n\n // 2. If this's state is \"loading\" set this's state to\n // \"done\" and set this's result to null.\n if (this[kState] === 'loading') {\n this[kState] = 'done'\n this[kResult] = null\n }\n\n // 3. If there are any tasks from this on the file reading\n // task source in an affiliated task queue, then remove\n // those tasks from that task queue.\n this[kAborted] = true\n\n // 4. Terminate the algorithm for the read method being processed.\n // TODO\n\n // 5. Fire a progress event called abort at this.\n fireAProgressEvent('abort', this)\n\n // 6. If this's state is not \"loading\", fire a progress\n // event called loadend at this.\n if (this[kState] !== 'loading') {\n fireAProgressEvent('loadend', this)\n }\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dom-filereader-readystate\n */\n get readyState () {\n webidl.brandCheck(this, FileReader)\n\n switch (this[kState]) {\n case 'empty': return this.EMPTY\n case 'loading': return this.LOADING\n case 'done': return this.DONE\n }\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dom-filereader-result\n */\n get result () {\n webidl.brandCheck(this, FileReader)\n\n // The result attribute\u2019s getter, when invoked, must return\n // this's result.\n return this[kResult]\n }\n\n /**\n * @see https://w3c.github.io/FileAPI/#dom-filereader-error\n */\n get error () {\n webidl.brandCheck(this, FileReader)\n\n // The error attribute\u2019s getter, when invoked, must return\n // this's error.\n return this[kError]\n }\n\n get onloadend () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].loadend\n }\n\n set onloadend (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].loadend) {\n this.removeEventListener('loadend', this[kEvents].loadend)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].loadend = fn\n this.addEventListener('loadend', fn)\n } else {\n this[kEvents].loadend = null\n }\n }\n\n get onerror () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].error\n }\n\n set onerror (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].error) {\n this.removeEventListener('error', this[kEvents].error)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].error = fn\n this.addEventListener('error', fn)\n } else {\n this[kEvents].error = null\n }\n }\n\n get onloadstart () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].loadstart\n }\n\n set onloadstart (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].loadstart) {\n this.removeEventListener('loadstart', this[kEvents].loadstart)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].loadstart = fn\n this.addEventListener('loadstart', fn)\n } else {\n this[kEvents].loadstart = null\n }\n }\n\n get onprogress () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].progress\n }\n\n set onprogress (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].progress) {\n this.removeEventListener('progress', this[kEvents].progress)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].progress = fn\n this.addEventListener('progress', fn)\n } else {\n this[kEvents].progress = null\n }\n }\n\n get onload () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].load\n }\n\n set onload (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].load) {\n this.removeEventListener('load', this[kEvents].load)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].load = fn\n this.addEventListener('load', fn)\n } else {\n this[kEvents].load = null\n }\n }\n\n get onabort () {\n webidl.brandCheck(this, FileReader)\n\n return this[kEvents].abort\n }\n\n set onabort (fn) {\n webidl.brandCheck(this, FileReader)\n\n if (this[kEvents].abort) {\n this.removeEventListener('abort', this[kEvents].abort)\n }\n\n if (typeof fn === 'function') {\n this[kEvents].abort = fn\n this.addEventListener('abort', fn)\n } else {\n this[kEvents].abort = null\n }\n }\n}\n\n// https://w3c.github.io/FileAPI/#dom-filereader-empty\nFileReader.EMPTY = FileReader.prototype.EMPTY = 0\n// https://w3c.github.io/FileAPI/#dom-filereader-loading\nFileReader.LOADING = FileReader.prototype.LOADING = 1\n// https://w3c.github.io/FileAPI/#dom-filereader-done\nFileReader.DONE = FileReader.prototype.DONE = 2\n\nObject.defineProperties(FileReader.prototype, {\n EMPTY: staticPropertyDescriptors,\n LOADING: staticPropertyDescriptors,\n DONE: staticPropertyDescriptors,\n readAsArrayBuffer: kEnumerableProperty,\n readAsBinaryString: kEnumerableProperty,\n readAsText: kEnumerableProperty,\n readAsDataURL: kEnumerableProperty,\n abort: kEnumerableProperty,\n readyState: kEnumerableProperty,\n result: kEnumerableProperty,\n error: kEnumerableProperty,\n onloadstart: kEnumerableProperty,\n onprogress: kEnumerableProperty,\n onload: kEnumerableProperty,\n onabort: kEnumerableProperty,\n onerror: kEnumerableProperty,\n onloadend: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'FileReader',\n writable: false,\n enumerable: false,\n configurable: true\n }\n})\n\nObject.defineProperties(FileReader, {\n EMPTY: staticPropertyDescriptors,\n LOADING: staticPropertyDescriptors,\n DONE: staticPropertyDescriptors\n})\n\nmodule.exports = {\n FileReader\n}\n", "'use strict'\n\nmodule.exports = {\n kConstruct: require('../../core/symbols').kConstruct\n}\n", "'use strict'\n\nconst assert = require('node:assert')\nconst { URLSerializer } = require('../fetch/data-url')\nconst { isValidHeaderName } = require('../fetch/util')\n\n/**\n * @see https://url.spec.whatwg.org/#concept-url-equals\n * @param {URL} A\n * @param {URL} B\n * @param {boolean | undefined} excludeFragment\n * @returns {boolean}\n */\nfunction urlEquals (A, B, excludeFragment = false) {\n const serializedA = URLSerializer(A, excludeFragment)\n\n const serializedB = URLSerializer(B, excludeFragment)\n\n return serializedA === serializedB\n}\n\n/**\n * @see https://github.com/chromium/chromium/blob/694d20d134cb553d8d89e5500b9148012b1ba299/content/browser/cache_storage/cache_storage_cache.cc#L260-L262\n * @param {string} header\n */\nfunction getFieldValues (header) {\n assert(header !== null)\n\n const values = []\n\n for (let value of header.split(',')) {\n value = value.trim()\n\n if (isValidHeaderName(value)) {\n values.push(value)\n }\n }\n\n return values\n}\n\nmodule.exports = {\n urlEquals,\n getFieldValues\n}\n", "'use strict'\n\nconst { kConstruct } = require('./symbols')\nconst { urlEquals, getFieldValues } = require('./util')\nconst { kEnumerableProperty, isDisturbed } = require('../../core/util')\nconst { webidl } = require('../fetch/webidl')\nconst { Response, cloneResponse, fromInnerResponse } = require('../fetch/response')\nconst { Request, fromInnerRequest } = require('../fetch/request')\nconst { kState } = require('../fetch/symbols')\nconst { fetching } = require('../fetch/index')\nconst { urlIsHttpHttpsScheme, createDeferredPromise, readAllBytes } = require('../fetch/util')\nconst assert = require('node:assert')\n\n/**\n * @see https://w3c.github.io/ServiceWorker/#dfn-cache-batch-operation\n * @typedef {Object} CacheBatchOperation\n * @property {'delete' | 'put'} type\n * @property {any} request\n * @property {any} response\n * @property {import('../../types/cache').CacheQueryOptions} options\n */\n\n/**\n * @see https://w3c.github.io/ServiceWorker/#dfn-request-response-list\n * @typedef {[any, any][]} requestResponseList\n */\n\nclass Cache {\n /**\n * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-request-response-list\n * @type {requestResponseList}\n */\n #relevantRequestResponseList\n\n constructor () {\n if (arguments[0] !== kConstruct) {\n webidl.illegalConstructor()\n }\n\n webidl.util.markAsUncloneable(this)\n this.#relevantRequestResponseList = arguments[1]\n }\n\n async match (request, options = {}) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.match'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n request = webidl.converters.RequestInfo(request, prefix, 'request')\n options = webidl.converters.CacheQueryOptions(options, prefix, 'options')\n\n const p = this.#internalMatchAll(request, options, 1)\n\n if (p.length === 0) {\n return\n }\n\n return p[0]\n }\n\n async matchAll (request = undefined, options = {}) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.matchAll'\n if (request !== undefined) request = webidl.converters.RequestInfo(request, prefix, 'request')\n options = webidl.converters.CacheQueryOptions(options, prefix, 'options')\n\n return this.#internalMatchAll(request, options)\n }\n\n async add (request) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.add'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n request = webidl.converters.RequestInfo(request, prefix, 'request')\n\n // 1.\n const requests = [request]\n\n // 2.\n const responseArrayPromise = this.addAll(requests)\n\n // 3.\n return await responseArrayPromise\n }\n\n async addAll (requests) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.addAll'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n // 1.\n const responsePromises = []\n\n // 2.\n const requestList = []\n\n // 3.\n for (let request of requests) {\n if (request === undefined) {\n throw webidl.errors.conversionFailed({\n prefix,\n argument: 'Argument 1',\n types: ['undefined is not allowed']\n })\n }\n\n request = webidl.converters.RequestInfo(request)\n\n if (typeof request === 'string') {\n continue\n }\n\n // 3.1\n const r = request[kState]\n\n // 3.2\n if (!urlIsHttpHttpsScheme(r.url) || r.method !== 'GET') {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Expected http/s scheme when method is not GET.'\n })\n }\n }\n\n // 4.\n /** @type {ReturnType[]} */\n const fetchControllers = []\n\n // 5.\n for (const request of requests) {\n // 5.1\n const r = new Request(request)[kState]\n\n // 5.2\n if (!urlIsHttpHttpsScheme(r.url)) {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Expected http/s scheme.'\n })\n }\n\n // 5.4\n r.initiator = 'fetch'\n r.destination = 'subresource'\n\n // 5.5\n requestList.push(r)\n\n // 5.6\n const responsePromise = createDeferredPromise()\n\n // 5.7\n fetchControllers.push(fetching({\n request: r,\n processResponse (response) {\n // 1.\n if (response.type === 'error' || response.status === 206 || response.status < 200 || response.status > 299) {\n responsePromise.reject(webidl.errors.exception({\n header: 'Cache.addAll',\n message: 'Received an invalid status code or the request failed.'\n }))\n } else if (response.headersList.contains('vary')) { // 2.\n // 2.1\n const fieldValues = getFieldValues(response.headersList.get('vary'))\n\n // 2.2\n for (const fieldValue of fieldValues) {\n // 2.2.1\n if (fieldValue === '*') {\n responsePromise.reject(webidl.errors.exception({\n header: 'Cache.addAll',\n message: 'invalid vary field value'\n }))\n\n for (const controller of fetchControllers) {\n controller.abort()\n }\n\n return\n }\n }\n }\n },\n processResponseEndOfBody (response) {\n // 1.\n if (response.aborted) {\n responsePromise.reject(new DOMException('aborted', 'AbortError'))\n return\n }\n\n // 2.\n responsePromise.resolve(response)\n }\n }))\n\n // 5.8\n responsePromises.push(responsePromise.promise)\n }\n\n // 6.\n const p = Promise.all(responsePromises)\n\n // 7.\n const responses = await p\n\n // 7.1\n const operations = []\n\n // 7.2\n let index = 0\n\n // 7.3\n for (const response of responses) {\n // 7.3.1\n /** @type {CacheBatchOperation} */\n const operation = {\n type: 'put', // 7.3.2\n request: requestList[index], // 7.3.3\n response // 7.3.4\n }\n\n operations.push(operation) // 7.3.5\n\n index++ // 7.3.6\n }\n\n // 7.5\n const cacheJobPromise = createDeferredPromise()\n\n // 7.6.1\n let errorData = null\n\n // 7.6.2\n try {\n this.#batchCacheOperations(operations)\n } catch (e) {\n errorData = e\n }\n\n // 7.6.3\n queueMicrotask(() => {\n // 7.6.3.1\n if (errorData === null) {\n cacheJobPromise.resolve(undefined)\n } else {\n // 7.6.3.2\n cacheJobPromise.reject(errorData)\n }\n })\n\n // 7.7\n return cacheJobPromise.promise\n }\n\n async put (request, response) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.put'\n webidl.argumentLengthCheck(arguments, 2, prefix)\n\n request = webidl.converters.RequestInfo(request, prefix, 'request')\n response = webidl.converters.Response(response, prefix, 'response')\n\n // 1.\n let innerRequest = null\n\n // 2.\n if (request instanceof Request) {\n innerRequest = request[kState]\n } else { // 3.\n innerRequest = new Request(request)[kState]\n }\n\n // 4.\n if (!urlIsHttpHttpsScheme(innerRequest.url) || innerRequest.method !== 'GET') {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Expected an http/s scheme when method is not GET'\n })\n }\n\n // 5.\n const innerResponse = response[kState]\n\n // 6.\n if (innerResponse.status === 206) {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Got 206 status'\n })\n }\n\n // 7.\n if (innerResponse.headersList.contains('vary')) {\n // 7.1.\n const fieldValues = getFieldValues(innerResponse.headersList.get('vary'))\n\n // 7.2.\n for (const fieldValue of fieldValues) {\n // 7.2.1\n if (fieldValue === '*') {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Got * vary field value'\n })\n }\n }\n }\n\n // 8.\n if (innerResponse.body && (isDisturbed(innerResponse.body.stream) || innerResponse.body.stream.locked)) {\n throw webidl.errors.exception({\n header: prefix,\n message: 'Response body is locked or disturbed'\n })\n }\n\n // 9.\n const clonedResponse = cloneResponse(innerResponse)\n\n // 10.\n const bodyReadPromise = createDeferredPromise()\n\n // 11.\n if (innerResponse.body != null) {\n // 11.1\n const stream = innerResponse.body.stream\n\n // 11.2\n const reader = stream.getReader()\n\n // 11.3\n readAllBytes(reader).then(bodyReadPromise.resolve, bodyReadPromise.reject)\n } else {\n bodyReadPromise.resolve(undefined)\n }\n\n // 12.\n /** @type {CacheBatchOperation[]} */\n const operations = []\n\n // 13.\n /** @type {CacheBatchOperation} */\n const operation = {\n type: 'put', // 14.\n request: innerRequest, // 15.\n response: clonedResponse // 16.\n }\n\n // 17.\n operations.push(operation)\n\n // 19.\n const bytes = await bodyReadPromise.promise\n\n if (clonedResponse.body != null) {\n clonedResponse.body.source = bytes\n }\n\n // 19.1\n const cacheJobPromise = createDeferredPromise()\n\n // 19.2.1\n let errorData = null\n\n // 19.2.2\n try {\n this.#batchCacheOperations(operations)\n } catch (e) {\n errorData = e\n }\n\n // 19.2.3\n queueMicrotask(() => {\n // 19.2.3.1\n if (errorData === null) {\n cacheJobPromise.resolve()\n } else { // 19.2.3.2\n cacheJobPromise.reject(errorData)\n }\n })\n\n return cacheJobPromise.promise\n }\n\n async delete (request, options = {}) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.delete'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n request = webidl.converters.RequestInfo(request, prefix, 'request')\n options = webidl.converters.CacheQueryOptions(options, prefix, 'options')\n\n /**\n * @type {Request}\n */\n let r = null\n\n if (request instanceof Request) {\n r = request[kState]\n\n if (r.method !== 'GET' && !options.ignoreMethod) {\n return false\n }\n } else {\n assert(typeof request === 'string')\n\n r = new Request(request)[kState]\n }\n\n /** @type {CacheBatchOperation[]} */\n const operations = []\n\n /** @type {CacheBatchOperation} */\n const operation = {\n type: 'delete',\n request: r,\n options\n }\n\n operations.push(operation)\n\n const cacheJobPromise = createDeferredPromise()\n\n let errorData = null\n let requestResponses\n\n try {\n requestResponses = this.#batchCacheOperations(operations)\n } catch (e) {\n errorData = e\n }\n\n queueMicrotask(() => {\n if (errorData === null) {\n cacheJobPromise.resolve(!!requestResponses?.length)\n } else {\n cacheJobPromise.reject(errorData)\n }\n })\n\n return cacheJobPromise.promise\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#dom-cache-keys\n * @param {any} request\n * @param {import('../../types/cache').CacheQueryOptions} options\n * @returns {Promise}\n */\n async keys (request = undefined, options = {}) {\n webidl.brandCheck(this, Cache)\n\n const prefix = 'Cache.keys'\n\n if (request !== undefined) request = webidl.converters.RequestInfo(request, prefix, 'request')\n options = webidl.converters.CacheQueryOptions(options, prefix, 'options')\n\n // 1.\n let r = null\n\n // 2.\n if (request !== undefined) {\n // 2.1\n if (request instanceof Request) {\n // 2.1.1\n r = request[kState]\n\n // 2.1.2\n if (r.method !== 'GET' && !options.ignoreMethod) {\n return []\n }\n } else if (typeof request === 'string') { // 2.2\n r = new Request(request)[kState]\n }\n }\n\n // 4.\n const promise = createDeferredPromise()\n\n // 5.\n // 5.1\n const requests = []\n\n // 5.2\n if (request === undefined) {\n // 5.2.1\n for (const requestResponse of this.#relevantRequestResponseList) {\n // 5.2.1.1\n requests.push(requestResponse[0])\n }\n } else { // 5.3\n // 5.3.1\n const requestResponses = this.#queryCache(r, options)\n\n // 5.3.2\n for (const requestResponse of requestResponses) {\n // 5.3.2.1\n requests.push(requestResponse[0])\n }\n }\n\n // 5.4\n queueMicrotask(() => {\n // 5.4.1\n const requestList = []\n\n // 5.4.2\n for (const request of requests) {\n const requestObject = fromInnerRequest(\n request,\n new AbortController().signal,\n 'immutable'\n )\n // 5.4.2.1\n requestList.push(requestObject)\n }\n\n // 5.4.3\n promise.resolve(Object.freeze(requestList))\n })\n\n return promise.promise\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#batch-cache-operations-algorithm\n * @param {CacheBatchOperation[]} operations\n * @returns {requestResponseList}\n */\n #batchCacheOperations (operations) {\n // 1.\n const cache = this.#relevantRequestResponseList\n\n // 2.\n const backupCache = [...cache]\n\n // 3.\n const addedItems = []\n\n // 4.1\n const resultList = []\n\n try {\n // 4.2\n for (const operation of operations) {\n // 4.2.1\n if (operation.type !== 'delete' && operation.type !== 'put') {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'operation type does not match \"delete\" or \"put\"'\n })\n }\n\n // 4.2.2\n if (operation.type === 'delete' && operation.response != null) {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'delete operation should not have an associated response'\n })\n }\n\n // 4.2.3\n if (this.#queryCache(operation.request, operation.options, addedItems).length) {\n throw new DOMException('???', 'InvalidStateError')\n }\n\n // 4.2.4\n let requestResponses\n\n // 4.2.5\n if (operation.type === 'delete') {\n // 4.2.5.1\n requestResponses = this.#queryCache(operation.request, operation.options)\n\n // TODO: the spec is wrong, this is needed to pass WPTs\n if (requestResponses.length === 0) {\n return []\n }\n\n // 4.2.5.2\n for (const requestResponse of requestResponses) {\n const idx = cache.indexOf(requestResponse)\n assert(idx !== -1)\n\n // 4.2.5.2.1\n cache.splice(idx, 1)\n }\n } else if (operation.type === 'put') { // 4.2.6\n // 4.2.6.1\n if (operation.response == null) {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'put operation should have an associated response'\n })\n }\n\n // 4.2.6.2\n const r = operation.request\n\n // 4.2.6.3\n if (!urlIsHttpHttpsScheme(r.url)) {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'expected http or https scheme'\n })\n }\n\n // 4.2.6.4\n if (r.method !== 'GET') {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'not get method'\n })\n }\n\n // 4.2.6.5\n if (operation.options != null) {\n throw webidl.errors.exception({\n header: 'Cache.#batchCacheOperations',\n message: 'options must not be defined'\n })\n }\n\n // 4.2.6.6\n requestResponses = this.#queryCache(operation.request)\n\n // 4.2.6.7\n for (const requestResponse of requestResponses) {\n const idx = cache.indexOf(requestResponse)\n assert(idx !== -1)\n\n // 4.2.6.7.1\n cache.splice(idx, 1)\n }\n\n // 4.2.6.8\n cache.push([operation.request, operation.response])\n\n // 4.2.6.10\n addedItems.push([operation.request, operation.response])\n }\n\n // 4.2.7\n resultList.push([operation.request, operation.response])\n }\n\n // 4.3\n return resultList\n } catch (e) { // 5.\n // 5.1\n this.#relevantRequestResponseList.length = 0\n\n // 5.2\n this.#relevantRequestResponseList = backupCache\n\n // 5.3\n throw e\n }\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#query-cache\n * @param {any} requestQuery\n * @param {import('../../types/cache').CacheQueryOptions} options\n * @param {requestResponseList} targetStorage\n * @returns {requestResponseList}\n */\n #queryCache (requestQuery, options, targetStorage) {\n /** @type {requestResponseList} */\n const resultList = []\n\n const storage = targetStorage ?? this.#relevantRequestResponseList\n\n for (const requestResponse of storage) {\n const [cachedRequest, cachedResponse] = requestResponse\n if (this.#requestMatchesCachedItem(requestQuery, cachedRequest, cachedResponse, options)) {\n resultList.push(requestResponse)\n }\n }\n\n return resultList\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#request-matches-cached-item-algorithm\n * @param {any} requestQuery\n * @param {any} request\n * @param {any | null} response\n * @param {import('../../types/cache').CacheQueryOptions | undefined} options\n * @returns {boolean}\n */\n #requestMatchesCachedItem (requestQuery, request, response = null, options) {\n // if (options?.ignoreMethod === false && request.method === 'GET') {\n // return false\n // }\n\n const queryURL = new URL(requestQuery.url)\n\n const cachedURL = new URL(request.url)\n\n if (options?.ignoreSearch) {\n cachedURL.search = ''\n\n queryURL.search = ''\n }\n\n if (!urlEquals(queryURL, cachedURL, true)) {\n return false\n }\n\n if (\n response == null ||\n options?.ignoreVary ||\n !response.headersList.contains('vary')\n ) {\n return true\n }\n\n const fieldValues = getFieldValues(response.headersList.get('vary'))\n\n for (const fieldValue of fieldValues) {\n if (fieldValue === '*') {\n return false\n }\n\n const requestValue = request.headersList.get(fieldValue)\n const queryValue = requestQuery.headersList.get(fieldValue)\n\n // If one has the header and the other doesn't, or one has\n // a different value than the other, return false\n if (requestValue !== queryValue) {\n return false\n }\n }\n\n return true\n }\n\n #internalMatchAll (request, options, maxResponses = Infinity) {\n // 1.\n let r = null\n\n // 2.\n if (request !== undefined) {\n if (request instanceof Request) {\n // 2.1.1\n r = request[kState]\n\n // 2.1.2\n if (r.method !== 'GET' && !options.ignoreMethod) {\n return []\n }\n } else if (typeof request === 'string') {\n // 2.2.1\n r = new Request(request)[kState]\n }\n }\n\n // 5.\n // 5.1\n const responses = []\n\n // 5.2\n if (request === undefined) {\n // 5.2.1\n for (const requestResponse of this.#relevantRequestResponseList) {\n responses.push(requestResponse[1])\n }\n } else { // 5.3\n // 5.3.1\n const requestResponses = this.#queryCache(r, options)\n\n // 5.3.2\n for (const requestResponse of requestResponses) {\n responses.push(requestResponse[1])\n }\n }\n\n // 5.4\n // We don't implement CORs so we don't need to loop over the responses, yay!\n\n // 5.5.1\n const responseList = []\n\n // 5.5.2\n for (const response of responses) {\n // 5.5.2.1\n const responseObject = fromInnerResponse(response, 'immutable')\n\n responseList.push(responseObject.clone())\n\n if (responseList.length >= maxResponses) {\n break\n }\n }\n\n // 6.\n return Object.freeze(responseList)\n }\n}\n\nObject.defineProperties(Cache.prototype, {\n [Symbol.toStringTag]: {\n value: 'Cache',\n configurable: true\n },\n match: kEnumerableProperty,\n matchAll: kEnumerableProperty,\n add: kEnumerableProperty,\n addAll: kEnumerableProperty,\n put: kEnumerableProperty,\n delete: kEnumerableProperty,\n keys: kEnumerableProperty\n})\n\nconst cacheQueryOptionConverters = [\n {\n key: 'ignoreSearch',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'ignoreMethod',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'ignoreVary',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n }\n]\n\nwebidl.converters.CacheQueryOptions = webidl.dictionaryConverter(cacheQueryOptionConverters)\n\nwebidl.converters.MultiCacheQueryOptions = webidl.dictionaryConverter([\n ...cacheQueryOptionConverters,\n {\n key: 'cacheName',\n converter: webidl.converters.DOMString\n }\n])\n\nwebidl.converters.Response = webidl.interfaceConverter(Response)\n\nwebidl.converters['sequence'] = webidl.sequenceConverter(\n webidl.converters.RequestInfo\n)\n\nmodule.exports = {\n Cache\n}\n", "'use strict'\n\nconst { kConstruct } = require('./symbols')\nconst { Cache } = require('./cache')\nconst { webidl } = require('../fetch/webidl')\nconst { kEnumerableProperty } = require('../../core/util')\n\nclass CacheStorage {\n /**\n * @see https://w3c.github.io/ServiceWorker/#dfn-relevant-name-to-cache-map\n * @type {Map}\n */\n async has (cacheName) {\n webidl.brandCheck(this, CacheStorage)\n\n const prefix = 'CacheStorage.has'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n cacheName = webidl.converters.DOMString(cacheName, prefix, 'cacheName')\n\n // 2.1.1\n // 2.2\n return this.#caches.has(cacheName)\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#dom-cachestorage-open\n * @param {string} cacheName\n * @returns {Promise}\n */\n async open (cacheName) {\n webidl.brandCheck(this, CacheStorage)\n\n const prefix = 'CacheStorage.open'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n cacheName = webidl.converters.DOMString(cacheName, prefix, 'cacheName')\n\n // 2.1\n if (this.#caches.has(cacheName)) {\n // await caches.open('v1') !== await caches.open('v1')\n\n // 2.1.1\n const cache = this.#caches.get(cacheName)\n\n // 2.1.1.1\n return new Cache(kConstruct, cache)\n }\n\n // 2.2\n const cache = []\n\n // 2.3\n this.#caches.set(cacheName, cache)\n\n // 2.4\n return new Cache(kConstruct, cache)\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#cache-storage-delete\n * @param {string} cacheName\n * @returns {Promise}\n */\n async delete (cacheName) {\n webidl.brandCheck(this, CacheStorage)\n\n const prefix = 'CacheStorage.delete'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n cacheName = webidl.converters.DOMString(cacheName, prefix, 'cacheName')\n\n return this.#caches.delete(cacheName)\n }\n\n /**\n * @see https://w3c.github.io/ServiceWorker/#cache-storage-keys\n * @returns {Promise}\n */\n async keys () {\n webidl.brandCheck(this, CacheStorage)\n\n // 2.1\n const keys = this.#caches.keys()\n\n // 2.2\n return [...keys]\n }\n}\n\nObject.defineProperties(CacheStorage.prototype, {\n [Symbol.toStringTag]: {\n value: 'CacheStorage',\n configurable: true\n },\n match: kEnumerableProperty,\n has: kEnumerableProperty,\n open: kEnumerableProperty,\n delete: kEnumerableProperty,\n keys: kEnumerableProperty\n})\n\nmodule.exports = {\n CacheStorage\n}\n", "'use strict'\n\n// https://wicg.github.io/cookie-store/#cookie-maximum-attribute-value-size\nconst maxAttributeValueSize = 1024\n\n// https://wicg.github.io/cookie-store/#cookie-maximum-name-value-pair-size\nconst maxNameValuePairSize = 4096\n\nmodule.exports = {\n maxAttributeValueSize,\n maxNameValuePairSize\n}\n", "'use strict'\n\n/**\n * @param {string} value\n * @returns {boolean}\n */\nfunction isCTLExcludingHtab (value) {\n for (let i = 0; i < value.length; ++i) {\n const code = value.charCodeAt(i)\n\n if (\n (code >= 0x00 && code <= 0x08) ||\n (code >= 0x0A && code <= 0x1F) ||\n code === 0x7F\n ) {\n return true\n }\n }\n return false\n}\n\n/**\n CHAR = \n token = 1*\n separators = \"(\" | \")\" | \"<\" | \">\" | \"@\"\n | \",\" | \";\" | \":\" | \"\\\" | <\">\n | \"/\" | \"[\" | \"]\" | \"?\" | \"=\"\n | \"{\" | \"}\" | SP | HT\n * @param {string} name\n */\nfunction validateCookieName (name) {\n for (let i = 0; i < name.length; ++i) {\n const code = name.charCodeAt(i)\n\n if (\n code < 0x21 || // exclude CTLs (0-31), SP and HT\n code > 0x7E || // exclude non-ascii and DEL\n code === 0x22 || // \"\n code === 0x28 || // (\n code === 0x29 || // )\n code === 0x3C || // <\n code === 0x3E || // >\n code === 0x40 || // @\n code === 0x2C || // ,\n code === 0x3B || // ;\n code === 0x3A || // :\n code === 0x5C || // \\\n code === 0x2F || // /\n code === 0x5B || // [\n code === 0x5D || // ]\n code === 0x3F || // ?\n code === 0x3D || // =\n code === 0x7B || // {\n code === 0x7D // }\n ) {\n throw new Error('Invalid cookie name')\n }\n }\n}\n\n/**\n cookie-value = *cookie-octet / ( DQUOTE *cookie-octet DQUOTE )\n cookie-octet = %x21 / %x23-2B / %x2D-3A / %x3C-5B / %x5D-7E\n ; US-ASCII characters excluding CTLs,\n ; whitespace DQUOTE, comma, semicolon,\n ; and backslash\n * @param {string} value\n */\nfunction validateCookieValue (value) {\n let len = value.length\n let i = 0\n\n // if the value is wrapped in DQUOTE\n if (value[0] === '\"') {\n if (len === 1 || value[len - 1] !== '\"') {\n throw new Error('Invalid cookie value')\n }\n --len\n ++i\n }\n\n while (i < len) {\n const code = value.charCodeAt(i++)\n\n if (\n code < 0x21 || // exclude CTLs (0-31)\n code > 0x7E || // non-ascii and DEL (127)\n code === 0x22 || // \"\n code === 0x2C || // ,\n code === 0x3B || // ;\n code === 0x5C // \\\n ) {\n throw new Error('Invalid cookie value')\n }\n }\n}\n\n/**\n * path-value = \n * @param {string} path\n */\nfunction validateCookiePath (path) {\n for (let i = 0; i < path.length; ++i) {\n const code = path.charCodeAt(i)\n\n if (\n code < 0x20 || // exclude CTLs (0-31)\n code === 0x7F || // DEL\n code === 0x3B // ;\n ) {\n throw new Error('Invalid cookie path')\n }\n }\n}\n\n/**\n * I have no idea why these values aren't allowed to be honest,\n * but Deno tests these. - Khafra\n * @param {string} domain\n */\nfunction validateCookieDomain (domain) {\n if (\n domain.startsWith('-') ||\n domain.endsWith('.') ||\n domain.endsWith('-')\n ) {\n throw new Error('Invalid cookie domain')\n }\n}\n\nconst IMFDays = [\n 'Sun', 'Mon', 'Tue', 'Wed',\n 'Thu', 'Fri', 'Sat'\n]\n\nconst IMFMonths = [\n 'Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun',\n 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'\n]\n\nconst IMFPaddedNumbers = Array(61).fill(0).map((_, i) => i.toString().padStart(2, '0'))\n\n/**\n * @see https://www.rfc-editor.org/rfc/rfc7231#section-7.1.1.1\n * @param {number|Date} date\n IMF-fixdate = day-name \",\" SP date1 SP time-of-day SP GMT\n ; fixed length/zone/capitalization subset of the format\n ; see Section 3.3 of [RFC5322]\n\n day-name = %x4D.6F.6E ; \"Mon\", case-sensitive\n / %x54.75.65 ; \"Tue\", case-sensitive\n / %x57.65.64 ; \"Wed\", case-sensitive\n / %x54.68.75 ; \"Thu\", case-sensitive\n / %x46.72.69 ; \"Fri\", case-sensitive\n / %x53.61.74 ; \"Sat\", case-sensitive\n / %x53.75.6E ; \"Sun\", case-sensitive\n date1 = day SP month SP year\n ; e.g., 02 Jun 1982\n\n day = 2DIGIT\n month = %x4A.61.6E ; \"Jan\", case-sensitive\n / %x46.65.62 ; \"Feb\", case-sensitive\n / %x4D.61.72 ; \"Mar\", case-sensitive\n / %x41.70.72 ; \"Apr\", case-sensitive\n / %x4D.61.79 ; \"May\", case-sensitive\n / %x4A.75.6E ; \"Jun\", case-sensitive\n / %x4A.75.6C ; \"Jul\", case-sensitive\n / %x41.75.67 ; \"Aug\", case-sensitive\n / %x53.65.70 ; \"Sep\", case-sensitive\n / %x4F.63.74 ; \"Oct\", case-sensitive\n / %x4E.6F.76 ; \"Nov\", case-sensitive\n / %x44.65.63 ; \"Dec\", case-sensitive\n year = 4DIGIT\n\n GMT = %x47.4D.54 ; \"GMT\", case-sensitive\n\n time-of-day = hour \":\" minute \":\" second\n ; 00:00:00 - 23:59:60 (leap second)\n\n hour = 2DIGIT\n minute = 2DIGIT\n second = 2DIGIT\n */\nfunction toIMFDate (date) {\n if (typeof date === 'number') {\n date = new Date(date)\n }\n\n return `${IMFDays[date.getUTCDay()]}, ${IMFPaddedNumbers[date.getUTCDate()]} ${IMFMonths[date.getUTCMonth()]} ${date.getUTCFullYear()} ${IMFPaddedNumbers[date.getUTCHours()]}:${IMFPaddedNumbers[date.getUTCMinutes()]}:${IMFPaddedNumbers[date.getUTCSeconds()]} GMT`\n}\n\n/**\n max-age-av = \"Max-Age=\" non-zero-digit *DIGIT\n ; In practice, both expires-av and max-age-av\n ; are limited to dates representable by the\n ; user agent.\n * @param {number} maxAge\n */\nfunction validateCookieMaxAge (maxAge) {\n if (maxAge < 0) {\n throw new Error('Invalid cookie max-age')\n }\n}\n\n/**\n * @see https://www.rfc-editor.org/rfc/rfc6265#section-4.1.1\n * @param {import('./index').Cookie} cookie\n */\nfunction stringify (cookie) {\n if (cookie.name.length === 0) {\n return null\n }\n\n validateCookieName(cookie.name)\n validateCookieValue(cookie.value)\n\n const out = [`${cookie.name}=${cookie.value}`]\n\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-cookie-prefixes-00#section-3.1\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-cookie-prefixes-00#section-3.2\n if (cookie.name.startsWith('__Secure-')) {\n cookie.secure = true\n }\n\n if (cookie.name.startsWith('__Host-')) {\n cookie.secure = true\n cookie.domain = null\n cookie.path = '/'\n }\n\n if (cookie.secure) {\n out.push('Secure')\n }\n\n if (cookie.httpOnly) {\n out.push('HttpOnly')\n }\n\n if (typeof cookie.maxAge === 'number') {\n validateCookieMaxAge(cookie.maxAge)\n out.push(`Max-Age=${cookie.maxAge}`)\n }\n\n if (cookie.domain) {\n validateCookieDomain(cookie.domain)\n out.push(`Domain=${cookie.domain}`)\n }\n\n if (cookie.path) {\n validateCookiePath(cookie.path)\n out.push(`Path=${cookie.path}`)\n }\n\n if (cookie.expires && cookie.expires.toString() !== 'Invalid Date') {\n out.push(`Expires=${toIMFDate(cookie.expires)}`)\n }\n\n if (cookie.sameSite) {\n out.push(`SameSite=${cookie.sameSite}`)\n }\n\n for (const part of cookie.unparsed) {\n if (!part.includes('=')) {\n throw new Error('Invalid unparsed')\n }\n\n const [key, ...value] = part.split('=')\n\n out.push(`${key.trim()}=${value.join('=')}`)\n }\n\n return out.join('; ')\n}\n\nmodule.exports = {\n isCTLExcludingHtab,\n validateCookieName,\n validateCookiePath,\n validateCookieValue,\n toIMFDate,\n stringify\n}\n", "'use strict'\n\nconst { maxNameValuePairSize, maxAttributeValueSize } = require('./constants')\nconst { isCTLExcludingHtab } = require('./util')\nconst { collectASequenceOfCodePointsFast } = require('../fetch/data-url')\nconst assert = require('node:assert')\n\n/**\n * @description Parses the field-value attributes of a set-cookie header string.\n * @see https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4\n * @param {string} header\n * @returns if the header is invalid, null will be returned\n */\nfunction parseSetCookie (header) {\n // 1. If the set-cookie-string contains a %x00-08 / %x0A-1F / %x7F\n // character (CTL characters excluding HTAB): Abort these steps and\n // ignore the set-cookie-string entirely.\n if (isCTLExcludingHtab(header)) {\n return null\n }\n\n let nameValuePair = ''\n let unparsedAttributes = ''\n let name = ''\n let value = ''\n\n // 2. If the set-cookie-string contains a %x3B (\";\") character:\n if (header.includes(';')) {\n // 1. The name-value-pair string consists of the characters up to,\n // but not including, the first %x3B (\";\"), and the unparsed-\n // attributes consist of the remainder of the set-cookie-string\n // (including the %x3B (\";\") in question).\n const position = { position: 0 }\n\n nameValuePair = collectASequenceOfCodePointsFast(';', header, position)\n unparsedAttributes = header.slice(position.position)\n } else {\n // Otherwise:\n\n // 1. The name-value-pair string consists of all the characters\n // contained in the set-cookie-string, and the unparsed-\n // attributes is the empty string.\n nameValuePair = header\n }\n\n // 3. If the name-value-pair string lacks a %x3D (\"=\") character, then\n // the name string is empty, and the value string is the value of\n // name-value-pair.\n if (!nameValuePair.includes('=')) {\n value = nameValuePair\n } else {\n // Otherwise, the name string consists of the characters up to, but\n // not including, the first %x3D (\"=\") character, and the (possibly\n // empty) value string consists of the characters after the first\n // %x3D (\"=\") character.\n const position = { position: 0 }\n name = collectASequenceOfCodePointsFast(\n '=',\n nameValuePair,\n position\n )\n value = nameValuePair.slice(position.position + 1)\n }\n\n // 4. Remove any leading or trailing WSP characters from the name\n // string and the value string.\n name = name.trim()\n value = value.trim()\n\n // 5. If the sum of the lengths of the name string and the value string\n // is more than 4096 octets, abort these steps and ignore the set-\n // cookie-string entirely.\n if (name.length + value.length > maxNameValuePairSize) {\n return null\n }\n\n // 6. The cookie-name is the name string, and the cookie-value is the\n // value string.\n return {\n name, value, ...parseUnparsedAttributes(unparsedAttributes)\n }\n}\n\n/**\n * Parses the remaining attributes of a set-cookie header\n * @see https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4\n * @param {string} unparsedAttributes\n * @param {[Object.]={}} cookieAttributeList\n */\nfunction parseUnparsedAttributes (unparsedAttributes, cookieAttributeList = {}) {\n // 1. If the unparsed-attributes string is empty, skip the rest of\n // these steps.\n if (unparsedAttributes.length === 0) {\n return cookieAttributeList\n }\n\n // 2. Discard the first character of the unparsed-attributes (which\n // will be a %x3B (\";\") character).\n assert(unparsedAttributes[0] === ';')\n unparsedAttributes = unparsedAttributes.slice(1)\n\n let cookieAv = ''\n\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n if (unparsedAttributes.includes(';')) {\n // 1. Consume the characters of the unparsed-attributes up to, but\n // not including, the first %x3B (\";\") character.\n cookieAv = collectASequenceOfCodePointsFast(\n ';',\n unparsedAttributes,\n { position: 0 }\n )\n unparsedAttributes = unparsedAttributes.slice(cookieAv.length)\n } else {\n // Otherwise:\n\n // 1. Consume the remainder of the unparsed-attributes.\n cookieAv = unparsedAttributes\n unparsedAttributes = ''\n }\n\n // Let the cookie-av string be the characters consumed in this step.\n\n let attributeName = ''\n let attributeValue = ''\n\n // 4. If the cookie-av string contains a %x3D (\"=\") character:\n if (cookieAv.includes('=')) {\n // 1. The (possibly empty) attribute-name string consists of the\n // characters up to, but not including, the first %x3D (\"=\")\n // character, and the (possibly empty) attribute-value string\n // consists of the characters after the first %x3D (\"=\")\n // character.\n const position = { position: 0 }\n\n attributeName = collectASequenceOfCodePointsFast(\n '=',\n cookieAv,\n position\n )\n attributeValue = cookieAv.slice(position.position + 1)\n } else {\n // Otherwise:\n\n // 1. The attribute-name string consists of the entire cookie-av\n // string, and the attribute-value string is empty.\n attributeName = cookieAv\n }\n\n // 5. Remove any leading or trailing WSP characters from the attribute-\n // name string and the attribute-value string.\n attributeName = attributeName.trim()\n attributeValue = attributeValue.trim()\n\n // 6. If the attribute-value is longer than 1024 octets, ignore the\n // cookie-av string and return to Step 1 of this algorithm.\n if (attributeValue.length > maxAttributeValueSize) {\n return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList)\n }\n\n // 7. Process the attribute-name and attribute-value according to the\n // requirements in the following subsections. (Notice that\n // attributes with unrecognized attribute-names are ignored.)\n const attributeNameLowercase = attributeName.toLowerCase()\n\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.1\n // If the attribute-name case-insensitively matches the string\n // \"Expires\", the user agent MUST process the cookie-av as follows.\n if (attributeNameLowercase === 'expires') {\n // 1. Let the expiry-time be the result of parsing the attribute-value\n // as cookie-date (see Section 5.1.1).\n const expiryTime = new Date(attributeValue)\n\n // 2. If the attribute-value failed to parse as a cookie date, ignore\n // the cookie-av.\n\n cookieAttributeList.expires = expiryTime\n } else if (attributeNameLowercase === 'max-age') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.2\n // If the attribute-name case-insensitively matches the string \"Max-\n // Age\", the user agent MUST process the cookie-av as follows.\n\n // 1. If the first character of the attribute-value is not a DIGIT or a\n // \"-\" character, ignore the cookie-av.\n const charCode = attributeValue.charCodeAt(0)\n\n if ((charCode < 48 || charCode > 57) && attributeValue[0] !== '-') {\n return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList)\n }\n\n // 2. If the remainder of attribute-value contains a non-DIGIT\n // character, ignore the cookie-av.\n if (!/^\\d+$/.test(attributeValue)) {\n return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList)\n }\n\n // 3. Let delta-seconds be the attribute-value converted to an integer.\n const deltaSeconds = Number(attributeValue)\n\n // 4. Let cookie-age-limit be the maximum age of the cookie (which\n // SHOULD be 400 days or less, see Section 4.1.2.2).\n\n // 5. Set delta-seconds to the smaller of its present value and cookie-\n // age-limit.\n // deltaSeconds = Math.min(deltaSeconds * 1000, maxExpiresMs)\n\n // 6. If delta-seconds is less than or equal to zero (0), let expiry-\n // time be the earliest representable date and time. Otherwise, let\n // the expiry-time be the current date and time plus delta-seconds\n // seconds.\n // const expiryTime = deltaSeconds <= 0 ? Date.now() : Date.now() + deltaSeconds\n\n // 7. Append an attribute to the cookie-attribute-list with an\n // attribute-name of Max-Age and an attribute-value of expiry-time.\n cookieAttributeList.maxAge = deltaSeconds\n } else if (attributeNameLowercase === 'domain') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.3\n // If the attribute-name case-insensitively matches the string \"Domain\",\n // the user agent MUST process the cookie-av as follows.\n\n // 1. Let cookie-domain be the attribute-value.\n let cookieDomain = attributeValue\n\n // 2. If cookie-domain starts with %x2E (\".\"), let cookie-domain be\n // cookie-domain without its leading %x2E (\".\").\n if (cookieDomain[0] === '.') {\n cookieDomain = cookieDomain.slice(1)\n }\n\n // 3. Convert the cookie-domain to lower case.\n cookieDomain = cookieDomain.toLowerCase()\n\n // 4. Append an attribute to the cookie-attribute-list with an\n // attribute-name of Domain and an attribute-value of cookie-domain.\n cookieAttributeList.domain = cookieDomain\n } else if (attributeNameLowercase === 'path') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.4\n // If the attribute-name case-insensitively matches the string \"Path\",\n // the user agent MUST process the cookie-av as follows.\n\n // 1. If the attribute-value is empty or if the first character of the\n // attribute-value is not %x2F (\"/\"):\n let cookiePath = ''\n if (attributeValue.length === 0 || attributeValue[0] !== '/') {\n // 1. Let cookie-path be the default-path.\n cookiePath = '/'\n } else {\n // Otherwise:\n\n // 1. Let cookie-path be the attribute-value.\n cookiePath = attributeValue\n }\n\n // 2. Append an attribute to the cookie-attribute-list with an\n // attribute-name of Path and an attribute-value of cookie-path.\n cookieAttributeList.path = cookiePath\n } else if (attributeNameLowercase === 'secure') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.5\n // If the attribute-name case-insensitively matches the string \"Secure\",\n // the user agent MUST append an attribute to the cookie-attribute-list\n // with an attribute-name of Secure and an empty attribute-value.\n\n cookieAttributeList.secure = true\n } else if (attributeNameLowercase === 'httponly') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.6\n // If the attribute-name case-insensitively matches the string\n // \"HttpOnly\", the user agent MUST append an attribute to the cookie-\n // attribute-list with an attribute-name of HttpOnly and an empty\n // attribute-value.\n\n cookieAttributeList.httpOnly = true\n } else if (attributeNameLowercase === 'samesite') {\n // https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-rfc6265bis#section-5.4.7\n // If the attribute-name case-insensitively matches the string\n // \"SameSite\", the user agent MUST process the cookie-av as follows:\n\n // 1. Let enforcement be \"Default\".\n let enforcement = 'Default'\n\n const attributeValueLowercase = attributeValue.toLowerCase()\n // 2. If cookie-av's attribute-value is a case-insensitive match for\n // \"None\", set enforcement to \"None\".\n if (attributeValueLowercase.includes('none')) {\n enforcement = 'None'\n }\n\n // 3. If cookie-av's attribute-value is a case-insensitive match for\n // \"Strict\", set enforcement to \"Strict\".\n if (attributeValueLowercase.includes('strict')) {\n enforcement = 'Strict'\n }\n\n // 4. If cookie-av's attribute-value is a case-insensitive match for\n // \"Lax\", set enforcement to \"Lax\".\n if (attributeValueLowercase.includes('lax')) {\n enforcement = 'Lax'\n }\n\n // 5. Append an attribute to the cookie-attribute-list with an\n // attribute-name of \"SameSite\" and an attribute-value of\n // enforcement.\n cookieAttributeList.sameSite = enforcement\n } else {\n cookieAttributeList.unparsed ??= []\n\n cookieAttributeList.unparsed.push(`${attributeName}=${attributeValue}`)\n }\n\n // 8. Return to Step 1 of this algorithm.\n return parseUnparsedAttributes(unparsedAttributes, cookieAttributeList)\n}\n\nmodule.exports = {\n parseSetCookie,\n parseUnparsedAttributes\n}\n", "'use strict'\n\nconst { parseSetCookie } = require('./parse')\nconst { stringify } = require('./util')\nconst { webidl } = require('../fetch/webidl')\nconst { Headers } = require('../fetch/headers')\n\n/**\n * @typedef {Object} Cookie\n * @property {string} name\n * @property {string} value\n * @property {Date|number|undefined} expires\n * @property {number|undefined} maxAge\n * @property {string|undefined} domain\n * @property {string|undefined} path\n * @property {boolean|undefined} secure\n * @property {boolean|undefined} httpOnly\n * @property {'Strict'|'Lax'|'None'} sameSite\n * @property {string[]} unparsed\n */\n\n/**\n * @param {Headers} headers\n * @returns {Record}\n */\nfunction getCookies (headers) {\n webidl.argumentLengthCheck(arguments, 1, 'getCookies')\n\n webidl.brandCheck(headers, Headers, { strict: false })\n\n const cookie = headers.get('cookie')\n const out = {}\n\n if (!cookie) {\n return out\n }\n\n for (const piece of cookie.split(';')) {\n const [name, ...value] = piece.split('=')\n\n out[name.trim()] = value.join('=')\n }\n\n return out\n}\n\n/**\n * @param {Headers} headers\n * @param {string} name\n * @param {{ path?: string, domain?: string }|undefined} attributes\n * @returns {void}\n */\nfunction deleteCookie (headers, name, attributes) {\n webidl.brandCheck(headers, Headers, { strict: false })\n\n const prefix = 'deleteCookie'\n webidl.argumentLengthCheck(arguments, 2, prefix)\n\n name = webidl.converters.DOMString(name, prefix, 'name')\n attributes = webidl.converters.DeleteCookieAttributes(attributes)\n\n // Matches behavior of\n // https://github.com/denoland/deno_std/blob/63827b16330b82489a04614027c33b7904e08be5/http/cookie.ts#L278\n setCookie(headers, {\n name,\n value: '',\n expires: new Date(0),\n ...attributes\n })\n}\n\n/**\n * @param {Headers} headers\n * @returns {Cookie[]}\n */\nfunction getSetCookies (headers) {\n webidl.argumentLengthCheck(arguments, 1, 'getSetCookies')\n\n webidl.brandCheck(headers, Headers, { strict: false })\n\n const cookies = headers.getSetCookie()\n\n if (!cookies) {\n return []\n }\n\n return cookies.map((pair) => parseSetCookie(pair))\n}\n\n/**\n * @param {Headers} headers\n * @param {Cookie} cookie\n * @returns {void}\n */\nfunction setCookie (headers, cookie) {\n webidl.argumentLengthCheck(arguments, 2, 'setCookie')\n\n webidl.brandCheck(headers, Headers, { strict: false })\n\n cookie = webidl.converters.Cookie(cookie)\n\n const str = stringify(cookie)\n\n if (str) {\n headers.append('Set-Cookie', str)\n }\n}\n\nwebidl.converters.DeleteCookieAttributes = webidl.dictionaryConverter([\n {\n converter: webidl.nullableConverter(webidl.converters.DOMString),\n key: 'path',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters.DOMString),\n key: 'domain',\n defaultValue: () => null\n }\n])\n\nwebidl.converters.Cookie = webidl.dictionaryConverter([\n {\n converter: webidl.converters.DOMString,\n key: 'name'\n },\n {\n converter: webidl.converters.DOMString,\n key: 'value'\n },\n {\n converter: webidl.nullableConverter((value) => {\n if (typeof value === 'number') {\n return webidl.converters['unsigned long long'](value)\n }\n\n return new Date(value)\n }),\n key: 'expires',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters['long long']),\n key: 'maxAge',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters.DOMString),\n key: 'domain',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters.DOMString),\n key: 'path',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters.boolean),\n key: 'secure',\n defaultValue: () => null\n },\n {\n converter: webidl.nullableConverter(webidl.converters.boolean),\n key: 'httpOnly',\n defaultValue: () => null\n },\n {\n converter: webidl.converters.USVString,\n key: 'sameSite',\n allowedValues: ['Strict', 'Lax', 'None']\n },\n {\n converter: webidl.sequenceConverter(webidl.converters.DOMString),\n key: 'unparsed',\n defaultValue: () => new Array(0)\n }\n])\n\nmodule.exports = {\n getCookies,\n deleteCookie,\n getSetCookies,\n setCookie\n}\n", "'use strict'\n\nconst { webidl } = require('../fetch/webidl')\nconst { kEnumerableProperty } = require('../../core/util')\nconst { kConstruct } = require('../../core/symbols')\nconst { MessagePort } = require('node:worker_threads')\n\n/**\n * @see https://html.spec.whatwg.org/multipage/comms.html#messageevent\n */\nclass MessageEvent extends Event {\n #eventInit\n\n constructor (type, eventInitDict = {}) {\n if (type === kConstruct) {\n super(arguments[1], arguments[2])\n webidl.util.markAsUncloneable(this)\n return\n }\n\n const prefix = 'MessageEvent constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n type = webidl.converters.DOMString(type, prefix, 'type')\n eventInitDict = webidl.converters.MessageEventInit(eventInitDict, prefix, 'eventInitDict')\n\n super(type, eventInitDict)\n\n this.#eventInit = eventInitDict\n webidl.util.markAsUncloneable(this)\n }\n\n get data () {\n webidl.brandCheck(this, MessageEvent)\n\n return this.#eventInit.data\n }\n\n get origin () {\n webidl.brandCheck(this, MessageEvent)\n\n return this.#eventInit.origin\n }\n\n get lastEventId () {\n webidl.brandCheck(this, MessageEvent)\n\n return this.#eventInit.lastEventId\n }\n\n get source () {\n webidl.brandCheck(this, MessageEvent)\n\n return this.#eventInit.source\n }\n\n get ports () {\n webidl.brandCheck(this, MessageEvent)\n\n if (!Object.isFrozen(this.#eventInit.ports)) {\n Object.freeze(this.#eventInit.ports)\n }\n\n return this.#eventInit.ports\n }\n\n initMessageEvent (\n type,\n bubbles = false,\n cancelable = false,\n data = null,\n origin = '',\n lastEventId = '',\n source = null,\n ports = []\n ) {\n webidl.brandCheck(this, MessageEvent)\n\n webidl.argumentLengthCheck(arguments, 1, 'MessageEvent.initMessageEvent')\n\n return new MessageEvent(type, {\n bubbles, cancelable, data, origin, lastEventId, source, ports\n })\n }\n\n static createFastMessageEvent (type, init) {\n const messageEvent = new MessageEvent(kConstruct, type, init)\n messageEvent.#eventInit = init\n messageEvent.#eventInit.data ??= null\n messageEvent.#eventInit.origin ??= ''\n messageEvent.#eventInit.lastEventId ??= ''\n messageEvent.#eventInit.source ??= null\n messageEvent.#eventInit.ports ??= []\n return messageEvent\n }\n}\n\nconst { createFastMessageEvent } = MessageEvent\ndelete MessageEvent.createFastMessageEvent\n\n/**\n * @see https://websockets.spec.whatwg.org/#the-closeevent-interface\n */\nclass CloseEvent extends Event {\n #eventInit\n\n constructor (type, eventInitDict = {}) {\n const prefix = 'CloseEvent constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n type = webidl.converters.DOMString(type, prefix, 'type')\n eventInitDict = webidl.converters.CloseEventInit(eventInitDict)\n\n super(type, eventInitDict)\n\n this.#eventInit = eventInitDict\n webidl.util.markAsUncloneable(this)\n }\n\n get wasClean () {\n webidl.brandCheck(this, CloseEvent)\n\n return this.#eventInit.wasClean\n }\n\n get code () {\n webidl.brandCheck(this, CloseEvent)\n\n return this.#eventInit.code\n }\n\n get reason () {\n webidl.brandCheck(this, CloseEvent)\n\n return this.#eventInit.reason\n }\n}\n\n// https://html.spec.whatwg.org/multipage/webappapis.html#the-errorevent-interface\nclass ErrorEvent extends Event {\n #eventInit\n\n constructor (type, eventInitDict) {\n const prefix = 'ErrorEvent constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n super(type, eventInitDict)\n webidl.util.markAsUncloneable(this)\n\n type = webidl.converters.DOMString(type, prefix, 'type')\n eventInitDict = webidl.converters.ErrorEventInit(eventInitDict ?? {})\n\n this.#eventInit = eventInitDict\n }\n\n get message () {\n webidl.brandCheck(this, ErrorEvent)\n\n return this.#eventInit.message\n }\n\n get filename () {\n webidl.brandCheck(this, ErrorEvent)\n\n return this.#eventInit.filename\n }\n\n get lineno () {\n webidl.brandCheck(this, ErrorEvent)\n\n return this.#eventInit.lineno\n }\n\n get colno () {\n webidl.brandCheck(this, ErrorEvent)\n\n return this.#eventInit.colno\n }\n\n get error () {\n webidl.brandCheck(this, ErrorEvent)\n\n return this.#eventInit.error\n }\n}\n\nObject.defineProperties(MessageEvent.prototype, {\n [Symbol.toStringTag]: {\n value: 'MessageEvent',\n configurable: true\n },\n data: kEnumerableProperty,\n origin: kEnumerableProperty,\n lastEventId: kEnumerableProperty,\n source: kEnumerableProperty,\n ports: kEnumerableProperty,\n initMessageEvent: kEnumerableProperty\n})\n\nObject.defineProperties(CloseEvent.prototype, {\n [Symbol.toStringTag]: {\n value: 'CloseEvent',\n configurable: true\n },\n reason: kEnumerableProperty,\n code: kEnumerableProperty,\n wasClean: kEnumerableProperty\n})\n\nObject.defineProperties(ErrorEvent.prototype, {\n [Symbol.toStringTag]: {\n value: 'ErrorEvent',\n configurable: true\n },\n message: kEnumerableProperty,\n filename: kEnumerableProperty,\n lineno: kEnumerableProperty,\n colno: kEnumerableProperty,\n error: kEnumerableProperty\n})\n\nwebidl.converters.MessagePort = webidl.interfaceConverter(MessagePort)\n\nwebidl.converters['sequence'] = webidl.sequenceConverter(\n webidl.converters.MessagePort\n)\n\nconst eventInit = [\n {\n key: 'bubbles',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'cancelable',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'composed',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n }\n]\n\nwebidl.converters.MessageEventInit = webidl.dictionaryConverter([\n ...eventInit,\n {\n key: 'data',\n converter: webidl.converters.any,\n defaultValue: () => null\n },\n {\n key: 'origin',\n converter: webidl.converters.USVString,\n defaultValue: () => ''\n },\n {\n key: 'lastEventId',\n converter: webidl.converters.DOMString,\n defaultValue: () => ''\n },\n {\n key: 'source',\n // Node doesn't implement WindowProxy or ServiceWorker, so the only\n // valid value for source is a MessagePort.\n converter: webidl.nullableConverter(webidl.converters.MessagePort),\n defaultValue: () => null\n },\n {\n key: 'ports',\n converter: webidl.converters['sequence'],\n defaultValue: () => new Array(0)\n }\n])\n\nwebidl.converters.CloseEventInit = webidl.dictionaryConverter([\n ...eventInit,\n {\n key: 'wasClean',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'code',\n converter: webidl.converters['unsigned short'],\n defaultValue: () => 0\n },\n {\n key: 'reason',\n converter: webidl.converters.USVString,\n defaultValue: () => ''\n }\n])\n\nwebidl.converters.ErrorEventInit = webidl.dictionaryConverter([\n ...eventInit,\n {\n key: 'message',\n converter: webidl.converters.DOMString,\n defaultValue: () => ''\n },\n {\n key: 'filename',\n converter: webidl.converters.USVString,\n defaultValue: () => ''\n },\n {\n key: 'lineno',\n converter: webidl.converters['unsigned long'],\n defaultValue: () => 0\n },\n {\n key: 'colno',\n converter: webidl.converters['unsigned long'],\n defaultValue: () => 0\n },\n {\n key: 'error',\n converter: webidl.converters.any\n }\n])\n\nmodule.exports = {\n MessageEvent,\n CloseEvent,\n ErrorEvent,\n createFastMessageEvent\n}\n", "'use strict'\n\n// This is a Globally Unique Identifier unique used\n// to validate that the endpoint accepts websocket\n// connections.\n// See https://www.rfc-editor.org/rfc/rfc6455.html#section-1.3\nconst uid = '258EAFA5-E914-47DA-95CA-C5AB0DC85B11'\n\n/** @type {PropertyDescriptor} */\nconst staticPropertyDescriptors = {\n enumerable: true,\n writable: false,\n configurable: false\n}\n\nconst states = {\n CONNECTING: 0,\n OPEN: 1,\n CLOSING: 2,\n CLOSED: 3\n}\n\nconst sentCloseFrameState = {\n NOT_SENT: 0,\n PROCESSING: 1,\n SENT: 2\n}\n\nconst opcodes = {\n CONTINUATION: 0x0,\n TEXT: 0x1,\n BINARY: 0x2,\n CLOSE: 0x8,\n PING: 0x9,\n PONG: 0xA\n}\n\nconst maxUnsigned16Bit = 2 ** 16 - 1 // 65535\n\nconst parserStates = {\n INFO: 0,\n PAYLOADLENGTH_16: 2,\n PAYLOADLENGTH_64: 3,\n READ_DATA: 4\n}\n\nconst emptyBuffer = Buffer.allocUnsafe(0)\n\nconst sendHints = {\n string: 1,\n typedArray: 2,\n arrayBuffer: 3,\n blob: 4\n}\n\nmodule.exports = {\n uid,\n sentCloseFrameState,\n staticPropertyDescriptors,\n states,\n opcodes,\n maxUnsigned16Bit,\n parserStates,\n emptyBuffer,\n sendHints\n}\n", "'use strict'\n\nmodule.exports = {\n kWebSocketURL: Symbol('url'),\n kReadyState: Symbol('ready state'),\n kController: Symbol('controller'),\n kResponse: Symbol('response'),\n kBinaryType: Symbol('binary type'),\n kSentClose: Symbol('sent close'),\n kReceivedClose: Symbol('received close'),\n kByteParser: Symbol('byte parser')\n}\n", "'use strict'\n\nconst { kReadyState, kController, kResponse, kBinaryType, kWebSocketURL } = require('./symbols')\nconst { states, opcodes } = require('./constants')\nconst { ErrorEvent, createFastMessageEvent } = require('./events')\nconst { isUtf8 } = require('node:buffer')\nconst { collectASequenceOfCodePointsFast, removeHTTPWhitespace } = require('../fetch/data-url')\n\n/* globals Blob */\n\n/**\n * @param {import('./websocket').WebSocket} ws\n * @returns {boolean}\n */\nfunction isConnecting (ws) {\n // If the WebSocket connection is not yet established, and the connection\n // is not yet closed, then the WebSocket connection is in the CONNECTING state.\n return ws[kReadyState] === states.CONNECTING\n}\n\n/**\n * @param {import('./websocket').WebSocket} ws\n * @returns {boolean}\n */\nfunction isEstablished (ws) {\n // If the server's response is validated as provided for above, it is\n // said that _The WebSocket Connection is Established_ and that the\n // WebSocket Connection is in the OPEN state.\n return ws[kReadyState] === states.OPEN\n}\n\n/**\n * @param {import('./websocket').WebSocket} ws\n * @returns {boolean}\n */\nfunction isClosing (ws) {\n // Upon either sending or receiving a Close control frame, it is said\n // that _The WebSocket Closing Handshake is Started_ and that the\n // WebSocket connection is in the CLOSING state.\n return ws[kReadyState] === states.CLOSING\n}\n\n/**\n * @param {import('./websocket').WebSocket} ws\n * @returns {boolean}\n */\nfunction isClosed (ws) {\n return ws[kReadyState] === states.CLOSED\n}\n\n/**\n * @see https://dom.spec.whatwg.org/#concept-event-fire\n * @param {string} e\n * @param {EventTarget} target\n * @param {(...args: ConstructorParameters) => Event} eventFactory\n * @param {EventInit | undefined} eventInitDict\n */\nfunction fireEvent (e, target, eventFactory = (type, init) => new Event(type, init), eventInitDict = {}) {\n // 1. If eventConstructor is not given, then let eventConstructor be Event.\n\n // 2. Let event be the result of creating an event given eventConstructor,\n // in the relevant realm of target.\n // 3. Initialize event\u2019s type attribute to e.\n const event = eventFactory(e, eventInitDict)\n\n // 4. Initialize any other IDL attributes of event as described in the\n // invocation of this algorithm.\n\n // 5. Return the result of dispatching event at target, with legacy target\n // override flag set if set.\n target.dispatchEvent(event)\n}\n\n/**\n * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol\n * @param {import('./websocket').WebSocket} ws\n * @param {number} type Opcode\n * @param {Buffer} data application data\n */\nfunction websocketMessageReceived (ws, type, data) {\n // 1. If ready state is not OPEN (1), then return.\n if (ws[kReadyState] !== states.OPEN) {\n return\n }\n\n // 2. Let dataForEvent be determined by switching on type and binary type:\n let dataForEvent\n\n if (type === opcodes.TEXT) {\n // -> type indicates that the data is Text\n // a new DOMString containing data\n try {\n dataForEvent = utf8Decode(data)\n } catch {\n failWebsocketConnection(ws, 'Received invalid UTF-8 in text frame.')\n return\n }\n } else if (type === opcodes.BINARY) {\n if (ws[kBinaryType] === 'blob') {\n // -> type indicates that the data is Binary and binary type is \"blob\"\n // a new Blob object, created in the relevant Realm of the WebSocket\n // object, that represents data as its raw data\n dataForEvent = new Blob([data])\n } else {\n // -> type indicates that the data is Binary and binary type is \"arraybuffer\"\n // a new ArrayBuffer object, created in the relevant Realm of the\n // WebSocket object, whose contents are data\n dataForEvent = toArrayBuffer(data)\n }\n }\n\n // 3. Fire an event named message at the WebSocket object, using MessageEvent,\n // with the origin attribute initialized to the serialization of the WebSocket\n // object\u2019s url's origin, and the data attribute initialized to dataForEvent.\n fireEvent('message', ws, createFastMessageEvent, {\n origin: ws[kWebSocketURL].origin,\n data: dataForEvent\n })\n}\n\nfunction toArrayBuffer (buffer) {\n if (buffer.byteLength === buffer.buffer.byteLength) {\n return buffer.buffer\n }\n return buffer.buffer.slice(buffer.byteOffset, buffer.byteOffset + buffer.byteLength)\n}\n\n/**\n * @see https://datatracker.ietf.org/doc/html/rfc6455\n * @see https://datatracker.ietf.org/doc/html/rfc2616\n * @see https://bugs.chromium.org/p/chromium/issues/detail?id=398407\n * @param {string} protocol\n */\nfunction isValidSubprotocol (protocol) {\n // If present, this value indicates one\n // or more comma-separated subprotocol the client wishes to speak,\n // ordered by preference. The elements that comprise this value\n // MUST be non-empty strings with characters in the range U+0021 to\n // U+007E not including separator characters as defined in\n // [RFC2616] and MUST all be unique strings.\n if (protocol.length === 0) {\n return false\n }\n\n for (let i = 0; i < protocol.length; ++i) {\n const code = protocol.charCodeAt(i)\n\n if (\n code < 0x21 || // CTL, contains SP (0x20) and HT (0x09)\n code > 0x7E ||\n code === 0x22 || // \"\n code === 0x28 || // (\n code === 0x29 || // )\n code === 0x2C || // ,\n code === 0x2F || // /\n code === 0x3A || // :\n code === 0x3B || // ;\n code === 0x3C || // <\n code === 0x3D || // =\n code === 0x3E || // >\n code === 0x3F || // ?\n code === 0x40 || // @\n code === 0x5B || // [\n code === 0x5C || // \\\n code === 0x5D || // ]\n code === 0x7B || // {\n code === 0x7D // }\n ) {\n return false\n }\n }\n\n return true\n}\n\n/**\n * @see https://datatracker.ietf.org/doc/html/rfc6455#section-7-4\n * @param {number} code\n */\nfunction isValidStatusCode (code) {\n if (code >= 1000 && code < 1015) {\n return (\n code !== 1004 && // reserved\n code !== 1005 && // \"MUST NOT be set as a status code\"\n code !== 1006 // \"MUST NOT be set as a status code\"\n )\n }\n\n return code >= 3000 && code <= 4999\n}\n\n/**\n * @param {import('./websocket').WebSocket} ws\n * @param {string|undefined} reason\n */\nfunction failWebsocketConnection (ws, reason) {\n const { [kController]: controller, [kResponse]: response } = ws\n\n controller.abort()\n\n if (response?.socket && !response.socket.destroyed) {\n response.socket.destroy()\n }\n\n if (reason) {\n // TODO: process.nextTick\n fireEvent('error', ws, (type, init) => new ErrorEvent(type, init), {\n error: new Error(reason),\n message: reason\n })\n }\n}\n\n/**\n * @see https://datatracker.ietf.org/doc/html/rfc6455#section-5.5\n * @param {number} opcode\n */\nfunction isControlFrame (opcode) {\n return (\n opcode === opcodes.CLOSE ||\n opcode === opcodes.PING ||\n opcode === opcodes.PONG\n )\n}\n\nfunction isContinuationFrame (opcode) {\n return opcode === opcodes.CONTINUATION\n}\n\nfunction isTextBinaryFrame (opcode) {\n return opcode === opcodes.TEXT || opcode === opcodes.BINARY\n}\n\nfunction isValidOpcode (opcode) {\n return isTextBinaryFrame(opcode) || isContinuationFrame(opcode) || isControlFrame(opcode)\n}\n\n/**\n * Parses a Sec-WebSocket-Extensions header value.\n * @param {string} extensions\n * @returns {Map}\n */\n// TODO(@Uzlopak, @KhafraDev): make compliant https://datatracker.ietf.org/doc/html/rfc6455#section-9.1\nfunction parseExtensions (extensions) {\n const position = { position: 0 }\n const extensionList = new Map()\n\n while (position.position < extensions.length) {\n const pair = collectASequenceOfCodePointsFast(';', extensions, position)\n const [name, value = ''] = pair.split('=')\n\n extensionList.set(\n removeHTTPWhitespace(name, true, false),\n removeHTTPWhitespace(value, false, true)\n )\n\n position.position++\n }\n\n return extensionList\n}\n\n/**\n * @see https://www.rfc-editor.org/rfc/rfc7692#section-7.1.2.2\n * @description \"client-max-window-bits = 1*DIGIT\"\n * @param {string} value\n */\nfunction isValidClientWindowBits (value) {\n // Must have at least one character\n if (value.length === 0) {\n return false\n }\n\n // Check all characters are ASCII digits\n for (let i = 0; i < value.length; i++) {\n const byte = value.charCodeAt(i)\n\n if (byte < 0x30 || byte > 0x39) {\n return false\n }\n }\n\n // Check numeric range: zlib requires windowBits in range 8-15\n const num = Number.parseInt(value, 10)\n return num >= 8 && num <= 15\n}\n\n// https://nodejs.org/api/intl.html#detecting-internationalization-support\nconst hasIntl = typeof process.versions.icu === 'string'\nconst fatalDecoder = hasIntl ? new TextDecoder('utf-8', { fatal: true }) : undefined\n\n/**\n * Converts a Buffer to utf-8, even on platforms without icu.\n * @param {Buffer} buffer\n */\nconst utf8Decode = hasIntl\n ? fatalDecoder.decode.bind(fatalDecoder)\n : function (buffer) {\n if (isUtf8(buffer)) {\n return buffer.toString('utf-8')\n }\n throw new TypeError('Invalid utf-8 received.')\n }\n\nmodule.exports = {\n isConnecting,\n isEstablished,\n isClosing,\n isClosed,\n fireEvent,\n isValidSubprotocol,\n isValidStatusCode,\n failWebsocketConnection,\n websocketMessageReceived,\n utf8Decode,\n isControlFrame,\n isContinuationFrame,\n isTextBinaryFrame,\n isValidOpcode,\n parseExtensions,\n isValidClientWindowBits\n}\n", "'use strict'\n\nconst { maxUnsigned16Bit } = require('./constants')\n\nconst BUFFER_SIZE = 16386\n\n/** @type {import('crypto')} */\nlet crypto\nlet buffer = null\nlet bufIdx = BUFFER_SIZE\n\ntry {\n crypto = require('node:crypto')\n/* c8 ignore next 3 */\n} catch {\n crypto = {\n // not full compatibility, but minimum.\n randomFillSync: function randomFillSync (buffer, _offset, _size) {\n for (let i = 0; i < buffer.length; ++i) {\n buffer[i] = Math.random() * 255 | 0\n }\n return buffer\n }\n }\n}\n\nfunction generateMask () {\n if (bufIdx === BUFFER_SIZE) {\n bufIdx = 0\n crypto.randomFillSync((buffer ??= Buffer.allocUnsafe(BUFFER_SIZE)), 0, BUFFER_SIZE)\n }\n return [buffer[bufIdx++], buffer[bufIdx++], buffer[bufIdx++], buffer[bufIdx++]]\n}\n\nclass WebsocketFrameSend {\n /**\n * @param {Buffer|undefined} data\n */\n constructor (data) {\n this.frameData = data\n }\n\n createFrame (opcode) {\n const frameData = this.frameData\n const maskKey = generateMask()\n const bodyLength = frameData?.byteLength ?? 0\n\n /** @type {number} */\n let payloadLength = bodyLength // 0-125\n let offset = 6\n\n if (bodyLength > maxUnsigned16Bit) {\n offset += 8 // payload length is next 8 bytes\n payloadLength = 127\n } else if (bodyLength > 125) {\n offset += 2 // payload length is next 2 bytes\n payloadLength = 126\n }\n\n const buffer = Buffer.allocUnsafe(bodyLength + offset)\n\n // Clear first 2 bytes, everything else is overwritten\n buffer[0] = buffer[1] = 0\n buffer[0] |= 0x80 // FIN\n buffer[0] = (buffer[0] & 0xF0) + opcode // opcode\n\n /*! ws. MIT License. Einar Otto Stangvik */\n buffer[offset - 4] = maskKey[0]\n buffer[offset - 3] = maskKey[1]\n buffer[offset - 2] = maskKey[2]\n buffer[offset - 1] = maskKey[3]\n\n buffer[1] = payloadLength\n\n if (payloadLength === 126) {\n buffer.writeUInt16BE(bodyLength, 2)\n } else if (payloadLength === 127) {\n // Clear extended payload length\n buffer[2] = buffer[3] = 0\n buffer.writeUIntBE(bodyLength, 4, 6)\n }\n\n buffer[1] |= 0x80 // MASK\n\n // mask body\n for (let i = 0; i < bodyLength; ++i) {\n buffer[offset + i] = frameData[i] ^ maskKey[i & 3]\n }\n\n return buffer\n }\n}\n\nmodule.exports = {\n WebsocketFrameSend\n}\n", "'use strict'\n\nconst { uid, states, sentCloseFrameState, emptyBuffer, opcodes } = require('./constants')\nconst {\n kReadyState,\n kSentClose,\n kByteParser,\n kReceivedClose,\n kResponse\n} = require('./symbols')\nconst { fireEvent, failWebsocketConnection, isClosing, isClosed, isEstablished, parseExtensions } = require('./util')\nconst { channels } = require('../../core/diagnostics')\nconst { CloseEvent } = require('./events')\nconst { makeRequest } = require('../fetch/request')\nconst { fetching } = require('../fetch/index')\nconst { Headers, getHeadersList } = require('../fetch/headers')\nconst { getDecodeSplit } = require('../fetch/util')\nconst { WebsocketFrameSend } = require('./frame')\n\n/** @type {import('crypto')} */\nlet crypto\ntry {\n crypto = require('node:crypto')\n/* c8 ignore next 3 */\n} catch {\n\n}\n\n/**\n * @see https://websockets.spec.whatwg.org/#concept-websocket-establish\n * @param {URL} url\n * @param {string|string[]} protocols\n * @param {import('./websocket').WebSocket} ws\n * @param {(response: any, extensions: string[] | undefined) => void} onEstablish\n * @param {Partial} options\n */\nfunction establishWebSocketConnection (url, protocols, client, ws, onEstablish, options) {\n // 1. Let requestURL be a copy of url, with its scheme set to \"http\", if url\u2019s\n // scheme is \"ws\", and to \"https\" otherwise.\n const requestURL = url\n\n requestURL.protocol = url.protocol === 'ws:' ? 'http:' : 'https:'\n\n // 2. Let request be a new request, whose URL is requestURL, client is client,\n // service-workers mode is \"none\", referrer is \"no-referrer\", mode is\n // \"websocket\", credentials mode is \"include\", cache mode is \"no-store\" ,\n // and redirect mode is \"error\".\n const request = makeRequest({\n urlList: [requestURL],\n client,\n serviceWorkers: 'none',\n referrer: 'no-referrer',\n mode: 'websocket',\n credentials: 'include',\n cache: 'no-store',\n redirect: 'error'\n })\n\n // Note: undici extension, allow setting custom headers.\n if (options.headers) {\n const headersList = getHeadersList(new Headers(options.headers))\n\n request.headersList = headersList\n }\n\n // 3. Append (`Upgrade`, `websocket`) to request\u2019s header list.\n // 4. Append (`Connection`, `Upgrade`) to request\u2019s header list.\n // Note: both of these are handled by undici currently.\n // https://github.com/nodejs/undici/blob/68c269c4144c446f3f1220951338daef4a6b5ec4/lib/client.js#L1397\n\n // 5. Let keyValue be a nonce consisting of a randomly selected\n // 16-byte value that has been forgiving-base64-encoded and\n // isomorphic encoded.\n const keyValue = crypto.randomBytes(16).toString('base64')\n\n // 6. Append (`Sec-WebSocket-Key`, keyValue) to request\u2019s\n // header list.\n request.headersList.append('sec-websocket-key', keyValue)\n\n // 7. Append (`Sec-WebSocket-Version`, `13`) to request\u2019s\n // header list.\n request.headersList.append('sec-websocket-version', '13')\n\n // 8. For each protocol in protocols, combine\n // (`Sec-WebSocket-Protocol`, protocol) in request\u2019s header\n // list.\n for (const protocol of protocols) {\n request.headersList.append('sec-websocket-protocol', protocol)\n }\n\n // 9. Let permessageDeflate be a user-agent defined\n // \"permessage-deflate\" extension header value.\n // https://github.com/mozilla/gecko-dev/blob/ce78234f5e653a5d3916813ff990f053510227bc/netwerk/protocol/websocket/WebSocketChannel.cpp#L2673\n const permessageDeflate = 'permessage-deflate; client_max_window_bits'\n\n // 10. Append (`Sec-WebSocket-Extensions`, permessageDeflate) to\n // request\u2019s header list.\n request.headersList.append('sec-websocket-extensions', permessageDeflate)\n\n // 11. Fetch request with useParallelQueue set to true, and\n // processResponse given response being these steps:\n const controller = fetching({\n request,\n useParallelQueue: true,\n dispatcher: options.dispatcher,\n processResponse (response) {\n // 1. If response is a network error or its status is not 101,\n // fail the WebSocket connection.\n if (response.type === 'error' || response.status !== 101) {\n failWebsocketConnection(ws, 'Received network error or non-101 status code.')\n return\n }\n\n // 2. If protocols is not the empty list and extracting header\n // list values given `Sec-WebSocket-Protocol` and response\u2019s\n // header list results in null, failure, or the empty byte\n // sequence, then fail the WebSocket connection.\n if (protocols.length !== 0 && !response.headersList.get('Sec-WebSocket-Protocol')) {\n failWebsocketConnection(ws, 'Server did not respond with sent protocols.')\n return\n }\n\n // 3. Follow the requirements stated step 2 to step 6, inclusive,\n // of the last set of steps in section 4.1 of The WebSocket\n // Protocol to validate response. This either results in fail\n // the WebSocket connection or the WebSocket connection is\n // established.\n\n // 2. If the response lacks an |Upgrade| header field or the |Upgrade|\n // header field contains a value that is not an ASCII case-\n // insensitive match for the value \"websocket\", the client MUST\n // _Fail the WebSocket Connection_.\n if (response.headersList.get('Upgrade')?.toLowerCase() !== 'websocket') {\n failWebsocketConnection(ws, 'Server did not set Upgrade header to \"websocket\".')\n return\n }\n\n // 3. If the response lacks a |Connection| header field or the\n // |Connection| header field doesn't contain a token that is an\n // ASCII case-insensitive match for the value \"Upgrade\", the client\n // MUST _Fail the WebSocket Connection_.\n if (response.headersList.get('Connection')?.toLowerCase() !== 'upgrade') {\n failWebsocketConnection(ws, 'Server did not set Connection header to \"upgrade\".')\n return\n }\n\n // 4. If the response lacks a |Sec-WebSocket-Accept| header field or\n // the |Sec-WebSocket-Accept| contains a value other than the\n // base64-encoded SHA-1 of the concatenation of the |Sec-WebSocket-\n // Key| (as a string, not base64-decoded) with the string \"258EAFA5-\n // E914-47DA-95CA-C5AB0DC85B11\" but ignoring any leading and\n // trailing whitespace, the client MUST _Fail the WebSocket\n // Connection_.\n const secWSAccept = response.headersList.get('Sec-WebSocket-Accept')\n const digest = crypto.createHash('sha1').update(keyValue + uid).digest('base64')\n if (secWSAccept !== digest) {\n failWebsocketConnection(ws, 'Incorrect hash received in Sec-WebSocket-Accept header.')\n return\n }\n\n // 5. If the response includes a |Sec-WebSocket-Extensions| header\n // field and this header field indicates the use of an extension\n // that was not present in the client's handshake (the server has\n // indicated an extension not requested by the client), the client\n // MUST _Fail the WebSocket Connection_. (The parsing of this\n // header field to determine which extensions are requested is\n // discussed in Section 9.1.)\n const secExtension = response.headersList.get('Sec-WebSocket-Extensions')\n let extensions\n\n if (secExtension !== null) {\n extensions = parseExtensions(secExtension)\n\n if (!extensions.has('permessage-deflate')) {\n failWebsocketConnection(ws, 'Sec-WebSocket-Extensions header does not match.')\n return\n }\n }\n\n // 6. If the response includes a |Sec-WebSocket-Protocol| header field\n // and this header field indicates the use of a subprotocol that was\n // not present in the client's handshake (the server has indicated a\n // subprotocol not requested by the client), the client MUST _Fail\n // the WebSocket Connection_.\n const secProtocol = response.headersList.get('Sec-WebSocket-Protocol')\n\n if (secProtocol !== null) {\n const requestProtocols = getDecodeSplit('sec-websocket-protocol', request.headersList)\n\n // The client can request that the server use a specific subprotocol by\n // including the |Sec-WebSocket-Protocol| field in its handshake. If it\n // is specified, the server needs to include the same field and one of\n // the selected subprotocol values in its response for the connection to\n // be established.\n if (!requestProtocols.includes(secProtocol)) {\n failWebsocketConnection(ws, 'Protocol was not set in the opening handshake.')\n return\n }\n }\n\n response.socket.on('data', onSocketData)\n response.socket.on('close', onSocketClose)\n response.socket.on('error', onSocketError)\n\n if (channels.open.hasSubscribers) {\n channels.open.publish({\n address: response.socket.address(),\n protocol: secProtocol,\n extensions: secExtension\n })\n }\n\n onEstablish(response, extensions)\n }\n })\n\n return controller\n}\n\nfunction closeWebSocketConnection (ws, code, reason, reasonByteLength) {\n if (isClosing(ws) || isClosed(ws)) {\n // If this's ready state is CLOSING (2) or CLOSED (3)\n // Do nothing.\n } else if (!isEstablished(ws)) {\n // If the WebSocket connection is not yet established\n // Fail the WebSocket connection and set this's ready state\n // to CLOSING (2).\n failWebsocketConnection(ws, 'Connection was closed before it was established.')\n ws[kReadyState] = states.CLOSING\n } else if (ws[kSentClose] === sentCloseFrameState.NOT_SENT) {\n // If the WebSocket closing handshake has not yet been started\n // Start the WebSocket closing handshake and set this's ready\n // state to CLOSING (2).\n // - If neither code nor reason is present, the WebSocket Close\n // message must not have a body.\n // - If code is present, then the status code to use in the\n // WebSocket Close message must be the integer given by code.\n // - If reason is also present, then reasonBytes must be\n // provided in the Close message after the status code.\n\n ws[kSentClose] = sentCloseFrameState.PROCESSING\n\n const frame = new WebsocketFrameSend()\n\n // If neither code nor reason is present, the WebSocket Close\n // message must not have a body.\n\n // If code is present, then the status code to use in the\n // WebSocket Close message must be the integer given by code.\n if (code !== undefined && reason === undefined) {\n frame.frameData = Buffer.allocUnsafe(2)\n frame.frameData.writeUInt16BE(code, 0)\n } else if (code !== undefined && reason !== undefined) {\n // If reason is also present, then reasonBytes must be\n // provided in the Close message after the status code.\n frame.frameData = Buffer.allocUnsafe(2 + reasonByteLength)\n frame.frameData.writeUInt16BE(code, 0)\n // the body MAY contain UTF-8-encoded data with value /reason/\n frame.frameData.write(reason, 2, 'utf-8')\n } else {\n frame.frameData = emptyBuffer\n }\n\n /** @type {import('stream').Duplex} */\n const socket = ws[kResponse].socket\n\n socket.write(frame.createFrame(opcodes.CLOSE))\n\n ws[kSentClose] = sentCloseFrameState.SENT\n\n // Upon either sending or receiving a Close control frame, it is said\n // that _The WebSocket Closing Handshake is Started_ and that the\n // WebSocket connection is in the CLOSING state.\n ws[kReadyState] = states.CLOSING\n } else {\n // Otherwise\n // Set this's ready state to CLOSING (2).\n ws[kReadyState] = states.CLOSING\n }\n}\n\n/**\n * @param {Buffer} chunk\n */\nfunction onSocketData (chunk) {\n if (!this.ws[kByteParser].write(chunk)) {\n this.pause()\n }\n}\n\n/**\n * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol\n * @see https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.4\n */\nfunction onSocketClose () {\n const { ws } = this\n const { [kResponse]: response } = ws\n\n response.socket.off('data', onSocketData)\n response.socket.off('close', onSocketClose)\n response.socket.off('error', onSocketError)\n\n // If the TCP connection was closed after the\n // WebSocket closing handshake was completed, the WebSocket connection\n // is said to have been closed _cleanly_.\n const wasClean = ws[kSentClose] === sentCloseFrameState.SENT && ws[kReceivedClose]\n\n let code = 1005\n let reason = ''\n\n const result = ws[kByteParser].closingInfo\n\n if (result && !result.error) {\n code = result.code ?? 1005\n reason = result.reason\n } else if (!ws[kReceivedClose]) {\n // If _The WebSocket\n // Connection is Closed_ and no Close control frame was received by the\n // endpoint (such as could occur if the underlying transport connection\n // is lost), _The WebSocket Connection Close Code_ is considered to be\n // 1006.\n code = 1006\n }\n\n // 1. Change the ready state to CLOSED (3).\n ws[kReadyState] = states.CLOSED\n\n // 2. If the user agent was required to fail the WebSocket\n // connection, or if the WebSocket connection was closed\n // after being flagged as full, fire an event named error\n // at the WebSocket object.\n // TODO\n\n // 3. Fire an event named close at the WebSocket object,\n // using CloseEvent, with the wasClean attribute\n // initialized to true if the connection closed cleanly\n // and false otherwise, the code attribute initialized to\n // the WebSocket connection close code, and the reason\n // attribute initialized to the result of applying UTF-8\n // decode without BOM to the WebSocket connection close\n // reason.\n // TODO: process.nextTick\n fireEvent('close', ws, (type, init) => new CloseEvent(type, init), {\n wasClean, code, reason\n })\n\n if (channels.close.hasSubscribers) {\n channels.close.publish({\n websocket: ws,\n code,\n reason\n })\n }\n}\n\nfunction onSocketError (error) {\n const { ws } = this\n\n ws[kReadyState] = states.CLOSING\n\n if (channels.socketError.hasSubscribers) {\n channels.socketError.publish(error)\n }\n\n this.destroy()\n}\n\nmodule.exports = {\n establishWebSocketConnection,\n closeWebSocketConnection\n}\n", "'use strict'\n\nconst { createInflateRaw, Z_DEFAULT_WINDOWBITS } = require('node:zlib')\nconst { isValidClientWindowBits } = require('./util')\nconst { MessageSizeExceededError } = require('../../core/errors')\n\nconst tail = Buffer.from([0x00, 0x00, 0xff, 0xff])\nconst kBuffer = Symbol('kBuffer')\nconst kLength = Symbol('kLength')\n\n// Default maximum decompressed message size: 4 MB\nconst kDefaultMaxDecompressedSize = 4 * 1024 * 1024\n\nclass PerMessageDeflate {\n /** @type {import('node:zlib').InflateRaw} */\n #inflate\n\n #options = {}\n\n /** @type {boolean} */\n #aborted = false\n\n /** @type {Function|null} */\n #currentCallback = null\n\n /**\n * @param {Map} extensions\n */\n constructor (extensions) {\n this.#options.serverNoContextTakeover = extensions.has('server_no_context_takeover')\n this.#options.serverMaxWindowBits = extensions.get('server_max_window_bits')\n }\n\n decompress (chunk, fin, callback) {\n // An endpoint uses the following algorithm to decompress a message.\n // 1. Append 4 octets of 0x00 0x00 0xff 0xff to the tail end of the\n // payload of the message.\n // 2. Decompress the resulting data using DEFLATE.\n\n if (this.#aborted) {\n callback(new MessageSizeExceededError())\n return\n }\n\n if (!this.#inflate) {\n let windowBits = Z_DEFAULT_WINDOWBITS\n\n if (this.#options.serverMaxWindowBits) { // empty values default to Z_DEFAULT_WINDOWBITS\n if (!isValidClientWindowBits(this.#options.serverMaxWindowBits)) {\n callback(new Error('Invalid server_max_window_bits'))\n return\n }\n\n windowBits = Number.parseInt(this.#options.serverMaxWindowBits)\n }\n\n try {\n this.#inflate = createInflateRaw({ windowBits })\n } catch (err) {\n callback(err)\n return\n }\n this.#inflate[kBuffer] = []\n this.#inflate[kLength] = 0\n\n this.#inflate.on('data', (data) => {\n if (this.#aborted) {\n return\n }\n\n this.#inflate[kLength] += data.length\n\n if (this.#inflate[kLength] > kDefaultMaxDecompressedSize) {\n this.#aborted = true\n this.#inflate.removeAllListeners()\n this.#inflate.destroy()\n this.#inflate = null\n\n if (this.#currentCallback) {\n const cb = this.#currentCallback\n this.#currentCallback = null\n cb(new MessageSizeExceededError())\n }\n return\n }\n\n this.#inflate[kBuffer].push(data)\n })\n\n this.#inflate.on('error', (err) => {\n this.#inflate = null\n callback(err)\n })\n }\n\n this.#currentCallback = callback\n this.#inflate.write(chunk)\n if (fin) {\n this.#inflate.write(tail)\n }\n\n this.#inflate.flush(() => {\n if (this.#aborted || !this.#inflate) {\n return\n }\n\n const full = Buffer.concat(this.#inflate[kBuffer], this.#inflate[kLength])\n\n this.#inflate[kBuffer].length = 0\n this.#inflate[kLength] = 0\n this.#currentCallback = null\n\n callback(null, full)\n })\n }\n}\n\nmodule.exports = { PerMessageDeflate }\n", "'use strict'\n\nconst { Writable } = require('node:stream')\nconst assert = require('node:assert')\nconst { parserStates, opcodes, states, emptyBuffer, sentCloseFrameState } = require('./constants')\nconst { kReadyState, kSentClose, kResponse, kReceivedClose } = require('./symbols')\nconst { channels } = require('../../core/diagnostics')\nconst {\n isValidStatusCode,\n isValidOpcode,\n failWebsocketConnection,\n websocketMessageReceived,\n utf8Decode,\n isControlFrame,\n isTextBinaryFrame,\n isContinuationFrame\n} = require('./util')\nconst { WebsocketFrameSend } = require('./frame')\nconst { closeWebSocketConnection } = require('./connection')\nconst { PerMessageDeflate } = require('./permessage-deflate')\n\n// This code was influenced by ws released under the MIT license.\n// Copyright (c) 2011 Einar Otto Stangvik \n// Copyright (c) 2013 Arnout Kazemier and contributors\n// Copyright (c) 2016 Luigi Pinca and contributors\n\nclass ByteParser extends Writable {\n #buffers = []\n #byteOffset = 0\n #loop = false\n\n #state = parserStates.INFO\n\n #info = {}\n #fragments = []\n\n /** @type {Map} */\n #extensions\n\n /**\n * @param {import('./websocket').WebSocket} ws\n * @param {Map|null} extensions\n */\n constructor (ws, extensions) {\n super()\n\n this.ws = ws\n this.#extensions = extensions == null ? new Map() : extensions\n\n if (this.#extensions.has('permessage-deflate')) {\n this.#extensions.set('permessage-deflate', new PerMessageDeflate(extensions))\n }\n }\n\n /**\n * @param {Buffer} chunk\n * @param {() => void} callback\n */\n _write (chunk, _, callback) {\n this.#buffers.push(chunk)\n this.#byteOffset += chunk.length\n this.#loop = true\n\n this.run(callback)\n }\n\n /**\n * Runs whenever a new chunk is received.\n * Callback is called whenever there are no more chunks buffering,\n * or not enough bytes are buffered to parse.\n */\n run (callback) {\n while (this.#loop) {\n if (this.#state === parserStates.INFO) {\n // If there aren't enough bytes to parse the payload length, etc.\n if (this.#byteOffset < 2) {\n return callback()\n }\n\n const buffer = this.consume(2)\n const fin = (buffer[0] & 0x80) !== 0\n const opcode = buffer[0] & 0x0F\n const masked = (buffer[1] & 0x80) === 0x80\n\n const fragmented = !fin && opcode !== opcodes.CONTINUATION\n const payloadLength = buffer[1] & 0x7F\n\n const rsv1 = buffer[0] & 0x40\n const rsv2 = buffer[0] & 0x20\n const rsv3 = buffer[0] & 0x10\n\n if (!isValidOpcode(opcode)) {\n failWebsocketConnection(this.ws, 'Invalid opcode received')\n return callback()\n }\n\n if (masked) {\n failWebsocketConnection(this.ws, 'Frame cannot be masked')\n return callback()\n }\n\n // MUST be 0 unless an extension is negotiated that defines meanings\n // for non-zero values. If a nonzero value is received and none of\n // the negotiated extensions defines the meaning of such a nonzero\n // value, the receiving endpoint MUST _Fail the WebSocket\n // Connection_.\n // This document allocates the RSV1 bit of the WebSocket header for\n // PMCEs and calls the bit the \"Per-Message Compressed\" bit. On a\n // WebSocket connection where a PMCE is in use, this bit indicates\n // whether a message is compressed or not.\n if (rsv1 !== 0 && !this.#extensions.has('permessage-deflate')) {\n failWebsocketConnection(this.ws, 'Expected RSV1 to be clear.')\n return\n }\n\n if (rsv2 !== 0 || rsv3 !== 0) {\n failWebsocketConnection(this.ws, 'RSV1, RSV2, RSV3 must be clear')\n return\n }\n\n if (fragmented && !isTextBinaryFrame(opcode)) {\n // Only text and binary frames can be fragmented\n failWebsocketConnection(this.ws, 'Invalid frame type was fragmented.')\n return\n }\n\n // If we are already parsing a text/binary frame and do not receive either\n // a continuation frame or close frame, fail the connection.\n if (isTextBinaryFrame(opcode) && this.#fragments.length > 0) {\n failWebsocketConnection(this.ws, 'Expected continuation frame')\n return\n }\n\n if (this.#info.fragmented && fragmented) {\n // A fragmented frame can't be fragmented itself\n failWebsocketConnection(this.ws, 'Fragmented frame exceeded 125 bytes.')\n return\n }\n\n // \"All control frames MUST have a payload length of 125 bytes or less\n // and MUST NOT be fragmented.\"\n if ((payloadLength > 125 || fragmented) && isControlFrame(opcode)) {\n failWebsocketConnection(this.ws, 'Control frame either too large or fragmented')\n return\n }\n\n if (isContinuationFrame(opcode) && this.#fragments.length === 0 && !this.#info.compressed) {\n failWebsocketConnection(this.ws, 'Unexpected continuation frame')\n return\n }\n\n if (payloadLength <= 125) {\n this.#info.payloadLength = payloadLength\n this.#state = parserStates.READ_DATA\n } else if (payloadLength === 126) {\n this.#state = parserStates.PAYLOADLENGTH_16\n } else if (payloadLength === 127) {\n this.#state = parserStates.PAYLOADLENGTH_64\n }\n\n if (isTextBinaryFrame(opcode)) {\n this.#info.binaryType = opcode\n this.#info.compressed = rsv1 !== 0\n }\n\n this.#info.opcode = opcode\n this.#info.masked = masked\n this.#info.fin = fin\n this.#info.fragmented = fragmented\n } else if (this.#state === parserStates.PAYLOADLENGTH_16) {\n if (this.#byteOffset < 2) {\n return callback()\n }\n\n const buffer = this.consume(2)\n\n this.#info.payloadLength = buffer.readUInt16BE(0)\n this.#state = parserStates.READ_DATA\n } else if (this.#state === parserStates.PAYLOADLENGTH_64) {\n if (this.#byteOffset < 8) {\n return callback()\n }\n\n const buffer = this.consume(8)\n const upper = buffer.readUInt32BE(0)\n const lower = buffer.readUInt32BE(4)\n\n // 2^31 is the maximum bytes an arraybuffer can contain\n // on 32-bit systems. Although, on 64-bit systems, this is\n // 2^53-1 bytes.\n // https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Errors/Invalid_array_length\n // https://source.chromium.org/chromium/chromium/src/+/main:v8/src/common/globals.h;drc=1946212ac0100668f14eb9e2843bdd846e510a1e;bpv=1;bpt=1;l=1275\n // https://source.chromium.org/chromium/chromium/src/+/main:v8/src/objects/js-array-buffer.h;l=34;drc=1946212ac0100668f14eb9e2843bdd846e510a1e\n if (upper !== 0 || lower > 2 ** 31 - 1) {\n failWebsocketConnection(this.ws, 'Received payload length > 2^31 bytes.')\n return\n }\n\n this.#info.payloadLength = lower\n this.#state = parserStates.READ_DATA\n } else if (this.#state === parserStates.READ_DATA) {\n if (this.#byteOffset < this.#info.payloadLength) {\n return callback()\n }\n\n const body = this.consume(this.#info.payloadLength)\n\n if (isControlFrame(this.#info.opcode)) {\n this.#loop = this.parseControlFrame(body)\n this.#state = parserStates.INFO\n } else {\n if (!this.#info.compressed) {\n this.#fragments.push(body)\n\n // If the frame is not fragmented, a message has been received.\n // If the frame is fragmented, it will terminate with a fin bit set\n // and an opcode of 0 (continuation), therefore we handle that when\n // parsing continuation frames, not here.\n if (!this.#info.fragmented && this.#info.fin) {\n const fullMessage = Buffer.concat(this.#fragments)\n websocketMessageReceived(this.ws, this.#info.binaryType, fullMessage)\n this.#fragments.length = 0\n }\n\n this.#state = parserStates.INFO\n } else {\n this.#extensions.get('permessage-deflate').decompress(body, this.#info.fin, (error, data) => {\n if (error) {\n failWebsocketConnection(this.ws, error.message)\n return\n }\n\n this.#fragments.push(data)\n\n if (!this.#info.fin) {\n this.#state = parserStates.INFO\n this.#loop = true\n this.run(callback)\n return\n }\n\n websocketMessageReceived(this.ws, this.#info.binaryType, Buffer.concat(this.#fragments))\n\n this.#loop = true\n this.#state = parserStates.INFO\n this.#fragments.length = 0\n this.run(callback)\n })\n\n this.#loop = false\n break\n }\n }\n }\n }\n }\n\n /**\n * Take n bytes from the buffered Buffers\n * @param {number} n\n * @returns {Buffer}\n */\n consume (n) {\n if (n > this.#byteOffset) {\n throw new Error('Called consume() before buffers satiated.')\n } else if (n === 0) {\n return emptyBuffer\n }\n\n if (this.#buffers[0].length === n) {\n this.#byteOffset -= this.#buffers[0].length\n return this.#buffers.shift()\n }\n\n const buffer = Buffer.allocUnsafe(n)\n let offset = 0\n\n while (offset !== n) {\n const next = this.#buffers[0]\n const { length } = next\n\n if (length + offset === n) {\n buffer.set(this.#buffers.shift(), offset)\n break\n } else if (length + offset > n) {\n buffer.set(next.subarray(0, n - offset), offset)\n this.#buffers[0] = next.subarray(n - offset)\n break\n } else {\n buffer.set(this.#buffers.shift(), offset)\n offset += next.length\n }\n }\n\n this.#byteOffset -= n\n\n return buffer\n }\n\n parseCloseBody (data) {\n assert(data.length !== 1)\n\n // https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.5\n /** @type {number|undefined} */\n let code\n\n if (data.length >= 2) {\n // _The WebSocket Connection Close Code_ is\n // defined as the status code (Section 7.4) contained in the first Close\n // control frame received by the application\n code = data.readUInt16BE(0)\n }\n\n if (code !== undefined && !isValidStatusCode(code)) {\n return { code: 1002, reason: 'Invalid status code', error: true }\n }\n\n // https://datatracker.ietf.org/doc/html/rfc6455#section-7.1.6\n /** @type {Buffer} */\n let reason = data.subarray(2)\n\n // Remove BOM\n if (reason[0] === 0xEF && reason[1] === 0xBB && reason[2] === 0xBF) {\n reason = reason.subarray(3)\n }\n\n try {\n reason = utf8Decode(reason)\n } catch {\n return { code: 1007, reason: 'Invalid UTF-8', error: true }\n }\n\n return { code, reason, error: false }\n }\n\n /**\n * Parses control frames.\n * @param {Buffer} body\n */\n parseControlFrame (body) {\n const { opcode, payloadLength } = this.#info\n\n if (opcode === opcodes.CLOSE) {\n if (payloadLength === 1) {\n failWebsocketConnection(this.ws, 'Received close frame with a 1-byte body.')\n return false\n }\n\n this.#info.closeInfo = this.parseCloseBody(body)\n\n if (this.#info.closeInfo.error) {\n const { code, reason } = this.#info.closeInfo\n\n closeWebSocketConnection(this.ws, code, reason, reason.length)\n failWebsocketConnection(this.ws, reason)\n return false\n }\n\n if (this.ws[kSentClose] !== sentCloseFrameState.SENT) {\n // If an endpoint receives a Close frame and did not previously send a\n // Close frame, the endpoint MUST send a Close frame in response. (When\n // sending a Close frame in response, the endpoint typically echos the\n // status code it received.)\n let body = emptyBuffer\n if (this.#info.closeInfo.code) {\n body = Buffer.allocUnsafe(2)\n body.writeUInt16BE(this.#info.closeInfo.code, 0)\n }\n const closeFrame = new WebsocketFrameSend(body)\n\n this.ws[kResponse].socket.write(\n closeFrame.createFrame(opcodes.CLOSE),\n (err) => {\n if (!err) {\n this.ws[kSentClose] = sentCloseFrameState.SENT\n }\n }\n )\n }\n\n // Upon either sending or receiving a Close control frame, it is said\n // that _The WebSocket Closing Handshake is Started_ and that the\n // WebSocket connection is in the CLOSING state.\n this.ws[kReadyState] = states.CLOSING\n this.ws[kReceivedClose] = true\n\n return false\n } else if (opcode === opcodes.PING) {\n // Upon receipt of a Ping frame, an endpoint MUST send a Pong frame in\n // response, unless it already received a Close frame.\n // A Pong frame sent in response to a Ping frame must have identical\n // \"Application data\"\n\n if (!this.ws[kReceivedClose]) {\n const frame = new WebsocketFrameSend(body)\n\n this.ws[kResponse].socket.write(frame.createFrame(opcodes.PONG))\n\n if (channels.ping.hasSubscribers) {\n channels.ping.publish({\n payload: body\n })\n }\n }\n } else if (opcode === opcodes.PONG) {\n // A Pong frame MAY be sent unsolicited. This serves as a\n // unidirectional heartbeat. A response to an unsolicited Pong frame is\n // not expected.\n\n if (channels.pong.hasSubscribers) {\n channels.pong.publish({\n payload: body\n })\n }\n }\n\n return true\n }\n\n get closingInfo () {\n return this.#info.closeInfo\n }\n}\n\nmodule.exports = {\n ByteParser\n}\n", "'use strict'\n\nconst { WebsocketFrameSend } = require('./frame')\nconst { opcodes, sendHints } = require('./constants')\nconst FixedQueue = require('../../dispatcher/fixed-queue')\n\n/** @type {typeof Uint8Array} */\nconst FastBuffer = Buffer[Symbol.species]\n\n/**\n * @typedef {object} SendQueueNode\n * @property {Promise | null} promise\n * @property {((...args: any[]) => any)} callback\n * @property {Buffer | null} frame\n */\n\nclass SendQueue {\n /**\n * @type {FixedQueue}\n */\n #queue = new FixedQueue()\n\n /**\n * @type {boolean}\n */\n #running = false\n\n /** @type {import('node:net').Socket} */\n #socket\n\n constructor (socket) {\n this.#socket = socket\n }\n\n add (item, cb, hint) {\n if (hint !== sendHints.blob) {\n const frame = createFrame(item, hint)\n if (!this.#running) {\n // fast-path\n this.#socket.write(frame, cb)\n } else {\n /** @type {SendQueueNode} */\n const node = {\n promise: null,\n callback: cb,\n frame\n }\n this.#queue.push(node)\n }\n return\n }\n\n /** @type {SendQueueNode} */\n const node = {\n promise: item.arrayBuffer().then((ab) => {\n node.promise = null\n node.frame = createFrame(ab, hint)\n }),\n callback: cb,\n frame: null\n }\n\n this.#queue.push(node)\n\n if (!this.#running) {\n this.#run()\n }\n }\n\n async #run () {\n this.#running = true\n const queue = this.#queue\n while (!queue.isEmpty()) {\n const node = queue.shift()\n // wait pending promise\n if (node.promise !== null) {\n await node.promise\n }\n // write\n this.#socket.write(node.frame, node.callback)\n // cleanup\n node.callback = node.frame = null\n }\n this.#running = false\n }\n}\n\nfunction createFrame (data, hint) {\n return new WebsocketFrameSend(toBuffer(data, hint)).createFrame(hint === sendHints.string ? opcodes.TEXT : opcodes.BINARY)\n}\n\nfunction toBuffer (data, hint) {\n switch (hint) {\n case sendHints.string:\n return Buffer.from(data)\n case sendHints.arrayBuffer:\n case sendHints.blob:\n return new FastBuffer(data)\n case sendHints.typedArray:\n return new FastBuffer(data.buffer, data.byteOffset, data.byteLength)\n }\n}\n\nmodule.exports = { SendQueue }\n", "'use strict'\n\nconst { webidl } = require('../fetch/webidl')\nconst { URLSerializer } = require('../fetch/data-url')\nconst { environmentSettingsObject } = require('../fetch/util')\nconst { staticPropertyDescriptors, states, sentCloseFrameState, sendHints } = require('./constants')\nconst {\n kWebSocketURL,\n kReadyState,\n kController,\n kBinaryType,\n kResponse,\n kSentClose,\n kByteParser\n} = require('./symbols')\nconst {\n isConnecting,\n isEstablished,\n isClosing,\n isValidSubprotocol,\n fireEvent\n} = require('./util')\nconst { establishWebSocketConnection, closeWebSocketConnection } = require('./connection')\nconst { ByteParser } = require('./receiver')\nconst { kEnumerableProperty, isBlobLike } = require('../../core/util')\nconst { getGlobalDispatcher } = require('../../global')\nconst { types } = require('node:util')\nconst { ErrorEvent, CloseEvent } = require('./events')\nconst { SendQueue } = require('./sender')\n\n// https://websockets.spec.whatwg.org/#interface-definition\nclass WebSocket extends EventTarget {\n #events = {\n open: null,\n error: null,\n close: null,\n message: null\n }\n\n #bufferedAmount = 0\n #protocol = ''\n #extensions = ''\n\n /** @type {SendQueue} */\n #sendQueue\n\n /**\n * @param {string} url\n * @param {string|string[]} protocols\n */\n constructor (url, protocols = []) {\n super()\n\n webidl.util.markAsUncloneable(this)\n\n const prefix = 'WebSocket constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n const options = webidl.converters['DOMString or sequence or WebSocketInit'](protocols, prefix, 'options')\n\n url = webidl.converters.USVString(url, prefix, 'url')\n protocols = options.protocols\n\n // 1. Let baseURL be this's relevant settings object's API base URL.\n const baseURL = environmentSettingsObject.settingsObject.baseUrl\n\n // 1. Let urlRecord be the result of applying the URL parser to url with baseURL.\n let urlRecord\n\n try {\n urlRecord = new URL(url, baseURL)\n } catch (e) {\n // 3. If urlRecord is failure, then throw a \"SyntaxError\" DOMException.\n throw new DOMException(e, 'SyntaxError')\n }\n\n // 4. If urlRecord\u2019s scheme is \"http\", then set urlRecord\u2019s scheme to \"ws\".\n if (urlRecord.protocol === 'http:') {\n urlRecord.protocol = 'ws:'\n } else if (urlRecord.protocol === 'https:') {\n // 5. Otherwise, if urlRecord\u2019s scheme is \"https\", set urlRecord\u2019s scheme to \"wss\".\n urlRecord.protocol = 'wss:'\n }\n\n // 6. If urlRecord\u2019s scheme is not \"ws\" or \"wss\", then throw a \"SyntaxError\" DOMException.\n if (urlRecord.protocol !== 'ws:' && urlRecord.protocol !== 'wss:') {\n throw new DOMException(\n `Expected a ws: or wss: protocol, got ${urlRecord.protocol}`,\n 'SyntaxError'\n )\n }\n\n // 7. If urlRecord\u2019s fragment is non-null, then throw a \"SyntaxError\"\n // DOMException.\n if (urlRecord.hash || urlRecord.href.endsWith('#')) {\n throw new DOMException('Got fragment', 'SyntaxError')\n }\n\n // 8. If protocols is a string, set protocols to a sequence consisting\n // of just that string.\n if (typeof protocols === 'string') {\n protocols = [protocols]\n }\n\n // 9. If any of the values in protocols occur more than once or otherwise\n // fail to match the requirements for elements that comprise the value\n // of `Sec-WebSocket-Protocol` fields as defined by The WebSocket\n // protocol, then throw a \"SyntaxError\" DOMException.\n if (protocols.length !== new Set(protocols.map(p => p.toLowerCase())).size) {\n throw new DOMException('Invalid Sec-WebSocket-Protocol value', 'SyntaxError')\n }\n\n if (protocols.length > 0 && !protocols.every(p => isValidSubprotocol(p))) {\n throw new DOMException('Invalid Sec-WebSocket-Protocol value', 'SyntaxError')\n }\n\n // 10. Set this's url to urlRecord.\n this[kWebSocketURL] = new URL(urlRecord.href)\n\n // 11. Let client be this's relevant settings object.\n const client = environmentSettingsObject.settingsObject\n\n // 12. Run this step in parallel:\n\n // 1. Establish a WebSocket connection given urlRecord, protocols,\n // and client.\n this[kController] = establishWebSocketConnection(\n urlRecord,\n protocols,\n client,\n this,\n (response, extensions) => this.#onConnectionEstablished(response, extensions),\n options\n )\n\n // Each WebSocket object has an associated ready state, which is a\n // number representing the state of the connection. Initially it must\n // be CONNECTING (0).\n this[kReadyState] = WebSocket.CONNECTING\n\n this[kSentClose] = sentCloseFrameState.NOT_SENT\n\n // The extensions attribute must initially return the empty string.\n\n // The protocol attribute must initially return the empty string.\n\n // Each WebSocket object has an associated binary type, which is a\n // BinaryType. Initially it must be \"blob\".\n this[kBinaryType] = 'blob'\n }\n\n /**\n * @see https://websockets.spec.whatwg.org/#dom-websocket-close\n * @param {number|undefined} code\n * @param {string|undefined} reason\n */\n close (code = undefined, reason = undefined) {\n webidl.brandCheck(this, WebSocket)\n\n const prefix = 'WebSocket.close'\n\n if (code !== undefined) {\n code = webidl.converters['unsigned short'](code, prefix, 'code', { clamp: true })\n }\n\n if (reason !== undefined) {\n reason = webidl.converters.USVString(reason, prefix, 'reason')\n }\n\n // 1. If code is present, but is neither an integer equal to 1000 nor an\n // integer in the range 3000 to 4999, inclusive, throw an\n // \"InvalidAccessError\" DOMException.\n if (code !== undefined) {\n if (code !== 1000 && (code < 3000 || code > 4999)) {\n throw new DOMException('invalid code', 'InvalidAccessError')\n }\n }\n\n let reasonByteLength = 0\n\n // 2. If reason is present, then run these substeps:\n if (reason !== undefined) {\n // 1. Let reasonBytes be the result of encoding reason.\n // 2. If reasonBytes is longer than 123 bytes, then throw a\n // \"SyntaxError\" DOMException.\n reasonByteLength = Buffer.byteLength(reason)\n\n if (reasonByteLength > 123) {\n throw new DOMException(\n `Reason must be less than 123 bytes; received ${reasonByteLength}`,\n 'SyntaxError'\n )\n }\n }\n\n // 3. Run the first matching steps from the following list:\n closeWebSocketConnection(this, code, reason, reasonByteLength)\n }\n\n /**\n * @see https://websockets.spec.whatwg.org/#dom-websocket-send\n * @param {NodeJS.TypedArray|ArrayBuffer|Blob|string} data\n */\n send (data) {\n webidl.brandCheck(this, WebSocket)\n\n const prefix = 'WebSocket.send'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n data = webidl.converters.WebSocketSendData(data, prefix, 'data')\n\n // 1. If this's ready state is CONNECTING, then throw an\n // \"InvalidStateError\" DOMException.\n if (isConnecting(this)) {\n throw new DOMException('Sent before connected.', 'InvalidStateError')\n }\n\n // 2. Run the appropriate set of steps from the following list:\n // https://datatracker.ietf.org/doc/html/rfc6455#section-6.1\n // https://datatracker.ietf.org/doc/html/rfc6455#section-5.2\n\n if (!isEstablished(this) || isClosing(this)) {\n return\n }\n\n // If data is a string\n if (typeof data === 'string') {\n // If the WebSocket connection is established and the WebSocket\n // closing handshake has not yet started, then the user agent\n // must send a WebSocket Message comprised of the data argument\n // using a text frame opcode; if the data cannot be sent, e.g.\n // because it would need to be buffered but the buffer is full,\n // the user agent must flag the WebSocket as full and then close\n // the WebSocket connection. Any invocation of this method with a\n // string argument that does not throw an exception must increase\n // the bufferedAmount attribute by the number of bytes needed to\n // express the argument as UTF-8.\n\n const length = Buffer.byteLength(data)\n\n this.#bufferedAmount += length\n this.#sendQueue.add(data, () => {\n this.#bufferedAmount -= length\n }, sendHints.string)\n } else if (types.isArrayBuffer(data)) {\n // If the WebSocket connection is established, and the WebSocket\n // closing handshake has not yet started, then the user agent must\n // send a WebSocket Message comprised of data using a binary frame\n // opcode; if the data cannot be sent, e.g. because it would need\n // to be buffered but the buffer is full, the user agent must flag\n // the WebSocket as full and then close the WebSocket connection.\n // The data to be sent is the data stored in the buffer described\n // by the ArrayBuffer object. Any invocation of this method with an\n // ArrayBuffer argument that does not throw an exception must\n // increase the bufferedAmount attribute by the length of the\n // ArrayBuffer in bytes.\n\n this.#bufferedAmount += data.byteLength\n this.#sendQueue.add(data, () => {\n this.#bufferedAmount -= data.byteLength\n }, sendHints.arrayBuffer)\n } else if (ArrayBuffer.isView(data)) {\n // If the WebSocket connection is established, and the WebSocket\n // closing handshake has not yet started, then the user agent must\n // send a WebSocket Message comprised of data using a binary frame\n // opcode; if the data cannot be sent, e.g. because it would need to\n // be buffered but the buffer is full, the user agent must flag the\n // WebSocket as full and then close the WebSocket connection. The\n // data to be sent is the data stored in the section of the buffer\n // described by the ArrayBuffer object that data references. Any\n // invocation of this method with this kind of argument that does\n // not throw an exception must increase the bufferedAmount attribute\n // by the length of data\u2019s buffer in bytes.\n\n this.#bufferedAmount += data.byteLength\n this.#sendQueue.add(data, () => {\n this.#bufferedAmount -= data.byteLength\n }, sendHints.typedArray)\n } else if (isBlobLike(data)) {\n // If the WebSocket connection is established, and the WebSocket\n // closing handshake has not yet started, then the user agent must\n // send a WebSocket Message comprised of data using a binary frame\n // opcode; if the data cannot be sent, e.g. because it would need to\n // be buffered but the buffer is full, the user agent must flag the\n // WebSocket as full and then close the WebSocket connection. The data\n // to be sent is the raw data represented by the Blob object. Any\n // invocation of this method with a Blob argument that does not throw\n // an exception must increase the bufferedAmount attribute by the size\n // of the Blob object\u2019s raw data, in bytes.\n\n this.#bufferedAmount += data.size\n this.#sendQueue.add(data, () => {\n this.#bufferedAmount -= data.size\n }, sendHints.blob)\n }\n }\n\n get readyState () {\n webidl.brandCheck(this, WebSocket)\n\n // The readyState getter steps are to return this's ready state.\n return this[kReadyState]\n }\n\n get bufferedAmount () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#bufferedAmount\n }\n\n get url () {\n webidl.brandCheck(this, WebSocket)\n\n // The url getter steps are to return this's url, serialized.\n return URLSerializer(this[kWebSocketURL])\n }\n\n get extensions () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#extensions\n }\n\n get protocol () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#protocol\n }\n\n get onopen () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#events.open\n }\n\n set onopen (fn) {\n webidl.brandCheck(this, WebSocket)\n\n if (this.#events.open) {\n this.removeEventListener('open', this.#events.open)\n }\n\n if (typeof fn === 'function') {\n this.#events.open = fn\n this.addEventListener('open', fn)\n } else {\n this.#events.open = null\n }\n }\n\n get onerror () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#events.error\n }\n\n set onerror (fn) {\n webidl.brandCheck(this, WebSocket)\n\n if (this.#events.error) {\n this.removeEventListener('error', this.#events.error)\n }\n\n if (typeof fn === 'function') {\n this.#events.error = fn\n this.addEventListener('error', fn)\n } else {\n this.#events.error = null\n }\n }\n\n get onclose () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#events.close\n }\n\n set onclose (fn) {\n webidl.brandCheck(this, WebSocket)\n\n if (this.#events.close) {\n this.removeEventListener('close', this.#events.close)\n }\n\n if (typeof fn === 'function') {\n this.#events.close = fn\n this.addEventListener('close', fn)\n } else {\n this.#events.close = null\n }\n }\n\n get onmessage () {\n webidl.brandCheck(this, WebSocket)\n\n return this.#events.message\n }\n\n set onmessage (fn) {\n webidl.brandCheck(this, WebSocket)\n\n if (this.#events.message) {\n this.removeEventListener('message', this.#events.message)\n }\n\n if (typeof fn === 'function') {\n this.#events.message = fn\n this.addEventListener('message', fn)\n } else {\n this.#events.message = null\n }\n }\n\n get binaryType () {\n webidl.brandCheck(this, WebSocket)\n\n return this[kBinaryType]\n }\n\n set binaryType (type) {\n webidl.brandCheck(this, WebSocket)\n\n if (type !== 'blob' && type !== 'arraybuffer') {\n this[kBinaryType] = 'blob'\n } else {\n this[kBinaryType] = type\n }\n }\n\n /**\n * @see https://websockets.spec.whatwg.org/#feedback-from-the-protocol\n */\n #onConnectionEstablished (response, parsedExtensions) {\n // processResponse is called when the \"response's header list has been received and initialized.\"\n // once this happens, the connection is open\n this[kResponse] = response\n\n const parser = new ByteParser(this, parsedExtensions)\n parser.on('drain', onParserDrain)\n parser.on('error', onParserError.bind(this))\n\n response.socket.ws = this\n this[kByteParser] = parser\n\n this.#sendQueue = new SendQueue(response.socket)\n\n // 1. Change the ready state to OPEN (1).\n this[kReadyState] = states.OPEN\n\n // 2. Change the extensions attribute\u2019s value to the extensions in use, if\n // it is not the null value.\n // https://datatracker.ietf.org/doc/html/rfc6455#section-9.1\n const extensions = response.headersList.get('sec-websocket-extensions')\n\n if (extensions !== null) {\n this.#extensions = extensions\n }\n\n // 3. Change the protocol attribute\u2019s value to the subprotocol in use, if\n // it is not the null value.\n // https://datatracker.ietf.org/doc/html/rfc6455#section-1.9\n const protocol = response.headersList.get('sec-websocket-protocol')\n\n if (protocol !== null) {\n this.#protocol = protocol\n }\n\n // 4. Fire an event named open at the WebSocket object.\n fireEvent('open', this)\n }\n}\n\n// https://websockets.spec.whatwg.org/#dom-websocket-connecting\nWebSocket.CONNECTING = WebSocket.prototype.CONNECTING = states.CONNECTING\n// https://websockets.spec.whatwg.org/#dom-websocket-open\nWebSocket.OPEN = WebSocket.prototype.OPEN = states.OPEN\n// https://websockets.spec.whatwg.org/#dom-websocket-closing\nWebSocket.CLOSING = WebSocket.prototype.CLOSING = states.CLOSING\n// https://websockets.spec.whatwg.org/#dom-websocket-closed\nWebSocket.CLOSED = WebSocket.prototype.CLOSED = states.CLOSED\n\nObject.defineProperties(WebSocket.prototype, {\n CONNECTING: staticPropertyDescriptors,\n OPEN: staticPropertyDescriptors,\n CLOSING: staticPropertyDescriptors,\n CLOSED: staticPropertyDescriptors,\n url: kEnumerableProperty,\n readyState: kEnumerableProperty,\n bufferedAmount: kEnumerableProperty,\n onopen: kEnumerableProperty,\n onerror: kEnumerableProperty,\n onclose: kEnumerableProperty,\n close: kEnumerableProperty,\n onmessage: kEnumerableProperty,\n binaryType: kEnumerableProperty,\n send: kEnumerableProperty,\n extensions: kEnumerableProperty,\n protocol: kEnumerableProperty,\n [Symbol.toStringTag]: {\n value: 'WebSocket',\n writable: false,\n enumerable: false,\n configurable: true\n }\n})\n\nObject.defineProperties(WebSocket, {\n CONNECTING: staticPropertyDescriptors,\n OPEN: staticPropertyDescriptors,\n CLOSING: staticPropertyDescriptors,\n CLOSED: staticPropertyDescriptors\n})\n\nwebidl.converters['sequence'] = webidl.sequenceConverter(\n webidl.converters.DOMString\n)\n\nwebidl.converters['DOMString or sequence'] = function (V, prefix, argument) {\n if (webidl.util.Type(V) === 'Object' && Symbol.iterator in V) {\n return webidl.converters['sequence'](V)\n }\n\n return webidl.converters.DOMString(V, prefix, argument)\n}\n\n// This implements the proposal made in https://github.com/whatwg/websockets/issues/42\nwebidl.converters.WebSocketInit = webidl.dictionaryConverter([\n {\n key: 'protocols',\n converter: webidl.converters['DOMString or sequence'],\n defaultValue: () => new Array(0)\n },\n {\n key: 'dispatcher',\n converter: webidl.converters.any,\n defaultValue: () => getGlobalDispatcher()\n },\n {\n key: 'headers',\n converter: webidl.nullableConverter(webidl.converters.HeadersInit)\n }\n])\n\nwebidl.converters['DOMString or sequence or WebSocketInit'] = function (V) {\n if (webidl.util.Type(V) === 'Object' && !(Symbol.iterator in V)) {\n return webidl.converters.WebSocketInit(V)\n }\n\n return { protocols: webidl.converters['DOMString or sequence'](V) }\n}\n\nwebidl.converters.WebSocketSendData = function (V) {\n if (webidl.util.Type(V) === 'Object') {\n if (isBlobLike(V)) {\n return webidl.converters.Blob(V, { strict: false })\n }\n\n if (ArrayBuffer.isView(V) || types.isArrayBuffer(V)) {\n return webidl.converters.BufferSource(V)\n }\n }\n\n return webidl.converters.USVString(V)\n}\n\nfunction onParserDrain () {\n this.ws[kResponse].socket.resume()\n}\n\nfunction onParserError (err) {\n let message\n let code\n\n if (err instanceof CloseEvent) {\n message = err.reason\n code = err.code\n } else {\n message = err.message\n }\n\n fireEvent('error', this, () => new ErrorEvent('error', { error: err, message }))\n\n closeWebSocketConnection(this, code)\n}\n\nmodule.exports = {\n WebSocket\n}\n", "'use strict'\n\n/**\n * Checks if the given value is a valid LastEventId.\n * @param {string} value\n * @returns {boolean}\n */\nfunction isValidLastEventId (value) {\n // LastEventId should not contain U+0000 NULL\n return value.indexOf('\\u0000') === -1\n}\n\n/**\n * Checks if the given value is a base 10 digit.\n * @param {string} value\n * @returns {boolean}\n */\nfunction isASCIINumber (value) {\n if (value.length === 0) return false\n for (let i = 0; i < value.length; i++) {\n if (value.charCodeAt(i) < 0x30 || value.charCodeAt(i) > 0x39) return false\n }\n return true\n}\n\n// https://github.com/nodejs/undici/issues/2664\nfunction delay (ms) {\n return new Promise((resolve) => {\n setTimeout(resolve, ms).unref()\n })\n}\n\nmodule.exports = {\n isValidLastEventId,\n isASCIINumber,\n delay\n}\n", "'use strict'\nconst { Transform } = require('node:stream')\nconst { isASCIINumber, isValidLastEventId } = require('./util')\n\n/**\n * @type {number[]} BOM\n */\nconst BOM = [0xEF, 0xBB, 0xBF]\n/**\n * @type {10} LF\n */\nconst LF = 0x0A\n/**\n * @type {13} CR\n */\nconst CR = 0x0D\n/**\n * @type {58} COLON\n */\nconst COLON = 0x3A\n/**\n * @type {32} SPACE\n */\nconst SPACE = 0x20\n\n/**\n * @typedef {object} EventSourceStreamEvent\n * @type {object}\n * @property {string} [event] The event type.\n * @property {string} [data] The data of the message.\n * @property {string} [id] A unique ID for the event.\n * @property {string} [retry] The reconnection time, in milliseconds.\n */\n\n/**\n * @typedef eventSourceSettings\n * @type {object}\n * @property {string} lastEventId The last event ID received from the server.\n * @property {string} origin The origin of the event source.\n * @property {number} reconnectionTime The reconnection time, in milliseconds.\n */\n\nclass EventSourceStream extends Transform {\n /**\n * @type {eventSourceSettings}\n */\n state = null\n\n /**\n * Leading byte-order-mark check.\n * @type {boolean}\n */\n checkBOM = true\n\n /**\n * @type {boolean}\n */\n crlfCheck = false\n\n /**\n * @type {boolean}\n */\n eventEndCheck = false\n\n /**\n * @type {Buffer}\n */\n buffer = null\n\n pos = 0\n\n event = {\n data: undefined,\n event: undefined,\n id: undefined,\n retry: undefined\n }\n\n /**\n * @param {object} options\n * @param {eventSourceSettings} options.eventSourceSettings\n * @param {Function} [options.push]\n */\n constructor (options = {}) {\n // Enable object mode as EventSourceStream emits objects of shape\n // EventSourceStreamEvent\n options.readableObjectMode = true\n\n super(options)\n\n this.state = options.eventSourceSettings || {}\n if (options.push) {\n this.push = options.push\n }\n }\n\n /**\n * @param {Buffer} chunk\n * @param {string} _encoding\n * @param {Function} callback\n * @returns {void}\n */\n _transform (chunk, _encoding, callback) {\n if (chunk.length === 0) {\n callback()\n return\n }\n\n // Cache the chunk in the buffer, as the data might not be complete while\n // processing it\n // TODO: Investigate if there is a more performant way to handle\n // incoming chunks\n // see: https://github.com/nodejs/undici/issues/2630\n if (this.buffer) {\n this.buffer = Buffer.concat([this.buffer, chunk])\n } else {\n this.buffer = chunk\n }\n\n // Strip leading byte-order-mark if we opened the stream and started\n // the processing of the incoming data\n if (this.checkBOM) {\n switch (this.buffer.length) {\n case 1:\n // Check if the first byte is the same as the first byte of the BOM\n if (this.buffer[0] === BOM[0]) {\n // If it is, we need to wait for more data\n callback()\n return\n }\n // Set the checkBOM flag to false as we don't need to check for the\n // BOM anymore\n this.checkBOM = false\n\n // The buffer only contains one byte so we need to wait for more data\n callback()\n return\n case 2:\n // Check if the first two bytes are the same as the first two bytes\n // of the BOM\n if (\n this.buffer[0] === BOM[0] &&\n this.buffer[1] === BOM[1]\n ) {\n // If it is, we need to wait for more data, because the third byte\n // is needed to determine if it is the BOM or not\n callback()\n return\n }\n\n // Set the checkBOM flag to false as we don't need to check for the\n // BOM anymore\n this.checkBOM = false\n break\n case 3:\n // Check if the first three bytes are the same as the first three\n // bytes of the BOM\n if (\n this.buffer[0] === BOM[0] &&\n this.buffer[1] === BOM[1] &&\n this.buffer[2] === BOM[2]\n ) {\n // If it is, we can drop the buffered data, as it is only the BOM\n this.buffer = Buffer.alloc(0)\n // Set the checkBOM flag to false as we don't need to check for the\n // BOM anymore\n this.checkBOM = false\n\n // Await more data\n callback()\n return\n }\n // If it is not the BOM, we can start processing the data\n this.checkBOM = false\n break\n default:\n // The buffer is longer than 3 bytes, so we can drop the BOM if it is\n // present\n if (\n this.buffer[0] === BOM[0] &&\n this.buffer[1] === BOM[1] &&\n this.buffer[2] === BOM[2]\n ) {\n // Remove the BOM from the buffer\n this.buffer = this.buffer.subarray(3)\n }\n\n // Set the checkBOM flag to false as we don't need to check for the\n this.checkBOM = false\n break\n }\n }\n\n while (this.pos < this.buffer.length) {\n // If the previous line ended with an end-of-line, we need to check\n // if the next character is also an end-of-line.\n if (this.eventEndCheck) {\n // If the the current character is an end-of-line, then the event\n // is finished and we can process it\n\n // If the previous line ended with a carriage return, we need to\n // check if the current character is a line feed and remove it\n // from the buffer.\n if (this.crlfCheck) {\n // If the current character is a line feed, we can remove it\n // from the buffer and reset the crlfCheck flag\n if (this.buffer[this.pos] === LF) {\n this.buffer = this.buffer.subarray(this.pos + 1)\n this.pos = 0\n this.crlfCheck = false\n\n // It is possible that the line feed is not the end of the\n // event. We need to check if the next character is an\n // end-of-line character to determine if the event is\n // finished. We simply continue the loop to check the next\n // character.\n\n // As we removed the line feed from the buffer and set the\n // crlfCheck flag to false, we basically don't make any\n // distinction between a line feed and a carriage return.\n continue\n }\n this.crlfCheck = false\n }\n\n if (this.buffer[this.pos] === LF || this.buffer[this.pos] === CR) {\n // If the current character is a carriage return, we need to\n // set the crlfCheck flag to true, as we need to check if the\n // next character is a line feed so we can remove it from the\n // buffer\n if (this.buffer[this.pos] === CR) {\n this.crlfCheck = true\n }\n\n this.buffer = this.buffer.subarray(this.pos + 1)\n this.pos = 0\n if (\n this.event.data !== undefined || this.event.event || this.event.id || this.event.retry) {\n this.processEvent(this.event)\n }\n this.clearEvent()\n continue\n }\n // If the current character is not an end-of-line, then the event\n // is not finished and we have to reset the eventEndCheck flag\n this.eventEndCheck = false\n continue\n }\n\n // If the current character is an end-of-line, we can process the\n // line\n if (this.buffer[this.pos] === LF || this.buffer[this.pos] === CR) {\n // If the current character is a carriage return, we need to\n // set the crlfCheck flag to true, as we need to check if the\n // next character is a line feed\n if (this.buffer[this.pos] === CR) {\n this.crlfCheck = true\n }\n\n // In any case, we can process the line as we reached an\n // end-of-line character\n this.parseLine(this.buffer.subarray(0, this.pos), this.event)\n\n // Remove the processed line from the buffer\n this.buffer = this.buffer.subarray(this.pos + 1)\n // Reset the position as we removed the processed line from the buffer\n this.pos = 0\n // A line was processed and this could be the end of the event. We need\n // to check if the next line is empty to determine if the event is\n // finished.\n this.eventEndCheck = true\n continue\n }\n\n this.pos++\n }\n\n callback()\n }\n\n /**\n * @param {Buffer} line\n * @param {EventStreamEvent} event\n */\n parseLine (line, event) {\n // If the line is empty (a blank line)\n // Dispatch the event, as defined below.\n // This will be handled in the _transform method\n if (line.length === 0) {\n return\n }\n\n // If the line starts with a U+003A COLON character (:)\n // Ignore the line.\n const colonPosition = line.indexOf(COLON)\n if (colonPosition === 0) {\n return\n }\n\n let field = ''\n let value = ''\n\n // If the line contains a U+003A COLON character (:)\n if (colonPosition !== -1) {\n // Collect the characters on the line before the first U+003A COLON\n // character (:), and let field be that string.\n // TODO: Investigate if there is a more performant way to extract the\n // field\n // see: https://github.com/nodejs/undici/issues/2630\n field = line.subarray(0, colonPosition).toString('utf8')\n\n // Collect the characters on the line after the first U+003A COLON\n // character (:), and let value be that string.\n // If value starts with a U+0020 SPACE character, remove it from value.\n let valueStart = colonPosition + 1\n if (line[valueStart] === SPACE) {\n ++valueStart\n }\n // TODO: Investigate if there is a more performant way to extract the\n // value\n // see: https://github.com/nodejs/undici/issues/2630\n value = line.subarray(valueStart).toString('utf8')\n\n // Otherwise, the string is not empty but does not contain a U+003A COLON\n // character (:)\n } else {\n // Process the field using the steps described below, using the whole\n // line as the field name, and the empty string as the field value.\n field = line.toString('utf8')\n value = ''\n }\n\n // Modify the event with the field name and value. The value is also\n // decoded as UTF-8\n switch (field) {\n case 'data':\n if (event[field] === undefined) {\n event[field] = value\n } else {\n event[field] += `\\n${value}`\n }\n break\n case 'retry':\n if (isASCIINumber(value)) {\n event[field] = value\n }\n break\n case 'id':\n if (isValidLastEventId(value)) {\n event[field] = value\n }\n break\n case 'event':\n if (value.length > 0) {\n event[field] = value\n }\n break\n }\n }\n\n /**\n * @param {EventSourceStreamEvent} event\n */\n processEvent (event) {\n if (event.retry && isASCIINumber(event.retry)) {\n this.state.reconnectionTime = parseInt(event.retry, 10)\n }\n\n if (event.id && isValidLastEventId(event.id)) {\n this.state.lastEventId = event.id\n }\n\n // only dispatch event, when data is provided\n if (event.data !== undefined) {\n this.push({\n type: event.event || 'message',\n options: {\n data: event.data,\n lastEventId: this.state.lastEventId,\n origin: this.state.origin\n }\n })\n }\n }\n\n clearEvent () {\n this.event = {\n data: undefined,\n event: undefined,\n id: undefined,\n retry: undefined\n }\n }\n}\n\nmodule.exports = {\n EventSourceStream\n}\n", "'use strict'\n\nconst { pipeline } = require('node:stream')\nconst { fetching } = require('../fetch')\nconst { makeRequest } = require('../fetch/request')\nconst { webidl } = require('../fetch/webidl')\nconst { EventSourceStream } = require('./eventsource-stream')\nconst { parseMIMEType } = require('../fetch/data-url')\nconst { createFastMessageEvent } = require('../websocket/events')\nconst { isNetworkError } = require('../fetch/response')\nconst { delay } = require('./util')\nconst { kEnumerableProperty } = require('../../core/util')\nconst { environmentSettingsObject } = require('../fetch/util')\n\nlet experimentalWarned = false\n\n/**\n * A reconnection time, in milliseconds. This must initially be an implementation-defined value,\n * probably in the region of a few seconds.\n *\n * In Comparison:\n * - Chrome uses 3000ms.\n * - Deno uses 5000ms.\n *\n * @type {3000}\n */\nconst defaultReconnectionTime = 3000\n\n/**\n * The readyState attribute represents the state of the connection.\n * @enum\n * @readonly\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#dom-eventsource-readystate-dev\n */\n\n/**\n * The connection has not yet been established, or it was closed and the user\n * agent is reconnecting.\n * @type {0}\n */\nconst CONNECTING = 0\n\n/**\n * The user agent has an open connection and is dispatching events as it\n * receives them.\n * @type {1}\n */\nconst OPEN = 1\n\n/**\n * The connection is not open, and the user agent is not trying to reconnect.\n * @type {2}\n */\nconst CLOSED = 2\n\n/**\n * Requests for the element will have their mode set to \"cors\" and their credentials mode set to \"same-origin\".\n * @type {'anonymous'}\n */\nconst ANONYMOUS = 'anonymous'\n\n/**\n * Requests for the element will have their mode set to \"cors\" and their credentials mode set to \"include\".\n * @type {'use-credentials'}\n */\nconst USE_CREDENTIALS = 'use-credentials'\n\n/**\n * The EventSource interface is used to receive server-sent events. It\n * connects to a server over HTTP and receives events in text/event-stream\n * format without closing the connection.\n * @extends {EventTarget}\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#server-sent-events\n * @api public\n */\nclass EventSource extends EventTarget {\n #events = {\n open: null,\n error: null,\n message: null\n }\n\n #url = null\n #withCredentials = false\n\n #readyState = CONNECTING\n\n #request = null\n #controller = null\n\n #dispatcher\n\n /**\n * @type {import('./eventsource-stream').eventSourceSettings}\n */\n #state\n\n /**\n * Creates a new EventSource object.\n * @param {string} url\n * @param {EventSourceInit} [eventSourceInitDict]\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#the-eventsource-interface\n */\n constructor (url, eventSourceInitDict = {}) {\n // 1. Let ev be a new EventSource object.\n super()\n\n webidl.util.markAsUncloneable(this)\n\n const prefix = 'EventSource constructor'\n webidl.argumentLengthCheck(arguments, 1, prefix)\n\n if (!experimentalWarned) {\n experimentalWarned = true\n process.emitWarning('EventSource is experimental, expect them to change at any time.', {\n code: 'UNDICI-ES'\n })\n }\n\n url = webidl.converters.USVString(url, prefix, 'url')\n eventSourceInitDict = webidl.converters.EventSourceInitDict(eventSourceInitDict, prefix, 'eventSourceInitDict')\n\n this.#dispatcher = eventSourceInitDict.dispatcher\n this.#state = {\n lastEventId: '',\n reconnectionTime: defaultReconnectionTime\n }\n\n // 2. Let settings be ev's relevant settings object.\n // https://html.spec.whatwg.org/multipage/webappapis.html#environment-settings-object\n const settings = environmentSettingsObject\n\n let urlRecord\n\n try {\n // 3. Let urlRecord be the result of encoding-parsing a URL given url, relative to settings.\n urlRecord = new URL(url, settings.settingsObject.baseUrl)\n this.#state.origin = urlRecord.origin\n } catch (e) {\n // 4. If urlRecord is failure, then throw a \"SyntaxError\" DOMException.\n throw new DOMException(e, 'SyntaxError')\n }\n\n // 5. Set ev's url to urlRecord.\n this.#url = urlRecord.href\n\n // 6. Let corsAttributeState be Anonymous.\n let corsAttributeState = ANONYMOUS\n\n // 7. If the value of eventSourceInitDict's withCredentials member is true,\n // then set corsAttributeState to Use Credentials and set ev's\n // withCredentials attribute to true.\n if (eventSourceInitDict.withCredentials) {\n corsAttributeState = USE_CREDENTIALS\n this.#withCredentials = true\n }\n\n // 8. Let request be the result of creating a potential-CORS request given\n // urlRecord, the empty string, and corsAttributeState.\n const initRequest = {\n redirect: 'follow',\n keepalive: true,\n // @see https://html.spec.whatwg.org/multipage/urls-and-fetching.html#cors-settings-attributes\n mode: 'cors',\n credentials: corsAttributeState === 'anonymous'\n ? 'same-origin'\n : 'omit',\n referrer: 'no-referrer'\n }\n\n // 9. Set request's client to settings.\n initRequest.client = environmentSettingsObject.settingsObject\n\n // 10. User agents may set (`Accept`, `text/event-stream`) in request's header list.\n initRequest.headersList = [['accept', { name: 'accept', value: 'text/event-stream' }]]\n\n // 11. Set request's cache mode to \"no-store\".\n initRequest.cache = 'no-store'\n\n // 12. Set request's initiator type to \"other\".\n initRequest.initiator = 'other'\n\n initRequest.urlList = [new URL(this.#url)]\n\n // 13. Set ev's request to request.\n this.#request = makeRequest(initRequest)\n\n this.#connect()\n }\n\n /**\n * Returns the state of this EventSource object's connection. It can have the\n * values described below.\n * @returns {0|1|2}\n * @readonly\n */\n get readyState () {\n return this.#readyState\n }\n\n /**\n * Returns the URL providing the event stream.\n * @readonly\n * @returns {string}\n */\n get url () {\n return this.#url\n }\n\n /**\n * Returns a boolean indicating whether the EventSource object was\n * instantiated with CORS credentials set (true), or not (false, the default).\n */\n get withCredentials () {\n return this.#withCredentials\n }\n\n #connect () {\n if (this.#readyState === CLOSED) return\n\n this.#readyState = CONNECTING\n\n const fetchParams = {\n request: this.#request,\n dispatcher: this.#dispatcher\n }\n\n // 14. Let processEventSourceEndOfBody given response res be the following step: if res is not a network error, then reestablish the connection.\n const processEventSourceEndOfBody = (response) => {\n if (isNetworkError(response)) {\n this.dispatchEvent(new Event('error'))\n this.close()\n }\n\n this.#reconnect()\n }\n\n // 15. Fetch request, with processResponseEndOfBody set to processEventSourceEndOfBody...\n fetchParams.processResponseEndOfBody = processEventSourceEndOfBody\n\n // and processResponse set to the following steps given response res:\n fetchParams.processResponse = (response) => {\n // 1. If res is an aborted network error, then fail the connection.\n\n if (isNetworkError(response)) {\n // 1. When a user agent is to fail the connection, the user agent\n // must queue a task which, if the readyState attribute is set to a\n // value other than CLOSED, sets the readyState attribute to CLOSED\n // and fires an event named error at the EventSource object. Once the\n // user agent has failed the connection, it does not attempt to\n // reconnect.\n if (response.aborted) {\n this.close()\n this.dispatchEvent(new Event('error'))\n return\n // 2. Otherwise, if res is a network error, then reestablish the\n // connection, unless the user agent knows that to be futile, in\n // which case the user agent may fail the connection.\n } else {\n this.#reconnect()\n return\n }\n }\n\n // 3. Otherwise, if res's status is not 200, or if res's `Content-Type`\n // is not `text/event-stream`, then fail the connection.\n const contentType = response.headersList.get('content-type', true)\n const mimeType = contentType !== null ? parseMIMEType(contentType) : 'failure'\n const contentTypeValid = mimeType !== 'failure' && mimeType.essence === 'text/event-stream'\n if (\n response.status !== 200 ||\n contentTypeValid === false\n ) {\n this.close()\n this.dispatchEvent(new Event('error'))\n return\n }\n\n // 4. Otherwise, announce the connection and interpret res's body\n // line by line.\n\n // When a user agent is to announce the connection, the user agent\n // must queue a task which, if the readyState attribute is set to a\n // value other than CLOSED, sets the readyState attribute to OPEN\n // and fires an event named open at the EventSource object.\n // @see https://html.spec.whatwg.org/multipage/server-sent-events.html#sse-processing-model\n this.#readyState = OPEN\n this.dispatchEvent(new Event('open'))\n\n // If redirected to a different origin, set the origin to the new origin.\n this.#state.origin = response.urlList[response.urlList.length - 1].origin\n\n const eventSourceStream = new EventSourceStream({\n eventSourceSettings: this.#state,\n push: (event) => {\n this.dispatchEvent(createFastMessageEvent(\n event.type,\n event.options\n ))\n }\n })\n\n pipeline(response.body.stream,\n eventSourceStream,\n (error) => {\n if (\n error?.aborted === false\n ) {\n this.close()\n this.dispatchEvent(new Event('error'))\n }\n })\n }\n\n this.#controller = fetching(fetchParams)\n }\n\n /**\n * @see https://html.spec.whatwg.org/multipage/server-sent-events.html#sse-processing-model\n * @returns {Promise}\n */\n async #reconnect () {\n // When a user agent is to reestablish the connection, the user agent must\n // run the following steps. These steps are run in parallel, not as part of\n // a task. (The tasks that it queues, of course, are run like normal tasks\n // and not themselves in parallel.)\n\n // 1. Queue a task to run the following steps:\n\n // 1. If the readyState attribute is set to CLOSED, abort the task.\n if (this.#readyState === CLOSED) return\n\n // 2. Set the readyState attribute to CONNECTING.\n this.#readyState = CONNECTING\n\n // 3. Fire an event named error at the EventSource object.\n this.dispatchEvent(new Event('error'))\n\n // 2. Wait a delay equal to the reconnection time of the event source.\n await delay(this.#state.reconnectionTime)\n\n // 5. Queue a task to run the following steps:\n\n // 1. If the EventSource object's readyState attribute is not set to\n // CONNECTING, then return.\n if (this.#readyState !== CONNECTING) return\n\n // 2. Let request be the EventSource object's request.\n // 3. If the EventSource object's last event ID string is not the empty\n // string, then:\n // 1. Let lastEventIDValue be the EventSource object's last event ID\n // string, encoded as UTF-8.\n // 2. Set (`Last-Event-ID`, lastEventIDValue) in request's header\n // list.\n if (this.#state.lastEventId.length) {\n this.#request.headersList.set('last-event-id', this.#state.lastEventId, true)\n }\n\n // 4. Fetch request and process the response obtained in this fashion, if any, as described earlier in this section.\n this.#connect()\n }\n\n /**\n * Closes the connection, if any, and sets the readyState attribute to\n * CLOSED.\n */\n close () {\n webidl.brandCheck(this, EventSource)\n\n if (this.#readyState === CLOSED) return\n this.#readyState = CLOSED\n this.#controller.abort()\n this.#request = null\n }\n\n get onopen () {\n return this.#events.open\n }\n\n set onopen (fn) {\n if (this.#events.open) {\n this.removeEventListener('open', this.#events.open)\n }\n\n if (typeof fn === 'function') {\n this.#events.open = fn\n this.addEventListener('open', fn)\n } else {\n this.#events.open = null\n }\n }\n\n get onmessage () {\n return this.#events.message\n }\n\n set onmessage (fn) {\n if (this.#events.message) {\n this.removeEventListener('message', this.#events.message)\n }\n\n if (typeof fn === 'function') {\n this.#events.message = fn\n this.addEventListener('message', fn)\n } else {\n this.#events.message = null\n }\n }\n\n get onerror () {\n return this.#events.error\n }\n\n set onerror (fn) {\n if (this.#events.error) {\n this.removeEventListener('error', this.#events.error)\n }\n\n if (typeof fn === 'function') {\n this.#events.error = fn\n this.addEventListener('error', fn)\n } else {\n this.#events.error = null\n }\n }\n}\n\nconst constantsPropertyDescriptors = {\n CONNECTING: {\n __proto__: null,\n configurable: false,\n enumerable: true,\n value: CONNECTING,\n writable: false\n },\n OPEN: {\n __proto__: null,\n configurable: false,\n enumerable: true,\n value: OPEN,\n writable: false\n },\n CLOSED: {\n __proto__: null,\n configurable: false,\n enumerable: true,\n value: CLOSED,\n writable: false\n }\n}\n\nObject.defineProperties(EventSource, constantsPropertyDescriptors)\nObject.defineProperties(EventSource.prototype, constantsPropertyDescriptors)\n\nObject.defineProperties(EventSource.prototype, {\n close: kEnumerableProperty,\n onerror: kEnumerableProperty,\n onmessage: kEnumerableProperty,\n onopen: kEnumerableProperty,\n readyState: kEnumerableProperty,\n url: kEnumerableProperty,\n withCredentials: kEnumerableProperty\n})\n\nwebidl.converters.EventSourceInitDict = webidl.dictionaryConverter([\n {\n key: 'withCredentials',\n converter: webidl.converters.boolean,\n defaultValue: () => false\n },\n {\n key: 'dispatcher', // undici only\n converter: webidl.converters.any\n }\n])\n\nmodule.exports = {\n EventSource,\n defaultReconnectionTime\n}\n", "'use strict'\n\nconst Client = require('./lib/dispatcher/client')\nconst Dispatcher = require('./lib/dispatcher/dispatcher')\nconst Pool = require('./lib/dispatcher/pool')\nconst BalancedPool = require('./lib/dispatcher/balanced-pool')\nconst Agent = require('./lib/dispatcher/agent')\nconst ProxyAgent = require('./lib/dispatcher/proxy-agent')\nconst EnvHttpProxyAgent = require('./lib/dispatcher/env-http-proxy-agent')\nconst RetryAgent = require('./lib/dispatcher/retry-agent')\nconst errors = require('./lib/core/errors')\nconst util = require('./lib/core/util')\nconst { InvalidArgumentError } = errors\nconst api = require('./lib/api')\nconst buildConnector = require('./lib/core/connect')\nconst MockClient = require('./lib/mock/mock-client')\nconst MockAgent = require('./lib/mock/mock-agent')\nconst MockPool = require('./lib/mock/mock-pool')\nconst mockErrors = require('./lib/mock/mock-errors')\nconst RetryHandler = require('./lib/handler/retry-handler')\nconst { getGlobalDispatcher, setGlobalDispatcher } = require('./lib/global')\nconst DecoratorHandler = require('./lib/handler/decorator-handler')\nconst RedirectHandler = require('./lib/handler/redirect-handler')\nconst createRedirectInterceptor = require('./lib/interceptor/redirect-interceptor')\n\nObject.assign(Dispatcher.prototype, api)\n\nmodule.exports.Dispatcher = Dispatcher\nmodule.exports.Client = Client\nmodule.exports.Pool = Pool\nmodule.exports.BalancedPool = BalancedPool\nmodule.exports.Agent = Agent\nmodule.exports.ProxyAgent = ProxyAgent\nmodule.exports.EnvHttpProxyAgent = EnvHttpProxyAgent\nmodule.exports.RetryAgent = RetryAgent\nmodule.exports.RetryHandler = RetryHandler\n\nmodule.exports.DecoratorHandler = DecoratorHandler\nmodule.exports.RedirectHandler = RedirectHandler\nmodule.exports.createRedirectInterceptor = createRedirectInterceptor\nmodule.exports.interceptors = {\n redirect: require('./lib/interceptor/redirect'),\n retry: require('./lib/interceptor/retry'),\n dump: require('./lib/interceptor/dump'),\n dns: require('./lib/interceptor/dns')\n}\n\nmodule.exports.buildConnector = buildConnector\nmodule.exports.errors = errors\nmodule.exports.util = {\n parseHeaders: util.parseHeaders,\n headerNameToString: util.headerNameToString\n}\n\nfunction makeDispatcher (fn) {\n return (url, opts, handler) => {\n if (typeof opts === 'function') {\n handler = opts\n opts = null\n }\n\n if (!url || (typeof url !== 'string' && typeof url !== 'object' && !(url instanceof URL))) {\n throw new InvalidArgumentError('invalid url')\n }\n\n if (opts != null && typeof opts !== 'object') {\n throw new InvalidArgumentError('invalid opts')\n }\n\n if (opts && opts.path != null) {\n if (typeof opts.path !== 'string') {\n throw new InvalidArgumentError('invalid opts.path')\n }\n\n let path = opts.path\n if (!opts.path.startsWith('/')) {\n path = `/${path}`\n }\n\n url = new URL(util.parseOrigin(url).origin + path)\n } else {\n if (!opts) {\n opts = typeof url === 'object' ? url : {}\n }\n\n url = util.parseURL(url)\n }\n\n const { agent, dispatcher = getGlobalDispatcher() } = opts\n\n if (agent) {\n throw new InvalidArgumentError('unsupported opts.agent. Did you mean opts.client?')\n }\n\n return fn.call(dispatcher, {\n ...opts,\n origin: url.origin,\n path: url.search ? `${url.pathname}${url.search}` : url.pathname,\n method: opts.method || (opts.body ? 'PUT' : 'GET')\n }, handler)\n }\n}\n\nmodule.exports.setGlobalDispatcher = setGlobalDispatcher\nmodule.exports.getGlobalDispatcher = getGlobalDispatcher\n\nconst fetchImpl = require('./lib/web/fetch').fetch\nmodule.exports.fetch = async function fetch (init, options = undefined) {\n try {\n return await fetchImpl(init, options)\n } catch (err) {\n if (err && typeof err === 'object') {\n Error.captureStackTrace(err)\n }\n\n throw err\n }\n}\nmodule.exports.Headers = require('./lib/web/fetch/headers').Headers\nmodule.exports.Response = require('./lib/web/fetch/response').Response\nmodule.exports.Request = require('./lib/web/fetch/request').Request\nmodule.exports.FormData = require('./lib/web/fetch/formdata').FormData\nmodule.exports.File = globalThis.File ?? require('node:buffer').File\nmodule.exports.FileReader = require('./lib/web/fileapi/filereader').FileReader\n\nconst { setGlobalOrigin, getGlobalOrigin } = require('./lib/web/fetch/global')\n\nmodule.exports.setGlobalOrigin = setGlobalOrigin\nmodule.exports.getGlobalOrigin = getGlobalOrigin\n\nconst { CacheStorage } = require('./lib/web/cache/cachestorage')\nconst { kConstruct } = require('./lib/web/cache/symbols')\n\n// Cache & CacheStorage are tightly coupled with fetch. Even if it may run\n// in an older version of Node, it doesn't have any use without fetch.\nmodule.exports.caches = new CacheStorage(kConstruct)\n\nconst { deleteCookie, getCookies, getSetCookies, setCookie } = require('./lib/web/cookies')\n\nmodule.exports.deleteCookie = deleteCookie\nmodule.exports.getCookies = getCookies\nmodule.exports.getSetCookies = getSetCookies\nmodule.exports.setCookie = setCookie\n\nconst { parseMIMEType, serializeAMimeType } = require('./lib/web/fetch/data-url')\n\nmodule.exports.parseMIMEType = parseMIMEType\nmodule.exports.serializeAMimeType = serializeAMimeType\n\nconst { CloseEvent, ErrorEvent, MessageEvent } = require('./lib/web/websocket/events')\nmodule.exports.WebSocket = require('./lib/web/websocket/websocket').WebSocket\nmodule.exports.CloseEvent = CloseEvent\nmodule.exports.ErrorEvent = ErrorEvent\nmodule.exports.MessageEvent = MessageEvent\n\nmodule.exports.request = makeDispatcher(api.request)\nmodule.exports.stream = makeDispatcher(api.stream)\nmodule.exports.pipeline = makeDispatcher(api.pipeline)\nmodule.exports.connect = makeDispatcher(api.connect)\nmodule.exports.upgrade = makeDispatcher(api.upgrade)\n\nmodule.exports.MockClient = MockClient\nmodule.exports.MockPool = MockPool\nmodule.exports.MockAgent = MockAgent\nmodule.exports.mockErrors = mockErrors\n\nconst { EventSource } = require('./lib/web/eventsource/eventsource')\n\nmodule.exports.EventSource = EventSource\n", "'use strict'\n\n// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n", "'use strict'\n\nconst debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n", "'use strict'\n\nconst {\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_LENGTH,\n} = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst safeSrc = exports.safeSrc = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n safeSrc[index] = safe\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '\\\\d+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n// Non-numberic identifiers include numberic identifiers but can be longer.\n// Therefore non-numberic identifiers must go first.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifer, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCEPLAIN', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`)\ncreateToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\\\d])`)\ncreateToken('COERCEFULL', src[t.COERCEPLAIN] +\n `(?:${src[t.PRERELEASE]})?` +\n `(?:${src[t.BUILD]})?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\ncreateToken('COERCERTLFULL', src[t.COERCEFULL], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$')\n", "'use strict'\n\n// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\n", "'use strict'\n\nconst numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n if (typeof a === 'number' && typeof b === 'number') {\n return a === b ? 0 : a < b ? -1 : 1\n }\n\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers,\n}\n", "'use strict'\n\nconst debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof version}\".`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n if (this.major < other.major) {\n return -1\n }\n if (this.major > other.major) {\n return 1\n }\n if (this.minor < other.minor) {\n return -1\n }\n if (this.minor > other.minor) {\n return 1\n }\n if (this.patch < other.patch) {\n return -1\n }\n if (this.patch > other.patch) {\n return 1\n }\n return 0\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('build compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier, identifierBase) {\n if (release.startsWith('pre')) {\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n // Avoid an invalid semver results\n if (identifier) {\n const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE])\n if (!match || match[1] !== identifier) {\n throw new Error(`invalid identifier: ${identifier}`)\n }\n }\n }\n\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier, identifierBase)\n this.inc('pre', identifier, identifierBase)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\n break\n case 'release':\n if (this.prerelease.length === 0) {\n throw new Error(`version ${this.raw} is not a prerelease`)\n }\n this.prerelease.length = 0\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre': {\n const base = Number(identifierBase) ? 1 : 0\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n", "'use strict'\n\nconst parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n", "'use strict'\n\nconst parse = require('./parse')\nconst clean = (version, options) => {\n const s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\nmodule.exports = clean\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\n\nconst inc = (version, release, options, identifier, identifierBase) => {\n if (typeof (options) === 'string') {\n identifierBase = identifier\n identifier = options\n options = undefined\n }\n\n try {\n return new SemVer(\n version instanceof SemVer ? version.version : version,\n options\n ).inc(release, identifier, identifierBase).version\n } catch (er) {\n return null\n }\n}\nmodule.exports = inc\n", "'use strict'\n\nconst parse = require('./parse.js')\n\nconst diff = (version1, version2) => {\n const v1 = parse(version1, null, true)\n const v2 = parse(version2, null, true)\n const comparison = v1.compare(v2)\n\n if (comparison === 0) {\n return null\n }\n\n const v1Higher = comparison > 0\n const highVersion = v1Higher ? v1 : v2\n const lowVersion = v1Higher ? v2 : v1\n const highHasPre = !!highVersion.prerelease.length\n const lowHasPre = !!lowVersion.prerelease.length\n\n if (lowHasPre && !highHasPre) {\n // Going from prerelease -> no prerelease requires some special casing\n\n // If the low version has only a major, then it will always be a major\n // Some examples:\n // 1.0.0-1 -> 1.0.0\n // 1.0.0-1 -> 1.1.1\n // 1.0.0-1 -> 2.0.0\n if (!lowVersion.patch && !lowVersion.minor) {\n return 'major'\n }\n\n // If the main part has no difference\n if (lowVersion.compareMain(highVersion) === 0) {\n if (lowVersion.minor && !lowVersion.patch) {\n return 'minor'\n }\n return 'patch'\n }\n }\n\n // add the `pre` prefix if we are going to a prerelease version\n const prefix = highHasPre ? 'pre' : ''\n\n if (v1.major !== v2.major) {\n return prefix + 'major'\n }\n\n if (v1.minor !== v2.minor) {\n return prefix + 'minor'\n }\n\n if (v1.patch !== v2.patch) {\n return prefix + 'patch'\n }\n\n // high and low are preleases\n return 'prerelease'\n}\n\nmodule.exports = diff\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst minor = (a, loose) => new SemVer(a, loose).minor\nmodule.exports = minor\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst patch = (a, loose) => new SemVer(a, loose).patch\nmodule.exports = patch\n", "'use strict'\n\nconst parse = require('./parse')\nconst prerelease = (version, options) => {\n const parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\nmodule.exports = prerelease\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compare = (a, b, loose) =>\n new SemVer(a, loose).compare(new SemVer(b, loose))\n\nmodule.exports = compare\n", "'use strict'\n\nconst compare = require('./compare')\nconst rcompare = (a, b, loose) => compare(b, a, loose)\nmodule.exports = rcompare\n", "'use strict'\n\nconst compare = require('./compare')\nconst compareLoose = (a, b) => compare(a, b, true)\nmodule.exports = compareLoose\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compareBuild = (a, b, loose) => {\n const versionA = new SemVer(a, loose)\n const versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\nmodule.exports = compareBuild\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))\nmodule.exports = sort\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))\nmodule.exports = rsort\n", "'use strict'\n\nconst compare = require('./compare')\nconst gt = (a, b, loose) => compare(a, b, loose) > 0\nmodule.exports = gt\n", "'use strict'\n\nconst compare = require('./compare')\nconst lt = (a, b, loose) => compare(a, b, loose) < 0\nmodule.exports = lt\n", "'use strict'\n\nconst compare = require('./compare')\nconst eq = (a, b, loose) => compare(a, b, loose) === 0\nmodule.exports = eq\n", "'use strict'\n\nconst compare = require('./compare')\nconst neq = (a, b, loose) => compare(a, b, loose) !== 0\nmodule.exports = neq\n", "'use strict'\n\nconst compare = require('./compare')\nconst gte = (a, b, loose) => compare(a, b, loose) >= 0\nmodule.exports = gte\n", "'use strict'\n\nconst compare = require('./compare')\nconst lte = (a, b, loose) => compare(a, b, loose) <= 0\nmodule.exports = lte\n", "'use strict'\n\nconst eq = require('./eq')\nconst neq = require('./neq')\nconst gt = require('./gt')\nconst gte = require('./gte')\nconst lt = require('./lt')\nconst lte = require('./lte')\n\nconst cmp = (a, op, b, loose) => {\n switch (op) {\n case '===':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a === b\n\n case '!==':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError(`Invalid operator: ${op}`)\n }\n}\nmodule.exports = cmp\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = require('./parse')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst coerce = (version, options) => {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n let match = null\n if (!options.rtl) {\n match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n // With includePrerelease option set, '1.2.3.4-rc' wants to coerce '2.3.4-rc', not '2.3.4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]\n let next\n while ((next = coerceRtlRegex.exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n coerceRtlRegex.lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n const major = match[2]\n const minor = match[3] || '0'\n const patch = match[4] || '0'\n const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ''\n const build = options.includePrerelease && match[6] ? `+${match[6]}` : ''\n\n return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options)\n}\nmodule.exports = coerce\n", "'use strict'\n\nclass LRUCache {\n constructor () {\n this.max = 1000\n this.map = new Map()\n }\n\n get (key) {\n const value = this.map.get(key)\n if (value === undefined) {\n return undefined\n } else {\n // Remove the key from the map and add it to the end\n this.map.delete(key)\n this.map.set(key, value)\n return value\n }\n }\n\n delete (key) {\n return this.map.delete(key)\n }\n\n set (key, value) {\n const deleted = this.delete(key)\n\n if (!deleted && value !== undefined) {\n // If cache is full, delete the least recently used item\n if (this.map.size >= this.max) {\n const firstKey = this.map.keys().next().value\n this.delete(firstKey)\n }\n\n this.map.set(key, value)\n }\n\n return this\n }\n}\n\nmodule.exports = LRUCache\n", "'use strict'\n\nconst SPACE_CHARACTERS = /\\s+/g\n\n// hoisted class for cyclic dependency\nclass Range {\n constructor (range, options) {\n options = parseOptions(options)\n\n if (range instanceof Range) {\n if (\n range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease\n ) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n // just put it in the set and return\n this.raw = range.value\n this.set = [[range]]\n this.formatted = undefined\n return this\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First reduce all whitespace as much as possible so we do not have to rely\n // on potentially slow regexes like \\s*. This is then stored and used for\n // future error messages as well.\n this.raw = range.trim().replace(SPACE_CHARACTERS, ' ')\n\n // First, split on ||\n this.set = this.raw\n .split('||')\n // map the range to a 2d array of comparators\n .map(r => this.parseRange(r.trim()))\n // throw out any comparator lists that are empty\n // this generally means that it was not a valid range, which is allowed\n // in loose mode, but will still throw if the WHOLE range is invalid.\n .filter(c => c.length)\n\n if (!this.set.length) {\n throw new TypeError(`Invalid SemVer Range: ${this.raw}`)\n }\n\n // if we have any that are not the null set, throw out null sets.\n if (this.set.length > 1) {\n // keep the first one, in case they're all null sets\n const first = this.set[0]\n this.set = this.set.filter(c => !isNullSet(c[0]))\n if (this.set.length === 0) {\n this.set = [first]\n } else if (this.set.length > 1) {\n // if we have any that are *, then the range is just *\n for (const c of this.set) {\n if (c.length === 1 && isAny(c[0])) {\n this.set = [c]\n break\n }\n }\n }\n }\n\n this.formatted = undefined\n }\n\n get range () {\n if (this.formatted === undefined) {\n this.formatted = ''\n for (let i = 0; i < this.set.length; i++) {\n if (i > 0) {\n this.formatted += '||'\n }\n const comps = this.set[i]\n for (let k = 0; k < comps.length; k++) {\n if (k > 0) {\n this.formatted += ' '\n }\n this.formatted += comps[k].toString().trim()\n }\n }\n }\n return this.formatted\n }\n\n format () {\n return this.range\n }\n\n toString () {\n return this.range\n }\n\n parseRange (range) {\n // memoize range parsing for performance.\n // this is a very hot path, and fully deterministic.\n const memoOpts =\n (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |\n (this.options.loose && FLAG_LOOSE)\n const memoKey = memoOpts + ':' + range\n const cached = cache.get(memoKey)\n if (cached) {\n return cached\n }\n\n const loose = this.options.loose\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace(this.options.includePrerelease))\n debug('hyphen replace', range)\n\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range)\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n debug('tilde trim', range)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n debug('caret trim', range)\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n let rangeList = range\n .split(' ')\n .map(comp => parseComparator(comp, this.options))\n .join(' ')\n .split(/\\s+/)\n // >=0.0.0 is equivalent to *\n .map(comp => replaceGTE0(comp, this.options))\n\n if (loose) {\n // in loose mode, throw out any that are not valid comparators\n rangeList = rangeList.filter(comp => {\n debug('loose invalid filter', comp, this.options)\n return !!comp.match(re[t.COMPARATORLOOSE])\n })\n }\n debug('range list', rangeList)\n\n // if any comparators are the null set, then replace with JUST null set\n // if more than one comparator, remove any * comparators\n // also, don't include the same comparator more than once\n const rangeMap = new Map()\n const comparators = rangeList.map(comp => new Comparator(comp, this.options))\n for (const comp of comparators) {\n if (isNullSet(comp)) {\n return [comp]\n }\n rangeMap.set(comp.value, comp)\n }\n if (rangeMap.size > 1 && rangeMap.has('')) {\n rangeMap.delete('')\n }\n\n const result = [...rangeMap.values()]\n cache.set(memoKey, result)\n return result\n }\n\n intersects (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some((thisComparators) => {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some((rangeComparators) => {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every((thisComparator) => {\n return rangeComparators.every((rangeComparator) => {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n }\n\n // if ANY of the sets match ALL of its comparators, then pass\n test (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (let i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n }\n}\n\nmodule.exports = Range\n\nconst LRU = require('../internal/lrucache')\nconst cache = new LRU()\n\nconst parseOptions = require('../internal/parse-options')\nconst Comparator = require('./comparator')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst {\n safeRe: re,\n t,\n comparatorTrimReplace,\n tildeTrimReplace,\n caretTrimReplace,\n} = require('../internal/re')\nconst { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require('../internal/constants')\n\nconst isNullSet = c => c.value === '<0.0.0-0'\nconst isAny = c => c.value === ''\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nconst isSatisfiable = (comparators, options) => {\n let result = true\n const remainingComparators = comparators.slice()\n let testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every((otherComparator) => {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nconst parseComparator = (comp, options) => {\n comp = comp.replace(re[t.BUILD], '')\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nconst isX = id => !id || id.toLowerCase() === 'x' || id === '*'\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0\n// ~0.0.1 --> >=0.0.1 <0.1.0-0\nconst replaceTildes = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceTilde(c, options))\n .join(' ')\n}\n\nconst replaceTilde = (comp, options) => {\n const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('tilde', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0 <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0-0\n ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0-0\n ret = `>=${M}.${m}.${p\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0\n// ^1.2.3 --> >=1.2.3 <2.0.0-0\n// ^1.2.0 --> >=1.2.0 <2.0.0-0\n// ^0.0.1 --> >=0.0.1 <0.0.2-0\n// ^0.1.0 --> >=0.1.0 <0.2.0-0\nconst replaceCarets = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceCaret(c, options))\n .join(' ')\n}\n\nconst replaceCaret = (comp, options) => {\n debug('caret', comp, options)\n const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n const z = options.includePrerelease ? '-0' : ''\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('caret', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n if (M === '0') {\n ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`\n } else {\n ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${+M + 1}.0.0-0`\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p\n } <${+M + 1}.0.0-0`\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nconst replaceXRanges = (comp, options) => {\n debug('replaceXRanges', comp, options)\n return comp\n .split(/\\s+/)\n .map((c) => replaceXRange(c, options))\n .join(' ')\n}\n\nconst replaceXRange = (comp, options) => {\n comp = comp.trim()\n const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, (ret, gtlt, M, m, p, pr) => {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n const xM = isX(M)\n const xm = xM || isX(m)\n const xp = xm || isX(p)\n const anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n if (gtlt === '<') {\n pr = '-0'\n }\n\n ret = `${gtlt + M}.${m}.${p}${pr}`\n } else if (xm) {\n ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`\n } else if (xp) {\n ret = `>=${M}.${m}.0${pr\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nconst replaceStars = (comp, options) => {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp\n .trim()\n .replace(re[t.STAR], '')\n}\n\nconst replaceGTE0 = (comp, options) => {\n debug('replaceGTE0', comp, options)\n return comp\n .trim()\n .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0-0\n// TODO build?\nconst hyphenReplace = incPr => ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr) => {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = `>=${fM}.0.0${incPr ? '-0' : ''}`\n } else if (isX(fp)) {\n from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`\n } else if (fpr) {\n from = `>=${from}`\n } else {\n from = `>=${from}${incPr ? '-0' : ''}`\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = `<${+tM + 1}.0.0-0`\n } else if (isX(tp)) {\n to = `<${tM}.${+tm + 1}.0-0`\n } else if (tpr) {\n to = `<=${tM}.${tm}.${tp}-${tpr}`\n } else if (incPr) {\n to = `<${tM}.${tm}.${+tp + 1}-0`\n } else {\n to = `<=${to}`\n }\n\n return `${from} ${to}`.trim()\n}\n\nconst testSet = (set, version, options) => {\n for (let i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (let i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === Comparator.ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n const allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n", "'use strict'\n\nconst ANY = Symbol('SemVer ANY')\n// hoisted class for cyclic dependency\nclass Comparator {\n static get ANY () {\n return ANY\n }\n\n constructor (comp, options) {\n options = parseOptions(options)\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n comp = comp.trim().split(/\\s+/).join(' ')\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n }\n\n parse (comp) {\n const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n const m = comp.match(r)\n\n if (!m) {\n throw new TypeError(`Invalid comparator: ${comp}`)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n }\n\n toString () {\n return this.value\n }\n\n test (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n }\n\n intersects (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n return new Range(comp.value, options).test(this.value)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n return new Range(this.value, options).test(comp.semver)\n }\n\n options = parseOptions(options)\n\n // Special cases where nothing can possibly be lower\n if (options.includePrerelease &&\n (this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {\n return false\n }\n if (!options.includePrerelease &&\n (this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {\n return false\n }\n\n // Same direction increasing (> or >=)\n if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {\n return true\n }\n // Same direction decreasing (< or <=)\n if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {\n return true\n }\n // same SemVer and both sides are inclusive (<= or >=)\n if (\n (this.semver.version === comp.semver.version) &&\n this.operator.includes('=') && comp.operator.includes('=')) {\n return true\n }\n // opposite directions less than\n if (cmp(this.semver, '<', comp.semver, options) &&\n this.operator.startsWith('>') && comp.operator.startsWith('<')) {\n return true\n }\n // opposite directions greater than\n if (cmp(this.semver, '>', comp.semver, options) &&\n this.operator.startsWith('<') && comp.operator.startsWith('>')) {\n return true\n }\n return false\n }\n}\n\nmodule.exports = Comparator\n\nconst parseOptions = require('../internal/parse-options')\nconst { safeRe: re, t } = require('../internal/re')\nconst cmp = require('../functions/cmp')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst Range = require('./range')\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst satisfies = (version, range, options) => {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\nmodule.exports = satisfies\n", "'use strict'\n\nconst Range = require('../classes/range')\n\n// Mostly just for testing and legacy API reasons\nconst toComparators = (range, options) =>\n new Range(range, options).set\n .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))\n\nmodule.exports = toComparators\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\n\nconst maxSatisfying = (versions, range, options) => {\n let max = null\n let maxSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\nmodule.exports = maxSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst minSatisfying = (versions, range, options) => {\n let min = null\n let minSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\nmodule.exports = minSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst gt = require('../functions/gt')\n\nconst minVersion = (range, loose) => {\n range = new Range(range, loose)\n\n let minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let setMin = null\n comparators.forEach((comparator) => {\n // Clone to avoid manipulating the comparator's semver object.\n const compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!setMin || gt(compver, setMin)) {\n setMin = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error(`Unexpected operation: ${comparator.operator}`)\n }\n })\n if (setMin && (!minver || gt(minver, setMin))) {\n minver = setMin\n }\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\nmodule.exports = minVersion\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst validRange = (range, options) => {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\nmodule.exports = validRange\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Comparator = require('../classes/comparator')\nconst { ANY } = Comparator\nconst Range = require('../classes/range')\nconst satisfies = require('../functions/satisfies')\nconst gt = require('../functions/gt')\nconst lt = require('../functions/lt')\nconst lte = require('../functions/lte')\nconst gte = require('../functions/gte')\n\nconst outside = (version, range, hilo, options) => {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n let gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisfies the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let high = null\n let low = null\n\n comparators.forEach((comparator) => {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nmodule.exports = outside\n", "'use strict'\n\n// Determine if version is greater than all the versions possible in the range.\nconst outside = require('./outside')\nconst gtr = (version, range, options) => outside(version, range, '>', options)\nmodule.exports = gtr\n", "'use strict'\n\nconst outside = require('./outside')\n// Determine if version is less than all the versions possible in the range\nconst ltr = (version, range, options) => outside(version, range, '<', options)\nmodule.exports = ltr\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst intersects = (r1, r2, options) => {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2, options)\n}\nmodule.exports = intersects\n", "'use strict'\n\n// given a set of versions and a range, create a \"simplified\" range\n// that includes the same versions that the original range does\n// If the original range is shorter than the simplified one, return that.\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\nmodule.exports = (versions, range, options) => {\n const set = []\n let first = null\n let prev = null\n const v = versions.sort((a, b) => compare(a, b, options))\n for (const version of v) {\n const included = satisfies(version, range, options)\n if (included) {\n prev = version\n if (!first) {\n first = version\n }\n } else {\n if (prev) {\n set.push([first, prev])\n }\n prev = null\n first = null\n }\n }\n if (first) {\n set.push([first, null])\n }\n\n const ranges = []\n for (const [min, max] of set) {\n if (min === max) {\n ranges.push(min)\n } else if (!max && min === v[0]) {\n ranges.push('*')\n } else if (!max) {\n ranges.push(`>=${min}`)\n } else if (min === v[0]) {\n ranges.push(`<=${max}`)\n } else {\n ranges.push(`${min} - ${max}`)\n }\n }\n const simplified = ranges.join(' || ')\n const original = typeof range.raw === 'string' ? range.raw : String(range)\n return simplified.length < original.length ? simplified : range\n}\n", "'use strict'\n\nconst Range = require('../classes/range.js')\nconst Comparator = require('../classes/comparator.js')\nconst { ANY } = Comparator\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\n\n// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:\n// - Every simple range `r1, r2, ...` is a null set, OR\n// - Every simple range `r1, r2, ...` which is not a null set is a subset of\n// some `R1, R2, ...`\n//\n// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:\n// - If c is only the ANY comparator\n// - If C is only the ANY comparator, return true\n// - Else if in prerelease mode, return false\n// - else replace c with `[>=0.0.0]`\n// - If C is only the ANY comparator\n// - if in prerelease mode, return true\n// - else replace C with `[>=0.0.0]`\n// - Let EQ be the set of = comparators in c\n// - If EQ is more than one, return true (null set)\n// - Let GT be the highest > or >= comparator in c\n// - Let LT be the lowest < or <= comparator in c\n// - If GT and LT, and GT.semver > LT.semver, return true (null set)\n// - If any C is a = range, and GT or LT are set, return false\n// - If EQ\n// - If GT, and EQ does not satisfy GT, return true (null set)\n// - If LT, and EQ does not satisfy LT, return true (null set)\n// - If EQ satisfies every C, return true\n// - Else return false\n// - If GT\n// - If GT.semver is lower than any > or >= comp in C, return false\n// - If GT is >=, and GT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the GT.semver tuple, return false\n// - If LT\n// - If LT.semver is greater than any < or <= comp in C, return false\n// - If LT is <=, and LT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the LT.semver tuple, return false\n// - Else return true\n\nconst subset = (sub, dom, options = {}) => {\n if (sub === dom) {\n return true\n }\n\n sub = new Range(sub, options)\n dom = new Range(dom, options)\n let sawNonNull = false\n\n OUTER: for (const simpleSub of sub.set) {\n for (const simpleDom of dom.set) {\n const isSub = simpleSubset(simpleSub, simpleDom, options)\n sawNonNull = sawNonNull || isSub !== null\n if (isSub) {\n continue OUTER\n }\n }\n // the null set is a subset of everything, but null simple ranges in\n // a complex range should be ignored. so if we saw a non-null range,\n // then we know this isn't a subset, but if EVERY simple range was null,\n // then it is a subset.\n if (sawNonNull) {\n return false\n }\n }\n return true\n}\n\nconst minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]\nconst minimumVersion = [new Comparator('>=0.0.0')]\n\nconst simpleSubset = (sub, dom, options) => {\n if (sub === dom) {\n return true\n }\n\n if (sub.length === 1 && sub[0].semver === ANY) {\n if (dom.length === 1 && dom[0].semver === ANY) {\n return true\n } else if (options.includePrerelease) {\n sub = minimumVersionWithPreRelease\n } else {\n sub = minimumVersion\n }\n }\n\n if (dom.length === 1 && dom[0].semver === ANY) {\n if (options.includePrerelease) {\n return true\n } else {\n dom = minimumVersion\n }\n }\n\n const eqSet = new Set()\n let gt, lt\n for (const c of sub) {\n if (c.operator === '>' || c.operator === '>=') {\n gt = higherGT(gt, c, options)\n } else if (c.operator === '<' || c.operator === '<=') {\n lt = lowerLT(lt, c, options)\n } else {\n eqSet.add(c.semver)\n }\n }\n\n if (eqSet.size > 1) {\n return null\n }\n\n let gtltComp\n if (gt && lt) {\n gtltComp = compare(gt.semver, lt.semver, options)\n if (gtltComp > 0) {\n return null\n } else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) {\n return null\n }\n }\n\n // will iterate one or zero times\n for (const eq of eqSet) {\n if (gt && !satisfies(eq, String(gt), options)) {\n return null\n }\n\n if (lt && !satisfies(eq, String(lt), options)) {\n return null\n }\n\n for (const c of dom) {\n if (!satisfies(eq, String(c), options)) {\n return false\n }\n }\n\n return true\n }\n\n let higher, lower\n let hasDomLT, hasDomGT\n // if the subset has a prerelease, we need a comparator in the superset\n // with the same tuple and a prerelease, or it's not a subset\n let needDomLTPre = lt &&\n !options.includePrerelease &&\n lt.semver.prerelease.length ? lt.semver : false\n let needDomGTPre = gt &&\n !options.includePrerelease &&\n gt.semver.prerelease.length ? gt.semver : false\n // exception: <1.2.3-0 is the same as <1.2.3\n if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&\n lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {\n needDomLTPre = false\n }\n\n for (const c of dom) {\n hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='\n hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='\n if (gt) {\n if (needDomGTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomGTPre.major &&\n c.semver.minor === needDomGTPre.minor &&\n c.semver.patch === needDomGTPre.patch) {\n needDomGTPre = false\n }\n }\n if (c.operator === '>' || c.operator === '>=') {\n higher = higherGT(gt, c, options)\n if (higher === c && higher !== gt) {\n return false\n }\n } else if (gt.operator === '>=' && !satisfies(gt.semver, String(c), options)) {\n return false\n }\n }\n if (lt) {\n if (needDomLTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomLTPre.major &&\n c.semver.minor === needDomLTPre.minor &&\n c.semver.patch === needDomLTPre.patch) {\n needDomLTPre = false\n }\n }\n if (c.operator === '<' || c.operator === '<=') {\n lower = lowerLT(lt, c, options)\n if (lower === c && lower !== lt) {\n return false\n }\n } else if (lt.operator === '<=' && !satisfies(lt.semver, String(c), options)) {\n return false\n }\n }\n if (!c.operator && (lt || gt) && gtltComp !== 0) {\n return false\n }\n }\n\n // if there was a < or >, and nothing in the dom, then must be false\n // UNLESS it was limited by another range in the other direction.\n // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0\n if (gt && hasDomLT && !lt && gtltComp !== 0) {\n return false\n }\n\n if (lt && hasDomGT && !gt && gtltComp !== 0) {\n return false\n }\n\n // we needed a prerelease range in a specific tuple, but didn't get one\n // then this isn't a subset. eg >=1.2.3-pre is not a subset of >=1.0.0,\n // because it includes prereleases in the 1.2.3 tuple\n if (needDomGTPre || needDomLTPre) {\n return false\n }\n\n return true\n}\n\n// >=1.2.3 is lower than >1.2.3\nconst higherGT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp > 0 ? a\n : comp < 0 ? b\n : b.operator === '>' && a.operator === '>=' ? b\n : a\n}\n\n// <=1.2.3 is higher than <1.2.3\nconst lowerLT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp < 0 ? a\n : comp > 0 ? b\n : b.operator === '<' && a.operator === '<=' ? b\n : a\n}\n\nmodule.exports = subset\n", "'use strict'\n\n// just pre-load all the stuff that index.js lazily exports\nconst internalRe = require('./internal/re')\nconst constants = require('./internal/constants')\nconst SemVer = require('./classes/semver')\nconst identifiers = require('./internal/identifiers')\nconst parse = require('./functions/parse')\nconst valid = require('./functions/valid')\nconst clean = require('./functions/clean')\nconst inc = require('./functions/inc')\nconst diff = require('./functions/diff')\nconst major = require('./functions/major')\nconst minor = require('./functions/minor')\nconst patch = require('./functions/patch')\nconst prerelease = require('./functions/prerelease')\nconst compare = require('./functions/compare')\nconst rcompare = require('./functions/rcompare')\nconst compareLoose = require('./functions/compare-loose')\nconst compareBuild = require('./functions/compare-build')\nconst sort = require('./functions/sort')\nconst rsort = require('./functions/rsort')\nconst gt = require('./functions/gt')\nconst lt = require('./functions/lt')\nconst eq = require('./functions/eq')\nconst neq = require('./functions/neq')\nconst gte = require('./functions/gte')\nconst lte = require('./functions/lte')\nconst cmp = require('./functions/cmp')\nconst coerce = require('./functions/coerce')\nconst Comparator = require('./classes/comparator')\nconst Range = require('./classes/range')\nconst satisfies = require('./functions/satisfies')\nconst toComparators = require('./ranges/to-comparators')\nconst maxSatisfying = require('./ranges/max-satisfying')\nconst minSatisfying = require('./ranges/min-satisfying')\nconst minVersion = require('./ranges/min-version')\nconst validRange = require('./ranges/valid')\nconst outside = require('./ranges/outside')\nconst gtr = require('./ranges/gtr')\nconst ltr = require('./ranges/ltr')\nconst intersects = require('./ranges/intersects')\nconst simplifyRange = require('./ranges/simplify')\nconst subset = require('./ranges/subset')\nmodule.exports = {\n parse,\n valid,\n clean,\n inc,\n diff,\n major,\n minor,\n patch,\n prerelease,\n compare,\n rcompare,\n compareLoose,\n compareBuild,\n sort,\n rsort,\n gt,\n lt,\n eq,\n neq,\n gte,\n lte,\n cmp,\n coerce,\n Comparator,\n Range,\n satisfies,\n toComparators,\n maxSatisfying,\n minSatisfying,\n minVersion,\n validRange,\n outside,\n gtr,\n ltr,\n intersects,\n simplifyRange,\n subset,\n SemVer,\n re: internalRe.re,\n src: internalRe.src,\n tokens: internalRe.t,\n SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,\n RELEASE_TYPES: constants.RELEASE_TYPES,\n compareIdentifiers: identifiers.compareIdentifiers,\n rcompareIdentifiers: identifiers.rcompareIdentifiers,\n}\n", "module.exports = function (xs, fn) {\n var res = [];\n for (var i = 0; i < xs.length; i++) {\n var x = fn(xs[i], i);\n if (isArray(x)) res.push.apply(res, x);\n else res.push(x);\n }\n return res;\n};\n\nvar isArray = Array.isArray || function (xs) {\n return Object.prototype.toString.call(xs) === '[object Array]';\n};\n", "'use strict';\nmodule.exports = balanced;\nfunction balanced(a, b, str) {\n if (a instanceof RegExp) a = maybeMatch(a, str);\n if (b instanceof RegExp) b = maybeMatch(b, str);\n\n var r = range(a, b, str);\n\n return r && {\n start: r[0],\n end: r[1],\n pre: str.slice(0, r[0]),\n body: str.slice(r[0] + a.length, r[1]),\n post: str.slice(r[1] + b.length)\n };\n}\n\nfunction maybeMatch(reg, str) {\n var m = str.match(reg);\n return m ? m[0] : null;\n}\n\nbalanced.range = range;\nfunction range(a, b, str) {\n var begs, beg, left, right, result;\n var ai = str.indexOf(a);\n var bi = str.indexOf(b, ai + 1);\n var i = ai;\n\n if (ai >= 0 && bi > 0) {\n if(a===b) {\n return [ai, bi];\n }\n begs = [];\n left = str.length;\n\n while (i >= 0 && !result) {\n if (i == ai) {\n begs.push(i);\n ai = str.indexOf(a, i + 1);\n } else if (begs.length == 1) {\n result = [ begs.pop(), bi ];\n } else {\n beg = begs.pop();\n if (beg < left) {\n left = beg;\n right = bi;\n }\n\n bi = str.indexOf(b, i + 1);\n }\n\n i = ai < bi && ai >= 0 ? ai : bi;\n }\n\n if (begs.length) {\n result = [ left, right ];\n }\n }\n\n return result;\n}\n", "var concatMap = require('concat-map');\nvar balanced = require('balanced-match');\n\nmodule.exports = expandTop;\n\nvar escSlash = '\\0SLASH'+Math.random()+'\\0';\nvar escOpen = '\\0OPEN'+Math.random()+'\\0';\nvar escClose = '\\0CLOSE'+Math.random()+'\\0';\nvar escComma = '\\0COMMA'+Math.random()+'\\0';\nvar escPeriod = '\\0PERIOD'+Math.random()+'\\0';\n\nfunction numeric(str) {\n return parseInt(str, 10) == str\n ? parseInt(str, 10)\n : str.charCodeAt(0);\n}\n\nfunction escapeBraces(str) {\n return str.split('\\\\\\\\').join(escSlash)\n .split('\\\\{').join(escOpen)\n .split('\\\\}').join(escClose)\n .split('\\\\,').join(escComma)\n .split('\\\\.').join(escPeriod);\n}\n\nfunction unescapeBraces(str) {\n return str.split(escSlash).join('\\\\')\n .split(escOpen).join('{')\n .split(escClose).join('}')\n .split(escComma).join(',')\n .split(escPeriod).join('.');\n}\n\n\n// Basically just str.split(\",\"), but handling cases\n// where we have nested braced sections, which should be\n// treated as individual members, like {a,{b,c},d}\nfunction parseCommaParts(str) {\n if (!str)\n return [''];\n\n var parts = [];\n var m = balanced('{', '}', str);\n\n if (!m)\n return str.split(',');\n\n var pre = m.pre;\n var body = m.body;\n var post = m.post;\n var p = pre.split(',');\n\n p[p.length-1] += '{' + body + '}';\n var postParts = parseCommaParts(post);\n if (post.length) {\n p[p.length-1] += postParts.shift();\n p.push.apply(p, postParts);\n }\n\n parts.push.apply(parts, p);\n\n return parts;\n}\n\nfunction expandTop(str) {\n if (!str)\n return [];\n\n // I don't know why Bash 4.3 does this, but it does.\n // Anything starting with {} will have the first two bytes preserved\n // but *only* at the top level, so {},a}b will not expand to anything,\n // but a{},b}c will be expanded to [a}c,abc].\n // One could argue that this is a bug in Bash, but since the goal of\n // this module is to match Bash's rules, we escape a leading {}\n if (str.substr(0, 2) === '{}') {\n str = '\\\\{\\\\}' + str.substr(2);\n }\n\n return expand(escapeBraces(str), true).map(unescapeBraces);\n}\n\nfunction identity(e) {\n return e;\n}\n\nfunction embrace(str) {\n return '{' + str + '}';\n}\nfunction isPadded(el) {\n return /^-?0\\d/.test(el);\n}\n\nfunction lte(i, y) {\n return i <= y;\n}\nfunction gte(i, y) {\n return i >= y;\n}\n\nfunction expand(str, isTop) {\n var expansions = [];\n\n var m = balanced('{', '}', str);\n if (!m || /\\$$/.test(m.pre)) return [str];\n\n var isNumericSequence = /^-?\\d+\\.\\.-?\\d+(?:\\.\\.-?\\d+)?$/.test(m.body);\n var isAlphaSequence = /^[a-zA-Z]\\.\\.[a-zA-Z](?:\\.\\.-?\\d+)?$/.test(m.body);\n var isSequence = isNumericSequence || isAlphaSequence;\n var isOptions = m.body.indexOf(',') >= 0;\n if (!isSequence && !isOptions) {\n // {a},b}\n if (m.post.match(/,(?!,).*\\}/)) {\n str = m.pre + '{' + m.body + escClose + m.post;\n return expand(str);\n }\n return [str];\n }\n\n var n;\n if (isSequence) {\n n = m.body.split(/\\.\\./);\n } else {\n n = parseCommaParts(m.body);\n if (n.length === 1) {\n // x{{a,b}}y ==> x{a}y x{b}y\n n = expand(n[0], false).map(embrace);\n if (n.length === 1) {\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n return post.map(function(p) {\n return m.pre + n[0] + p;\n });\n }\n }\n }\n\n // at this point, n is the parts, and we know it's not a comma set\n // with a single entry.\n\n // no need to expand pre, since it is guaranteed to be free of brace-sets\n var pre = m.pre;\n var post = m.post.length\n ? expand(m.post, false)\n : [''];\n\n var N;\n\n if (isSequence) {\n var x = numeric(n[0]);\n var y = numeric(n[1]);\n var width = Math.max(n[0].length, n[1].length)\n var incr = n.length == 3\n ? Math.max(Math.abs(numeric(n[2])), 1)\n : 1;\n var test = lte;\n var reverse = y < x;\n if (reverse) {\n incr *= -1;\n test = gte;\n }\n var pad = n.some(isPadded);\n\n N = [];\n\n for (var i = x; test(i, y); i += incr) {\n var c;\n if (isAlphaSequence) {\n c = String.fromCharCode(i);\n if (c === '\\\\')\n c = '';\n } else {\n c = String(i);\n if (pad) {\n var need = width - c.length;\n if (need > 0) {\n var z = new Array(need + 1).join('0');\n if (i < 0)\n c = '-' + z + c.slice(1);\n else\n c = z + c;\n }\n }\n }\n N.push(c);\n }\n } else {\n N = concatMap(n, function(el) { return expand(el, false) });\n }\n\n for (var j = 0; j < N.length; j++) {\n for (var k = 0; k < post.length; k++) {\n var expansion = pre + N[j] + post[k];\n if (!isTop || isSequence || expansion)\n expansions.push(expansion);\n }\n }\n\n return expansions;\n}\n", "module.exports = minimatch\nminimatch.Minimatch = Minimatch\n\nvar path = (function () { try { return require('path') } catch (e) {}}()) || {\n sep: '/'\n}\nminimatch.sep = path.sep\n\nvar GLOBSTAR = minimatch.GLOBSTAR = Minimatch.GLOBSTAR = {}\nvar expand = require('brace-expansion')\n\nvar plTypes = {\n '!': { open: '(?:(?!(?:', close: '))[^/]*?)'},\n '?': { open: '(?:', close: ')?' },\n '+': { open: '(?:', close: ')+' },\n '*': { open: '(?:', close: ')*' },\n '@': { open: '(?:', close: ')' }\n}\n\n// any single thing other than /\n// don't need to escape / when using new RegExp()\nvar qmark = '[^/]'\n\n// * => any number of characters\nvar star = qmark + '*?'\n\n// ** when dots are allowed. Anything goes, except .. and .\n// not (^ or / followed by one or two dots followed by $ or /),\n// followed by anything, any number of times.\nvar twoStarDot = '(?:(?!(?:\\\\\\/|^)(?:\\\\.{1,2})($|\\\\\\/)).)*?'\n\n// not a ^ or / followed by a dot,\n// followed by anything, any number of times.\nvar twoStarNoDot = '(?:(?!(?:\\\\\\/|^)\\\\.).)*?'\n\n// characters that need to be escaped in RegExp.\nvar reSpecials = charSet('().*{}+?[]^$\\\\!')\n\n// \"abc\" -> { a:true, b:true, c:true }\nfunction charSet (s) {\n return s.split('').reduce(function (set, c) {\n set[c] = true\n return set\n }, {})\n}\n\n// normalizes slashes.\nvar slashSplit = /\\/+/\n\nminimatch.filter = filter\nfunction filter (pattern, options) {\n options = options || {}\n return function (p, i, list) {\n return minimatch(p, pattern, options)\n }\n}\n\nfunction ext (a, b) {\n b = b || {}\n var t = {}\n Object.keys(a).forEach(function (k) {\n t[k] = a[k]\n })\n Object.keys(b).forEach(function (k) {\n t[k] = b[k]\n })\n return t\n}\n\nminimatch.defaults = function (def) {\n if (!def || typeof def !== 'object' || !Object.keys(def).length) {\n return minimatch\n }\n\n var orig = minimatch\n\n var m = function minimatch (p, pattern, options) {\n return orig(p, pattern, ext(def, options))\n }\n\n m.Minimatch = function Minimatch (pattern, options) {\n return new orig.Minimatch(pattern, ext(def, options))\n }\n m.Minimatch.defaults = function defaults (options) {\n return orig.defaults(ext(def, options)).Minimatch\n }\n\n m.filter = function filter (pattern, options) {\n return orig.filter(pattern, ext(def, options))\n }\n\n m.defaults = function defaults (options) {\n return orig.defaults(ext(def, options))\n }\n\n m.makeRe = function makeRe (pattern, options) {\n return orig.makeRe(pattern, ext(def, options))\n }\n\n m.braceExpand = function braceExpand (pattern, options) {\n return orig.braceExpand(pattern, ext(def, options))\n }\n\n m.match = function (list, pattern, options) {\n return orig.match(list, pattern, ext(def, options))\n }\n\n return m\n}\n\nMinimatch.defaults = function (def) {\n return minimatch.defaults(def).Minimatch\n}\n\nfunction minimatch (p, pattern, options) {\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n // shortcut: comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n return false\n }\n\n return new Minimatch(pattern, options).match(p)\n}\n\nfunction Minimatch (pattern, options) {\n if (!(this instanceof Minimatch)) {\n return new Minimatch(pattern, options)\n }\n\n assertValidPattern(pattern)\n\n if (!options) options = {}\n\n pattern = pattern.trim()\n\n // windows support: need to use /, not \\\n if (!options.allowWindowsEscape && path.sep !== '/') {\n pattern = pattern.split(path.sep).join('/')\n }\n\n this.options = options\n this.maxGlobstarRecursion = options.maxGlobstarRecursion !== undefined\n ? options.maxGlobstarRecursion : 200\n this.set = []\n this.pattern = pattern\n this.regexp = null\n this.negate = false\n this.comment = false\n this.empty = false\n this.partial = !!options.partial\n\n // make the set of regexps etc.\n this.make()\n}\n\nMinimatch.prototype.debug = function () {}\n\nMinimatch.prototype.make = make\nfunction make () {\n var pattern = this.pattern\n var options = this.options\n\n // empty patterns and comments match nothing.\n if (!options.nocomment && pattern.charAt(0) === '#') {\n this.comment = true\n return\n }\n if (!pattern) {\n this.empty = true\n return\n }\n\n // step 1: figure out negation, etc.\n this.parseNegate()\n\n // step 2: expand braces\n var set = this.globSet = this.braceExpand()\n\n if (options.debug) this.debug = function debug() { console.error.apply(console, arguments) }\n\n this.debug(this.pattern, set)\n\n // step 3: now we have a set, so turn each one into a series of path-portion\n // matching patterns.\n // These will be regexps, except in the case of \"**\", which is\n // set to the GLOBSTAR object for globstar behavior,\n // and will not contain any / characters\n set = this.globParts = set.map(function (s) {\n return s.split(slashSplit)\n })\n\n this.debug(this.pattern, set)\n\n // glob --> regexps\n set = set.map(function (s, si, set) {\n return s.map(this.parse, this)\n }, this)\n\n this.debug(this.pattern, set)\n\n // filter out everything that didn't compile properly.\n set = set.filter(function (s) {\n return s.indexOf(false) === -1\n })\n\n this.debug(this.pattern, set)\n\n this.set = set\n}\n\nMinimatch.prototype.parseNegate = parseNegate\nfunction parseNegate () {\n var pattern = this.pattern\n var negate = false\n var options = this.options\n var negateOffset = 0\n\n if (options.nonegate) return\n\n for (var i = 0, l = pattern.length\n ; i < l && pattern.charAt(i) === '!'\n ; i++) {\n negate = !negate\n negateOffset++\n }\n\n if (negateOffset) this.pattern = pattern.substr(negateOffset)\n this.negate = negate\n}\n\n// Brace expansion:\n// a{b,c}d -> abd acd\n// a{b,}c -> abc ac\n// a{0..3}d -> a0d a1d a2d a3d\n// a{b,c{d,e}f}g -> abg acdfg acefg\n// a{b,c}d{e,f}g -> abdeg acdeg abdeg abdfg\n//\n// Invalid sets are not expanded.\n// a{2..}b -> a{2..}b\n// a{b}c -> a{b}c\nminimatch.braceExpand = function (pattern, options) {\n return braceExpand(pattern, options)\n}\n\nMinimatch.prototype.braceExpand = braceExpand\n\nfunction braceExpand (pattern, options) {\n if (!options) {\n if (this instanceof Minimatch) {\n options = this.options\n } else {\n options = {}\n }\n }\n\n pattern = typeof pattern === 'undefined'\n ? this.pattern : pattern\n\n assertValidPattern(pattern)\n\n // Thanks to Yeting Li for\n // improving this regexp to avoid a ReDOS vulnerability.\n if (options.nobrace || !/\\{(?:(?!\\{).)*\\}/.test(pattern)) {\n // shortcut. no need to expand.\n return [pattern]\n }\n\n return expand(pattern)\n}\n\nvar MAX_PATTERN_LENGTH = 1024 * 64\nvar assertValidPattern = function (pattern) {\n if (typeof pattern !== 'string') {\n throw new TypeError('invalid pattern')\n }\n\n if (pattern.length > MAX_PATTERN_LENGTH) {\n throw new TypeError('pattern is too long')\n }\n}\n\n// parse a component of the expanded set.\n// At this point, no pattern may contain \"/\" in it\n// so we're going to return a 2d array, where each entry is the full\n// pattern, split on '/', and then turned into a regular expression.\n// A regexp is made at the end which joins each array with an\n// escaped /, and another full one which joins each regexp with |.\n//\n// Following the lead of Bash 4.1, note that \"**\" only has special meaning\n// when it is the *only* thing in a path portion. Otherwise, any series\n// of * is equivalent to a single *. Globstar behavior is enabled by\n// default, and can be disabled by setting options.noglobstar.\nMinimatch.prototype.parse = parse\nvar SUBPARSE = {}\nfunction parse (pattern, isSub) {\n assertValidPattern(pattern)\n\n var options = this.options\n\n // shortcuts\n if (pattern === '**') {\n if (!options.noglobstar)\n return GLOBSTAR\n else\n pattern = '*'\n }\n if (pattern === '') return ''\n\n var re = ''\n var hasMagic = !!options.nocase\n var escaping = false\n // ? => one single character\n var patternListStack = []\n var negativeLists = []\n var stateChar\n var inClass = false\n var reClassStart = -1\n var classStart = -1\n // . and .. never match anything that doesn't start with .,\n // even when options.dot is set.\n var patternStart = pattern.charAt(0) === '.' ? '' // anything\n // not (start or / followed by . or .. followed by / or end)\n : options.dot ? '(?!(?:^|\\\\\\/)\\\\.{1,2}(?:$|\\\\\\/))'\n : '(?!\\\\.)'\n var self = this\n\n function clearStateChar () {\n if (stateChar) {\n // we had some state-tracking character\n // that wasn't consumed by this pass.\n switch (stateChar) {\n case '*':\n re += star\n hasMagic = true\n break\n case '?':\n re += qmark\n hasMagic = true\n break\n default:\n re += '\\\\' + stateChar\n break\n }\n self.debug('clearStateChar %j %j', stateChar, re)\n stateChar = false\n }\n }\n\n for (var i = 0, len = pattern.length, c\n ; (i < len) && (c = pattern.charAt(i))\n ; i++) {\n this.debug('%s\\t%s %s %j', pattern, i, re, c)\n\n // skip over any that are escaped.\n if (escaping && reSpecials[c]) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n switch (c) {\n /* istanbul ignore next */\n case '/': {\n // completely not allowed, even escaped.\n // Should already be path-split by now.\n return false\n }\n\n case '\\\\':\n clearStateChar()\n escaping = true\n continue\n\n // the various stateChar values\n // for the \"extglob\" stuff.\n case '?':\n case '*':\n case '+':\n case '@':\n case '!':\n this.debug('%s\\t%s %s %j <-- stateChar', pattern, i, re, c)\n\n // all of those are literals inside a class, except that\n // the glob [!a] means [^a] in regexp\n if (inClass) {\n this.debug(' in class')\n if (c === '!' && i === classStart + 1) c = '^'\n re += c\n continue\n }\n\n // coalesce consecutive non-globstar * characters\n if (c === '*' && stateChar === '*') continue\n\n // if we already have a stateChar, then it means\n // that there was something like ** or +? in there.\n // Handle the stateChar, then proceed with this one.\n self.debug('call clearStateChar %j', stateChar)\n clearStateChar()\n stateChar = c\n // if extglob is disabled, then +(asdf|foo) isn't a thing.\n // just clear the statechar *now*, rather than even diving into\n // the patternList stuff.\n if (options.noext) clearStateChar()\n continue\n\n case '(':\n if (inClass) {\n re += '('\n continue\n }\n\n if (!stateChar) {\n re += '\\\\('\n continue\n }\n\n patternListStack.push({\n type: stateChar,\n start: i - 1,\n reStart: re.length,\n open: plTypes[stateChar].open,\n close: plTypes[stateChar].close\n })\n // negation is (?:(?!js)[^/]*)\n re += stateChar === '!' ? '(?:(?!(?:' : '(?:'\n this.debug('plType %j %j', stateChar, re)\n stateChar = false\n continue\n\n case ')':\n if (inClass || !patternListStack.length) {\n re += '\\\\)'\n continue\n }\n\n clearStateChar()\n hasMagic = true\n var pl = patternListStack.pop()\n // negation is (?:(?!js)[^/]*)\n // The others are (?:)\n re += pl.close\n if (pl.type === '!') {\n negativeLists.push(pl)\n }\n pl.reEnd = re.length\n continue\n\n case '|':\n if (inClass || !patternListStack.length || escaping) {\n re += '\\\\|'\n escaping = false\n continue\n }\n\n clearStateChar()\n re += '|'\n continue\n\n // these are mostly the same in regexp and glob\n case '[':\n // swallow any state-tracking char before the [\n clearStateChar()\n\n if (inClass) {\n re += '\\\\' + c\n continue\n }\n\n inClass = true\n classStart = i\n reClassStart = re.length\n re += c\n continue\n\n case ']':\n // a right bracket shall lose its special\n // meaning and represent itself in\n // a bracket expression if it occurs\n // first in the list. -- POSIX.2 2.8.3.2\n if (i === classStart + 1 || !inClass) {\n re += '\\\\' + c\n escaping = false\n continue\n }\n\n // handle the case where we left a class open.\n // \"[z-a]\" is valid, equivalent to \"\\[z-a\\]\"\n // split where the last [ was, make sure we don't have\n // an invalid re. if so, re-walk the contents of the\n // would-be class to re-translate any characters that\n // were passed through as-is\n // TODO: It would probably be faster to determine this\n // without a try/catch and a new RegExp, but it's tricky\n // to do safely. For now, this is safe and works.\n var cs = pattern.substring(classStart + 1, i)\n try {\n RegExp('[' + cs + ']')\n } catch (er) {\n // not a valid class!\n var sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0] + '\\\\]'\n hasMagic = hasMagic || sp[1]\n inClass = false\n continue\n }\n\n // finish up the class.\n hasMagic = true\n inClass = false\n re += c\n continue\n\n default:\n // swallow any state char that wasn't consumed\n clearStateChar()\n\n if (escaping) {\n // no need\n escaping = false\n } else if (reSpecials[c]\n && !(c === '^' && inClass)) {\n re += '\\\\'\n }\n\n re += c\n\n } // switch\n } // for\n\n // handle the case where we left a class open.\n // \"[abc\" is valid, equivalent to \"\\[abc\"\n if (inClass) {\n // split where the last [ was, and escape it\n // this is a huge pita. We now have to re-walk\n // the contents of the would-be class to re-translate\n // any characters that were passed through as-is\n cs = pattern.substr(classStart + 1)\n sp = this.parse(cs, SUBPARSE)\n re = re.substr(0, reClassStart) + '\\\\[' + sp[0]\n hasMagic = hasMagic || sp[1]\n }\n\n // handle the case where we had a +( thing at the *end*\n // of the pattern.\n // each pattern list stack adds 3 chars, and we need to go through\n // and escape any | chars that were passed through as-is for the regexp.\n // Go through and escape them, taking care not to double-escape any\n // | chars that were already escaped.\n for (pl = patternListStack.pop(); pl; pl = patternListStack.pop()) {\n var tail = re.slice(pl.reStart + pl.open.length)\n this.debug('setting tail', re, pl)\n // maybe some even number of \\, then maybe 1 \\, followed by a |\n tail = tail.replace(/((?:\\\\{2}){0,64})(\\\\?)\\|/g, function (_, $1, $2) {\n if (!$2) {\n // the | isn't already escaped, so escape it.\n $2 = '\\\\'\n }\n\n // need to escape all those slashes *again*, without escaping the\n // one that we need for escaping the | character. As it works out,\n // escaping an even number of slashes can be done by simply repeating\n // it exactly after itself. That's why this trick works.\n //\n // I am sorry that you have to see this.\n return $1 + $1 + $2 + '|'\n })\n\n this.debug('tail=%j\\n %s', tail, tail, pl, re)\n var t = pl.type === '*' ? star\n : pl.type === '?' ? qmark\n : '\\\\' + pl.type\n\n hasMagic = true\n re = re.slice(0, pl.reStart) + t + '\\\\(' + tail\n }\n\n // handle trailing things that only matter at the very end.\n clearStateChar()\n if (escaping) {\n // trailing \\\\\n re += '\\\\\\\\'\n }\n\n // only need to apply the nodot start if the re starts with\n // something that could conceivably capture a dot\n var addPatternStart = false\n switch (re.charAt(0)) {\n case '[': case '.': case '(': addPatternStart = true\n }\n\n // Hack to work around lack of negative lookbehind in JS\n // A pattern like: *.!(x).!(y|z) needs to ensure that a name\n // like 'a.xyz.yz' doesn't match. So, the first negative\n // lookahead, has to look ALL the way ahead, to the end of\n // the pattern.\n for (var n = negativeLists.length - 1; n > -1; n--) {\n var nl = negativeLists[n]\n\n var nlBefore = re.slice(0, nl.reStart)\n var nlFirst = re.slice(nl.reStart, nl.reEnd - 8)\n var nlLast = re.slice(nl.reEnd - 8, nl.reEnd)\n var nlAfter = re.slice(nl.reEnd)\n\n nlLast += nlAfter\n\n // Handle nested stuff like *(*.js|!(*.json)), where open parens\n // mean that we should *not* include the ) in the bit that is considered\n // \"after\" the negated section.\n var openParensBefore = nlBefore.split('(').length - 1\n var cleanAfter = nlAfter\n for (i = 0; i < openParensBefore; i++) {\n cleanAfter = cleanAfter.replace(/\\)[+*?]?/, '')\n }\n nlAfter = cleanAfter\n\n var dollar = ''\n if (nlAfter === '' && isSub !== SUBPARSE) {\n dollar = '$'\n }\n var newRe = nlBefore + nlFirst + nlAfter + dollar + nlLast\n re = newRe\n }\n\n // if the re is not \"\" at this point, then we need to make sure\n // it doesn't match against an empty path part.\n // Otherwise a/* will match a/, which it should not.\n if (re !== '' && hasMagic) {\n re = '(?=.)' + re\n }\n\n if (addPatternStart) {\n re = patternStart + re\n }\n\n // parsing just a piece of a larger pattern.\n if (isSub === SUBPARSE) {\n return [re, hasMagic]\n }\n\n // skip the regexp for non-magical patterns\n // unescape anything in it, though, so that it'll be\n // an exact match against a file etc.\n if (!hasMagic) {\n return globUnescape(pattern)\n }\n\n var flags = options.nocase ? 'i' : ''\n try {\n var regExp = new RegExp('^' + re + '$', flags)\n } catch (er) /* istanbul ignore next - should be impossible */ {\n // If it was an invalid regular expression, then it can't match\n // anything. This trick looks for a character after the end of\n // the string, which is of course impossible, except in multi-line\n // mode, but it's not a /m regex.\n return new RegExp('$.')\n }\n\n regExp._glob = pattern\n regExp._src = re\n\n return regExp\n}\n\nminimatch.makeRe = function (pattern, options) {\n return new Minimatch(pattern, options || {}).makeRe()\n}\n\nMinimatch.prototype.makeRe = makeRe\nfunction makeRe () {\n if (this.regexp || this.regexp === false) return this.regexp\n\n // at this point, this.set is a 2d array of partial\n // pattern strings, or \"**\".\n //\n // It's better to use .match(). This function shouldn't\n // be used, really, but it's pretty convenient sometimes,\n // when you just want to work with a regex.\n var set = this.set\n\n if (!set.length) {\n this.regexp = false\n return this.regexp\n }\n var options = this.options\n\n var twoStar = options.noglobstar ? star\n : options.dot ? twoStarDot\n : twoStarNoDot\n var flags = options.nocase ? 'i' : ''\n\n var re = set.map(function (pattern) {\n return pattern.map(function (p) {\n return (p === GLOBSTAR) ? twoStar\n : (typeof p === 'string') ? regExpEscape(p)\n : p._src\n }).join('\\\\\\/')\n }).join('|')\n\n // must match entire pattern\n // ending in a * or ** will make it less strict.\n re = '^(?:' + re + ')$'\n\n // can match anything, as long as it's not this.\n if (this.negate) re = '^(?!' + re + ').*$'\n\n try {\n this.regexp = new RegExp(re, flags)\n } catch (ex) /* istanbul ignore next - should be impossible */ {\n this.regexp = false\n }\n return this.regexp\n}\n\nminimatch.match = function (list, pattern, options) {\n options = options || {}\n var mm = new Minimatch(pattern, options)\n list = list.filter(function (f) {\n return mm.match(f)\n })\n if (mm.options.nonull && !list.length) {\n list.push(pattern)\n }\n return list\n}\n\nMinimatch.prototype.match = function match (f, partial) {\n if (typeof partial === 'undefined') partial = this.partial\n this.debug('match', f, this.pattern)\n // short-circuit in the case of busted things.\n // comments, etc.\n if (this.comment) return false\n if (this.empty) return f === ''\n\n if (f === '/' && partial) return true\n\n var options = this.options\n\n // windows: need to use /, not \\\n if (path.sep !== '/') {\n f = f.split(path.sep).join('/')\n }\n\n // treat the test path as a set of pathparts.\n f = f.split(slashSplit)\n this.debug(this.pattern, 'split', f)\n\n // just ONE of the pattern sets in this.set needs to match\n // in order for it to be valid. If negating, then just one\n // match means that we have failed.\n // Either way, return on the first hit.\n\n var set = this.set\n this.debug(this.pattern, 'set', set)\n\n // Find the basename of the path by looking for the last non-empty segment\n var filename\n var i\n for (i = f.length - 1; i >= 0; i--) {\n filename = f[i]\n if (filename) break\n }\n\n for (i = 0; i < set.length; i++) {\n var pattern = set[i]\n var file = f\n if (options.matchBase && pattern.length === 1) {\n file = [filename]\n }\n var hit = this.matchOne(file, pattern, partial)\n if (hit) {\n if (options.flipNegate) return true\n return !this.negate\n }\n }\n\n // didn't get any hits. this is success if it's a negative\n // pattern, failure otherwise.\n if (options.flipNegate) return false\n return this.negate\n}\n\n// set partial to true to test if, for example,\n// \"/a/b\" matches the start of \"/*/b/*/d\"\n// Partial means, if you run out of file before you run\n// out of pattern, then that's fine, as long as all\n// the parts match.\nMinimatch.prototype.matchOne = function (file, pattern, partial) {\n if (pattern.indexOf(GLOBSTAR) !== -1) {\n return this._matchGlobstar(file, pattern, partial, 0, 0)\n }\n return this._matchOne(file, pattern, partial, 0, 0)\n}\n\nMinimatch.prototype._matchGlobstar = function (file, pattern, partial, fileIndex, patternIndex) {\n var i\n\n // find first globstar from patternIndex\n var firstgs = -1\n for (i = patternIndex; i < pattern.length; i++) {\n if (pattern[i] === GLOBSTAR) { firstgs = i; break }\n }\n\n // find last globstar\n var lastgs = -1\n for (i = pattern.length - 1; i >= 0; i--) {\n if (pattern[i] === GLOBSTAR) { lastgs = i; break }\n }\n\n var head = pattern.slice(patternIndex, firstgs)\n var body = partial ? pattern.slice(firstgs + 1) : pattern.slice(firstgs + 1, lastgs)\n var tail = partial ? [] : pattern.slice(lastgs + 1)\n\n // check the head\n if (head.length) {\n var fileHead = file.slice(fileIndex, fileIndex + head.length)\n if (!this._matchOne(fileHead, head, partial, 0, 0)) {\n return false\n }\n fileIndex += head.length\n }\n\n // check the tail\n var fileTailMatch = 0\n if (tail.length) {\n if (tail.length + fileIndex > file.length) return false\n\n var tailStart = file.length - tail.length\n if (this._matchOne(file, tail, partial, tailStart, 0)) {\n fileTailMatch = tail.length\n } else {\n // affordance for stuff like a/**/* matching a/b/\n if (file[file.length - 1] !== '' ||\n fileIndex + tail.length === file.length) {\n return false\n }\n tailStart--\n if (!this._matchOne(file, tail, partial, tailStart, 0)) {\n return false\n }\n fileTailMatch = tail.length + 1\n }\n }\n\n // if body is empty (single ** between head and tail)\n if (!body.length) {\n var sawSome = !!fileTailMatch\n for (i = fileIndex; i < file.length - fileTailMatch; i++) {\n var f = String(file[i])\n sawSome = true\n if (f === '.' || f === '..' ||\n (!this.options.dot && f.charAt(0) === '.')) {\n return false\n }\n }\n return partial || sawSome\n }\n\n // split body into segments at each GLOBSTAR\n var bodySegments = [[[], 0]]\n var currentBody = bodySegments[0]\n var nonGsParts = 0\n var nonGsPartsSums = [0]\n for (var bi = 0; bi < body.length; bi++) {\n var b = body[bi]\n if (b === GLOBSTAR) {\n nonGsPartsSums.push(nonGsParts)\n currentBody = [[], 0]\n bodySegments.push(currentBody)\n } else {\n currentBody[0].push(b)\n nonGsParts++\n }\n }\n\n var idx = bodySegments.length - 1\n var fileLength = file.length - fileTailMatch\n for (var si = 0; si < bodySegments.length; si++) {\n bodySegments[si][1] = fileLength -\n (nonGsPartsSums[idx--] + bodySegments[si][0].length)\n }\n\n return !!this._matchGlobStarBodySections(\n file, bodySegments, fileIndex, 0, partial, 0, !!fileTailMatch\n )\n}\n\n// return false for \"nope, not matching\"\n// return null for \"not matching, cannot keep trying\"\nMinimatch.prototype._matchGlobStarBodySections = function (\n file, bodySegments, fileIndex, bodyIndex, partial, globStarDepth, sawTail\n) {\n var bs = bodySegments[bodyIndex]\n if (!bs) {\n // just make sure there are no bad dots\n for (var i = fileIndex; i < file.length; i++) {\n sawTail = true\n var f = file[i]\n if (f === '.' || f === '..' ||\n (!this.options.dot && f.charAt(0) === '.')) {\n return false\n }\n }\n return sawTail\n }\n\n var body = bs[0]\n var after = bs[1]\n while (fileIndex <= after) {\n var m = this._matchOne(\n file.slice(0, fileIndex + body.length),\n body,\n partial,\n fileIndex,\n 0\n )\n // if limit exceeded, no match. intentional false negative,\n // acceptable break in correctness for security.\n if (m && globStarDepth < this.maxGlobstarRecursion) {\n var sub = this._matchGlobStarBodySections(\n file, bodySegments,\n fileIndex + body.length, bodyIndex + 1,\n partial, globStarDepth + 1, sawTail\n )\n if (sub !== false) {\n return sub\n }\n }\n var f = file[fileIndex]\n if (f === '.' || f === '..' ||\n (!this.options.dot && f.charAt(0) === '.')) {\n return false\n }\n fileIndex++\n }\n return partial || null\n}\n\nMinimatch.prototype._matchOne = function (file, pattern, partial, fileIndex, patternIndex) {\n var fi, pi, fl, pl\n for (\n fi = fileIndex, pi = patternIndex, fl = file.length, pl = pattern.length\n ; (fi < fl) && (pi < pl)\n ; fi++, pi++\n ) {\n this.debug('matchOne loop')\n var p = pattern[pi]\n var f = file[fi]\n\n this.debug(pattern, p, f)\n\n // should be impossible.\n // some invalid regexp stuff in the set.\n /* istanbul ignore if */\n if (p === false || p === GLOBSTAR) return false\n\n // something other than **\n // non-magic patterns just have to match exactly\n // patterns with magic have been turned into regexps.\n var hit\n if (typeof p === 'string') {\n hit = f === p\n this.debug('string match', p, f, hit)\n } else {\n hit = f.match(p)\n this.debug('pattern match', p, f, hit)\n }\n\n if (!hit) return false\n }\n\n // now either we fell off the end of the pattern, or we're done.\n if (fi === fl && pi === pl) {\n // ran out of pattern and filename at the same time.\n // an exact hit!\n return true\n } else if (fi === fl) {\n // ran out of file, but still had pattern left.\n // this is ok if we're doing the match as part of\n // a glob fs traversal.\n return partial\n } else /* istanbul ignore else */ if (pi === pl) {\n // ran out of pattern, still have file left.\n // this is only acceptable if we're on the very last\n // empty segment of a file with a trailing slash.\n // a/* should match a/b/\n return (fi === fl - 1) && (file[fi] === '')\n }\n\n // should be unreachable.\n /* istanbul ignore next */\n throw new Error('wtf?')\n}\n\n// replace stuff like \\* with *\nfunction globUnescape (s) {\n return s.replace(/\\\\(.)/g, '$1')\n}\n\nfunction regExpEscape (s) {\n return s.replace(/[-[\\]{}()*+?.,\\\\^$|#\\s]/g, '\\\\$&')\n}\n", "'use strict'\n\n// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n", "'use strict'\n\nconst debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n", "'use strict'\n\nconst {\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_LENGTH,\n} = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst safeSrc = exports.safeSrc = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n safeSrc[index] = safe\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '\\\\d+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n// Non-numeric identifiers include numeric identifiers but can be longer.\n// Therefore non-numeric identifiers must go first.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifier, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCEPLAIN', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`)\ncreateToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\\\d])`)\ncreateToken('COERCEFULL', src[t.COERCEPLAIN] +\n `(?:${src[t.PRERELEASE]})?` +\n `(?:${src[t.BUILD]})?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\ncreateToken('COERCERTLFULL', src[t.COERCEFULL], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$')\n", "'use strict'\n\n// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\n", "'use strict'\n\nconst numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n if (typeof a === 'number' && typeof b === 'number') {\n return a === b ? 0 : a < b ? -1 : 1\n }\n\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers,\n}\n", "'use strict'\n\nconst debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof version}\".`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n if (this.major < other.major) {\n return -1\n }\n if (this.major > other.major) {\n return 1\n }\n if (this.minor < other.minor) {\n return -1\n }\n if (this.minor > other.minor) {\n return 1\n }\n if (this.patch < other.patch) {\n return -1\n }\n if (this.patch > other.patch) {\n return 1\n }\n return 0\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('build compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier, identifierBase) {\n if (release.startsWith('pre')) {\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n // Avoid an invalid semver results\n if (identifier) {\n const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE])\n if (!match || match[1] !== identifier) {\n throw new Error(`invalid identifier: ${identifier}`)\n }\n }\n }\n\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier, identifierBase)\n this.inc('pre', identifier, identifierBase)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\n break\n case 'release':\n if (this.prerelease.length === 0) {\n throw new Error(`version ${this.raw} is not a prerelease`)\n }\n this.prerelease.length = 0\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre': {\n const base = Number(identifierBase) ? 1 : 0\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n", "'use strict'\n\nconst parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n", "'use strict'\n\nconst parse = require('./parse')\nconst clean = (version, options) => {\n const s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\nmodule.exports = clean\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\n\nconst inc = (version, release, options, identifier, identifierBase) => {\n if (typeof (options) === 'string') {\n identifierBase = identifier\n identifier = options\n options = undefined\n }\n\n try {\n return new SemVer(\n version instanceof SemVer ? version.version : version,\n options\n ).inc(release, identifier, identifierBase).version\n } catch (er) {\n return null\n }\n}\nmodule.exports = inc\n", "'use strict'\n\nconst parse = require('./parse.js')\n\nconst diff = (version1, version2) => {\n const v1 = parse(version1, null, true)\n const v2 = parse(version2, null, true)\n const comparison = v1.compare(v2)\n\n if (comparison === 0) {\n return null\n }\n\n const v1Higher = comparison > 0\n const highVersion = v1Higher ? v1 : v2\n const lowVersion = v1Higher ? v2 : v1\n const highHasPre = !!highVersion.prerelease.length\n const lowHasPre = !!lowVersion.prerelease.length\n\n if (lowHasPre && !highHasPre) {\n // Going from prerelease -> no prerelease requires some special casing\n\n // If the low version has only a major, then it will always be a major\n // Some examples:\n // 1.0.0-1 -> 1.0.0\n // 1.0.0-1 -> 1.1.1\n // 1.0.0-1 -> 2.0.0\n if (!lowVersion.patch && !lowVersion.minor) {\n return 'major'\n }\n\n // If the main part has no difference\n if (lowVersion.compareMain(highVersion) === 0) {\n if (lowVersion.minor && !lowVersion.patch) {\n return 'minor'\n }\n return 'patch'\n }\n }\n\n // add the `pre` prefix if we are going to a prerelease version\n const prefix = highHasPre ? 'pre' : ''\n\n if (v1.major !== v2.major) {\n return prefix + 'major'\n }\n\n if (v1.minor !== v2.minor) {\n return prefix + 'minor'\n }\n\n if (v1.patch !== v2.patch) {\n return prefix + 'patch'\n }\n\n // high and low are prereleases\n return 'prerelease'\n}\n\nmodule.exports = diff\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst minor = (a, loose) => new SemVer(a, loose).minor\nmodule.exports = minor\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst patch = (a, loose) => new SemVer(a, loose).patch\nmodule.exports = patch\n", "'use strict'\n\nconst parse = require('./parse')\nconst prerelease = (version, options) => {\n const parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\nmodule.exports = prerelease\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compare = (a, b, loose) =>\n new SemVer(a, loose).compare(new SemVer(b, loose))\n\nmodule.exports = compare\n", "'use strict'\n\nconst compare = require('./compare')\nconst rcompare = (a, b, loose) => compare(b, a, loose)\nmodule.exports = rcompare\n", "'use strict'\n\nconst compare = require('./compare')\nconst compareLoose = (a, b) => compare(a, b, true)\nmodule.exports = compareLoose\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compareBuild = (a, b, loose) => {\n const versionA = new SemVer(a, loose)\n const versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\nmodule.exports = compareBuild\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))\nmodule.exports = sort\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))\nmodule.exports = rsort\n", "'use strict'\n\nconst compare = require('./compare')\nconst gt = (a, b, loose) => compare(a, b, loose) > 0\nmodule.exports = gt\n", "'use strict'\n\nconst compare = require('./compare')\nconst lt = (a, b, loose) => compare(a, b, loose) < 0\nmodule.exports = lt\n", "'use strict'\n\nconst compare = require('./compare')\nconst eq = (a, b, loose) => compare(a, b, loose) === 0\nmodule.exports = eq\n", "'use strict'\n\nconst compare = require('./compare')\nconst neq = (a, b, loose) => compare(a, b, loose) !== 0\nmodule.exports = neq\n", "'use strict'\n\nconst compare = require('./compare')\nconst gte = (a, b, loose) => compare(a, b, loose) >= 0\nmodule.exports = gte\n", "'use strict'\n\nconst compare = require('./compare')\nconst lte = (a, b, loose) => compare(a, b, loose) <= 0\nmodule.exports = lte\n", "'use strict'\n\nconst eq = require('./eq')\nconst neq = require('./neq')\nconst gt = require('./gt')\nconst gte = require('./gte')\nconst lt = require('./lt')\nconst lte = require('./lte')\n\nconst cmp = (a, op, b, loose) => {\n switch (op) {\n case '===':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a === b\n\n case '!==':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError(`Invalid operator: ${op}`)\n }\n}\nmodule.exports = cmp\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = require('./parse')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst coerce = (version, options) => {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n let match = null\n if (!options.rtl) {\n match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n // With includePrerelease option set, '1.2.3.4-rc' wants to coerce '2.3.4-rc', not '2.3.4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]\n let next\n while ((next = coerceRtlRegex.exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n coerceRtlRegex.lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n const major = match[2]\n const minor = match[3] || '0'\n const patch = match[4] || '0'\n const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ''\n const build = options.includePrerelease && match[6] ? `+${match[6]}` : ''\n\n return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options)\n}\nmodule.exports = coerce\n", "'use strict'\n\nconst parse = require('./parse')\nconst constants = require('../internal/constants')\nconst SemVer = require('../classes/semver')\n\nconst truncate = (version, truncation, options) => {\n if (!constants.RELEASE_TYPES.includes(truncation)) {\n return null\n }\n\n const clonedVersion = cloneInputVersion(version, options)\n return clonedVersion && doTruncation(clonedVersion, truncation)\n}\n\nconst cloneInputVersion = (version, options) => {\n const versionStringToParse = (\n version instanceof SemVer ? version.version : version\n )\n\n return parse(versionStringToParse, options)\n}\n\nconst doTruncation = (version, truncation) => {\n if (isPrerelease(truncation)) {\n return version.version\n }\n\n version.prerelease = []\n\n switch (truncation) {\n case 'major':\n version.minor = 0\n version.patch = 0\n break\n case 'minor':\n version.patch = 0\n break\n }\n\n return version.format()\n}\n\nconst isPrerelease = (type) => {\n return type.startsWith('pre')\n}\n\nmodule.exports = truncate\n", "'use strict'\n\nclass LRUCache {\n constructor () {\n this.max = 1000\n this.map = new Map()\n }\n\n get (key) {\n const value = this.map.get(key)\n if (value === undefined) {\n return undefined\n } else {\n // Remove the key from the map and add it to the end\n this.map.delete(key)\n this.map.set(key, value)\n return value\n }\n }\n\n delete (key) {\n return this.map.delete(key)\n }\n\n set (key, value) {\n const deleted = this.delete(key)\n\n if (!deleted && value !== undefined) {\n // If cache is full, delete the least recently used item\n if (this.map.size >= this.max) {\n const firstKey = this.map.keys().next().value\n this.delete(firstKey)\n }\n\n this.map.set(key, value)\n }\n\n return this\n }\n}\n\nmodule.exports = LRUCache\n", "'use strict'\n\nconst SPACE_CHARACTERS = /\\s+/g\n\n// hoisted class for cyclic dependency\nclass Range {\n constructor (range, options) {\n options = parseOptions(options)\n\n if (range instanceof Range) {\n if (\n range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease\n ) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n // just put it in the set and return\n this.raw = range.value\n this.set = [[range]]\n this.formatted = undefined\n return this\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First reduce all whitespace as much as possible so we do not have to rely\n // on potentially slow regexes like \\s*. This is then stored and used for\n // future error messages as well.\n this.raw = range.trim().replace(SPACE_CHARACTERS, ' ')\n\n // First, split on ||\n this.set = this.raw\n .split('||')\n // map the range to a 2d array of comparators\n .map(r => this.parseRange(r.trim()))\n // throw out any comparator lists that are empty\n // this generally means that it was not a valid range, which is allowed\n // in loose mode, but will still throw if the WHOLE range is invalid.\n .filter(c => c.length)\n\n if (!this.set.length) {\n throw new TypeError(`Invalid SemVer Range: ${this.raw}`)\n }\n\n // if we have any that are not the null set, throw out null sets.\n if (this.set.length > 1) {\n // keep the first one, in case they're all null sets\n const first = this.set[0]\n this.set = this.set.filter(c => !isNullSet(c[0]))\n if (this.set.length === 0) {\n this.set = [first]\n } else if (this.set.length > 1) {\n // if we have any that are *, then the range is just *\n for (const c of this.set) {\n if (c.length === 1 && isAny(c[0])) {\n this.set = [c]\n break\n }\n }\n }\n }\n\n this.formatted = undefined\n }\n\n get range () {\n if (this.formatted === undefined) {\n this.formatted = ''\n for (let i = 0; i < this.set.length; i++) {\n if (i > 0) {\n this.formatted += '||'\n }\n const comps = this.set[i]\n for (let k = 0; k < comps.length; k++) {\n if (k > 0) {\n this.formatted += ' '\n }\n this.formatted += comps[k].toString().trim()\n }\n }\n }\n return this.formatted\n }\n\n format () {\n return this.range\n }\n\n toString () {\n return this.range\n }\n\n parseRange (range) {\n // strip build metadata so it can't bleed into the version\n range = range.replace(BUILDSTRIPRE, '')\n\n // memoize range parsing for performance.\n // this is a very hot path, and fully deterministic.\n const memoOpts =\n (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |\n (this.options.loose && FLAG_LOOSE)\n const memoKey = memoOpts + ':' + range\n const cached = cache.get(memoKey)\n if (cached) {\n return cached\n }\n\n const loose = this.options.loose\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace(this.options.includePrerelease))\n debug('hyphen replace', range)\n\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range)\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n debug('tilde trim', range)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n debug('caret trim', range)\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n let rangeList = range\n .split(' ')\n .map(comp => parseComparator(comp, this.options))\n .join(' ')\n .split(/\\s+/)\n // >=0.0.0 is equivalent to *\n .map(comp => replaceGTE0(comp, this.options))\n\n if (loose) {\n // in loose mode, throw out any that are not valid comparators\n rangeList = rangeList.filter(comp => {\n debug('loose invalid filter', comp, this.options)\n return !!comp.match(re[t.COMPARATORLOOSE])\n })\n }\n debug('range list', rangeList)\n\n // if any comparators are the null set, then replace with JUST null set\n // if more than one comparator, remove any * comparators\n // also, don't include the same comparator more than once\n const rangeMap = new Map()\n const comparators = rangeList.map(comp => new Comparator(comp, this.options))\n for (const comp of comparators) {\n if (isNullSet(comp)) {\n return [comp]\n }\n rangeMap.set(comp.value, comp)\n }\n if (rangeMap.size > 1 && rangeMap.has('')) {\n rangeMap.delete('')\n }\n\n const result = [...rangeMap.values()]\n cache.set(memoKey, result)\n return result\n }\n\n intersects (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some((thisComparators) => {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some((rangeComparators) => {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every((thisComparator) => {\n return rangeComparators.every((rangeComparator) => {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n }\n\n // if ANY of the sets match ALL of its comparators, then pass\n test (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (let i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n }\n}\n\nmodule.exports = Range\n\nconst LRU = require('../internal/lrucache')\nconst cache = new LRU()\n\nconst parseOptions = require('../internal/parse-options')\nconst Comparator = require('./comparator')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst {\n safeRe: re,\n src,\n t,\n comparatorTrimReplace,\n tildeTrimReplace,\n caretTrimReplace,\n} = require('../internal/re')\nconst { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require('../internal/constants')\n\n// unbounded global build-metadata stripper used by parseRange\nconst BUILDSTRIPRE = new RegExp(src[t.BUILD], 'g')\n\nconst isNullSet = c => c.value === '<0.0.0-0'\nconst isAny = c => c.value === ''\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nconst isSatisfiable = (comparators, options) => {\n let result = true\n const remainingComparators = comparators.slice()\n let testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every((otherComparator) => {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nconst parseComparator = (comp, options) => {\n comp = comp.replace(re[t.BUILD], '')\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nconst isX = id => !id || id.toLowerCase() === 'x' || id === '*'\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0\n// ~0.0.1 --> >=0.0.1 <0.1.0-0\nconst replaceTildes = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceTilde(c, options))\n .join(' ')\n}\n\nconst replaceTilde = (comp, options) => {\n const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('tilde', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0 <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0-0\n ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0-0\n ret = `>=${M}.${m}.${p\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0\n// ^1.2.3 --> >=1.2.3 <2.0.0-0\n// ^1.2.0 --> >=1.2.0 <2.0.0-0\n// ^0.0.1 --> >=0.0.1 <0.0.2-0\n// ^0.1.0 --> >=0.1.0 <0.2.0-0\nconst replaceCarets = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceCaret(c, options))\n .join(' ')\n}\n\nconst replaceCaret = (comp, options) => {\n debug('caret', comp, options)\n const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n const z = options.includePrerelease ? '-0' : ''\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('caret', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n if (M === '0') {\n ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`\n } else {\n ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${+M + 1}.0.0-0`\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p\n } <${+M + 1}.0.0-0`\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nconst replaceXRanges = (comp, options) => {\n debug('replaceXRanges', comp, options)\n return comp\n .split(/\\s+/)\n .map((c) => replaceXRange(c, options))\n .join(' ')\n}\n\nconst replaceXRange = (comp, options) => {\n comp = comp.trim()\n const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, (ret, gtlt, M, m, p, pr) => {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n const xM = isX(M)\n const xm = xM || isX(m)\n const xp = xm || isX(p)\n const anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n if (gtlt === '<') {\n pr = '-0'\n }\n\n ret = `${gtlt + M}.${m}.${p}${pr}`\n } else if (xm) {\n ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`\n } else if (xp) {\n ret = `>=${M}.${m}.0${pr\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nconst replaceStars = (comp, options) => {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp\n .trim()\n .replace(re[t.STAR], '')\n}\n\nconst replaceGTE0 = (comp, options) => {\n debug('replaceGTE0', comp, options)\n return comp\n .trim()\n .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0-0\n// TODO build?\nconst hyphenReplace = incPr => ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr) => {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = `>=${fM}.0.0${incPr ? '-0' : ''}`\n } else if (isX(fp)) {\n from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`\n } else if (fpr) {\n from = `>=${from}`\n } else {\n from = `>=${from}${incPr ? '-0' : ''}`\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = `<${+tM + 1}.0.0-0`\n } else if (isX(tp)) {\n to = `<${tM}.${+tm + 1}.0-0`\n } else if (tpr) {\n to = `<=${tM}.${tm}.${tp}-${tpr}`\n } else if (incPr) {\n to = `<${tM}.${tm}.${+tp + 1}-0`\n } else {\n to = `<=${to}`\n }\n\n return `${from} ${to}`.trim()\n}\n\nconst testSet = (set, version, options) => {\n for (let i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (let i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === Comparator.ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n const allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n", "'use strict'\n\nconst ANY = Symbol('SemVer ANY')\n// hoisted class for cyclic dependency\nclass Comparator {\n static get ANY () {\n return ANY\n }\n\n constructor (comp, options) {\n options = parseOptions(options)\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n comp = comp.trim().split(/\\s+/).join(' ')\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n }\n\n parse (comp) {\n const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n const m = comp.match(r)\n\n if (!m) {\n throw new TypeError(`Invalid comparator: ${comp}`)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n }\n\n toString () {\n return this.value\n }\n\n test (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n }\n\n intersects (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n return new Range(comp.value, options).test(this.value)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n return new Range(this.value, options).test(comp.semver)\n }\n\n options = parseOptions(options)\n\n // Special cases where nothing can possibly be lower\n if (options.includePrerelease &&\n (this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {\n return false\n }\n if (!options.includePrerelease &&\n (this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {\n return false\n }\n\n // Same direction increasing (> or >=)\n if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {\n return true\n }\n // Same direction decreasing (< or <=)\n if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {\n return true\n }\n // same SemVer and both sides are inclusive (<= or >=)\n if (\n (this.semver.version === comp.semver.version) &&\n this.operator.includes('=') && comp.operator.includes('=')) {\n return true\n }\n // opposite directions less than\n if (cmp(this.semver, '<', comp.semver, options) &&\n this.operator.startsWith('>') && comp.operator.startsWith('<')) {\n return true\n }\n // opposite directions greater than\n if (cmp(this.semver, '>', comp.semver, options) &&\n this.operator.startsWith('<') && comp.operator.startsWith('>')) {\n return true\n }\n return false\n }\n}\n\nmodule.exports = Comparator\n\nconst parseOptions = require('../internal/parse-options')\nconst { safeRe: re, t } = require('../internal/re')\nconst cmp = require('../functions/cmp')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst Range = require('./range')\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst satisfies = (version, range, options) => {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\nmodule.exports = satisfies\n", "'use strict'\n\nconst Range = require('../classes/range')\n\n// Mostly just for testing and legacy API reasons\nconst toComparators = (range, options) =>\n new Range(range, options).set\n .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))\n\nmodule.exports = toComparators\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\n\nconst maxSatisfying = (versions, range, options) => {\n let max = null\n let maxSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\nmodule.exports = maxSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst minSatisfying = (versions, range, options) => {\n let min = null\n let minSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\nmodule.exports = minSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst gt = require('../functions/gt')\n\nconst minVersion = (range, loose) => {\n range = new Range(range, loose)\n\n let minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let setMin = null\n comparators.forEach((comparator) => {\n // Clone to avoid manipulating the comparator's semver object.\n const compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!setMin || gt(compver, setMin)) {\n setMin = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error(`Unexpected operation: ${comparator.operator}`)\n }\n })\n if (setMin && (!minver || gt(minver, setMin))) {\n minver = setMin\n }\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\nmodule.exports = minVersion\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst validRange = (range, options) => {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\nmodule.exports = validRange\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Comparator = require('../classes/comparator')\nconst { ANY } = Comparator\nconst Range = require('../classes/range')\nconst satisfies = require('../functions/satisfies')\nconst gt = require('../functions/gt')\nconst lt = require('../functions/lt')\nconst lte = require('../functions/lte')\nconst gte = require('../functions/gte')\n\nconst outside = (version, range, hilo, options) => {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n let gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisfies the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let high = null\n let low = null\n\n comparators.forEach((comparator) => {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nmodule.exports = outside\n", "'use strict'\n\n// Determine if version is greater than all the versions possible in the range.\nconst outside = require('./outside')\nconst gtr = (version, range, options) => outside(version, range, '>', options)\nmodule.exports = gtr\n", "'use strict'\n\nconst outside = require('./outside')\n// Determine if version is less than all the versions possible in the range\nconst ltr = (version, range, options) => outside(version, range, '<', options)\nmodule.exports = ltr\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst intersects = (r1, r2, options) => {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2, options)\n}\nmodule.exports = intersects\n", "'use strict'\n\n// given a set of versions and a range, create a \"simplified\" range\n// that includes the same versions that the original range does\n// If the original range is shorter than the simplified one, return that.\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\nmodule.exports = (versions, range, options) => {\n const set = []\n let first = null\n let prev = null\n const v = versions.sort((a, b) => compare(a, b, options))\n for (const version of v) {\n const included = satisfies(version, range, options)\n if (included) {\n prev = version\n if (!first) {\n first = version\n }\n } else {\n if (prev) {\n set.push([first, prev])\n }\n prev = null\n first = null\n }\n }\n if (first) {\n set.push([first, null])\n }\n\n const ranges = []\n for (const [min, max] of set) {\n if (min === max) {\n ranges.push(min)\n } else if (!max && min === v[0]) {\n ranges.push('*')\n } else if (!max) {\n ranges.push(`>=${min}`)\n } else if (min === v[0]) {\n ranges.push(`<=${max}`)\n } else {\n ranges.push(`${min} - ${max}`)\n }\n }\n const simplified = ranges.join(' || ')\n const original = typeof range.raw === 'string' ? range.raw : String(range)\n return simplified.length < original.length ? simplified : range\n}\n", "'use strict'\n\nconst Range = require('../classes/range.js')\nconst Comparator = require('../classes/comparator.js')\nconst { ANY } = Comparator\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\n\n// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:\n// - Every simple range `r1, r2, ...` is a null set, OR\n// - Every simple range `r1, r2, ...` which is not a null set is a subset of\n// some `R1, R2, ...`\n//\n// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:\n// - If c is only the ANY comparator\n// - If C is only the ANY comparator, return true\n// - Else if in prerelease mode, return false\n// - else replace c with `[>=0.0.0]`\n// - If C is only the ANY comparator\n// - if in prerelease mode, return true\n// - else replace C with `[>=0.0.0]`\n// - Let EQ be the set of = comparators in c\n// - If EQ is more than one, return true (null set)\n// - Let GT be the highest > or >= comparator in c\n// - Let LT be the lowest < or <= comparator in c\n// - If GT and LT, and GT.semver > LT.semver, return true (null set)\n// - If any C is a = range, and GT or LT are set, return false\n// - If EQ\n// - If GT, and EQ does not satisfy GT, return true (null set)\n// - If LT, and EQ does not satisfy LT, return true (null set)\n// - If EQ satisfies every C, return true\n// - Else return false\n// - If GT\n// - If GT.semver is lower than any > or >= comp in C, return false\n// - If GT is >=, and GT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the GT.semver tuple, return false\n// - If LT\n// - If LT.semver is greater than any < or <= comp in C, return false\n// - If LT is <=, and LT.semver does not satisfy every C, return false\n// - If LT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the LT.semver tuple, return false\n// - Else return true\n\nconst subset = (sub, dom, options = {}) => {\n if (sub === dom) {\n return true\n }\n\n sub = new Range(sub, options)\n dom = new Range(dom, options)\n let sawNonNull = false\n\n OUTER: for (const simpleSub of sub.set) {\n for (const simpleDom of dom.set) {\n const isSub = simpleSubset(simpleSub, simpleDom, options)\n sawNonNull = sawNonNull || isSub !== null\n if (isSub) {\n continue OUTER\n }\n }\n // the null set is a subset of everything, but null simple ranges in\n // a complex range should be ignored. so if we saw a non-null range,\n // then we know this isn't a subset, but if EVERY simple range was null,\n // then it is a subset.\n if (sawNonNull) {\n return false\n }\n }\n return true\n}\n\nconst minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]\nconst minimumVersion = [new Comparator('>=0.0.0')]\n\nconst simpleSubset = (sub, dom, options) => {\n if (sub === dom) {\n return true\n }\n\n if (sub.length === 1 && sub[0].semver === ANY) {\n if (dom.length === 1 && dom[0].semver === ANY) {\n return true\n } else if (options.includePrerelease) {\n sub = minimumVersionWithPreRelease\n } else {\n sub = minimumVersion\n }\n }\n\n if (dom.length === 1 && dom[0].semver === ANY) {\n if (options.includePrerelease) {\n return true\n } else {\n dom = minimumVersion\n }\n }\n\n const eqSet = new Set()\n let gt, lt\n for (const c of sub) {\n if (c.operator === '>' || c.operator === '>=') {\n gt = higherGT(gt, c, options)\n } else if (c.operator === '<' || c.operator === '<=') {\n lt = lowerLT(lt, c, options)\n } else {\n eqSet.add(c.semver)\n }\n }\n\n if (eqSet.size > 1) {\n return null\n }\n\n let gtltComp\n if (gt && lt) {\n gtltComp = compare(gt.semver, lt.semver, options)\n if (gtltComp > 0) {\n return null\n } else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) {\n return null\n }\n }\n\n // will iterate one or zero times\n for (const eq of eqSet) {\n if (gt && !satisfies(eq, String(gt), options)) {\n return null\n }\n\n if (lt && !satisfies(eq, String(lt), options)) {\n return null\n }\n\n for (const c of dom) {\n if (!satisfies(eq, String(c), options)) {\n return false\n }\n }\n\n return true\n }\n\n let higher, lower\n let hasDomLT, hasDomGT\n // if the subset has a prerelease, we need a comparator in the superset\n // with the same tuple and a prerelease, or it's not a subset\n let needDomLTPre = lt &&\n !options.includePrerelease &&\n lt.semver.prerelease.length ? lt.semver : false\n let needDomGTPre = gt &&\n !options.includePrerelease &&\n gt.semver.prerelease.length ? gt.semver : false\n // exception: <1.2.3-0 is the same as <1.2.3\n if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&\n lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {\n needDomLTPre = false\n }\n\n for (const c of dom) {\n hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='\n hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='\n if (gt) {\n if (needDomGTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomGTPre.major &&\n c.semver.minor === needDomGTPre.minor &&\n c.semver.patch === needDomGTPre.patch) {\n needDomGTPre = false\n }\n }\n if (c.operator === '>' || c.operator === '>=') {\n higher = higherGT(gt, c, options)\n if (higher === c && higher !== gt) {\n return false\n }\n } else if (gt.operator === '>=' && !c.test(gt.semver)) {\n return false\n }\n }\n if (lt) {\n if (needDomLTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomLTPre.major &&\n c.semver.minor === needDomLTPre.minor &&\n c.semver.patch === needDomLTPre.patch) {\n needDomLTPre = false\n }\n }\n if (c.operator === '<' || c.operator === '<=') {\n lower = lowerLT(lt, c, options)\n if (lower === c && lower !== lt) {\n return false\n }\n } else if (lt.operator === '<=' && !c.test(lt.semver)) {\n return false\n }\n }\n if (!c.operator && (lt || gt) && gtltComp !== 0) {\n return false\n }\n }\n\n // if there was a < or >, and nothing in the dom, then must be false\n // UNLESS it was limited by another range in the other direction.\n // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0\n if (gt && hasDomLT && !lt && gtltComp !== 0) {\n return false\n }\n\n if (lt && hasDomGT && !gt && gtltComp !== 0) {\n return false\n }\n\n // we needed a prerelease range in a specific tuple, but didn't get one\n // then this isn't a subset. eg >=1.2.3-pre is not a subset of >=1.0.0,\n // because it includes prereleases in the 1.2.3 tuple\n if (needDomGTPre || needDomLTPre) {\n return false\n }\n\n return true\n}\n\n// >=1.2.3 is lower than >1.2.3\nconst higherGT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp > 0 ? a\n : comp < 0 ? b\n : b.operator === '>' && a.operator === '>=' ? b\n : a\n}\n\n// <=1.2.3 is higher than <1.2.3\nconst lowerLT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp < 0 ? a\n : comp > 0 ? b\n : b.operator === '<' && a.operator === '<=' ? b\n : a\n}\n\nmodule.exports = subset\n", "'use strict'\n\n// just pre-load all the stuff that index.js lazily exports\nconst internalRe = require('./internal/re')\nconst constants = require('./internal/constants')\nconst SemVer = require('./classes/semver')\nconst identifiers = require('./internal/identifiers')\nconst parse = require('./functions/parse')\nconst valid = require('./functions/valid')\nconst clean = require('./functions/clean')\nconst inc = require('./functions/inc')\nconst diff = require('./functions/diff')\nconst major = require('./functions/major')\nconst minor = require('./functions/minor')\nconst patch = require('./functions/patch')\nconst prerelease = require('./functions/prerelease')\nconst compare = require('./functions/compare')\nconst rcompare = require('./functions/rcompare')\nconst compareLoose = require('./functions/compare-loose')\nconst compareBuild = require('./functions/compare-build')\nconst sort = require('./functions/sort')\nconst rsort = require('./functions/rsort')\nconst gt = require('./functions/gt')\nconst lt = require('./functions/lt')\nconst eq = require('./functions/eq')\nconst neq = require('./functions/neq')\nconst gte = require('./functions/gte')\nconst lte = require('./functions/lte')\nconst cmp = require('./functions/cmp')\nconst coerce = require('./functions/coerce')\nconst truncate = require('./functions/truncate')\nconst Comparator = require('./classes/comparator')\nconst Range = require('./classes/range')\nconst satisfies = require('./functions/satisfies')\nconst toComparators = require('./ranges/to-comparators')\nconst maxSatisfying = require('./ranges/max-satisfying')\nconst minSatisfying = require('./ranges/min-satisfying')\nconst minVersion = require('./ranges/min-version')\nconst validRange = require('./ranges/valid')\nconst outside = require('./ranges/outside')\nconst gtr = require('./ranges/gtr')\nconst ltr = require('./ranges/ltr')\nconst intersects = require('./ranges/intersects')\nconst simplifyRange = require('./ranges/simplify')\nconst subset = require('./ranges/subset')\nmodule.exports = {\n parse,\n valid,\n clean,\n inc,\n diff,\n major,\n minor,\n patch,\n prerelease,\n compare,\n rcompare,\n compareLoose,\n compareBuild,\n sort,\n rsort,\n gt,\n lt,\n eq,\n neq,\n gte,\n lte,\n cmp,\n coerce,\n truncate,\n Comparator,\n Range,\n satisfies,\n toComparators,\n maxSatisfying,\n minSatisfying,\n minVersion,\n validRange,\n outside,\n gtr,\n ltr,\n intersects,\n simplifyRange,\n subset,\n SemVer,\n re: internalRe.re,\n src: internalRe.src,\n tokens: internalRe.t,\n SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,\n RELEASE_TYPES: constants.RELEASE_TYPES,\n compareIdentifiers: identifiers.compareIdentifiers,\n rcompareIdentifiers: identifiers.rcompareIdentifiers,\n}\n", "/**\n * Helpers.\n */\n\nvar s = 1000;\nvar m = s * 60;\nvar h = m * 60;\nvar d = h * 24;\nvar w = d * 7;\nvar y = d * 365.25;\n\n/**\n * Parse or format the given `val`.\n *\n * Options:\n *\n * - `long` verbose formatting [false]\n *\n * @param {String|Number} val\n * @param {Object} [options]\n * @throws {Error} throw an error if val is not a non-empty string or a number\n * @return {String|Number}\n * @api public\n */\n\nmodule.exports = function(val, options) {\n options = options || {};\n var type = typeof val;\n if (type === 'string' && val.length > 0) {\n return parse(val);\n } else if (type === 'number' && isFinite(val)) {\n return options.long ? fmtLong(val) : fmtShort(val);\n }\n throw new Error(\n 'val is not a non-empty string or a valid number. val=' +\n JSON.stringify(val)\n );\n};\n\n/**\n * Parse the given `str` and return milliseconds.\n *\n * @param {String} str\n * @return {Number}\n * @api private\n */\n\nfunction parse(str) {\n str = String(str);\n if (str.length > 100) {\n return;\n }\n var match = /^(-?(?:\\d+)?\\.?\\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(\n str\n );\n if (!match) {\n return;\n }\n var n = parseFloat(match[1]);\n var type = (match[2] || 'ms').toLowerCase();\n switch (type) {\n case 'years':\n case 'year':\n case 'yrs':\n case 'yr':\n case 'y':\n return n * y;\n case 'weeks':\n case 'week':\n case 'w':\n return n * w;\n case 'days':\n case 'day':\n case 'd':\n return n * d;\n case 'hours':\n case 'hour':\n case 'hrs':\n case 'hr':\n case 'h':\n return n * h;\n case 'minutes':\n case 'minute':\n case 'mins':\n case 'min':\n case 'm':\n return n * m;\n case 'seconds':\n case 'second':\n case 'secs':\n case 'sec':\n case 's':\n return n * s;\n case 'milliseconds':\n case 'millisecond':\n case 'msecs':\n case 'msec':\n case 'ms':\n return n;\n default:\n return undefined;\n }\n}\n\n/**\n * Short format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtShort(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return Math.round(ms / d) + 'd';\n }\n if (msAbs >= h) {\n return Math.round(ms / h) + 'h';\n }\n if (msAbs >= m) {\n return Math.round(ms / m) + 'm';\n }\n if (msAbs >= s) {\n return Math.round(ms / s) + 's';\n }\n return ms + 'ms';\n}\n\n/**\n * Long format for `ms`.\n *\n * @param {Number} ms\n * @return {String}\n * @api private\n */\n\nfunction fmtLong(ms) {\n var msAbs = Math.abs(ms);\n if (msAbs >= d) {\n return plural(ms, msAbs, d, 'day');\n }\n if (msAbs >= h) {\n return plural(ms, msAbs, h, 'hour');\n }\n if (msAbs >= m) {\n return plural(ms, msAbs, m, 'minute');\n }\n if (msAbs >= s) {\n return plural(ms, msAbs, s, 'second');\n }\n return ms + ' ms';\n}\n\n/**\n * Pluralization helper.\n */\n\nfunction plural(ms, msAbs, n, name) {\n var isPlural = msAbs >= n * 1.5;\n return Math.round(ms / n) + ' ' + name + (isPlural ? 's' : '');\n}\n", "\n/**\n * This is the common logic for both the Node.js and web browser\n * implementations of `debug()`.\n */\n\nfunction setup(env) {\n\tcreateDebug.debug = createDebug;\n\tcreateDebug.default = createDebug;\n\tcreateDebug.coerce = coerce;\n\tcreateDebug.disable = disable;\n\tcreateDebug.enable = enable;\n\tcreateDebug.enabled = enabled;\n\tcreateDebug.humanize = require('ms');\n\tcreateDebug.destroy = destroy;\n\n\tObject.keys(env).forEach(key => {\n\t\tcreateDebug[key] = env[key];\n\t});\n\n\t/**\n\t* The currently active debug mode names, and names to skip.\n\t*/\n\n\tcreateDebug.names = [];\n\tcreateDebug.skips = [];\n\n\t/**\n\t* Map of special \"%n\" handling functions, for the debug \"format\" argument.\n\t*\n\t* Valid key names are a single, lower or upper-case letter, i.e. \"n\" and \"N\".\n\t*/\n\tcreateDebug.formatters = {};\n\n\t/**\n\t* Selects a color for a debug namespace\n\t* @param {String} namespace The namespace string for the debug instance to be colored\n\t* @return {Number|String} An ANSI color code for the given namespace\n\t* @api private\n\t*/\n\tfunction selectColor(namespace) {\n\t\tlet hash = 0;\n\n\t\tfor (let i = 0; i < namespace.length; i++) {\n\t\t\thash = ((hash << 5) - hash) + namespace.charCodeAt(i);\n\t\t\thash |= 0; // Convert to 32bit integer\n\t\t}\n\n\t\treturn createDebug.colors[Math.abs(hash) % createDebug.colors.length];\n\t}\n\tcreateDebug.selectColor = selectColor;\n\n\t/**\n\t* Create a debugger with the given `namespace`.\n\t*\n\t* @param {String} namespace\n\t* @return {Function}\n\t* @api public\n\t*/\n\tfunction createDebug(namespace) {\n\t\tlet prevTime;\n\t\tlet enableOverride = null;\n\t\tlet namespacesCache;\n\t\tlet enabledCache;\n\n\t\tfunction debug(...args) {\n\t\t\t// Disabled?\n\t\t\tif (!debug.enabled) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tconst self = debug;\n\n\t\t\t// Set `diff` timestamp\n\t\t\tconst curr = Number(new Date());\n\t\t\tconst ms = curr - (prevTime || curr);\n\t\t\tself.diff = ms;\n\t\t\tself.prev = prevTime;\n\t\t\tself.curr = curr;\n\t\t\tprevTime = curr;\n\n\t\t\targs[0] = createDebug.coerce(args[0]);\n\n\t\t\tif (typeof args[0] !== 'string') {\n\t\t\t\t// Anything else let's inspect with %O\n\t\t\t\targs.unshift('%O');\n\t\t\t}\n\n\t\t\t// Apply any `formatters` transformations\n\t\t\tlet index = 0;\n\t\t\targs[0] = args[0].replace(/%([a-zA-Z%])/g, (match, format) => {\n\t\t\t\t// If we encounter an escaped % then don't increase the array index\n\t\t\t\tif (match === '%%') {\n\t\t\t\t\treturn '%';\n\t\t\t\t}\n\t\t\t\tindex++;\n\t\t\t\tconst formatter = createDebug.formatters[format];\n\t\t\t\tif (typeof formatter === 'function') {\n\t\t\t\t\tconst val = args[index];\n\t\t\t\t\tmatch = formatter.call(self, val);\n\n\t\t\t\t\t// Now we need to remove `args[index]` since it's inlined in the `format`\n\t\t\t\t\targs.splice(index, 1);\n\t\t\t\t\tindex--;\n\t\t\t\t}\n\t\t\t\treturn match;\n\t\t\t});\n\n\t\t\t// Apply env-specific formatting (colors, etc.)\n\t\t\tcreateDebug.formatArgs.call(self, args);\n\n\t\t\tconst logFn = self.log || createDebug.log;\n\t\t\tlogFn.apply(self, args);\n\t\t}\n\n\t\tdebug.namespace = namespace;\n\t\tdebug.useColors = createDebug.useColors();\n\t\tdebug.color = createDebug.selectColor(namespace);\n\t\tdebug.extend = extend;\n\t\tdebug.destroy = createDebug.destroy; // XXX Temporary. Will be removed in the next major release.\n\n\t\tObject.defineProperty(debug, 'enabled', {\n\t\t\tenumerable: true,\n\t\t\tconfigurable: false,\n\t\t\tget: () => {\n\t\t\t\tif (enableOverride !== null) {\n\t\t\t\t\treturn enableOverride;\n\t\t\t\t}\n\t\t\t\tif (namespacesCache !== createDebug.namespaces) {\n\t\t\t\t\tnamespacesCache = createDebug.namespaces;\n\t\t\t\t\tenabledCache = createDebug.enabled(namespace);\n\t\t\t\t}\n\n\t\t\t\treturn enabledCache;\n\t\t\t},\n\t\t\tset: v => {\n\t\t\t\tenableOverride = v;\n\t\t\t}\n\t\t});\n\n\t\t// Env-specific initialization logic for debug instances\n\t\tif (typeof createDebug.init === 'function') {\n\t\t\tcreateDebug.init(debug);\n\t\t}\n\n\t\treturn debug;\n\t}\n\n\tfunction extend(namespace, delimiter) {\n\t\tconst newDebug = createDebug(this.namespace + (typeof delimiter === 'undefined' ? ':' : delimiter) + namespace);\n\t\tnewDebug.log = this.log;\n\t\treturn newDebug;\n\t}\n\n\t/**\n\t* Enables a debug mode by namespaces. This can include modes\n\t* separated by a colon and wildcards.\n\t*\n\t* @param {String} namespaces\n\t* @api public\n\t*/\n\tfunction enable(namespaces) {\n\t\tcreateDebug.save(namespaces);\n\t\tcreateDebug.namespaces = namespaces;\n\n\t\tcreateDebug.names = [];\n\t\tcreateDebug.skips = [];\n\n\t\tlet i;\n\t\tconst split = (typeof namespaces === 'string' ? namespaces : '').split(/[\\s,]+/);\n\t\tconst len = split.length;\n\n\t\tfor (i = 0; i < len; i++) {\n\t\t\tif (!split[i]) {\n\t\t\t\t// ignore empty strings\n\t\t\t\tcontinue;\n\t\t\t}\n\n\t\t\tnamespaces = split[i].replace(/\\*/g, '.*?');\n\n\t\t\tif (namespaces[0] === '-') {\n\t\t\t\tcreateDebug.skips.push(new RegExp('^' + namespaces.slice(1) + '$'));\n\t\t\t} else {\n\t\t\t\tcreateDebug.names.push(new RegExp('^' + namespaces + '$'));\n\t\t\t}\n\t\t}\n\t}\n\n\t/**\n\t* Disable debug output.\n\t*\n\t* @return {String} namespaces\n\t* @api public\n\t*/\n\tfunction disable() {\n\t\tconst namespaces = [\n\t\t\t...createDebug.names.map(toNamespace),\n\t\t\t...createDebug.skips.map(toNamespace).map(namespace => '-' + namespace)\n\t\t].join(',');\n\t\tcreateDebug.enable('');\n\t\treturn namespaces;\n\t}\n\n\t/**\n\t* Returns true if the given mode name is enabled, false otherwise.\n\t*\n\t* @param {String} name\n\t* @return {Boolean}\n\t* @api public\n\t*/\n\tfunction enabled(name) {\n\t\tif (name[name.length - 1] === '*') {\n\t\t\treturn true;\n\t\t}\n\n\t\tlet i;\n\t\tlet len;\n\n\t\tfor (i = 0, len = createDebug.skips.length; i < len; i++) {\n\t\t\tif (createDebug.skips[i].test(name)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tfor (i = 0, len = createDebug.names.length; i < len; i++) {\n\t\t\tif (createDebug.names[i].test(name)) {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t}\n\n\t\treturn false;\n\t}\n\n\t/**\n\t* Convert regexp to namespace\n\t*\n\t* @param {RegExp} regxep\n\t* @return {String} namespace\n\t* @api private\n\t*/\n\tfunction toNamespace(regexp) {\n\t\treturn regexp.toString()\n\t\t\t.substring(2, regexp.toString().length - 2)\n\t\t\t.replace(/\\.\\*\\?$/, '*');\n\t}\n\n\t/**\n\t* Coerce `val`.\n\t*\n\t* @param {Mixed} val\n\t* @return {Mixed}\n\t* @api private\n\t*/\n\tfunction coerce(val) {\n\t\tif (val instanceof Error) {\n\t\t\treturn val.stack || val.message;\n\t\t}\n\t\treturn val;\n\t}\n\n\t/**\n\t* XXX DO NOT USE. This is a temporary stub function.\n\t* XXX It WILL be removed in the next major release.\n\t*/\n\tfunction destroy() {\n\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t}\n\n\tcreateDebug.enable(createDebug.load());\n\n\treturn createDebug;\n}\n\nmodule.exports = setup;\n", "/* eslint-env browser */\n\n/**\n * This is the web browser implementation of `debug()`.\n */\n\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.storage = localstorage();\nexports.destroy = (() => {\n\tlet warned = false;\n\n\treturn () => {\n\t\tif (!warned) {\n\t\t\twarned = true;\n\t\t\tconsole.warn('Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.');\n\t\t}\n\t};\n})();\n\n/**\n * Colors.\n */\n\nexports.colors = [\n\t'#0000CC',\n\t'#0000FF',\n\t'#0033CC',\n\t'#0033FF',\n\t'#0066CC',\n\t'#0066FF',\n\t'#0099CC',\n\t'#0099FF',\n\t'#00CC00',\n\t'#00CC33',\n\t'#00CC66',\n\t'#00CC99',\n\t'#00CCCC',\n\t'#00CCFF',\n\t'#3300CC',\n\t'#3300FF',\n\t'#3333CC',\n\t'#3333FF',\n\t'#3366CC',\n\t'#3366FF',\n\t'#3399CC',\n\t'#3399FF',\n\t'#33CC00',\n\t'#33CC33',\n\t'#33CC66',\n\t'#33CC99',\n\t'#33CCCC',\n\t'#33CCFF',\n\t'#6600CC',\n\t'#6600FF',\n\t'#6633CC',\n\t'#6633FF',\n\t'#66CC00',\n\t'#66CC33',\n\t'#9900CC',\n\t'#9900FF',\n\t'#9933CC',\n\t'#9933FF',\n\t'#99CC00',\n\t'#99CC33',\n\t'#CC0000',\n\t'#CC0033',\n\t'#CC0066',\n\t'#CC0099',\n\t'#CC00CC',\n\t'#CC00FF',\n\t'#CC3300',\n\t'#CC3333',\n\t'#CC3366',\n\t'#CC3399',\n\t'#CC33CC',\n\t'#CC33FF',\n\t'#CC6600',\n\t'#CC6633',\n\t'#CC9900',\n\t'#CC9933',\n\t'#CCCC00',\n\t'#CCCC33',\n\t'#FF0000',\n\t'#FF0033',\n\t'#FF0066',\n\t'#FF0099',\n\t'#FF00CC',\n\t'#FF00FF',\n\t'#FF3300',\n\t'#FF3333',\n\t'#FF3366',\n\t'#FF3399',\n\t'#FF33CC',\n\t'#FF33FF',\n\t'#FF6600',\n\t'#FF6633',\n\t'#FF9900',\n\t'#FF9933',\n\t'#FFCC00',\n\t'#FFCC33'\n];\n\n/**\n * Currently only WebKit-based Web Inspectors, Firefox >= v31,\n * and the Firebug extension (any Firefox version) are known\n * to support \"%c\" CSS customizations.\n *\n * TODO: add a `localStorage` variable to explicitly enable/disable colors\n */\n\n// eslint-disable-next-line complexity\nfunction useColors() {\n\t// NB: In an Electron preload script, document will be defined but not fully\n\t// initialized. Since we know we're in Chrome, we'll just detect this case\n\t// explicitly\n\tif (typeof window !== 'undefined' && window.process && (window.process.type === 'renderer' || window.process.__nwjs)) {\n\t\treturn true;\n\t}\n\n\t// Internet Explorer and Edge do not support colors.\n\tif (typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/(edge|trident)\\/(\\d+)/)) {\n\t\treturn false;\n\t}\n\n\t// Is webkit? http://stackoverflow.com/a/16459606/376773\n\t// document is undefined in react-native: https://github.com/facebook/react-native/pull/1632\n\treturn (typeof document !== 'undefined' && document.documentElement && document.documentElement.style && document.documentElement.style.WebkitAppearance) ||\n\t\t// Is firebug? http://stackoverflow.com/a/398120/376773\n\t\t(typeof window !== 'undefined' && window.console && (window.console.firebug || (window.console.exception && window.console.table))) ||\n\t\t// Is firefox >= v31?\n\t\t// https://developer.mozilla.org/en-US/docs/Tools/Web_Console#Styling_messages\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/firefox\\/(\\d+)/) && parseInt(RegExp.$1, 10) >= 31) ||\n\t\t// Double check webkit in userAgent just in case we are in a worker\n\t\t(typeof navigator !== 'undefined' && navigator.userAgent && navigator.userAgent.toLowerCase().match(/applewebkit\\/(\\d+)/));\n}\n\n/**\n * Colorize log arguments if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\targs[0] = (this.useColors ? '%c' : '') +\n\t\tthis.namespace +\n\t\t(this.useColors ? ' %c' : ' ') +\n\t\targs[0] +\n\t\t(this.useColors ? '%c ' : ' ') +\n\t\t'+' + module.exports.humanize(this.diff);\n\n\tif (!this.useColors) {\n\t\treturn;\n\t}\n\n\tconst c = 'color: ' + this.color;\n\targs.splice(1, 0, c, 'color: inherit');\n\n\t// The final \"%c\" is somewhat tricky, because there could be other\n\t// arguments passed either before or after the %c, so we need to\n\t// figure out the correct index to insert the CSS into\n\tlet index = 0;\n\tlet lastC = 0;\n\targs[0].replace(/%[a-zA-Z%]/g, match => {\n\t\tif (match === '%%') {\n\t\t\treturn;\n\t\t}\n\t\tindex++;\n\t\tif (match === '%c') {\n\t\t\t// We only are interested in the *last* %c\n\t\t\t// (the user may have provided their own)\n\t\t\tlastC = index;\n\t\t}\n\t});\n\n\targs.splice(lastC, 0, c);\n}\n\n/**\n * Invokes `console.debug()` when available.\n * No-op when `console.debug` is not a \"function\".\n * If `console.debug` is not available, falls back\n * to `console.log`.\n *\n * @api public\n */\nexports.log = console.debug || console.log || (() => {});\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\ttry {\n\t\tif (namespaces) {\n\t\t\texports.storage.setItem('debug', namespaces);\n\t\t} else {\n\t\t\texports.storage.removeItem('debug');\n\t\t}\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\nfunction load() {\n\tlet r;\n\ttry {\n\t\tr = exports.storage.getItem('debug');\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n\n\t// If debug isn't set in LS, and we're in Electron, try to load $DEBUG\n\tif (!r && typeof process !== 'undefined' && 'env' in process) {\n\t\tr = process.env.DEBUG;\n\t}\n\n\treturn r;\n}\n\n/**\n * Localstorage attempts to return the localstorage.\n *\n * This is necessary because safari throws\n * when a user disables cookies/localstorage\n * and you attempt to access it.\n *\n * @return {LocalStorage}\n * @api private\n */\n\nfunction localstorage() {\n\ttry {\n\t\t// TVMLKit (Apple TV JS Runtime) does not have a window object, just localStorage in the global context\n\t\t// The Browser also has localStorage in the global context.\n\t\treturn localStorage;\n\t} catch (error) {\n\t\t// Swallow\n\t\t// XXX (@Qix-) should we be logging these?\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.\n */\n\nformatters.j = function (v) {\n\ttry {\n\t\treturn JSON.stringify(v);\n\t} catch (error) {\n\t\treturn '[UnexpectedJSONParseError]: ' + error.message;\n\t}\n};\n", "'use strict';\n\nmodule.exports = (flag, argv = process.argv) => {\n\tconst prefix = flag.startsWith('-') ? '' : (flag.length === 1 ? '-' : '--');\n\tconst position = argv.indexOf(prefix + flag);\n\tconst terminatorPosition = argv.indexOf('--');\n\treturn position !== -1 && (terminatorPosition === -1 || position < terminatorPosition);\n};\n", "'use strict';\nconst os = require('os');\nconst tty = require('tty');\nconst hasFlag = require('has-flag');\n\nconst {env} = process;\n\nlet forceColor;\nif (hasFlag('no-color') ||\n\thasFlag('no-colors') ||\n\thasFlag('color=false') ||\n\thasFlag('color=never')) {\n\tforceColor = 0;\n} else if (hasFlag('color') ||\n\thasFlag('colors') ||\n\thasFlag('color=true') ||\n\thasFlag('color=always')) {\n\tforceColor = 1;\n}\n\nif ('FORCE_COLOR' in env) {\n\tif (env.FORCE_COLOR === 'true') {\n\t\tforceColor = 1;\n\t} else if (env.FORCE_COLOR === 'false') {\n\t\tforceColor = 0;\n\t} else {\n\t\tforceColor = env.FORCE_COLOR.length === 0 ? 1 : Math.min(parseInt(env.FORCE_COLOR, 10), 3);\n\t}\n}\n\nfunction translateLevel(level) {\n\tif (level === 0) {\n\t\treturn false;\n\t}\n\n\treturn {\n\t\tlevel,\n\t\thasBasic: true,\n\t\thas256: level >= 2,\n\t\thas16m: level >= 3\n\t};\n}\n\nfunction supportsColor(haveStream, streamIsTTY) {\n\tif (forceColor === 0) {\n\t\treturn 0;\n\t}\n\n\tif (hasFlag('color=16m') ||\n\t\thasFlag('color=full') ||\n\t\thasFlag('color=truecolor')) {\n\t\treturn 3;\n\t}\n\n\tif (hasFlag('color=256')) {\n\t\treturn 2;\n\t}\n\n\tif (haveStream && !streamIsTTY && forceColor === undefined) {\n\t\treturn 0;\n\t}\n\n\tconst min = forceColor || 0;\n\n\tif (env.TERM === 'dumb') {\n\t\treturn min;\n\t}\n\n\tif (process.platform === 'win32') {\n\t\t// Windows 10 build 10586 is the first Windows release that supports 256 colors.\n\t\t// Windows 10 build 14931 is the first release that supports 16m/TrueColor.\n\t\tconst osRelease = os.release().split('.');\n\t\tif (\n\t\t\tNumber(osRelease[0]) >= 10 &&\n\t\t\tNumber(osRelease[2]) >= 10586\n\t\t) {\n\t\t\treturn Number(osRelease[2]) >= 14931 ? 3 : 2;\n\t\t}\n\n\t\treturn 1;\n\t}\n\n\tif ('CI' in env) {\n\t\tif (['TRAVIS', 'CIRCLECI', 'APPVEYOR', 'GITLAB_CI', 'GITHUB_ACTIONS', 'BUILDKITE'].some(sign => sign in env) || env.CI_NAME === 'codeship') {\n\t\t\treturn 1;\n\t\t}\n\n\t\treturn min;\n\t}\n\n\tif ('TEAMCITY_VERSION' in env) {\n\t\treturn /^(9\\.(0*[1-9]\\d*)\\.|\\d{2,}\\.)/.test(env.TEAMCITY_VERSION) ? 1 : 0;\n\t}\n\n\tif (env.COLORTERM === 'truecolor') {\n\t\treturn 3;\n\t}\n\n\tif ('TERM_PROGRAM' in env) {\n\t\tconst version = parseInt((env.TERM_PROGRAM_VERSION || '').split('.')[0], 10);\n\n\t\tswitch (env.TERM_PROGRAM) {\n\t\t\tcase 'iTerm.app':\n\t\t\t\treturn version >= 3 ? 3 : 2;\n\t\t\tcase 'Apple_Terminal':\n\t\t\t\treturn 2;\n\t\t\t// No default\n\t\t}\n\t}\n\n\tif (/-256(color)?$/i.test(env.TERM)) {\n\t\treturn 2;\n\t}\n\n\tif (/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(env.TERM)) {\n\t\treturn 1;\n\t}\n\n\tif ('COLORTERM' in env) {\n\t\treturn 1;\n\t}\n\n\treturn min;\n}\n\nfunction getSupportLevel(stream) {\n\tconst level = supportsColor(stream, stream && stream.isTTY);\n\treturn translateLevel(level);\n}\n\nmodule.exports = {\n\tsupportsColor: getSupportLevel,\n\tstdout: translateLevel(supportsColor(true, tty.isatty(1))),\n\tstderr: translateLevel(supportsColor(true, tty.isatty(2)))\n};\n", "/**\n * Module dependencies.\n */\n\nconst tty = require('tty');\nconst util = require('util');\n\n/**\n * This is the Node.js implementation of `debug()`.\n */\n\nexports.init = init;\nexports.log = log;\nexports.formatArgs = formatArgs;\nexports.save = save;\nexports.load = load;\nexports.useColors = useColors;\nexports.destroy = util.deprecate(\n\t() => {},\n\t'Instance method `debug.destroy()` is deprecated and no longer does anything. It will be removed in the next major version of `debug`.'\n);\n\n/**\n * Colors.\n */\n\nexports.colors = [6, 2, 3, 4, 5, 1];\n\ntry {\n\t// Optional dependency (as in, doesn't need to be installed, NOT like optionalDependencies in package.json)\n\t// eslint-disable-next-line import/no-extraneous-dependencies\n\tconst supportsColor = require('supports-color');\n\n\tif (supportsColor && (supportsColor.stderr || supportsColor).level >= 2) {\n\t\texports.colors = [\n\t\t\t20,\n\t\t\t21,\n\t\t\t26,\n\t\t\t27,\n\t\t\t32,\n\t\t\t33,\n\t\t\t38,\n\t\t\t39,\n\t\t\t40,\n\t\t\t41,\n\t\t\t42,\n\t\t\t43,\n\t\t\t44,\n\t\t\t45,\n\t\t\t56,\n\t\t\t57,\n\t\t\t62,\n\t\t\t63,\n\t\t\t68,\n\t\t\t69,\n\t\t\t74,\n\t\t\t75,\n\t\t\t76,\n\t\t\t77,\n\t\t\t78,\n\t\t\t79,\n\t\t\t80,\n\t\t\t81,\n\t\t\t92,\n\t\t\t93,\n\t\t\t98,\n\t\t\t99,\n\t\t\t112,\n\t\t\t113,\n\t\t\t128,\n\t\t\t129,\n\t\t\t134,\n\t\t\t135,\n\t\t\t148,\n\t\t\t149,\n\t\t\t160,\n\t\t\t161,\n\t\t\t162,\n\t\t\t163,\n\t\t\t164,\n\t\t\t165,\n\t\t\t166,\n\t\t\t167,\n\t\t\t168,\n\t\t\t169,\n\t\t\t170,\n\t\t\t171,\n\t\t\t172,\n\t\t\t173,\n\t\t\t178,\n\t\t\t179,\n\t\t\t184,\n\t\t\t185,\n\t\t\t196,\n\t\t\t197,\n\t\t\t198,\n\t\t\t199,\n\t\t\t200,\n\t\t\t201,\n\t\t\t202,\n\t\t\t203,\n\t\t\t204,\n\t\t\t205,\n\t\t\t206,\n\t\t\t207,\n\t\t\t208,\n\t\t\t209,\n\t\t\t214,\n\t\t\t215,\n\t\t\t220,\n\t\t\t221\n\t\t];\n\t}\n} catch (error) {\n\t// Swallow - we only care if `supports-color` is available; it doesn't have to be.\n}\n\n/**\n * Build up the default `inspectOpts` object from the environment variables.\n *\n * $ DEBUG_COLORS=no DEBUG_DEPTH=10 DEBUG_SHOW_HIDDEN=enabled node script.js\n */\n\nexports.inspectOpts = Object.keys(process.env).filter(key => {\n\treturn /^debug_/i.test(key);\n}).reduce((obj, key) => {\n\t// Camel-case\n\tconst prop = key\n\t\t.substring(6)\n\t\t.toLowerCase()\n\t\t.replace(/_([a-z])/g, (_, k) => {\n\t\t\treturn k.toUpperCase();\n\t\t});\n\n\t// Coerce string value into JS value\n\tlet val = process.env[key];\n\tif (/^(yes|on|true|enabled)$/i.test(val)) {\n\t\tval = true;\n\t} else if (/^(no|off|false|disabled)$/i.test(val)) {\n\t\tval = false;\n\t} else if (val === 'null') {\n\t\tval = null;\n\t} else {\n\t\tval = Number(val);\n\t}\n\n\tobj[prop] = val;\n\treturn obj;\n}, {});\n\n/**\n * Is stdout a TTY? Colored output is enabled when `true`.\n */\n\nfunction useColors() {\n\treturn 'colors' in exports.inspectOpts ?\n\t\tBoolean(exports.inspectOpts.colors) :\n\t\ttty.isatty(process.stderr.fd);\n}\n\n/**\n * Adds ANSI color escape codes if enabled.\n *\n * @api public\n */\n\nfunction formatArgs(args) {\n\tconst {namespace: name, useColors} = this;\n\n\tif (useColors) {\n\t\tconst c = this.color;\n\t\tconst colorCode = '\\u001B[3' + (c < 8 ? c : '8;5;' + c);\n\t\tconst prefix = ` ${colorCode};1m${name} \\u001B[0m`;\n\n\t\targs[0] = prefix + args[0].split('\\n').join('\\n' + prefix);\n\t\targs.push(colorCode + 'm+' + module.exports.humanize(this.diff) + '\\u001B[0m');\n\t} else {\n\t\targs[0] = getDate() + name + ' ' + args[0];\n\t}\n}\n\nfunction getDate() {\n\tif (exports.inspectOpts.hideDate) {\n\t\treturn '';\n\t}\n\treturn new Date().toISOString() + ' ';\n}\n\n/**\n * Invokes `util.format()` with the specified arguments and writes to stderr.\n */\n\nfunction log(...args) {\n\treturn process.stderr.write(util.format(...args) + '\\n');\n}\n\n/**\n * Save `namespaces`.\n *\n * @param {String} namespaces\n * @api private\n */\nfunction save(namespaces) {\n\tif (namespaces) {\n\t\tprocess.env.DEBUG = namespaces;\n\t} else {\n\t\t// If you set a process.env field to null or undefined, it gets cast to the\n\t\t// string 'null' or 'undefined'. Just delete instead.\n\t\tdelete process.env.DEBUG;\n\t}\n}\n\n/**\n * Load `namespaces`.\n *\n * @return {String} returns the previously persisted debug modes\n * @api private\n */\n\nfunction load() {\n\treturn process.env.DEBUG;\n}\n\n/**\n * Init logic for `debug` instances.\n *\n * Create a new `inspectOpts` object in case `useColors` is set\n * differently for a particular `debug` instance.\n */\n\nfunction init(debug) {\n\tdebug.inspectOpts = {};\n\n\tconst keys = Object.keys(exports.inspectOpts);\n\tfor (let i = 0; i < keys.length; i++) {\n\t\tdebug.inspectOpts[keys[i]] = exports.inspectOpts[keys[i]];\n\t}\n}\n\nmodule.exports = require('./common')(exports);\n\nconst {formatters} = module.exports;\n\n/**\n * Map %o to `util.inspect()`, all on a single line.\n */\n\nformatters.o = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts)\n\t\t.split('\\n')\n\t\t.map(str => str.trim())\n\t\t.join(' ');\n};\n\n/**\n * Map %O to `util.inspect()`, allowing multiple lines if needed.\n */\n\nformatters.O = function (v) {\n\tthis.inspectOpts.colors = this.useColors;\n\treturn util.inspect(v, this.inspectOpts);\n};\n", "/**\n * Detect Electron renderer / nwjs process, which is node, but we should\n * treat as a browser.\n */\n\nif (typeof process === 'undefined' || process.type === 'renderer' || process.browser === true || process.__nwjs) {\n\tmodule.exports = require('./browser.js');\n} else {\n\tmodule.exports = require('./node.js');\n}\n", null, null, null, null, null, null, null, "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * @internal\n *\n * Holds the singleton instrumenter, to be shared across CJS and ESM imports.\n */\nexport const state = {\n instrumenterImplementation: undefined,\n};\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Holds the singleton operationRequestMap, to be shared across CJS and ESM imports.\n */\nexport const state = {\n operationRequestMap: new WeakMap(),\n};\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { EOL } from \"os\";\nimport util from \"util\";\n\nexport function log(message: unknown, ...args: any[]): void {\n process.stderr.write(`${util.format(message, ...args)}${EOL}`);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { log } from \"./log\";\n\n/**\n * A simple mechanism for enabling logging.\n * Intended to mimic the publicly available `debug` package.\n */\nexport interface Debug {\n /**\n * Creates a new logger with the given namespace.\n */\n (namespace: string): Debugger;\n /**\n * The default log method (defaults to console)\n */\n log: (...args: any[]) => void;\n /**\n * Enables a particular set of namespaces.\n * To enable multiple separate them with commas, e.g. \"info,debug\".\n * Supports wildcards, e.g. \"azure:*\"\n * Supports skip syntax, e.g. \"azure:*,-azure:storage:*\" will enable\n * everything under azure except for things under azure:storage.\n */\n enable: (namespaces: string) => void;\n /**\n * Checks if a particular namespace is enabled.\n */\n enabled: (namespace: string) => boolean;\n /**\n * Disables all logging, returns what was previously enabled.\n */\n disable: () => string;\n}\n\n/**\n * A log function that can be dynamically enabled and redirected.\n */\nexport interface Debugger {\n /**\n * Logs the given arguments to the `log` method.\n */\n (...args: any[]): void;\n /**\n * True if this logger is active and logging.\n */\n enabled: boolean;\n /**\n * Used to cleanup/remove this logger.\n */\n destroy: () => boolean;\n /**\n * The current log method. Can be overridden to redirect output.\n */\n log: (...args: any[]) => void;\n /**\n * The namespace of this logger.\n */\n namespace: string;\n /**\n * Extends this logger with a child namespace.\n * Namespaces are separated with a ':' character.\n */\n extend: (namespace: string) => Debugger;\n}\n\nconst debugEnvVariable =\n (typeof process !== \"undefined\" && process.env && process.env.DEBUG) || undefined;\n\nlet enabledString: string | undefined;\nlet enabledNamespaces: RegExp[] = [];\nlet skippedNamespaces: RegExp[] = [];\nconst debuggers: Debugger[] = [];\n\nif (debugEnvVariable) {\n enable(debugEnvVariable);\n}\n\nconst debugObj: Debug = Object.assign(\n (namespace: string): Debugger => {\n return createDebugger(namespace);\n },\n {\n enable,\n enabled,\n disable,\n log,\n }\n);\n\nfunction enable(namespaces: string): void {\n enabledString = namespaces;\n enabledNamespaces = [];\n skippedNamespaces = [];\n const wildcard = /\\*/g;\n const namespaceList = namespaces.split(\",\").map((ns) => ns.trim().replace(wildcard, \".*?\"));\n for (const ns of namespaceList) {\n if (ns.startsWith(\"-\")) {\n skippedNamespaces.push(new RegExp(`^${ns.substr(1)}$`));\n } else {\n enabledNamespaces.push(new RegExp(`^${ns}$`));\n }\n }\n for (const instance of debuggers) {\n instance.enabled = enabled(instance.namespace);\n }\n}\n\nfunction enabled(namespace: string): boolean {\n if (namespace.endsWith(\"*\")) {\n return true;\n }\n\n for (const skipped of skippedNamespaces) {\n if (skipped.test(namespace)) {\n return false;\n }\n }\n for (const enabledNamespace of enabledNamespaces) {\n if (enabledNamespace.test(namespace)) {\n return true;\n }\n }\n return false;\n}\n\nfunction disable(): string {\n const result = enabledString || \"\";\n enable(\"\");\n return result;\n}\n\nfunction createDebugger(namespace: string): Debugger {\n const newDebugger: Debugger = Object.assign(debug, {\n enabled: enabled(namespace),\n destroy,\n log: debugObj.log,\n namespace,\n extend,\n });\n\n function debug(...args: any[]): void {\n if (!newDebugger.enabled) {\n return;\n }\n if (args.length > 0) {\n args[0] = `${namespace} ${args[0]}`;\n }\n newDebugger.log(...args);\n }\n\n debuggers.push(newDebugger);\n\n return newDebugger;\n}\n\nfunction destroy(this: Debugger): boolean {\n const index = debuggers.indexOf(this);\n if (index >= 0) {\n debuggers.splice(index, 1);\n return true;\n }\n return false;\n}\n\nfunction extend(this: Debugger, namespace: string): Debugger {\n const newDebugger = createDebugger(`${this.namespace}:${namespace}`);\n newDebugger.log = this.log;\n return newDebugger;\n}\n\nexport default debugObj;\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport debug, { Debugger } from \"./debug\";\nexport { Debugger } from \"./debug\";\n\nconst registeredLoggers = new Set();\nconst logLevelFromEnv =\n (typeof process !== \"undefined\" && process.env && process.env.AZURE_LOG_LEVEL) || undefined;\n\nlet azureLogLevel: AzureLogLevel | undefined;\n\n/**\n * The AzureLogger provides a mechanism for overriding where logs are output to.\n * By default, logs are sent to stderr.\n * Override the `log` method to redirect logs to another location.\n */\nexport const AzureLogger: AzureClientLogger = debug(\"azure\");\nAzureLogger.log = (...args) => {\n debug.log(...args);\n};\n\n/**\n * The log levels supported by the logger.\n * The log levels in order of most verbose to least verbose are:\n * - verbose\n * - info\n * - warning\n * - error\n */\nexport type AzureLogLevel = \"verbose\" | \"info\" | \"warning\" | \"error\";\nconst AZURE_LOG_LEVELS = [\"verbose\", \"info\", \"warning\", \"error\"];\n\ntype AzureDebugger = Debugger & { level: AzureLogLevel };\n\n/**\n * An AzureClientLogger is a function that can log to an appropriate severity level.\n */\nexport type AzureClientLogger = Debugger;\n\nif (logLevelFromEnv) {\n // avoid calling setLogLevel because we don't want a mis-set environment variable to crash\n if (isAzureLogLevel(logLevelFromEnv)) {\n setLogLevel(logLevelFromEnv);\n } else {\n console.error(\n `AZURE_LOG_LEVEL set to unknown log level '${logLevelFromEnv}'; logging is not enabled. Acceptable values: ${AZURE_LOG_LEVELS.join(\n \", \"\n )}.`\n );\n }\n}\n\n/**\n * Immediately enables logging at the specified log level. If no level is specified, logging is disabled.\n * @param level - The log level to enable for logging.\n * Options from most verbose to least verbose are:\n * - verbose\n * - info\n * - warning\n * - error\n */\nexport function setLogLevel(level?: AzureLogLevel): void {\n if (level && !isAzureLogLevel(level)) {\n throw new Error(\n `Unknown log level '${level}'. Acceptable values: ${AZURE_LOG_LEVELS.join(\",\")}`\n );\n }\n azureLogLevel = level;\n\n const enabledNamespaces = [];\n for (const logger of registeredLoggers) {\n if (shouldEnable(logger)) {\n enabledNamespaces.push(logger.namespace);\n }\n }\n\n debug.enable(enabledNamespaces.join(\",\"));\n}\n\n/**\n * Retrieves the currently specified log level.\n */\nexport function getLogLevel(): AzureLogLevel | undefined {\n return azureLogLevel;\n}\n\nconst levelMap = {\n verbose: 400,\n info: 300,\n warning: 200,\n error: 100,\n};\n\n/**\n * Defines the methods available on the SDK-facing logger.\n */\n// eslint-disable-next-line @typescript-eslint/no-redeclare\nexport interface AzureLogger {\n /**\n * Used for failures the program is unlikely to recover from,\n * such as Out of Memory.\n */\n error: Debugger;\n /**\n * Used when a function fails to perform its intended task.\n * Usually this means the function will throw an exception.\n * Not used for self-healing events (e.g. automatic retry)\n */\n warning: Debugger;\n /**\n * Used when a function operates normally.\n */\n info: Debugger;\n /**\n * Used for detailed troubleshooting scenarios. This is\n * intended for use by developers / system administrators\n * for diagnosing specific failures.\n */\n verbose: Debugger;\n}\n\n/**\n * Creates a logger for use by the Azure SDKs that inherits from `AzureLogger`.\n * @param namespace - The name of the SDK package.\n * @hidden\n */\nexport function createClientLogger(namespace: string): AzureLogger {\n const clientRootLogger: AzureClientLogger = AzureLogger.extend(namespace);\n patchLogMethod(AzureLogger, clientRootLogger);\n return {\n error: createLogger(clientRootLogger, \"error\"),\n warning: createLogger(clientRootLogger, \"warning\"),\n info: createLogger(clientRootLogger, \"info\"),\n verbose: createLogger(clientRootLogger, \"verbose\"),\n };\n}\n\nfunction patchLogMethod(parent: AzureClientLogger, child: AzureClientLogger | AzureDebugger): void {\n child.log = (...args) => {\n parent.log(...args);\n };\n}\n\nfunction createLogger(parent: AzureClientLogger, level: AzureLogLevel): AzureDebugger {\n const logger: AzureDebugger = Object.assign(parent.extend(level), {\n level,\n });\n\n patchLogMethod(parent, logger);\n\n if (shouldEnable(logger)) {\n const enabledNamespaces = debug.disable();\n debug.enable(enabledNamespaces + \",\" + logger.namespace);\n }\n\n registeredLoggers.add(logger);\n\n return logger;\n}\n\nfunction shouldEnable(logger: AzureDebugger): boolean {\n return Boolean(azureLogLevel && levelMap[logger.level] <= levelMap[azureLogLevel]);\n}\n\nfunction isAzureLogLevel(logLevel: string): logLevel is AzureLogLevel {\n return AZURE_LOG_LEVELS.includes(logLevel as any);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n// eslint-disable-next-line @typescript-eslint/triple-slash-reference\n/// \n\ntype AbortEventListener = (this: AbortSignalLike, ev?: any) => any;\n\nconst listenersMap = new WeakMap();\nconst abortedMap = new WeakMap();\n\n/**\n * Allows the request to be aborted upon firing of the \"abort\" event.\n * Compatible with the browser built-in AbortSignal and common polyfills.\n */\nexport interface AbortSignalLike {\n /**\n * Indicates if the signal has already been aborted.\n */\n readonly aborted: boolean;\n /**\n * Add new \"abort\" event listener, only support \"abort\" event.\n */\n addEventListener(\n type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any,\n options?: any\n ): void;\n /**\n * Remove \"abort\" event listener, only support \"abort\" event.\n */\n removeEventListener(\n type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any,\n options?: any\n ): void;\n}\n\n/**\n * An aborter instance implements AbortSignal interface, can abort HTTP requests.\n *\n * - Call AbortSignal.none to create a new AbortSignal instance that cannot be cancelled.\n * Use `AbortSignal.none` when you are required to pass a cancellation token but the operation\n * cannot or will not ever be cancelled.\n *\n * @example\n * Abort without timeout\n * ```ts\n * await doAsyncWork(AbortSignal.none);\n * ```\n */\nexport class AbortSignal implements AbortSignalLike {\n constructor() {\n listenersMap.set(this, []);\n abortedMap.set(this, false);\n }\n\n /**\n * Status of whether aborted or not.\n *\n * @readonly\n */\n public get aborted(): boolean {\n if (!abortedMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n return abortedMap.get(this)!;\n }\n\n /**\n * Creates a new AbortSignal instance that will never be aborted.\n *\n * @readonly\n */\n public static get none(): AbortSignal {\n return new AbortSignal();\n }\n\n /**\n * onabort event listener.\n */\n public onabort: ((ev?: Event) => any) | null = null;\n\n /**\n * Added new \"abort\" event listener, only support \"abort\" event.\n *\n * @param _type - Only support \"abort\" event\n * @param listener - The listener to be added\n */\n public addEventListener(\n // tslint:disable-next-line:variable-name\n _type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any\n ): void {\n if (!listenersMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n const listeners = listenersMap.get(this)!;\n listeners.push(listener);\n }\n\n /**\n * Remove \"abort\" event listener, only support \"abort\" event.\n *\n * @param _type - Only support \"abort\" event\n * @param listener - The listener to be removed\n */\n public removeEventListener(\n // tslint:disable-next-line:variable-name\n _type: \"abort\",\n listener: (this: AbortSignalLike, ev: any) => any\n ): void {\n if (!listenersMap.has(this)) {\n throw new TypeError(\"Expected `this` to be an instance of AbortSignal.\");\n }\n\n const listeners = listenersMap.get(this)!;\n\n const index = listeners.indexOf(listener);\n if (index > -1) {\n listeners.splice(index, 1);\n }\n }\n\n /**\n * Dispatches a synthetic event to the AbortSignal.\n */\n dispatchEvent(_event: Event): boolean {\n throw new Error(\n \"This is a stub dispatchEvent implementation that should not be used. It only exists for type-checking purposes.\"\n );\n }\n}\n\n/**\n * Helper to trigger an abort event immediately, the onabort and all abort event listeners will be triggered.\n * Will try to trigger abort event for all linked AbortSignal nodes.\n *\n * - If there is a timeout, the timer will be cancelled.\n * - If aborted is true, nothing will happen.\n *\n * @internal\n */\n// eslint-disable-next-line @azure/azure-sdk/ts-use-interface-parameters\nexport function abortSignal(signal: AbortSignal): void {\n if (signal.aborted) {\n return;\n }\n\n if (signal.onabort) {\n signal.onabort.call(signal);\n }\n\n const listeners = listenersMap.get(signal)!;\n if (listeners) {\n // Create a copy of listeners so mutations to the array\n // (e.g. via removeListener calls) don't affect the listeners\n // we invoke.\n listeners.slice().forEach((listener) => {\n listener.call(signal, { type: \"abort\" });\n });\n }\n\n abortedMap.set(signal, true);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignal, AbortSignalLike, abortSignal } from \"./AbortSignal\";\n\n/**\n * This error is thrown when an asynchronous operation has been aborted.\n * Check for this error by testing the `name` that the name property of the\n * error matches `\"AbortError\"`.\n *\n * @example\n * ```ts\n * const controller = new AbortController();\n * controller.abort();\n * try {\n * doAsyncWork(controller.signal)\n * } catch (e) {\n * if (e.name === 'AbortError') {\n * // handle abort error here.\n * }\n * }\n * ```\n */\nexport class AbortError extends Error {\n constructor(message?: string) {\n super(message);\n this.name = \"AbortError\";\n }\n}\n\n/**\n * An AbortController provides an AbortSignal and the associated controls to signal\n * that an asynchronous operation should be aborted.\n *\n * @example\n * Abort an operation when another event fires\n * ```ts\n * const controller = new AbortController();\n * const signal = controller.signal;\n * doAsyncWork(signal);\n * button.addEventListener('click', () => controller.abort());\n * ```\n *\n * @example\n * Share aborter cross multiple operations in 30s\n * ```ts\n * // Upload the same data to 2 different data centers at the same time,\n * // abort another when any of them is finished\n * const controller = AbortController.withTimeout(30 * 1000);\n * doAsyncWork(controller.signal).then(controller.abort);\n * doAsyncWork(controller.signal).then(controller.abort);\n *```\n *\n * @example\n * Cascaded aborting\n * ```ts\n * // All operations can't take more than 30 seconds\n * const aborter = Aborter.timeout(30 * 1000);\n *\n * // Following 2 operations can't take more than 25 seconds\n * await doAsyncWork(aborter.withTimeout(25 * 1000));\n * await doAsyncWork(aborter.withTimeout(25 * 1000));\n * ```\n */\nexport class AbortController {\n private _signal: AbortSignal;\n\n /**\n * @param parentSignals - The AbortSignals that will signal aborted on the AbortSignal associated with this controller.\n */\n constructor(parentSignals?: AbortSignalLike[]);\n /**\n * @param parentSignals - The AbortSignals that will signal aborted on the AbortSignal associated with this controller.\n */\n constructor(...parentSignals: AbortSignalLike[]);\n // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n constructor(parentSignals?: any) {\n this._signal = new AbortSignal();\n\n if (!parentSignals) {\n return;\n }\n // coerce parentSignals into an array\n if (!Array.isArray(parentSignals)) {\n // eslint-disable-next-line prefer-rest-params\n parentSignals = arguments;\n }\n for (const parentSignal of parentSignals) {\n // if the parent signal has already had abort() called,\n // then call abort on this signal as well.\n if (parentSignal.aborted) {\n this.abort();\n } else {\n // when the parent signal aborts, this signal should as well.\n parentSignal.addEventListener(\"abort\", () => {\n this.abort();\n });\n }\n }\n }\n\n /**\n * The AbortSignal associated with this controller that will signal aborted\n * when the abort method is called on this controller.\n *\n * @readonly\n */\n public get signal(): AbortSignal {\n return this._signal;\n }\n\n /**\n * Signal that any operations passed this controller's associated abort signal\n * to cancel any remaining work and throw an `AbortError`.\n */\n abort(): void {\n abortSignal(this._signal);\n }\n\n /**\n * Creates a new AbortSignal instance that will abort after the provided ms.\n * @param ms - Elapsed time in milliseconds to trigger an abort.\n */\n public static timeout(ms: number): AbortSignal {\n const signal = new AbortSignal();\n const timer = setTimeout(abortSignal, ms, signal);\n // Prevent the active Timer from keeping the Node.js event loop active.\n if (typeof timer.unref === \"function\") {\n timer.unref();\n }\n return signal;\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * A constant that indicates whether the environment the code is running is Node.JS.\n */\nexport const isNode =\n typeof process !== \"undefined\" && Boolean(process.version) && Boolean(process.versions?.node);\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortError, AbortSignalLike } from \"@azure/abort-controller\";\n\n/**\n * Options for the createAbortablePromise function.\n */\nexport interface CreateAbortablePromiseOptions {\n /** A function to be called if the promise was aborted */\n cleanupBeforeAbort?: () => void;\n /** An abort signal */\n abortSignal?: AbortSignalLike;\n /** An abort error message */\n abortErrorMsg?: string;\n}\n\n/**\n * Creates an abortable promise.\n * @param buildPromise - A function that takes the resolve and reject functions as parameters.\n * @param options - The options for the abortable promise.\n * @returns A promise that can be aborted.\n */\nexport function createAbortablePromise(\n buildPromise: (\n resolve: (value: T | PromiseLike) => void,\n reject: (reason?: any) => void\n ) => void,\n options?: CreateAbortablePromiseOptions\n): Promise {\n const { cleanupBeforeAbort, abortSignal, abortErrorMsg } = options ?? {};\n return new Promise((resolve, reject) => {\n function rejectOnAbort(): void {\n reject(new AbortError(abortErrorMsg ?? \"The operation was aborted.\"));\n }\n function removeListeners(): void {\n abortSignal?.removeEventListener(\"abort\", onAbort);\n }\n function onAbort(): void {\n cleanupBeforeAbort?.();\n removeListeners();\n rejectOnAbort();\n }\n if (abortSignal?.aborted) {\n return rejectOnAbort();\n }\n try {\n buildPromise(\n (x) => {\n removeListeners();\n resolve(x);\n },\n (x) => {\n removeListeners();\n reject(x);\n }\n );\n } catch (err) {\n reject(err);\n }\n abortSignal?.addEventListener(\"abort\", onAbort);\n });\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { createAbortablePromise } from \"./createAbortablePromise\";\n\nconst StandardAbortMessage = \"The delay was aborted.\";\n\n/**\n * Options for support abort functionality for the delay method\n */\nexport interface DelayOptions {\n /**\n * The abortSignal associated with containing operation.\n */\n abortSignal?: AbortSignalLike;\n /**\n * The abort error message associated with containing operation.\n */\n abortErrorMsg?: string;\n}\n\n/**\n * A wrapper for setTimeout that resolves a promise after timeInMs milliseconds.\n * @param timeInMs - The number of milliseconds to be delayed.\n * @param options - The options for delay - currently abort options\n * @returns Promise that is resolved after timeInMs\n */\nexport function delay(timeInMs: number, options?: DelayOptions): Promise {\n let token: ReturnType;\n const { abortSignal, abortErrorMsg } = options ?? {};\n return createAbortablePromise(\n (resolve) => {\n token = setTimeout(resolve, timeInMs);\n },\n {\n cleanupBeforeAbort: () => clearTimeout(token),\n abortSignal,\n abortErrorMsg: abortErrorMsg ?? StandardAbortMessage,\n }\n );\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Returns a random integer value between a lower and upper bound,\n * inclusive of both bounds.\n * Note that this uses Math.random and isn't secure. If you need to use\n * this for any kind of security purpose, find a better source of random.\n * @param min - The smallest integer value allowed.\n * @param max - The largest integer value allowed.\n */\nexport function getRandomIntegerInclusive(min: number, max: number): number {\n // Make sure inputs are integers.\n min = Math.ceil(min);\n max = Math.floor(max);\n // Pick a random offset from zero to the size of the range.\n // Since Math.random() can never return 1, we have to make the range one larger\n // in order to be inclusive of the maximum value after we take the floor.\n const offset = Math.floor(Math.random() * (max - min + 1));\n return offset + min;\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * A generic shape for a plain JS object.\n */\nexport type UnknownObject = { [s: string]: unknown };\n\n/**\n * Helper to determine when an input is a generic JS object.\n * @returns true when input is an object type that is not null, Array, RegExp, or Date.\n */\nexport function isObject(input: unknown): input is UnknownObject {\n return (\n typeof input === \"object\" &&\n input !== null &&\n !Array.isArray(input) &&\n !(input instanceof RegExp) &&\n !(input instanceof Date)\n );\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { isObject } from \"./object\";\n\n/**\n * Typeguard for an error object shape (has name and message)\n * @param e - Something caught by a catch clause.\n */\nexport function isError(e: unknown): e is Error {\n if (isObject(e)) {\n const hasName = typeof e.name === \"string\";\n const hasMessage = typeof e.message === \"string\";\n return hasName && hasMessage;\n }\n return false;\n}\n\n/**\n * Given what is thought to be an error object, return the message if possible.\n * If the message is missing, returns a stringified version of the input.\n * @param e - Something thrown from a try block\n * @returns The error message or a string of the input\n */\nexport function getErrorMessage(e: unknown): string {\n if (isError(e)) {\n return e.message;\n } else {\n let stringified: string;\n try {\n if (typeof e === \"object\" && e) {\n stringified = JSON.stringify(e);\n } else {\n stringified = String(e);\n }\n } catch (err: any) {\n stringified = \"[unable to stringify input]\";\n }\n return `Unknown error ${stringified}`;\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createHash, createHmac } from \"crypto\";\n\n/**\n * Generates a SHA-256 HMAC signature.\n * @param key - The HMAC key represented as a base64 string, used to generate the cryptographic HMAC hash.\n * @param stringToSign - The data to be signed.\n * @param encoding - The textual encoding to use for the returned HMAC digest.\n */\nexport async function computeSha256Hmac(\n key: string,\n stringToSign: string,\n encoding: \"base64\" | \"hex\"\n): Promise {\n const decodedKey = Buffer.from(key, \"base64\");\n\n return createHmac(\"sha256\", decodedKey).update(stringToSign).digest(encoding);\n}\n\n/**\n * Generates a SHA-256 hash.\n * @param content - The data to be included in the hash.\n * @param encoding - The textual encoding to use for the returned hash.\n */\nexport async function computeSha256Hash(\n content: string,\n encoding: \"base64\" | \"hex\"\n): Promise {\n return createHash(\"sha256\").update(content).digest(encoding);\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * Helper TypeGuard that checks if something is defined or not.\n * @param thing - Anything\n */\nexport function isDefined(thing: T | undefined | null): thing is T {\n return typeof thing !== \"undefined\" && thing !== null;\n}\n\n/**\n * Helper TypeGuard that checks if the input is an object with the specified properties.\n * @param thing - Anything.\n * @param properties - The name of the properties that should appear in the object.\n */\nexport function isObjectWithProperties(\n thing: Thing,\n properties: PropertyName[]\n): thing is Thing & Record {\n if (!isDefined(thing) || typeof thing !== \"object\") {\n return false;\n }\n\n for (const property of properties) {\n if (!objectHasProperty(thing, property)) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Helper TypeGuard that checks if the input is an object with the specified property.\n * @param thing - Any object.\n * @param property - The name of the property that should appear in the object.\n */\nexport function objectHasProperty(\n thing: Thing,\n property: PropertyName\n): thing is Thing & Record {\n return (\n isDefined(thing) && typeof thing === \"object\" && property in (thing as Record)\n );\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/*\n * NOTE: When moving this file, please update \"react-native\" section in package.json.\n */\n\n/**\n * Generated Universally Unique Identifier\n *\n * @returns RFC4122 v4 UUID.\n */\nexport function generateUUID(): string {\n let uuid = \"\";\n for (let i = 0; i < 32; i++) {\n // Generate a random number between 0 and 15\n const randomNumber = Math.floor(Math.random() * 16);\n // Set the UUID version to 4 in the 13th position\n if (i === 12) {\n uuid += \"4\";\n } else if (i === 16) {\n // Set the UUID variant to \"10\" in the 17th position\n uuid += (randomNumber & 0x3) | 0x8;\n } else {\n // Add a random hexadecimal digit to the UUID string\n uuid += randomNumber.toString(16);\n }\n // Add hyphens to the UUID string at the appropriate positions\n if (i === 7 || i === 11 || i === 15 || i === 19) {\n uuid += \"-\";\n }\n }\n return uuid;\n}\n\n/**\n * Generated Universally Unique Identifier\n *\n * @returns RFC4122 v4 UUID.\n */\nexport function randomUUID(): string {\n return generateUUID();\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { randomUUID as v4RandomUUID } from \"crypto\";\nimport { generateUUID } from \"./uuidUtils.native\";\n\ninterface Crypto {\n randomUUID(): string;\n}\n\ndeclare const globalThis: {\n crypto: Crypto;\n};\n\n// NOTE: This is a workaround until we can use `globalThis.crypto.randomUUID` in Node.js 19+.\nlet uuidFunction =\n typeof globalThis?.crypto?.randomUUID === \"function\"\n ? globalThis.crypto.randomUUID.bind(globalThis.crypto)\n : v4RandomUUID;\n\n// Not defined in earlier versions of Node.js 14\nif (!uuidFunction) {\n uuidFunction = generateUUID;\n}\n\n/**\n * Generated Universally Unique Identifier\n *\n * @returns RFC4122 v4 UUID.\n */\nexport function randomUUID(): string {\n return uuidFunction();\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * The `@azure/logger` configuration for this package.\n * @internal\n */\nexport const logger = createClientLogger(\"core-lro\");\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\n/**\n * The default time interval to wait before sending the next polling request.\n */\nexport const POLL_INTERVAL_IN_MS = 2000;\n/**\n * The closed set of terminal states.\n */\nexport const terminalStates = [\"succeeded\", \"canceled\", \"failed\"];\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n LroError,\n InnerError,\n Operation,\n OperationStatus,\n RestorableOperationState,\n StateProxy,\n} from \"./models\";\nimport { logger } from \"../logger\";\nimport { terminalStates } from \"./constants\";\n\n/**\n * Deserializes the state\n */\nexport function deserializeState(\n serializedState: string\n): RestorableOperationState {\n try {\n return JSON.parse(serializedState).state;\n } catch (e) {\n throw new Error(`Unable to deserialize input state: ${serializedState}`);\n }\n}\n\nfunction setStateError(inputs: {\n state: TState;\n stateProxy: StateProxy;\n isOperationError: (error: Error) => boolean;\n}): (error: Error) => never {\n const { state, stateProxy, isOperationError } = inputs;\n return (error: Error) => {\n if (isOperationError(error)) {\n stateProxy.setError(state, error);\n stateProxy.setFailed(state);\n }\n throw error;\n };\n}\n\nfunction appendReadableErrorMessage(currentMessage: string, innerMessage: string): string {\n let message = currentMessage;\n if (message.slice(-1) !== \".\") {\n message = message + \".\";\n }\n return message + \" \" + innerMessage;\n}\n\nfunction simplifyError(err: LroError): {\n code: string;\n message: string;\n} {\n let message = err.message;\n let code = err.code;\n let curErr = err as InnerError;\n while (curErr.innererror) {\n curErr = curErr.innererror;\n code = curErr.code;\n message = appendReadableErrorMessage(message, curErr.message);\n }\n return {\n code,\n message,\n };\n}\n\nfunction processOperationStatus(result: {\n status: OperationStatus;\n response: TResponse;\n state: RestorableOperationState;\n stateProxy: StateProxy;\n processResult?: (result: TResponse, state: TState) => TResult;\n getError?: (response: TResponse) => LroError | undefined;\n isDone?: (lastResponse: TResponse, state: TState) => boolean;\n setErrorAsResult: boolean;\n}): void {\n const { state, stateProxy, status, isDone, processResult, getError, response, setErrorAsResult } =\n result;\n switch (status) {\n case \"succeeded\": {\n stateProxy.setSucceeded(state);\n break;\n }\n case \"failed\": {\n const err = getError?.(response);\n let postfix = \"\";\n if (err) {\n const { code, message } = simplifyError(err);\n postfix = `. ${code}. ${message}`;\n }\n const errStr = `The long-running operation has failed${postfix}`;\n stateProxy.setError(state, new Error(errStr));\n stateProxy.setFailed(state);\n logger.warning(errStr);\n break;\n }\n case \"canceled\": {\n stateProxy.setCanceled(state);\n break;\n }\n }\n if (\n isDone?.(response, state) ||\n (isDone === undefined &&\n [\"succeeded\", \"canceled\"].concat(setErrorAsResult ? [] : [\"failed\"]).includes(status))\n ) {\n stateProxy.setResult(\n state,\n buildResult({\n response,\n state,\n processResult,\n })\n );\n }\n}\n\nfunction buildResult(inputs: {\n response: TResponse;\n state: TState;\n processResult?: (result: TResponse, state: TState) => TResult;\n}): TResult {\n const { processResult, response, state } = inputs;\n return processResult ? processResult(response, state) : (response as unknown as TResult);\n}\n\n/**\n * Initiates the long-running operation.\n */\nexport async function initOperation(inputs: {\n init: Operation[\"init\"];\n stateProxy: StateProxy;\n getOperationStatus: (inputs: {\n response: TResponse;\n state: RestorableOperationState;\n operationLocation?: string;\n }) => OperationStatus;\n processResult?: (result: TResponse, state: TState) => TResult;\n withOperationLocation?: (operationLocation: string, isUpdated: boolean) => void;\n setErrorAsResult: boolean;\n}): Promise> {\n const {\n init,\n stateProxy,\n processResult,\n getOperationStatus,\n withOperationLocation,\n setErrorAsResult,\n } = inputs;\n const { operationLocation, resourceLocation, metadata, response } = await init();\n if (operationLocation) withOperationLocation?.(operationLocation, false);\n const config = {\n metadata,\n operationLocation,\n resourceLocation,\n };\n logger.verbose(`LRO: Operation description:`, config);\n const state = stateProxy.initState(config);\n const status = getOperationStatus({ response, state, operationLocation });\n processOperationStatus({ state, status, stateProxy, response, setErrorAsResult, processResult });\n return state;\n}\n\nasync function pollOperationHelper(inputs: {\n poll: Operation[\"poll\"];\n stateProxy: StateProxy;\n state: RestorableOperationState;\n operationLocation: string;\n getOperationStatus: (\n response: TResponse,\n state: RestorableOperationState\n ) => OperationStatus;\n getResourceLocation: (\n response: TResponse,\n state: RestorableOperationState\n ) => string | undefined;\n isOperationError: (error: Error) => boolean;\n options?: TOptions;\n}): Promise<{\n status: OperationStatus;\n response: TResponse;\n}> {\n const {\n poll,\n state,\n stateProxy,\n operationLocation,\n getOperationStatus,\n getResourceLocation,\n isOperationError,\n options,\n } = inputs;\n const response = await poll(operationLocation, options).catch(\n setStateError({\n state,\n stateProxy,\n isOperationError,\n })\n );\n const status = getOperationStatus(response, state);\n logger.verbose(\n `LRO: Status:\\n\\tPolling from: ${\n state.config.operationLocation\n }\\n\\tOperation status: ${status}\\n\\tPolling status: ${\n terminalStates.includes(status) ? \"Stopped\" : \"Running\"\n }`\n );\n if (status === \"succeeded\") {\n const resourceLocation = getResourceLocation(response, state);\n if (resourceLocation !== undefined) {\n return {\n response: await poll(resourceLocation).catch(\n setStateError({ state, stateProxy, isOperationError })\n ),\n status,\n };\n }\n }\n return { response, status };\n}\n\n/** Polls the long-running operation. */\nexport async function pollOperation(inputs: {\n poll: Operation[\"poll\"];\n stateProxy: StateProxy;\n state: RestorableOperationState;\n getOperationStatus: (\n response: TResponse,\n state: RestorableOperationState\n ) => OperationStatus;\n getResourceLocation: (\n response: TResponse,\n state: RestorableOperationState\n ) => string | undefined;\n isOperationError: (error: Error) => boolean;\n getPollingInterval?: (response: TResponse) => number | undefined;\n setDelay: (intervalInMs: number) => void;\n getOperationLocation?: (\n response: TResponse,\n state: RestorableOperationState\n ) => string | undefined;\n withOperationLocation?: (operationLocation: string, isUpdated: boolean) => void;\n processResult?: (result: TResponse, state: TState) => TResult;\n getError?: (response: TResponse) => LroError | undefined;\n updateState?: (state: TState, lastResponse: TResponse) => void;\n isDone?: (lastResponse: TResponse, state: TState) => boolean;\n setErrorAsResult: boolean;\n options?: TOptions;\n}): Promise {\n const {\n poll,\n state,\n stateProxy,\n options,\n getOperationStatus,\n getResourceLocation,\n getOperationLocation,\n isOperationError,\n withOperationLocation,\n getPollingInterval,\n processResult,\n getError,\n updateState,\n setDelay,\n isDone,\n setErrorAsResult,\n } = inputs;\n const { operationLocation } = state.config;\n if (operationLocation !== undefined) {\n const { response, status } = await pollOperationHelper({\n poll,\n getOperationStatus,\n state,\n stateProxy,\n operationLocation,\n getResourceLocation,\n isOperationError,\n options,\n });\n processOperationStatus({\n status,\n response,\n state,\n stateProxy,\n isDone,\n processResult,\n getError,\n setErrorAsResult,\n });\n\n if (!terminalStates.includes(status)) {\n const intervalInMs = getPollingInterval?.(response);\n if (intervalInMs) setDelay(intervalInMs);\n const location = getOperationLocation?.(response, state);\n if (location !== undefined) {\n const isUpdated = operationLocation !== location;\n state.config.operationLocation = location;\n withOperationLocation?.(location, isUpdated);\n } else withOperationLocation?.(operationLocation, false);\n }\n updateState?.(state, response);\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n HttpOperationMode,\n LongRunningOperation,\n LroResourceLocationConfig,\n LroResponse,\n RawResponse,\n ResponseBody,\n} from \"./models\";\nimport {\n LroError,\n OperationConfig,\n OperationStatus,\n RestorableOperationState,\n StateProxy,\n} from \"../poller/models\";\nimport { initOperation, pollOperation } from \"../poller/operation\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { logger } from \"../logger\";\n\nfunction getOperationLocationPollingUrl(inputs: {\n operationLocation?: string;\n azureAsyncOperation?: string;\n}): string | undefined {\n const { azureAsyncOperation, operationLocation } = inputs;\n return operationLocation ?? azureAsyncOperation;\n}\n\nfunction getLocationHeader(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"location\"];\n}\n\nfunction getOperationLocationHeader(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"operation-location\"];\n}\n\nfunction getAzureAsyncOperationHeader(rawResponse: RawResponse): string | undefined {\n return rawResponse.headers[\"azure-asyncoperation\"];\n}\n\nfunction findResourceLocation(inputs: {\n requestMethod?: string;\n location?: string;\n requestPath?: string;\n resourceLocationConfig?: LroResourceLocationConfig;\n}): string | undefined {\n const { location, requestMethod, requestPath, resourceLocationConfig } = inputs;\n switch (requestMethod) {\n case \"PUT\": {\n return requestPath;\n }\n case \"DELETE\": {\n return undefined;\n }\n default: {\n switch (resourceLocationConfig) {\n case \"azure-async-operation\": {\n return undefined;\n }\n case \"original-uri\": {\n return requestPath;\n }\n case \"location\":\n default: {\n return location;\n }\n }\n }\n }\n}\n\nexport function inferLroMode(inputs: {\n rawResponse: RawResponse;\n requestPath?: string;\n requestMethod?: string;\n resourceLocationConfig?: LroResourceLocationConfig;\n}): (OperationConfig & { mode: HttpOperationMode }) | undefined {\n const { rawResponse, requestMethod, requestPath, resourceLocationConfig } = inputs;\n const operationLocation = getOperationLocationHeader(rawResponse);\n const azureAsyncOperation = getAzureAsyncOperationHeader(rawResponse);\n const pollingUrl = getOperationLocationPollingUrl({ operationLocation, azureAsyncOperation });\n const location = getLocationHeader(rawResponse);\n const normalizedRequestMethod = requestMethod?.toLocaleUpperCase();\n if (pollingUrl !== undefined) {\n return {\n mode: \"OperationLocation\",\n operationLocation: pollingUrl,\n resourceLocation: findResourceLocation({\n requestMethod: normalizedRequestMethod,\n location,\n requestPath,\n resourceLocationConfig,\n }),\n };\n } else if (location !== undefined) {\n return {\n mode: \"ResourceLocation\",\n operationLocation: location,\n };\n } else if (normalizedRequestMethod === \"PUT\" && requestPath) {\n return {\n mode: \"Body\",\n operationLocation: requestPath,\n };\n } else {\n return undefined;\n }\n}\n\nfunction transformStatus(inputs: { status: unknown; statusCode: number }): OperationStatus {\n const { status, statusCode } = inputs;\n if (typeof status !== \"string\" && status !== undefined) {\n throw new Error(\n `Polling was unsuccessful. Expected status to have a string value or no value but it has instead: ${status}. This doesn't necessarily indicate the operation has failed. Check your Azure subscription or resource status for more information.`\n );\n }\n switch (status?.toLocaleLowerCase()) {\n case undefined:\n return toOperationStatus(statusCode);\n case \"succeeded\":\n return \"succeeded\";\n case \"failed\":\n return \"failed\";\n case \"running\":\n case \"accepted\":\n case \"started\":\n case \"canceling\":\n case \"cancelling\":\n return \"running\";\n case \"canceled\":\n case \"cancelled\":\n return \"canceled\";\n default: {\n logger.verbose(`LRO: unrecognized operation status: ${status}`);\n return status as OperationStatus;\n }\n }\n}\n\nfunction getStatus(rawResponse: RawResponse): OperationStatus {\n const { status } = (rawResponse.body as ResponseBody) ?? {};\n return transformStatus({ status, statusCode: rawResponse.statusCode });\n}\n\nfunction getProvisioningState(rawResponse: RawResponse): OperationStatus {\n const { properties, provisioningState } = (rawResponse.body as ResponseBody) ?? {};\n const status = properties?.provisioningState ?? provisioningState;\n return transformStatus({ status, statusCode: rawResponse.statusCode });\n}\n\nfunction toOperationStatus(statusCode: number): OperationStatus {\n if (statusCode === 202) {\n return \"running\";\n } else if (statusCode < 300) {\n return \"succeeded\";\n } else {\n return \"failed\";\n }\n}\n\nexport function parseRetryAfter({ rawResponse }: LroResponse): number | undefined {\n const retryAfter: string | undefined = rawResponse.headers[\"retry-after\"];\n if (retryAfter !== undefined) {\n // Retry-After header value is either in HTTP date format, or in seconds\n const retryAfterInSeconds = parseInt(retryAfter);\n return isNaN(retryAfterInSeconds)\n ? calculatePollingIntervalFromDate(new Date(retryAfter))\n : retryAfterInSeconds * 1000;\n }\n return undefined;\n}\n\nexport function getErrorFromResponse(response: LroResponse): LroError | undefined {\n const error = (response.flatResponse as ResponseBody).error;\n if (!error) {\n logger.warning(\n `The long-running operation failed but there is no error property in the response's body`\n );\n return;\n }\n if (!error.code || !error.message) {\n logger.warning(\n `The long-running operation failed but the error property in the response's body doesn't contain code or message`\n );\n return;\n }\n return error as LroError;\n}\n\nfunction calculatePollingIntervalFromDate(retryAfterDate: Date): number | undefined {\n const timeNow = Math.floor(new Date().getTime());\n const retryAfterTime = retryAfterDate.getTime();\n if (timeNow < retryAfterTime) {\n return retryAfterTime - timeNow;\n }\n return undefined;\n}\n\nexport function getStatusFromInitialResponse(inputs: {\n response: LroResponse;\n state: RestorableOperationState;\n operationLocation?: string;\n}): OperationStatus {\n const { response, state, operationLocation } = inputs;\n function helper(): OperationStatus {\n const mode = state.config.metadata?.[\"mode\"];\n switch (mode) {\n case undefined:\n return toOperationStatus(response.rawResponse.statusCode);\n case \"Body\":\n return getOperationStatus(response, state);\n default:\n return \"running\";\n }\n }\n const status = helper();\n return status === \"running\" && operationLocation === undefined ? \"succeeded\" : status;\n}\n\n/**\n * Initiates the long-running operation.\n */\nexport async function initHttpOperation(inputs: {\n stateProxy: StateProxy;\n resourceLocationConfig?: LroResourceLocationConfig;\n processResult?: (result: unknown, state: TState) => TResult;\n setErrorAsResult: boolean;\n lro: LongRunningOperation;\n}): Promise> {\n const { stateProxy, resourceLocationConfig, processResult, lro, setErrorAsResult } = inputs;\n return initOperation({\n init: async () => {\n const response = await lro.sendInitialRequest();\n const config = inferLroMode({\n rawResponse: response.rawResponse,\n requestPath: lro.requestPath,\n requestMethod: lro.requestMethod,\n resourceLocationConfig,\n });\n return {\n response,\n operationLocation: config?.operationLocation,\n resourceLocation: config?.resourceLocation,\n ...(config?.mode ? { metadata: { mode: config.mode } } : {}),\n };\n },\n stateProxy,\n processResult: processResult\n ? ({ flatResponse }, state) => processResult(flatResponse, state)\n : ({ flatResponse }) => flatResponse as TResult,\n getOperationStatus: getStatusFromInitialResponse,\n setErrorAsResult,\n });\n}\n\nexport function getOperationLocation(\n { rawResponse }: LroResponse,\n state: RestorableOperationState\n): string | undefined {\n const mode = state.config.metadata?.[\"mode\"];\n switch (mode) {\n case \"OperationLocation\": {\n return getOperationLocationPollingUrl({\n operationLocation: getOperationLocationHeader(rawResponse),\n azureAsyncOperation: getAzureAsyncOperationHeader(rawResponse),\n });\n }\n case \"ResourceLocation\": {\n return getLocationHeader(rawResponse);\n }\n case \"Body\":\n default: {\n return undefined;\n }\n }\n}\n\nexport function getOperationStatus(\n { rawResponse }: LroResponse,\n state: RestorableOperationState\n): OperationStatus {\n const mode = state.config.metadata?.[\"mode\"];\n switch (mode) {\n case \"OperationLocation\": {\n return getStatus(rawResponse);\n }\n case \"ResourceLocation\": {\n return toOperationStatus(rawResponse.statusCode);\n }\n case \"Body\": {\n return getProvisioningState(rawResponse);\n }\n default:\n throw new Error(`Internal error: Unexpected operation mode: ${mode}`);\n }\n}\n\nexport function getResourceLocation(\n { flatResponse }: LroResponse,\n state: RestorableOperationState\n): string | undefined {\n if (typeof flatResponse === \"object\") {\n const resourceLocation = (flatResponse as { resourceLocation?: string }).resourceLocation;\n if (resourceLocation !== undefined) {\n state.config.resourceLocation = resourceLocation;\n }\n }\n return state.config.resourceLocation;\n}\n\nexport function isOperationError(e: Error): boolean {\n return e.name === \"RestError\";\n}\n\n/** Polls the long-running operation. */\nexport async function pollHttpOperation(inputs: {\n lro: LongRunningOperation;\n stateProxy: StateProxy;\n processResult?: (result: unknown, state: TState) => TResult;\n updateState?: (state: TState, lastResponse: LroResponse) => void;\n isDone?: (lastResponse: LroResponse, state: TState) => boolean;\n setDelay: (intervalInMs: number) => void;\n options?: { abortSignal?: AbortSignalLike };\n state: RestorableOperationState;\n setErrorAsResult: boolean;\n}): Promise {\n const {\n lro,\n stateProxy,\n options,\n processResult,\n updateState,\n setDelay,\n state,\n setErrorAsResult,\n } = inputs;\n return pollOperation({\n state,\n stateProxy,\n setDelay,\n processResult: processResult\n ? ({ flatResponse }, inputState) => processResult(flatResponse, inputState)\n : ({ flatResponse }) => flatResponse as TResult,\n getError: getErrorFromResponse,\n updateState,\n getPollingInterval: parseRetryAfter,\n getOperationLocation,\n getOperationStatus,\n isOperationError,\n getResourceLocation,\n options,\n /**\n * The expansion here is intentional because `lro` could be an object that\n * references an inner this, so we need to preserve a reference to it.\n */\n poll: async (location, inputOptions) => lro.sendPollRequest(location, inputOptions),\n setErrorAsResult,\n });\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortController, AbortSignalLike } from \"@azure/abort-controller\";\nimport {\n BuildCreatePollerOptions,\n CreatePollerOptions,\n Operation,\n OperationState,\n RestorableOperationState,\n SimplePollerLike,\n StateProxy,\n} from \"./models\";\nimport { deserializeState, initOperation, pollOperation } from \"./operation\";\nimport { POLL_INTERVAL_IN_MS } from \"./constants\";\nimport { delay } from \"@azure/core-util\";\n\nconst createStateProxy: >() => StateProxy<\n TState,\n TResult\n> = () => ({\n /**\n * The state at this point is created to be of type OperationState.\n * It will be updated later to be of type TState when the\n * customer-provided callback, `updateState`, is called during polling.\n */\n initState: (config) => ({ status: \"running\", config } as any),\n setCanceled: (state) => (state.status = \"canceled\"),\n setError: (state, error) => (state.error = error),\n setResult: (state, result) => (state.result = result),\n setRunning: (state) => (state.status = \"running\"),\n setSucceeded: (state) => (state.status = \"succeeded\"),\n setFailed: (state) => (state.status = \"failed\"),\n\n getError: (state) => state.error,\n getResult: (state) => state.result,\n isCanceled: (state) => state.status === \"canceled\",\n isFailed: (state) => state.status === \"failed\",\n isRunning: (state) => state.status === \"running\",\n isSucceeded: (state) => state.status === \"succeeded\",\n});\n\n/**\n * Returns a poller factory.\n */\nexport function buildCreatePoller>(\n inputs: BuildCreatePollerOptions\n): (\n lro: Operation,\n options?: CreatePollerOptions\n) => Promise> {\n const {\n getOperationLocation,\n getStatusFromInitialResponse,\n getStatusFromPollResponse,\n isOperationError,\n getResourceLocation,\n getPollingInterval,\n getError,\n resolveOnUnsuccessful,\n } = inputs;\n return async (\n { init, poll }: Operation,\n options?: CreatePollerOptions\n ) => {\n const {\n processResult,\n updateState,\n withOperationLocation: withOperationLocationCallback,\n intervalInMs = POLL_INTERVAL_IN_MS,\n restoreFrom,\n } = options || {};\n const stateProxy = createStateProxy();\n const withOperationLocation = withOperationLocationCallback\n ? (() => {\n let called = false;\n return (operationLocation: string, isUpdated: boolean) => {\n if (isUpdated) withOperationLocationCallback(operationLocation);\n else if (!called) withOperationLocationCallback(operationLocation);\n called = true;\n };\n })()\n : undefined;\n const state: RestorableOperationState = restoreFrom\n ? deserializeState(restoreFrom)\n : await initOperation({\n init,\n stateProxy,\n processResult,\n getOperationStatus: getStatusFromInitialResponse,\n withOperationLocation,\n setErrorAsResult: !resolveOnUnsuccessful,\n });\n let resultPromise: Promise | undefined;\n const abortController = new AbortController();\n // Progress handlers\n type Handler = (state: TState) => void;\n const handlers = new Map();\n const handleProgressEvents = async (): Promise => handlers.forEach((h) => h(state));\n const cancelErrMsg = \"Operation was canceled\";\n let currentPollIntervalInMs = intervalInMs;\n\n const poller: SimplePollerLike = {\n getOperationState: () => state,\n getResult: () => state.result,\n isDone: () => [\"succeeded\", \"failed\", \"canceled\"].includes(state.status),\n isStopped: () => resultPromise === undefined,\n stopPolling: () => {\n abortController.abort();\n },\n toString: () =>\n JSON.stringify({\n state,\n }),\n onProgress: (callback: (state: TState) => void) => {\n const s = Symbol();\n handlers.set(s, callback);\n return () => handlers.delete(s);\n },\n pollUntilDone: (pollOptions?: { abortSignal?: AbortSignalLike }) =>\n (resultPromise ??= (async () => {\n const { abortSignal: inputAbortSignal } = pollOptions || {};\n const { signal: abortSignal } = inputAbortSignal\n ? new AbortController([inputAbortSignal, abortController.signal])\n : abortController;\n if (!poller.isDone()) {\n await poller.poll({ abortSignal });\n while (!poller.isDone()) {\n await delay(currentPollIntervalInMs, { abortSignal });\n await poller.poll({ abortSignal });\n }\n }\n if (resolveOnUnsuccessful) {\n return poller.getResult() as TResult;\n } else {\n switch (state.status) {\n case \"succeeded\":\n return poller.getResult() as TResult;\n case \"canceled\":\n throw new Error(cancelErrMsg);\n case \"failed\":\n throw state.error;\n case \"notStarted\":\n case \"running\":\n throw new Error(`Polling completed without succeeding or failing`);\n }\n }\n })().finally(() => {\n resultPromise = undefined;\n })),\n async poll(pollOptions?: { abortSignal?: AbortSignalLike }): Promise {\n if (resolveOnUnsuccessful) {\n if (poller.isDone()) return;\n } else {\n switch (state.status) {\n case \"succeeded\":\n return;\n case \"canceled\":\n throw new Error(cancelErrMsg);\n case \"failed\":\n throw state.error;\n }\n }\n await pollOperation({\n poll,\n state,\n stateProxy,\n getOperationLocation,\n isOperationError,\n withOperationLocation,\n getPollingInterval,\n getOperationStatus: getStatusFromPollResponse,\n getResourceLocation,\n processResult,\n getError,\n updateState,\n options: pollOptions,\n setDelay: (pollIntervalInMs) => {\n currentPollIntervalInMs = pollIntervalInMs;\n },\n setErrorAsResult: !resolveOnUnsuccessful,\n });\n await handleProgressEvents();\n if (!resolveOnUnsuccessful) {\n switch (state.status) {\n case \"canceled\":\n throw new Error(cancelErrMsg);\n case \"failed\":\n throw state.error;\n }\n }\n },\n };\n return poller;\n };\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LongRunningOperation, LroResponse } from \"./models\";\nimport { OperationState, SimplePollerLike } from \"../poller/models\";\nimport {\n getErrorFromResponse,\n getOperationLocation,\n getOperationStatus,\n getResourceLocation,\n getStatusFromInitialResponse,\n inferLroMode,\n isOperationError,\n parseRetryAfter,\n} from \"./operation\";\nimport { CreateHttpPollerOptions } from \"./models\";\nimport { buildCreatePoller } from \"../poller/poller\";\n\n/**\n * Creates a poller that can be used to poll a long-running operation.\n * @param lro - Description of the long-running operation\n * @param options - options to configure the poller\n * @returns an initialized poller\n */\nexport async function createHttpPoller>(\n lro: LongRunningOperation,\n options?: CreateHttpPollerOptions\n): Promise> {\n const {\n resourceLocationConfig,\n intervalInMs,\n processResult,\n restoreFrom,\n updateState,\n withOperationLocation,\n resolveOnUnsuccessful = false,\n } = options || {};\n return buildCreatePoller({\n getStatusFromInitialResponse,\n getStatusFromPollResponse: getOperationStatus,\n isOperationError,\n getOperationLocation,\n getResourceLocation,\n getPollingInterval: parseRetryAfter,\n getError: getErrorFromResponse,\n resolveOnUnsuccessful,\n })(\n {\n init: async () => {\n const response = await lro.sendInitialRequest();\n const config = inferLroMode({\n rawResponse: response.rawResponse,\n requestPath: lro.requestPath,\n requestMethod: lro.requestMethod,\n resourceLocationConfig,\n });\n return {\n response,\n operationLocation: config?.operationLocation,\n resourceLocation: config?.resourceLocation,\n ...(config?.mode ? { metadata: { mode: config.mode } } : {}),\n };\n },\n poll: lro.sendPollRequest,\n },\n {\n intervalInMs,\n withOperationLocation,\n restoreFrom,\n updateState,\n processResult: processResult\n ? ({ flatResponse }, state) => processResult(flatResponse, state)\n : ({ flatResponse }) => flatResponse as TResult,\n }\n );\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LongRunningOperation, LroResourceLocationConfig, RawResponse } from \"../../http/models\";\nimport { PollOperation, PollOperationState } from \"../pollOperation\";\nimport { RestorableOperationState, StateProxy } from \"../../poller/models\";\nimport { initHttpOperation, pollHttpOperation } from \"../../http/operation\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { PollerConfig } from \"./models\";\nimport { logger } from \"../../logger\";\n\nconst createStateProxy: >() => StateProxy<\n TState,\n TResult\n> = () => ({\n initState: (config) => ({ config, isStarted: true } as any),\n setCanceled: (state) => (state.isCancelled = true),\n setError: (state, error) => (state.error = error),\n setResult: (state, result) => (state.result = result),\n setRunning: (state) => (state.isStarted = true),\n setSucceeded: (state) => (state.isCompleted = true),\n setFailed: () => {\n /** empty body */\n },\n\n getError: (state) => state.error,\n getResult: (state) => state.result,\n isCanceled: (state) => !!state.isCancelled,\n isFailed: (state) => !!state.error,\n isRunning: (state) => !!state.isStarted,\n isSucceeded: (state) => Boolean(state.isCompleted && !state.isCancelled && !state.error),\n});\n\nexport class GenericPollOperation>\n implements PollOperation\n{\n private pollerConfig?: PollerConfig;\n\n constructor(\n public state: RestorableOperationState,\n private lro: LongRunningOperation,\n private setErrorAsResult: boolean,\n private lroResourceLocationConfig?: LroResourceLocationConfig,\n private processResult?: (result: unknown, state: TState) => TResult,\n private updateState?: (state: TState, lastResponse: RawResponse) => void,\n private isDone?: (lastResponse: TResult, state: TState) => boolean\n ) {}\n\n public setPollerConfig(pollerConfig: PollerConfig): void {\n this.pollerConfig = pollerConfig;\n }\n\n async update(options?: {\n abortSignal?: AbortSignalLike;\n fireProgress?: (state: TState) => void;\n }): Promise> {\n const stateProxy = createStateProxy();\n if (!this.state.isStarted) {\n this.state = {\n ...this.state,\n ...(await initHttpOperation({\n lro: this.lro,\n stateProxy,\n resourceLocationConfig: this.lroResourceLocationConfig,\n processResult: this.processResult,\n setErrorAsResult: this.setErrorAsResult,\n })),\n };\n }\n const updateState = this.updateState;\n const isDone = this.isDone;\n\n if (!this.state.isCompleted && this.state.error === undefined) {\n await pollHttpOperation({\n lro: this.lro,\n state: this.state,\n stateProxy,\n processResult: this.processResult,\n updateState: updateState\n ? (state, { rawResponse }) => updateState(state, rawResponse)\n : undefined,\n isDone: isDone\n ? ({ flatResponse }, state) => isDone(flatResponse as TResult, state)\n : undefined,\n options,\n setDelay: (intervalInMs) => {\n this.pollerConfig!.intervalInMs = intervalInMs;\n },\n setErrorAsResult: this.setErrorAsResult,\n });\n }\n options?.fireProgress?.(this.state);\n return this;\n }\n\n async cancel(): Promise> {\n logger.error(\"`cancelOperation` is deprecated because it wasn't implemented\");\n return this;\n }\n\n /**\n * Serializes the Poller operation.\n */\n public toString(): string {\n return JSON.stringify({\n state: this.state,\n });\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { PollOperation, PollOperationState } from \"./pollOperation\";\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { CancelOnProgress } from \"../poller/models\";\nimport { PollerLike } from \"./models\";\n\n/**\n * PollProgressCallback is the type of the callback functions sent to onProgress.\n * These functions will receive a TState that is defined by your implementation of\n * the Poller class.\n */\nexport type PollProgressCallback = (state: TState) => void;\n\n/**\n * When a poller is manually stopped through the `stopPolling` method,\n * the poller will be rejected with an instance of the PollerStoppedError.\n */\nexport class PollerStoppedError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"PollerStoppedError\";\n Object.setPrototypeOf(this, PollerStoppedError.prototype);\n }\n}\n\n/**\n * When the operation is cancelled, the poller will be rejected with an instance\n * of the PollerCancelledError.\n */\nexport class PollerCancelledError extends Error {\n constructor(message: string) {\n super(message);\n this.name = \"PollerCancelledError\";\n Object.setPrototypeOf(this, PollerCancelledError.prototype);\n }\n}\n\n/**\n * A class that represents the definition of a program that polls through consecutive requests\n * until it reaches a state of completion.\n *\n * A poller can be executed manually, by polling request by request by calling to the `poll()` method repeatedly, until its operation is completed.\n * It also provides a way to wait until the operation completes, by calling `pollUntilDone()` and waiting until the operation finishes.\n * Pollers can also request the cancellation of the ongoing process to whom is providing the underlying long running operation.\n *\n * ```ts\n * const poller = new MyPoller();\n *\n * // Polling just once:\n * await poller.poll();\n *\n * // We can try to cancel the request here, by calling:\n * //\n * // await poller.cancelOperation();\n * //\n *\n * // Getting the final result:\n * const result = await poller.pollUntilDone();\n * ```\n *\n * The Poller is defined by two types, a type representing the state of the poller, which\n * must include a basic set of properties from `PollOperationState`,\n * and a return type defined by `TResult`, which can be anything.\n *\n * The Poller class implements the `PollerLike` interface, which allows poller implementations to avoid having\n * to export the Poller's class directly, and instead only export the already instantiated poller with the PollerLike type.\n *\n * ```ts\n * class Client {\n * public async makePoller: PollerLike {\n * const poller = new MyPoller({});\n * // It might be preferred to return the poller after the first request is made,\n * // so that some information can be obtained right away.\n * await poller.poll();\n * return poller;\n * }\n * }\n *\n * const poller: PollerLike = myClient.makePoller();\n * ```\n *\n * A poller can be created through its constructor, then it can be polled until it's completed.\n * At any point in time, the state of the poller can be obtained without delay through the getOperationState method.\n * At any point in time, the intermediate forms of the result type can be requested without delay.\n * Once the underlying operation is marked as completed, the poller will stop and the final value will be returned.\n *\n * ```ts\n * const poller = myClient.makePoller();\n * const state: MyOperationState = poller.getOperationState();\n *\n * // The intermediate result can be obtained at any time.\n * const result: MyResult | undefined = poller.getResult();\n *\n * // The final result can only be obtained after the poller finishes.\n * const result: MyResult = await poller.pollUntilDone();\n * ```\n *\n */\n// eslint-disable-next-line no-use-before-define\nexport abstract class Poller, TResult>\n implements PollerLike\n{\n /** controls whether to throw an error if the operation failed or was canceled. */\n protected resolveOnUnsuccessful: boolean = false;\n private stopped: boolean = true;\n private resolve?: (value: TResult) => void;\n private reject?: (error: PollerStoppedError | PollerCancelledError | Error) => void;\n private pollOncePromise?: Promise;\n private cancelPromise?: Promise;\n private promise: Promise;\n private pollProgressCallbacks: PollProgressCallback[] = [];\n\n /**\n * The poller's operation is available in full to any of the methods of the Poller class\n * and any class extending the Poller class.\n */\n protected operation: PollOperation;\n\n /**\n * A poller needs to be initialized by passing in at least the basic properties of the `PollOperation`.\n *\n * When writing an implementation of a Poller, this implementation needs to deal with the initialization\n * of any custom state beyond the basic definition of the poller. The basic poller assumes that the poller's\n * operation has already been defined, at least its basic properties. The code below shows how to approach\n * the definition of the constructor of a new custom poller.\n *\n * ```ts\n * export class MyPoller extends Poller {\n * constructor({\n * // Anything you might need outside of the basics\n * }) {\n * let state: MyOperationState = {\n * privateProperty: private,\n * publicProperty: public,\n * };\n *\n * const operation = {\n * state,\n * update,\n * cancel,\n * toString\n * }\n *\n * // Sending the operation to the parent's constructor.\n * super(operation);\n *\n * // You can assign more local properties here.\n * }\n * }\n * ```\n *\n * Inside of this constructor, a new promise is created. This will be used to\n * tell the user when the poller finishes (see `pollUntilDone()`). The promise's\n * resolve and reject methods are also used internally to control when to resolve\n * or reject anyone waiting for the poller to finish.\n *\n * The constructor of a custom implementation of a poller is where any serialized version of\n * a previous poller's operation should be deserialized into the operation sent to the\n * base constructor. For example:\n *\n * ```ts\n * export class MyPoller extends Poller {\n * constructor(\n * baseOperation: string | undefined\n * ) {\n * let state: MyOperationState = {};\n * if (baseOperation) {\n * state = {\n * ...JSON.parse(baseOperation).state,\n * ...state\n * };\n * }\n * const operation = {\n * state,\n * // ...\n * }\n * super(operation);\n * }\n * }\n * ```\n *\n * @param operation - Must contain the basic properties of `PollOperation`.\n */\n constructor(operation: PollOperation) {\n this.operation = operation;\n this.promise = new Promise(\n (\n resolve: (result: TResult) => void,\n reject: (error: PollerStoppedError | PollerCancelledError | Error) => void\n ) => {\n this.resolve = resolve;\n this.reject = reject;\n }\n );\n // This prevents the UnhandledPromiseRejectionWarning in node.js from being thrown.\n // The above warning would get thrown if `poller.poll` is called, it returns an error,\n // and pullUntilDone did not have a .catch or await try/catch on it's return value.\n this.promise.catch(() => {\n /* intentionally blank */\n });\n }\n\n /**\n * Defines how much to wait between each poll request.\n * This has to be implemented by your custom poller.\n *\n * \\@azure/core-util has a simple implementation of a delay function that waits as many milliseconds as specified.\n * This can be used as follows:\n *\n * ```ts\n * import { delay } from \"@azure/core-util\";\n *\n * export class MyPoller extends Poller {\n * // The other necessary definitions.\n *\n * async delay(): Promise {\n * const milliseconds = 1000;\n * return delay(milliseconds);\n * }\n * }\n * ```\n *\n */\n protected abstract delay(): Promise;\n\n /**\n * Starts a loop that will break only if the poller is done\n * or if the poller is stopped.\n */\n private async startPolling(pollOptions: { abortSignal?: AbortSignalLike } = {}): Promise {\n if (this.stopped) {\n this.stopped = false;\n }\n while (!this.isStopped() && !this.isDone()) {\n await this.poll(pollOptions);\n await this.delay();\n }\n }\n\n /**\n * pollOnce does one polling, by calling to the update method of the underlying\n * poll operation to make any relevant change effective.\n *\n * It only optionally receives an object with an abortSignal property, from \\@azure/abort-controller's AbortSignalLike.\n *\n * @param options - Optional properties passed to the operation's update method.\n */\n private async pollOnce(options: { abortSignal?: AbortSignalLike } = {}): Promise {\n if (!this.isDone()) {\n this.operation = await this.operation.update({\n abortSignal: options.abortSignal,\n fireProgress: this.fireProgress.bind(this),\n });\n }\n this.processUpdatedState();\n }\n\n /**\n * fireProgress calls the functions passed in via onProgress the method of the poller.\n *\n * It loops over all of the callbacks received from onProgress, and executes them, sending them\n * the current operation state.\n *\n * @param state - The current operation state.\n */\n private fireProgress(state: TState): void {\n for (const callback of this.pollProgressCallbacks) {\n callback(state);\n }\n }\n\n /**\n * Invokes the underlying operation's cancel method.\n */\n private async cancelOnce(options: { abortSignal?: AbortSignalLike } = {}): Promise {\n this.operation = await this.operation.cancel(options);\n }\n\n /**\n * Returns a promise that will resolve once a single polling request finishes.\n * It does this by calling the update method of the Poller's operation.\n *\n * It only optionally receives an object with an abortSignal property, from \\@azure/abort-controller's AbortSignalLike.\n *\n * @param options - Optional properties passed to the operation's update method.\n */\n public poll(options: { abortSignal?: AbortSignalLike } = {}): Promise {\n if (!this.pollOncePromise) {\n this.pollOncePromise = this.pollOnce(options);\n const clearPollOncePromise = (): void => {\n this.pollOncePromise = undefined;\n };\n this.pollOncePromise.then(clearPollOncePromise, clearPollOncePromise).catch(this.reject);\n }\n return this.pollOncePromise;\n }\n\n private processUpdatedState(): void {\n if (this.operation.state.error) {\n this.stopped = true;\n if (!this.resolveOnUnsuccessful) {\n this.reject!(this.operation.state.error);\n throw this.operation.state.error;\n }\n }\n if (this.operation.state.isCancelled) {\n this.stopped = true;\n if (!this.resolveOnUnsuccessful) {\n const error = new PollerCancelledError(\"Operation was canceled\");\n this.reject!(error);\n throw error;\n }\n }\n if (this.isDone() && this.resolve) {\n // If the poller has finished polling, this means we now have a result.\n // However, it can be the case that TResult is instantiated to void, so\n // we are not expecting a result anyway. To assert that we might not\n // have a result eventually after finishing polling, we cast the result\n // to TResult.\n this.resolve(this.getResult() as TResult);\n }\n }\n\n /**\n * Returns a promise that will resolve once the underlying operation is completed.\n */\n public async pollUntilDone(\n pollOptions: { abortSignal?: AbortSignalLike } = {}\n ): Promise {\n if (this.stopped) {\n this.startPolling(pollOptions).catch(this.reject);\n }\n // This is needed because the state could have been updated by\n // `cancelOperation`, e.g. the operation is canceled or an error occurred.\n this.processUpdatedState();\n return this.promise;\n }\n\n /**\n * Invokes the provided callback after each polling is completed,\n * sending the current state of the poller's operation.\n *\n * It returns a method that can be used to stop receiving updates on the given callback function.\n */\n public onProgress(callback: (state: TState) => void): CancelOnProgress {\n this.pollProgressCallbacks.push(callback);\n return (): void => {\n this.pollProgressCallbacks = this.pollProgressCallbacks.filter((c) => c !== callback);\n };\n }\n\n /**\n * Returns true if the poller has finished polling.\n */\n public isDone(): boolean {\n const state: PollOperationState = this.operation.state;\n return Boolean(state.isCompleted || state.isCancelled || state.error);\n }\n\n /**\n * Stops the poller from continuing to poll.\n */\n public stopPolling(): void {\n if (!this.stopped) {\n this.stopped = true;\n if (this.reject) {\n this.reject(new PollerStoppedError(\"This poller is already stopped\"));\n }\n }\n }\n\n /**\n * Returns true if the poller is stopped.\n */\n public isStopped(): boolean {\n return this.stopped;\n }\n\n /**\n * Attempts to cancel the underlying operation.\n *\n * It only optionally receives an object with an abortSignal property, from \\@azure/abort-controller's AbortSignalLike.\n *\n * If it's called again before it finishes, it will throw an error.\n *\n * @param options - Optional properties passed to the operation's update method.\n */\n public cancelOperation(options: { abortSignal?: AbortSignalLike } = {}): Promise {\n if (!this.cancelPromise) {\n this.cancelPromise = this.cancelOnce(options);\n } else if (options.abortSignal) {\n throw new Error(\"A cancel request is currently pending\");\n }\n return this.cancelPromise;\n }\n\n /**\n * Returns the state of the operation.\n *\n * Even though TState will be the same type inside any of the methods of any extension of the Poller class,\n * implementations of the pollers can customize what's shared with the public by writing their own\n * version of the `getOperationState` method, and by defining two types, one representing the internal state of the poller\n * and a public type representing a safe to share subset of the properties of the internal state.\n * Their definition of getOperationState can then return their public type.\n *\n * Example:\n *\n * ```ts\n * // Let's say we have our poller's operation state defined as:\n * interface MyOperationState extends PollOperationState {\n * privateProperty?: string;\n * publicProperty?: string;\n * }\n *\n * // To allow us to have a true separation of public and private state, we have to define another interface:\n * interface PublicState extends PollOperationState {\n * publicProperty?: string;\n * }\n *\n * // Then, we define our Poller as follows:\n * export class MyPoller extends Poller {\n * // ... More content is needed here ...\n *\n * public getOperationState(): PublicState {\n * const state: PublicState = this.operation.state;\n * return {\n * // Properties from PollOperationState\n * isStarted: state.isStarted,\n * isCompleted: state.isCompleted,\n * isCancelled: state.isCancelled,\n * error: state.error,\n * result: state.result,\n *\n * // The only other property needed by PublicState.\n * publicProperty: state.publicProperty\n * }\n * }\n * }\n * ```\n *\n * You can see this in the tests of this repository, go to the file:\n * `../test/utils/testPoller.ts`\n * and look for the getOperationState implementation.\n */\n public getOperationState(): TState {\n return this.operation.state;\n }\n\n /**\n * Returns the result value of the operation,\n * regardless of the state of the poller.\n * It can return undefined or an incomplete form of the final TResult value\n * depending on the implementation.\n */\n public getResult(): TResult | undefined {\n const state: PollOperationState = this.operation.state;\n return state.result;\n }\n\n /**\n * Returns a serialized version of the poller's operation\n * by invoking the operation's toString method.\n */\n public toString(): string {\n return this.operation.toString();\n }\n}\n", "// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { LroEngineOptions, PollerConfig } from \"./models\";\nimport { GenericPollOperation } from \"./operation\";\nimport { LongRunningOperation } from \"../../http/models\";\nimport { POLL_INTERVAL_IN_MS } from \"../../poller/constants\";\nimport { PollOperationState } from \"../pollOperation\";\nimport { Poller } from \"../poller\";\nimport { RestorableOperationState } from \"../../poller/models\";\nimport { deserializeState } from \"../../poller/operation\";\n\n/**\n * The LRO Engine, a class that performs polling.\n */\nexport class LroEngine> extends Poller<\n TState,\n TResult\n> {\n private config: PollerConfig;\n\n constructor(lro: LongRunningOperation, options?: LroEngineOptions) {\n const {\n intervalInMs = POLL_INTERVAL_IN_MS,\n resumeFrom,\n resolveOnUnsuccessful = false,\n isDone,\n lroResourceLocationConfig,\n processResult,\n updateState,\n } = options || {};\n const state: RestorableOperationState = resumeFrom\n ? deserializeState(resumeFrom)\n : ({} as RestorableOperationState);\n const operation = new GenericPollOperation(\n state,\n lro,\n !resolveOnUnsuccessful,\n lroResourceLocationConfig,\n processResult,\n updateState,\n isDone\n );\n super(operation);\n this.resolveOnUnsuccessful = resolveOnUnsuccessful;\n\n this.config = { intervalInMs: intervalInMs };\n operation.setPollerConfig(this.config);\n }\n\n /**\n * The method used by the poller to wait before attempting to update its operation.\n */\n delay(): Promise {\n return new Promise((resolve) => setTimeout(() => resolve(), this.config.intervalInMs));\n }\n}\n", "{\n \"name\": \"@actions/cache\",\n \"version\": \"6.0.1\",\n \"description\": \"Actions cache lib\",\n \"keywords\": [\n \"github\",\n \"actions\",\n \"cache\"\n ],\n \"homepage\": \"https://github.com/actions/toolkit/tree/main/packages/cache\",\n \"license\": \"MIT\",\n \"type\": \"module\",\n \"main\": \"lib/cache.js\",\n \"types\": \"lib/cache.d.ts\",\n \"exports\": {\n \".\": {\n \"types\": \"./lib/cache.d.ts\",\n \"import\": \"./lib/cache.js\"\n }\n },\n \"directories\": {\n \"lib\": \"lib\",\n \"test\": \"__tests__\"\n },\n \"files\": [\n \"lib\",\n \"!.DS_Store\"\n ],\n \"publishConfig\": {\n \"access\": \"public\"\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"git+https://github.com/actions/toolkit.git\",\n \"directory\": \"packages/cache\"\n },\n \"scripts\": {\n \"audit-moderate\": \"npm install && npm audit --json --audit-level=moderate > audit.json\",\n \"test\": \"echo \\\"Error: run tests from root\\\" && exit 1\",\n \"tsc\": \"tsc && cp src/internal/shared/package-version.cjs lib/internal/shared/\"\n },\n \"bugs\": {\n \"url\": \"https://github.com/actions/toolkit/issues\"\n },\n \"dependencies\": {\n \"@actions/core\": \"^3.0.1\",\n \"@actions/exec\": \"^3.0.0\",\n \"@actions/glob\": \"^0.6.1\",\n \"@actions/http-client\": \"^4.0.1\",\n \"@actions/io\": \"^3.0.2\",\n \"@azure/core-rest-pipeline\": \"^1.23.0\",\n \"@azure/storage-blob\": \"^12.31.0\",\n \"@protobuf-ts/runtime-rpc\": \"^2.11.1\",\n \"semver\": \"^7.7.4\"\n },\n \"devDependencies\": {\n \"@protobuf-ts/plugin\": \"^2.11.1\",\n \"@types/node\": \"^25.6.0\",\n \"@types/semver\": \"^7.7.1\",\n \"typescript\": \"^5.9.3\"\n },\n \"overrides\": {\n \"uri-js\": \"npm:uri-js-replace@^1.0.1\",\n \"node-fetch\": \"^3.3.2\"\n }\n}\n", "// This file exists as a CommonJS module to read the version from package.json.\n// In an ESM package, using `require()` directly in .ts files requires disabling\n// ESLint rules and doesn't work reliably across all Node.js versions.\n// By keeping this as a .cjs file, we can use require() naturally and export\n// the version for the ESM modules to import.\nconst packageJson = require('../../../package.json')\nmodule.exports = { version: packageJson.version }\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.isJsonObject = exports.typeofJsonValue = void 0;\n/**\n * Get the type of a JSON value.\n * Distinguishes between array, null and object.\n */\nfunction typeofJsonValue(value) {\n let t = typeof value;\n if (t == \"object\") {\n if (Array.isArray(value))\n return \"array\";\n if (value === null)\n return \"null\";\n }\n return t;\n}\nexports.typeofJsonValue = typeofJsonValue;\n/**\n * Is this a JSON object (instead of an array or null)?\n */\nfunction isJsonObject(value) {\n return value !== null && typeof value == \"object\" && !Array.isArray(value);\n}\nexports.isJsonObject = isJsonObject;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.base64encode = exports.base64decode = void 0;\n// lookup table from base64 character to byte\nlet encTable = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split('');\n// lookup table from base64 character *code* to byte because lookup by number is fast\nlet decTable = [];\nfor (let i = 0; i < encTable.length; i++)\n decTable[encTable[i].charCodeAt(0)] = i;\n// support base64url variants\ndecTable[\"-\".charCodeAt(0)] = encTable.indexOf(\"+\");\ndecTable[\"_\".charCodeAt(0)] = encTable.indexOf(\"/\");\n/**\n * Decodes a base64 string to a byte array.\n *\n * - ignores white-space, including line breaks and tabs\n * - allows inner padding (can decode concatenated base64 strings)\n * - does not require padding\n * - understands base64url encoding:\n * \"-\" instead of \"+\",\n * \"_\" instead of \"/\",\n * no padding\n */\nfunction base64decode(base64Str) {\n // estimate byte size, not accounting for inner padding and whitespace\n let es = base64Str.length * 3 / 4;\n // if (es % 3 !== 0)\n // throw new Error('invalid base64 string');\n if (base64Str[base64Str.length - 2] == '=')\n es -= 2;\n else if (base64Str[base64Str.length - 1] == '=')\n es -= 1;\n let bytes = new Uint8Array(es), bytePos = 0, // position in byte array\n groupPos = 0, // position in base64 group\n b, // current byte\n p = 0 // previous byte\n ;\n for (let i = 0; i < base64Str.length; i++) {\n b = decTable[base64Str.charCodeAt(i)];\n if (b === undefined) {\n // noinspection FallThroughInSwitchStatementJS\n switch (base64Str[i]) {\n case '=':\n groupPos = 0; // reset state when padding found\n case '\\n':\n case '\\r':\n case '\\t':\n case ' ':\n continue; // skip white-space, and padding\n default:\n throw Error(`invalid base64 string.`);\n }\n }\n switch (groupPos) {\n case 0:\n p = b;\n groupPos = 1;\n break;\n case 1:\n bytes[bytePos++] = p << 2 | (b & 48) >> 4;\n p = b;\n groupPos = 2;\n break;\n case 2:\n bytes[bytePos++] = (p & 15) << 4 | (b & 60) >> 2;\n p = b;\n groupPos = 3;\n break;\n case 3:\n bytes[bytePos++] = (p & 3) << 6 | b;\n groupPos = 0;\n break;\n }\n }\n if (groupPos == 1)\n throw Error(`invalid base64 string.`);\n return bytes.subarray(0, bytePos);\n}\nexports.base64decode = base64decode;\n/**\n * Encodes a byte array to a base64 string.\n * Adds padding at the end.\n * Does not insert newlines.\n */\nfunction base64encode(bytes) {\n let base64 = '', groupPos = 0, // position in base64 group\n b, // current byte\n p = 0; // carry over from previous byte\n for (let i = 0; i < bytes.length; i++) {\n b = bytes[i];\n switch (groupPos) {\n case 0:\n base64 += encTable[b >> 2];\n p = (b & 3) << 4;\n groupPos = 1;\n break;\n case 1:\n base64 += encTable[p | b >> 4];\n p = (b & 15) << 2;\n groupPos = 2;\n break;\n case 2:\n base64 += encTable[p | b >> 6];\n base64 += encTable[b & 63];\n groupPos = 0;\n break;\n }\n }\n // padding required?\n if (groupPos) {\n base64 += encTable[p];\n base64 += '=';\n if (groupPos == 1)\n base64 += '=';\n }\n return base64;\n}\nexports.base64encode = base64encode;\n", "\"use strict\";\n// Copyright (c) 2016, Daniel Wirtz All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above copyright\n// notice, this list of conditions and the following disclaimer in the\n// documentation and/or other materials provided with the distribution.\n// * Neither the name of its author, nor the names of its contributors\n// may be used to endorse or promote products derived from this software\n// without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.utf8read = void 0;\nconst fromCharCodes = (chunk) => String.fromCharCode.apply(String, chunk);\n/**\n * @deprecated This function will no longer be exported with the next major\n * release, since protobuf-ts has switch to TextDecoder API. If you need this\n * function, please migrate to @protobufjs/utf8. For context, see\n * https://github.com/timostamm/protobuf-ts/issues/184\n *\n * Reads UTF8 bytes as a string.\n *\n * See [protobufjs / utf8](https://github.com/protobufjs/protobuf.js/blob/9893e35b854621cce64af4bf6be2cff4fb892796/lib/utf8/index.js#L40)\n *\n * Copyright (c) 2016, Daniel Wirtz\n */\nfunction utf8read(bytes) {\n if (bytes.length < 1)\n return \"\";\n let pos = 0, // position in bytes\n parts = [], chunk = [], i = 0, // char offset\n t; // temporary\n let len = bytes.length;\n while (pos < len) {\n t = bytes[pos++];\n if (t < 128)\n chunk[i++] = t;\n else if (t > 191 && t < 224)\n chunk[i++] = (t & 31) << 6 | bytes[pos++] & 63;\n else if (t > 239 && t < 365) {\n t = ((t & 7) << 18 | (bytes[pos++] & 63) << 12 | (bytes[pos++] & 63) << 6 | bytes[pos++] & 63) - 0x10000;\n chunk[i++] = 0xD800 + (t >> 10);\n chunk[i++] = 0xDC00 + (t & 1023);\n }\n else\n chunk[i++] = (t & 15) << 12 | (bytes[pos++] & 63) << 6 | bytes[pos++] & 63;\n if (i > 8191) {\n parts.push(fromCharCodes(chunk));\n i = 0;\n }\n }\n if (parts.length) {\n if (i)\n parts.push(fromCharCodes(chunk.slice(0, i)));\n return parts.join(\"\");\n }\n return fromCharCodes(chunk.slice(0, i));\n}\nexports.utf8read = utf8read;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.WireType = exports.mergeBinaryOptions = exports.UnknownFieldHandler = void 0;\n/**\n * This handler implements the default behaviour for unknown fields.\n * When reading data, unknown fields are stored on the message, in a\n * symbol property.\n * When writing data, the symbol property is queried and unknown fields\n * are serialized into the output again.\n */\nvar UnknownFieldHandler;\n(function (UnknownFieldHandler) {\n /**\n * The symbol used to store unknown fields for a message.\n * The property must conform to `UnknownFieldContainer`.\n */\n UnknownFieldHandler.symbol = Symbol.for(\"protobuf-ts/unknown\");\n /**\n * Store an unknown field during binary read directly on the message.\n * This method is compatible with `BinaryReadOptions.readUnknownField`.\n */\n UnknownFieldHandler.onRead = (typeName, message, fieldNo, wireType, data) => {\n let container = is(message) ? message[UnknownFieldHandler.symbol] : message[UnknownFieldHandler.symbol] = [];\n container.push({ no: fieldNo, wireType, data });\n };\n /**\n * Write unknown fields stored for the message to the writer.\n * This method is compatible with `BinaryWriteOptions.writeUnknownFields`.\n */\n UnknownFieldHandler.onWrite = (typeName, message, writer) => {\n for (let { no, wireType, data } of UnknownFieldHandler.list(message))\n writer.tag(no, wireType).raw(data);\n };\n /**\n * List unknown fields stored for the message.\n * Note that there may be multiples fields with the same number.\n */\n UnknownFieldHandler.list = (message, fieldNo) => {\n if (is(message)) {\n let all = message[UnknownFieldHandler.symbol];\n return fieldNo ? all.filter(uf => uf.no == fieldNo) : all;\n }\n return [];\n };\n /**\n * Returns the last unknown field by field number.\n */\n UnknownFieldHandler.last = (message, fieldNo) => UnknownFieldHandler.list(message, fieldNo).slice(-1)[0];\n const is = (message) => message && Array.isArray(message[UnknownFieldHandler.symbol]);\n})(UnknownFieldHandler = exports.UnknownFieldHandler || (exports.UnknownFieldHandler = {}));\n/**\n * Merges binary write or read options. Later values override earlier values.\n */\nfunction mergeBinaryOptions(a, b) {\n return Object.assign(Object.assign({}, a), b);\n}\nexports.mergeBinaryOptions = mergeBinaryOptions;\n/**\n * Protobuf binary format wire types.\n *\n * A wire type provides just enough information to find the length of the\n * following value.\n *\n * See https://developers.google.com/protocol-buffers/docs/encoding#structure\n */\nvar WireType;\n(function (WireType) {\n /**\n * Used for int32, int64, uint32, uint64, sint32, sint64, bool, enum\n */\n WireType[WireType[\"Varint\"] = 0] = \"Varint\";\n /**\n * Used for fixed64, sfixed64, double.\n * Always 8 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit64\"] = 1] = \"Bit64\";\n /**\n * Used for string, bytes, embedded messages, packed repeated fields\n *\n * Only repeated numeric types (types which use the varint, 32-bit,\n * or 64-bit wire types) can be packed. In proto3, such fields are\n * packed by default.\n */\n WireType[WireType[\"LengthDelimited\"] = 2] = \"LengthDelimited\";\n /**\n * Used for groups\n * @deprecated\n */\n WireType[WireType[\"StartGroup\"] = 3] = \"StartGroup\";\n /**\n * Used for groups\n * @deprecated\n */\n WireType[WireType[\"EndGroup\"] = 4] = \"EndGroup\";\n /**\n * Used for fixed32, sfixed32, float.\n * Always 4 bytes with little-endian byte order.\n */\n WireType[WireType[\"Bit32\"] = 5] = \"Bit32\";\n})(WireType = exports.WireType || (exports.WireType = {}));\n", "\"use strict\";\n// Copyright 2008 Google Inc. All rights reserved.\n//\n// Redistribution and use in source and binary forms, with or without\n// modification, are permitted provided that the following conditions are\n// met:\n//\n// * Redistributions of source code must retain the above copyright\n// notice, this list of conditions and the following disclaimer.\n// * Redistributions in binary form must reproduce the above\n// copyright notice, this list of conditions and the following disclaimer\n// in the documentation and/or other materials provided with the\n// distribution.\n// * Neither the name of Google Inc. nor the names of its\n// contributors may be used to endorse or promote products derived from\n// this software without specific prior written permission.\n//\n// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n// \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n//\n// Code generated by the Protocol Buffer compiler is owned by the owner\n// of the input file used when generating it. This code is not\n// standalone and requires a support library to be linked with it. This\n// support library is itself covered by the above license.\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.varint32read = exports.varint32write = exports.int64toString = exports.int64fromString = exports.varint64write = exports.varint64read = void 0;\n/**\n * Read a 64 bit varint as two JS numbers.\n *\n * Returns tuple:\n * [0]: low bits\n * [0]: high bits\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L175\n */\nfunction varint64read() {\n let lowBits = 0;\n let highBits = 0;\n for (let shift = 0; shift < 28; shift += 7) {\n let b = this.buf[this.pos++];\n lowBits |= (b & 0x7F) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n let middleByte = this.buf[this.pos++];\n // last four bits of the first 32 bit number\n lowBits |= (middleByte & 0x0F) << 28;\n // 3 upper bits are part of the next 32 bit number\n highBits = (middleByte & 0x70) >> 4;\n if ((middleByte & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n for (let shift = 3; shift <= 31; shift += 7) {\n let b = this.buf[this.pos++];\n highBits |= (b & 0x7F) << shift;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return [lowBits, highBits];\n }\n }\n throw new Error('invalid varint');\n}\nexports.varint64read = varint64read;\n/**\n * Write a 64 bit varint, given as two JS numbers, to the given bytes array.\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/writer.js#L344\n */\nfunction varint64write(lo, hi, bytes) {\n for (let i = 0; i < 28; i = i + 7) {\n const shift = lo >>> i;\n const hasNext = !((shift >>> 7) == 0 && hi == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xFF;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n const splitBits = ((lo >>> 28) & 0x0F) | ((hi & 0x07) << 4);\n const hasMoreBits = !((hi >> 3) == 0);\n bytes.push((hasMoreBits ? splitBits | 0x80 : splitBits) & 0xFF);\n if (!hasMoreBits) {\n return;\n }\n for (let i = 3; i < 31; i = i + 7) {\n const shift = hi >>> i;\n const hasNext = !((shift >>> 7) == 0);\n const byte = (hasNext ? shift | 0x80 : shift) & 0xFF;\n bytes.push(byte);\n if (!hasNext) {\n return;\n }\n }\n bytes.push((hi >>> 31) & 0x01);\n}\nexports.varint64write = varint64write;\n// constants for binary math\nconst TWO_PWR_32_DBL = (1 << 16) * (1 << 16);\n/**\n * Parse decimal string of 64 bit integer value as two JS numbers.\n *\n * Returns tuple:\n * [0]: minus sign?\n * [1]: low bits\n * [2]: high bits\n *\n * Copyright 2008 Google Inc.\n */\nfunction int64fromString(dec) {\n // Check for minus sign.\n let minus = dec[0] == '-';\n if (minus)\n dec = dec.slice(1);\n // Work 6 decimal digits at a time, acting like we're converting base 1e6\n // digits to binary. This is safe to do with floating point math because\n // Number.isSafeInteger(ALL_32_BITS * 1e6) == true.\n const base = 1e6;\n let lowBits = 0;\n let highBits = 0;\n function add1e6digit(begin, end) {\n // Note: Number('') is 0.\n const digit1e6 = Number(dec.slice(begin, end));\n highBits *= base;\n lowBits = lowBits * base + digit1e6;\n // Carry bits from lowBits to highBits\n if (lowBits >= TWO_PWR_32_DBL) {\n highBits = highBits + ((lowBits / TWO_PWR_32_DBL) | 0);\n lowBits = lowBits % TWO_PWR_32_DBL;\n }\n }\n add1e6digit(-24, -18);\n add1e6digit(-18, -12);\n add1e6digit(-12, -6);\n add1e6digit(-6);\n return [minus, lowBits, highBits];\n}\nexports.int64fromString = int64fromString;\n/**\n * Format 64 bit integer value (as two JS numbers) to decimal string.\n *\n * Copyright 2008 Google Inc.\n */\nfunction int64toString(bitsLow, bitsHigh) {\n // Skip the expensive conversion if the number is small enough to use the\n // built-in conversions.\n if ((bitsHigh >>> 0) <= 0x1FFFFF) {\n return '' + (TWO_PWR_32_DBL * bitsHigh + (bitsLow >>> 0));\n }\n // What this code is doing is essentially converting the input number from\n // base-2 to base-1e7, which allows us to represent the 64-bit range with\n // only 3 (very large) digits. Those digits are then trivial to convert to\n // a base-10 string.\n // The magic numbers used here are -\n // 2^24 = 16777216 = (1,6777216) in base-1e7.\n // 2^48 = 281474976710656 = (2,8147497,6710656) in base-1e7.\n // Split 32:32 representation into 16:24:24 representation so our\n // intermediate digits don't overflow.\n let low = bitsLow & 0xFFFFFF;\n let mid = (((bitsLow >>> 24) | (bitsHigh << 8)) >>> 0) & 0xFFFFFF;\n let high = (bitsHigh >> 16) & 0xFFFF;\n // Assemble our three base-1e7 digits, ignoring carries. The maximum\n // value in a digit at this step is representable as a 48-bit integer, which\n // can be stored in a 64-bit floating point number.\n let digitA = low + (mid * 6777216) + (high * 6710656);\n let digitB = mid + (high * 8147497);\n let digitC = (high * 2);\n // Apply carries from A to B and from B to C.\n let base = 10000000;\n if (digitA >= base) {\n digitB += Math.floor(digitA / base);\n digitA %= base;\n }\n if (digitB >= base) {\n digitC += Math.floor(digitB / base);\n digitB %= base;\n }\n // Convert base-1e7 digits to base-10, with optional leading zeroes.\n function decimalFrom1e7(digit1e7, needLeadingZeros) {\n let partial = digit1e7 ? String(digit1e7) : '';\n if (needLeadingZeros) {\n return '0000000'.slice(partial.length) + partial;\n }\n return partial;\n }\n return decimalFrom1e7(digitC, /*needLeadingZeros=*/ 0) +\n decimalFrom1e7(digitB, /*needLeadingZeros=*/ digitC) +\n // If the final 1e7 digit didn't need leading zeros, we would have\n // returned via the trivial code path at the top.\n decimalFrom1e7(digitA, /*needLeadingZeros=*/ 1);\n}\nexports.int64toString = int64toString;\n/**\n * Write a 32 bit varint, signed or unsigned. Same as `varint64write(0, value, bytes)`\n *\n * Copyright 2008 Google Inc. All rights reserved.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/1b18833f4f2a2f681f4e4a25cdf3b0a43115ec26/js/binary/encoder.js#L144\n */\nfunction varint32write(value, bytes) {\n if (value >= 0) {\n // write value as varint 32\n while (value > 0x7f) {\n bytes.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n bytes.push(value);\n }\n else {\n for (let i = 0; i < 9; i++) {\n bytes.push(value & 127 | 128);\n value = value >> 7;\n }\n bytes.push(1);\n }\n}\nexports.varint32write = varint32write;\n/**\n * Read an unsigned 32 bit varint.\n *\n * See https://github.com/protocolbuffers/protobuf/blob/8a71927d74a4ce34efe2d8769fda198f52d20d12/js/experimental/runtime/kernel/buffer_decoder.js#L220\n */\nfunction varint32read() {\n let b = this.buf[this.pos++];\n let result = b & 0x7F;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7F) << 7;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7F) << 14;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n b = this.buf[this.pos++];\n result |= (b & 0x7F) << 21;\n if ((b & 0x80) == 0) {\n this.assertBounds();\n return result;\n }\n // Extract only last 4 bits\n b = this.buf[this.pos++];\n result |= (b & 0x0F) << 28;\n for (let readBytes = 5; ((b & 0x80) !== 0) && readBytes < 10; readBytes++)\n b = this.buf[this.pos++];\n if ((b & 0x80) != 0)\n throw new Error('invalid varint');\n this.assertBounds();\n // Result can have 32 bits, convert it to unsigned\n return result >>> 0;\n}\nexports.varint32read = varint32read;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.PbLong = exports.PbULong = exports.detectBi = void 0;\nconst goog_varint_1 = require(\"./goog-varint\");\nlet BI;\nfunction detectBi() {\n const dv = new DataView(new ArrayBuffer(8));\n const ok = globalThis.BigInt !== undefined\n && typeof dv.getBigInt64 === \"function\"\n && typeof dv.getBigUint64 === \"function\"\n && typeof dv.setBigInt64 === \"function\"\n && typeof dv.setBigUint64 === \"function\";\n BI = ok ? {\n MIN: BigInt(\"-9223372036854775808\"),\n MAX: BigInt(\"9223372036854775807\"),\n UMIN: BigInt(\"0\"),\n UMAX: BigInt(\"18446744073709551615\"),\n C: BigInt,\n V: dv,\n } : undefined;\n}\nexports.detectBi = detectBi;\ndetectBi();\nfunction assertBi(bi) {\n if (!bi)\n throw new Error(\"BigInt unavailable, see https://github.com/timostamm/protobuf-ts/blob/v1.0.8/MANUAL.md#bigint-support\");\n}\n// used to validate from(string) input (when bigint is unavailable)\nconst RE_DECIMAL_STR = /^-?[0-9]+$/;\n// constants for binary math\nconst TWO_PWR_32_DBL = 0x100000000;\nconst HALF_2_PWR_32 = 0x080000000;\n// base class for PbLong and PbULong provides shared code\nclass SharedPbLong {\n /**\n * Create a new instance with the given bits.\n */\n constructor(lo, hi) {\n this.lo = lo | 0;\n this.hi = hi | 0;\n }\n /**\n * Is this instance equal to 0?\n */\n isZero() {\n return this.lo == 0 && this.hi == 0;\n }\n /**\n * Convert to a native number.\n */\n toNumber() {\n let result = this.hi * TWO_PWR_32_DBL + (this.lo >>> 0);\n if (!Number.isSafeInteger(result))\n throw new Error(\"cannot convert to safe number\");\n return result;\n }\n}\n/**\n * 64-bit unsigned integer as two 32-bit values.\n * Converts between `string`, `number` and `bigint` representations.\n */\nclass PbULong extends SharedPbLong {\n /**\n * Create instance from a `string`, `number` or `bigint`.\n */\n static from(value) {\n if (BI)\n // noinspection FallThroughInSwitchStatementJS\n switch (typeof value) {\n case \"string\":\n if (value == \"0\")\n return this.ZERO;\n if (value == \"\")\n throw new Error('string is no integer');\n value = BI.C(value);\n case \"number\":\n if (value === 0)\n return this.ZERO;\n value = BI.C(value);\n case \"bigint\":\n if (!value)\n return this.ZERO;\n if (value < BI.UMIN)\n throw new Error('signed value for ulong');\n if (value > BI.UMAX)\n throw new Error('ulong too large');\n BI.V.setBigUint64(0, value, true);\n return new PbULong(BI.V.getInt32(0, true), BI.V.getInt32(4, true));\n }\n else\n switch (typeof value) {\n case \"string\":\n if (value == \"0\")\n return this.ZERO;\n value = value.trim();\n if (!RE_DECIMAL_STR.test(value))\n throw new Error('string is no integer');\n let [minus, lo, hi] = goog_varint_1.int64fromString(value);\n if (minus)\n throw new Error('signed value for ulong');\n return new PbULong(lo, hi);\n case \"number\":\n if (value == 0)\n return this.ZERO;\n if (!Number.isSafeInteger(value))\n throw new Error('number is no integer');\n if (value < 0)\n throw new Error('signed value for ulong');\n return new PbULong(value, value / TWO_PWR_32_DBL);\n }\n throw new Error('unknown value ' + typeof value);\n }\n /**\n * Convert to decimal string.\n */\n toString() {\n return BI ? this.toBigInt().toString() : goog_varint_1.int64toString(this.lo, this.hi);\n }\n /**\n * Convert to native bigint.\n */\n toBigInt() {\n assertBi(BI);\n BI.V.setInt32(0, this.lo, true);\n BI.V.setInt32(4, this.hi, true);\n return BI.V.getBigUint64(0, true);\n }\n}\nexports.PbULong = PbULong;\n/**\n * ulong 0 singleton.\n */\nPbULong.ZERO = new PbULong(0, 0);\n/**\n * 64-bit signed integer as two 32-bit values.\n * Converts between `string`, `number` and `bigint` representations.\n */\nclass PbLong extends SharedPbLong {\n /**\n * Create instance from a `string`, `number` or `bigint`.\n */\n static from(value) {\n if (BI)\n // noinspection FallThroughInSwitchStatementJS\n switch (typeof value) {\n case \"string\":\n if (value == \"0\")\n return this.ZERO;\n if (value == \"\")\n throw new Error('string is no integer');\n value = BI.C(value);\n case \"number\":\n if (value === 0)\n return this.ZERO;\n value = BI.C(value);\n case \"bigint\":\n if (!value)\n return this.ZERO;\n if (value < BI.MIN)\n throw new Error('signed long too small');\n if (value > BI.MAX)\n throw new Error('signed long too large');\n BI.V.setBigInt64(0, value, true);\n return new PbLong(BI.V.getInt32(0, true), BI.V.getInt32(4, true));\n }\n else\n switch (typeof value) {\n case \"string\":\n if (value == \"0\")\n return this.ZERO;\n value = value.trim();\n if (!RE_DECIMAL_STR.test(value))\n throw new Error('string is no integer');\n let [minus, lo, hi] = goog_varint_1.int64fromString(value);\n if (minus) {\n if (hi > HALF_2_PWR_32 || (hi == HALF_2_PWR_32 && lo != 0))\n throw new Error('signed long too small');\n }\n else if (hi >= HALF_2_PWR_32)\n throw new Error('signed long too large');\n let pbl = new PbLong(lo, hi);\n return minus ? pbl.negate() : pbl;\n case \"number\":\n if (value == 0)\n return this.ZERO;\n if (!Number.isSafeInteger(value))\n throw new Error('number is no integer');\n return value > 0\n ? new PbLong(value, value / TWO_PWR_32_DBL)\n : new PbLong(-value, -value / TWO_PWR_32_DBL).negate();\n }\n throw new Error('unknown value ' + typeof value);\n }\n /**\n * Do we have a minus sign?\n */\n isNegative() {\n return (this.hi & HALF_2_PWR_32) !== 0;\n }\n /**\n * Negate two's complement.\n * Invert all the bits and add one to the result.\n */\n negate() {\n let hi = ~this.hi, lo = this.lo;\n if (lo)\n lo = ~lo + 1;\n else\n hi += 1;\n return new PbLong(lo, hi);\n }\n /**\n * Convert to decimal string.\n */\n toString() {\n if (BI)\n return this.toBigInt().toString();\n if (this.isNegative()) {\n let n = this.negate();\n return '-' + goog_varint_1.int64toString(n.lo, n.hi);\n }\n return goog_varint_1.int64toString(this.lo, this.hi);\n }\n /**\n * Convert to native bigint.\n */\n toBigInt() {\n assertBi(BI);\n BI.V.setInt32(0, this.lo, true);\n BI.V.setInt32(4, this.hi, true);\n return BI.V.getBigInt64(0, true);\n }\n}\nexports.PbLong = PbLong;\n/**\n * long 0 singleton.\n */\nPbLong.ZERO = new PbLong(0, 0);\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BinaryReader = exports.binaryReadOptions = void 0;\nconst binary_format_contract_1 = require(\"./binary-format-contract\");\nconst pb_long_1 = require(\"./pb-long\");\nconst goog_varint_1 = require(\"./goog-varint\");\nconst defaultsRead = {\n readUnknownField: true,\n readerFactory: bytes => new BinaryReader(bytes),\n};\n/**\n * Make options for reading binary data form partial options.\n */\nfunction binaryReadOptions(options) {\n return options ? Object.assign(Object.assign({}, defaultsRead), options) : defaultsRead;\n}\nexports.binaryReadOptions = binaryReadOptions;\nclass BinaryReader {\n constructor(buf, textDecoder) {\n this.varint64 = goog_varint_1.varint64read; // dirty cast for `this`\n /**\n * Read a `uint32` field, an unsigned 32 bit varint.\n */\n this.uint32 = goog_varint_1.varint32read; // dirty cast for `this` and access to protected `buf`\n this.buf = buf;\n this.len = buf.length;\n this.pos = 0;\n this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength);\n this.textDecoder = textDecoder !== null && textDecoder !== void 0 ? textDecoder : new TextDecoder(\"utf-8\", {\n fatal: true,\n ignoreBOM: true,\n });\n }\n /**\n * Reads a tag - field number and wire type.\n */\n tag() {\n let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7;\n if (fieldNo <= 0 || wireType < 0 || wireType > 5)\n throw new Error(\"illegal tag: field no \" + fieldNo + \" wire type \" + wireType);\n return [fieldNo, wireType];\n }\n /**\n * Skip one element on the wire and return the skipped data.\n * Supports WireType.StartGroup since v2.0.0-alpha.23.\n */\n skip(wireType) {\n let start = this.pos;\n // noinspection FallThroughInSwitchStatementJS\n switch (wireType) {\n case binary_format_contract_1.WireType.Varint:\n while (this.buf[this.pos++] & 0x80) {\n // ignore\n }\n break;\n case binary_format_contract_1.WireType.Bit64:\n this.pos += 4;\n case binary_format_contract_1.WireType.Bit32:\n this.pos += 4;\n break;\n case binary_format_contract_1.WireType.LengthDelimited:\n let len = this.uint32();\n this.pos += len;\n break;\n case binary_format_contract_1.WireType.StartGroup:\n // From descriptor.proto: Group type is deprecated, not supported in proto3.\n // But we must still be able to parse and treat as unknown.\n let t;\n while ((t = this.tag()[1]) !== binary_format_contract_1.WireType.EndGroup) {\n this.skip(t);\n }\n break;\n default:\n throw new Error(\"cant skip wire type \" + wireType);\n }\n this.assertBounds();\n return this.buf.subarray(start, this.pos);\n }\n /**\n * Throws error if position in byte array is out of range.\n */\n assertBounds() {\n if (this.pos > this.len)\n throw new RangeError(\"premature EOF\");\n }\n /**\n * Read a `int32` field, a signed 32 bit varint.\n */\n int32() {\n return this.uint32() | 0;\n }\n /**\n * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint.\n */\n sint32() {\n let zze = this.uint32();\n // decode zigzag\n return (zze >>> 1) ^ -(zze & 1);\n }\n /**\n * Read a `int64` field, a signed 64-bit varint.\n */\n int64() {\n return new pb_long_1.PbLong(...this.varint64());\n }\n /**\n * Read a `uint64` field, an unsigned 64-bit varint.\n */\n uint64() {\n return new pb_long_1.PbULong(...this.varint64());\n }\n /**\n * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64() {\n let [lo, hi] = this.varint64();\n // decode zig zag\n let s = -(lo & 1);\n lo = ((lo >>> 1 | (hi & 1) << 31) ^ s);\n hi = (hi >>> 1 ^ s);\n return new pb_long_1.PbLong(lo, hi);\n }\n /**\n * Read a `bool` field, a variant.\n */\n bool() {\n let [lo, hi] = this.varint64();\n return lo !== 0 || hi !== 0;\n }\n /**\n * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer.\n */\n fixed32() {\n return this.view.getUint32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `sfixed32` field, a signed, fixed-length 32-bit integer.\n */\n sfixed32() {\n return this.view.getInt32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer.\n */\n fixed64() {\n return new pb_long_1.PbULong(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `fixed64` field, a signed, fixed-length 64-bit integer.\n */\n sfixed64() {\n return new pb_long_1.PbLong(this.sfixed32(), this.sfixed32());\n }\n /**\n * Read a `float` field, 32-bit floating point number.\n */\n float() {\n return this.view.getFloat32((this.pos += 4) - 4, true);\n }\n /**\n * Read a `double` field, a 64-bit floating point number.\n */\n double() {\n return this.view.getFloat64((this.pos += 8) - 8, true);\n }\n /**\n * Read a `bytes` field, length-delimited arbitrary data.\n */\n bytes() {\n let len = this.uint32();\n let start = this.pos;\n this.pos += len;\n this.assertBounds();\n return this.buf.subarray(start, start + len);\n }\n /**\n * Read a `string` field, length-delimited data converted to UTF-8 text.\n */\n string() {\n return this.textDecoder.decode(this.bytes());\n }\n}\nexports.BinaryReader = BinaryReader;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.assertFloat32 = exports.assertUInt32 = exports.assertInt32 = exports.assertNever = exports.assert = void 0;\n/**\n * assert that condition is true or throw error (with message)\n */\nfunction assert(condition, msg) {\n if (!condition) {\n throw new Error(msg);\n }\n}\nexports.assert = assert;\n/**\n * assert that value cannot exist = type `never`. throw runtime error if it does.\n */\nfunction assertNever(value, msg) {\n throw new Error(msg !== null && msg !== void 0 ? msg : 'Unexpected object: ' + value);\n}\nexports.assertNever = assertNever;\nconst FLOAT32_MAX = 3.4028234663852886e+38, FLOAT32_MIN = -3.4028234663852886e+38, UINT32_MAX = 0xFFFFFFFF, INT32_MAX = 0X7FFFFFFF, INT32_MIN = -0X80000000;\nfunction assertInt32(arg) {\n if (typeof arg !== \"number\")\n throw new Error('invalid int 32: ' + typeof arg);\n if (!Number.isInteger(arg) || arg > INT32_MAX || arg < INT32_MIN)\n throw new Error('invalid int 32: ' + arg);\n}\nexports.assertInt32 = assertInt32;\nfunction assertUInt32(arg) {\n if (typeof arg !== \"number\")\n throw new Error('invalid uint 32: ' + typeof arg);\n if (!Number.isInteger(arg) || arg > UINT32_MAX || arg < 0)\n throw new Error('invalid uint 32: ' + arg);\n}\nexports.assertUInt32 = assertUInt32;\nfunction assertFloat32(arg) {\n if (typeof arg !== \"number\")\n throw new Error('invalid float 32: ' + typeof arg);\n if (!Number.isFinite(arg))\n return;\n if (arg > FLOAT32_MAX || arg < FLOAT32_MIN)\n throw new Error('invalid float 32: ' + arg);\n}\nexports.assertFloat32 = assertFloat32;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.BinaryWriter = exports.binaryWriteOptions = void 0;\nconst pb_long_1 = require(\"./pb-long\");\nconst goog_varint_1 = require(\"./goog-varint\");\nconst assert_1 = require(\"./assert\");\nconst defaultsWrite = {\n writeUnknownFields: true,\n writerFactory: () => new BinaryWriter(),\n};\n/**\n * Make options for writing binary data form partial options.\n */\nfunction binaryWriteOptions(options) {\n return options ? Object.assign(Object.assign({}, defaultsWrite), options) : defaultsWrite;\n}\nexports.binaryWriteOptions = binaryWriteOptions;\nclass BinaryWriter {\n constructor(textEncoder) {\n /**\n * Previous fork states.\n */\n this.stack = [];\n this.textEncoder = textEncoder !== null && textEncoder !== void 0 ? textEncoder : new TextEncoder();\n this.chunks = [];\n this.buf = [];\n }\n /**\n * Return all bytes written and reset this writer.\n */\n finish() {\n this.chunks.push(new Uint8Array(this.buf)); // flush the buffer\n let len = 0;\n for (let i = 0; i < this.chunks.length; i++)\n len += this.chunks[i].length;\n let bytes = new Uint8Array(len);\n let offset = 0;\n for (let i = 0; i < this.chunks.length; i++) {\n bytes.set(this.chunks[i], offset);\n offset += this.chunks[i].length;\n }\n this.chunks = [];\n return bytes;\n }\n /**\n * Start a new fork for length-delimited data like a message\n * or a packed repeated field.\n *\n * Must be joined later with `join()`.\n */\n fork() {\n this.stack.push({ chunks: this.chunks, buf: this.buf });\n this.chunks = [];\n this.buf = [];\n return this;\n }\n /**\n * Join the last fork. Write its length and bytes, then\n * return to the previous state.\n */\n join() {\n // get chunk of fork\n let chunk = this.finish();\n // restore previous state\n let prev = this.stack.pop();\n if (!prev)\n throw new Error('invalid state, fork stack empty');\n this.chunks = prev.chunks;\n this.buf = prev.buf;\n // write length of chunk as varint\n this.uint32(chunk.byteLength);\n return this.raw(chunk);\n }\n /**\n * Writes a tag (field number and wire type).\n *\n * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`.\n *\n * Generated code should compute the tag ahead of time and call `uint32()`.\n */\n tag(fieldNo, type) {\n return this.uint32((fieldNo << 3 | type) >>> 0);\n }\n /**\n * Write a chunk of raw bytes.\n */\n raw(chunk) {\n if (this.buf.length) {\n this.chunks.push(new Uint8Array(this.buf));\n this.buf = [];\n }\n this.chunks.push(chunk);\n return this;\n }\n /**\n * Write a `uint32` value, an unsigned 32 bit varint.\n */\n uint32(value) {\n assert_1.assertUInt32(value);\n // write value as varint 32, inlined for speed\n while (value > 0x7f) {\n this.buf.push((value & 0x7f) | 0x80);\n value = value >>> 7;\n }\n this.buf.push(value);\n return this;\n }\n /**\n * Write a `int32` value, a signed 32 bit varint.\n */\n int32(value) {\n assert_1.assertInt32(value);\n goog_varint_1.varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `bool` value, a variant.\n */\n bool(value) {\n this.buf.push(value ? 1 : 0);\n return this;\n }\n /**\n * Write a `bytes` value, length-delimited arbitrary data.\n */\n bytes(value) {\n this.uint32(value.byteLength); // write length of chunk as varint\n return this.raw(value);\n }\n /**\n * Write a `string` value, length-delimited data converted to UTF-8 text.\n */\n string(value) {\n let chunk = this.textEncoder.encode(value);\n this.uint32(chunk.byteLength); // write length of chunk as varint\n return this.raw(chunk);\n }\n /**\n * Write a `float` value, 32-bit floating point number.\n */\n float(value) {\n assert_1.assertFloat32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setFloat32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `double` value, a 64-bit floating point number.\n */\n double(value) {\n let chunk = new Uint8Array(8);\n new DataView(chunk.buffer).setFloat64(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer.\n */\n fixed32(value) {\n assert_1.assertUInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setUint32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sfixed32` value, a signed, fixed-length 32-bit integer.\n */\n sfixed32(value) {\n assert_1.assertInt32(value);\n let chunk = new Uint8Array(4);\n new DataView(chunk.buffer).setInt32(0, value, true);\n return this.raw(chunk);\n }\n /**\n * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint.\n */\n sint32(value) {\n assert_1.assertInt32(value);\n // zigzag encode\n value = ((value << 1) ^ (value >> 31)) >>> 0;\n goog_varint_1.varint32write(value, this.buf);\n return this;\n }\n /**\n * Write a `fixed64` value, a signed, fixed-length 64-bit integer.\n */\n sfixed64(value) {\n let chunk = new Uint8Array(8);\n let view = new DataView(chunk.buffer);\n let long = pb_long_1.PbLong.from(value);\n view.setInt32(0, long.lo, true);\n view.setInt32(4, long.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer.\n */\n fixed64(value) {\n let chunk = new Uint8Array(8);\n let view = new DataView(chunk.buffer);\n let long = pb_long_1.PbULong.from(value);\n view.setInt32(0, long.lo, true);\n view.setInt32(4, long.hi, true);\n return this.raw(chunk);\n }\n /**\n * Write a `int64` value, a signed 64-bit varint.\n */\n int64(value) {\n let long = pb_long_1.PbLong.from(value);\n goog_varint_1.varint64write(long.lo, long.hi, this.buf);\n return this;\n }\n /**\n * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint.\n */\n sint64(value) {\n let long = pb_long_1.PbLong.from(value), \n // zigzag encode\n sign = long.hi >> 31, lo = (long.lo << 1) ^ sign, hi = ((long.hi << 1) | (long.lo >>> 31)) ^ sign;\n goog_varint_1.varint64write(lo, hi, this.buf);\n return this;\n }\n /**\n * Write a `uint64` value, an unsigned 64-bit varint.\n */\n uint64(value) {\n let long = pb_long_1.PbULong.from(value);\n goog_varint_1.varint64write(long.lo, long.hi, this.buf);\n return this;\n }\n}\nexports.BinaryWriter = BinaryWriter;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeJsonOptions = exports.jsonWriteOptions = exports.jsonReadOptions = void 0;\nconst defaultsWrite = {\n emitDefaultValues: false,\n enumAsInteger: false,\n useProtoFieldName: false,\n prettySpaces: 0,\n}, defaultsRead = {\n ignoreUnknownFields: false,\n};\n/**\n * Make options for reading JSON data from partial options.\n */\nfunction jsonReadOptions(options) {\n return options ? Object.assign(Object.assign({}, defaultsRead), options) : defaultsRead;\n}\nexports.jsonReadOptions = jsonReadOptions;\n/**\n * Make options for writing JSON data from partial options.\n */\nfunction jsonWriteOptions(options) {\n return options ? Object.assign(Object.assign({}, defaultsWrite), options) : defaultsWrite;\n}\nexports.jsonWriteOptions = jsonWriteOptions;\n/**\n * Merges JSON write or read options. Later values override earlier values. Type registries are merged.\n */\nfunction mergeJsonOptions(a, b) {\n var _a, _b;\n let c = Object.assign(Object.assign({}, a), b);\n c.typeRegistry = [...((_a = a === null || a === void 0 ? void 0 : a.typeRegistry) !== null && _a !== void 0 ? _a : []), ...((_b = b === null || b === void 0 ? void 0 : b.typeRegistry) !== null && _b !== void 0 ? _b : [])];\n return c;\n}\nexports.mergeJsonOptions = mergeJsonOptions;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MESSAGE_TYPE = void 0;\n/**\n * The symbol used as a key on message objects to store the message type.\n *\n * Note that this is an experimental feature - it is here to stay, but\n * implementation details may change without notice.\n */\nexports.MESSAGE_TYPE = Symbol.for(\"protobuf-ts/message-type\");\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.lowerCamelCase = void 0;\n/**\n * Converts snake_case to lowerCamelCase.\n *\n * Should behave like protoc:\n * https://github.com/protocolbuffers/protobuf/blob/e8ae137c96444ea313485ed1118c5e43b2099cf1/src/google/protobuf/compiler/java/java_helpers.cc#L118\n */\nfunction lowerCamelCase(snakeCase) {\n let capNext = false;\n const sb = [];\n for (let i = 0; i < snakeCase.length; i++) {\n let next = snakeCase.charAt(i);\n if (next == '_') {\n capNext = true;\n }\n else if (/\\d/.test(next)) {\n sb.push(next);\n capNext = true;\n }\n else if (capNext) {\n sb.push(next.toUpperCase());\n capNext = false;\n }\n else if (i == 0) {\n sb.push(next.toLowerCase());\n }\n else {\n sb.push(next);\n }\n }\n return sb.join('');\n}\nexports.lowerCamelCase = lowerCamelCase;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.readMessageOption = exports.readFieldOption = exports.readFieldOptions = exports.normalizeFieldInfo = exports.RepeatType = exports.LongType = exports.ScalarType = void 0;\nconst lower_camel_case_1 = require(\"./lower-camel-case\");\n/**\n * Scalar value types. This is a subset of field types declared by protobuf\n * enum google.protobuf.FieldDescriptorProto.Type The types GROUP and MESSAGE\n * are omitted, but the numerical values are identical.\n */\nvar ScalarType;\n(function (ScalarType) {\n // 0 is reserved for errors.\n // Order is weird for historical reasons.\n ScalarType[ScalarType[\"DOUBLE\"] = 1] = \"DOUBLE\";\n ScalarType[ScalarType[\"FLOAT\"] = 2] = \"FLOAT\";\n // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if\n // negative values are likely.\n ScalarType[ScalarType[\"INT64\"] = 3] = \"INT64\";\n ScalarType[ScalarType[\"UINT64\"] = 4] = \"UINT64\";\n // Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if\n // negative values are likely.\n ScalarType[ScalarType[\"INT32\"] = 5] = \"INT32\";\n ScalarType[ScalarType[\"FIXED64\"] = 6] = \"FIXED64\";\n ScalarType[ScalarType[\"FIXED32\"] = 7] = \"FIXED32\";\n ScalarType[ScalarType[\"BOOL\"] = 8] = \"BOOL\";\n ScalarType[ScalarType[\"STRING\"] = 9] = \"STRING\";\n // Tag-delimited aggregate.\n // Group type is deprecated and not supported in proto3. However, Proto3\n // implementations should still be able to parse the group wire format and\n // treat group fields as unknown fields.\n // TYPE_GROUP = 10,\n // TYPE_MESSAGE = 11, // Length-delimited aggregate.\n // New in version 2.\n ScalarType[ScalarType[\"BYTES\"] = 12] = \"BYTES\";\n ScalarType[ScalarType[\"UINT32\"] = 13] = \"UINT32\";\n // TYPE_ENUM = 14,\n ScalarType[ScalarType[\"SFIXED32\"] = 15] = \"SFIXED32\";\n ScalarType[ScalarType[\"SFIXED64\"] = 16] = \"SFIXED64\";\n ScalarType[ScalarType[\"SINT32\"] = 17] = \"SINT32\";\n ScalarType[ScalarType[\"SINT64\"] = 18] = \"SINT64\";\n})(ScalarType = exports.ScalarType || (exports.ScalarType = {}));\n/**\n * JavaScript representation of 64 bit integral types. Equivalent to the\n * field option \"jstype\".\n *\n * By default, protobuf-ts represents 64 bit types as `bigint`.\n *\n * You can change the default behaviour by enabling the plugin parameter\n * `long_type_string`, which will represent 64 bit types as `string`.\n *\n * Alternatively, you can change the behaviour for individual fields\n * with the field option \"jstype\":\n *\n * ```protobuf\n * uint64 my_field = 1 [jstype = JS_STRING];\n * uint64 other_field = 2 [jstype = JS_NUMBER];\n * ```\n */\nvar LongType;\n(function (LongType) {\n /**\n * Use JavaScript `bigint`.\n *\n * Field option `[jstype = JS_NORMAL]`.\n */\n LongType[LongType[\"BIGINT\"] = 0] = \"BIGINT\";\n /**\n * Use JavaScript `string`.\n *\n * Field option `[jstype = JS_STRING]`.\n */\n LongType[LongType[\"STRING\"] = 1] = \"STRING\";\n /**\n * Use JavaScript `number`.\n *\n * Large values will loose precision.\n *\n * Field option `[jstype = JS_NUMBER]`.\n */\n LongType[LongType[\"NUMBER\"] = 2] = \"NUMBER\";\n})(LongType = exports.LongType || (exports.LongType = {}));\n/**\n * Protobuf 2.1.0 introduced packed repeated fields.\n * Setting the field option `[packed = true]` enables packing.\n *\n * In proto3, all repeated fields are packed by default.\n * Setting the field option `[packed = false]` disables packing.\n *\n * Packed repeated fields are encoded with a single tag,\n * then a length-delimiter, then the element values.\n *\n * Unpacked repeated fields are encoded with a tag and\n * value for each element.\n *\n * `bytes` and `string` cannot be packed.\n */\nvar RepeatType;\n(function (RepeatType) {\n /**\n * The field is not repeated.\n */\n RepeatType[RepeatType[\"NO\"] = 0] = \"NO\";\n /**\n * The field is repeated and should be packed.\n * Invalid for `bytes` and `string`, they cannot be packed.\n */\n RepeatType[RepeatType[\"PACKED\"] = 1] = \"PACKED\";\n /**\n * The field is repeated but should not be packed.\n * The only valid repeat type for repeated `bytes` and `string`.\n */\n RepeatType[RepeatType[\"UNPACKED\"] = 2] = \"UNPACKED\";\n})(RepeatType = exports.RepeatType || (exports.RepeatType = {}));\n/**\n * Turns PartialFieldInfo into FieldInfo.\n */\nfunction normalizeFieldInfo(field) {\n var _a, _b, _c, _d;\n field.localName = (_a = field.localName) !== null && _a !== void 0 ? _a : lower_camel_case_1.lowerCamelCase(field.name);\n field.jsonName = (_b = field.jsonName) !== null && _b !== void 0 ? _b : lower_camel_case_1.lowerCamelCase(field.name);\n field.repeat = (_c = field.repeat) !== null && _c !== void 0 ? _c : RepeatType.NO;\n field.opt = (_d = field.opt) !== null && _d !== void 0 ? _d : (field.repeat ? false : field.oneof ? false : field.kind == \"message\");\n return field;\n}\nexports.normalizeFieldInfo = normalizeFieldInfo;\n/**\n * Read custom field options from a generated message type.\n *\n * @deprecated use readFieldOption()\n */\nfunction readFieldOptions(messageType, fieldName, extensionName, extensionType) {\n var _a;\n const options = (_a = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a === void 0 ? void 0 : _a.options;\n return options && options[extensionName] ? extensionType.fromJson(options[extensionName]) : undefined;\n}\nexports.readFieldOptions = readFieldOptions;\nfunction readFieldOption(messageType, fieldName, extensionName, extensionType) {\n var _a;\n const options = (_a = messageType.fields.find((m, i) => m.localName == fieldName || i == fieldName)) === null || _a === void 0 ? void 0 : _a.options;\n if (!options) {\n return undefined;\n }\n const optionVal = options[extensionName];\n if (optionVal === undefined) {\n return optionVal;\n }\n return extensionType ? extensionType.fromJson(optionVal) : optionVal;\n}\nexports.readFieldOption = readFieldOption;\nfunction readMessageOption(messageType, extensionName, extensionType) {\n const options = messageType.options;\n const optionVal = options[extensionName];\n if (optionVal === undefined) {\n return optionVal;\n }\n return extensionType ? extensionType.fromJson(optionVal) : optionVal;\n}\nexports.readMessageOption = readMessageOption;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.getSelectedOneofValue = exports.clearOneofValue = exports.setUnknownOneofValue = exports.setOneofValue = exports.getOneofValue = exports.isOneofGroup = void 0;\n/**\n * Is the given value a valid oneof group?\n *\n * We represent protobuf `oneof` as algebraic data types (ADT) in generated\n * code. But when working with messages of unknown type, the ADT does not\n * help us.\n *\n * This type guard checks if the given object adheres to the ADT rules, which\n * are as follows:\n *\n * 1) Must be an object.\n *\n * 2) Must have a \"oneofKind\" discriminator property.\n *\n * 3) If \"oneofKind\" is `undefined`, no member field is selected. The object\n * must not have any other properties.\n *\n * 4) If \"oneofKind\" is a `string`, the member field with this name is\n * selected.\n *\n * 5) If a member field is selected, the object must have a second property\n * with this name. The property must not be `undefined`.\n *\n * 6) No extra properties are allowed. The object has either one property\n * (no selection) or two properties (selection).\n *\n */\nfunction isOneofGroup(any) {\n if (typeof any != 'object' || any === null || !any.hasOwnProperty('oneofKind')) {\n return false;\n }\n switch (typeof any.oneofKind) {\n case \"string\":\n if (any[any.oneofKind] === undefined)\n return false;\n return Object.keys(any).length == 2;\n case \"undefined\":\n return Object.keys(any).length == 1;\n default:\n return false;\n }\n}\nexports.isOneofGroup = isOneofGroup;\n/**\n * Returns the value of the given field in a oneof group.\n */\nfunction getOneofValue(oneof, kind) {\n return oneof[kind];\n}\nexports.getOneofValue = getOneofValue;\nfunction setOneofValue(oneof, kind, value) {\n if (oneof.oneofKind !== undefined) {\n delete oneof[oneof.oneofKind];\n }\n oneof.oneofKind = kind;\n if (value !== undefined) {\n oneof[kind] = value;\n }\n}\nexports.setOneofValue = setOneofValue;\nfunction setUnknownOneofValue(oneof, kind, value) {\n if (oneof.oneofKind !== undefined) {\n delete oneof[oneof.oneofKind];\n }\n oneof.oneofKind = kind;\n if (value !== undefined && kind !== undefined) {\n oneof[kind] = value;\n }\n}\nexports.setUnknownOneofValue = setUnknownOneofValue;\n/**\n * Removes the selected field in a oneof group.\n *\n * Note that the recommended way to modify a oneof group is to set\n * a new object:\n *\n * ```ts\n * message.result = { oneofKind: undefined };\n * ```\n */\nfunction clearOneofValue(oneof) {\n if (oneof.oneofKind !== undefined) {\n delete oneof[oneof.oneofKind];\n }\n oneof.oneofKind = undefined;\n}\nexports.clearOneofValue = clearOneofValue;\n/**\n * Returns the selected value of the given oneof group.\n *\n * Not that the recommended way to access a oneof group is to check\n * the \"oneofKind\" property and let TypeScript narrow down the union\n * type for you:\n *\n * ```ts\n * if (message.result.oneofKind === \"error\") {\n * message.result.error; // string\n * }\n * ```\n *\n * In the rare case you just need the value, and do not care about\n * which protobuf field is selected, you can use this function\n * for convenience.\n */\nfunction getSelectedOneofValue(oneof) {\n if (oneof.oneofKind === undefined) {\n return undefined;\n }\n return oneof[oneof.oneofKind];\n}\nexports.getSelectedOneofValue = getSelectedOneofValue;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReflectionTypeCheck = void 0;\nconst reflection_info_1 = require(\"./reflection-info\");\nconst oneof_1 = require(\"./oneof\");\n// noinspection JSMethodCanBeStatic\nclass ReflectionTypeCheck {\n constructor(info) {\n var _a;\n this.fields = (_a = info.fields) !== null && _a !== void 0 ? _a : [];\n }\n prepare() {\n if (this.data)\n return;\n const req = [], known = [], oneofs = [];\n for (let field of this.fields) {\n if (field.oneof) {\n if (!oneofs.includes(field.oneof)) {\n oneofs.push(field.oneof);\n req.push(field.oneof);\n known.push(field.oneof);\n }\n }\n else {\n known.push(field.localName);\n switch (field.kind) {\n case \"scalar\":\n case \"enum\":\n if (!field.opt || field.repeat)\n req.push(field.localName);\n break;\n case \"message\":\n if (field.repeat)\n req.push(field.localName);\n break;\n case \"map\":\n req.push(field.localName);\n break;\n }\n }\n }\n this.data = { req, known, oneofs: Object.values(oneofs) };\n }\n /**\n * Is the argument a valid message as specified by the\n * reflection information?\n *\n * Checks all field types recursively. The `depth`\n * specifies how deep into the structure the check will be.\n *\n * With a depth of 0, only the presence of fields\n * is checked.\n *\n * With a depth of 1 or more, the field types are checked.\n *\n * With a depth of 2 or more, the members of map, repeated\n * and message fields are checked.\n *\n * Message fields will be checked recursively with depth - 1.\n *\n * The number of map entries / repeated values being checked\n * is < depth.\n */\n is(message, depth, allowExcessProperties = false) {\n if (depth < 0)\n return true;\n if (message === null || message === undefined || typeof message != 'object')\n return false;\n this.prepare();\n let keys = Object.keys(message), data = this.data;\n // if a required field is missing in arg, this cannot be a T\n if (keys.length < data.req.length || data.req.some(n => !keys.includes(n)))\n return false;\n if (!allowExcessProperties) {\n // if the arg contains a key we dont know, this is not a literal T\n if (keys.some(k => !data.known.includes(k)))\n return false;\n }\n // \"With a depth of 0, only the presence and absence of fields is checked.\"\n // \"With a depth of 1 or more, the field types are checked.\"\n if (depth < 1) {\n return true;\n }\n // check oneof group\n for (const name of data.oneofs) {\n const group = message[name];\n if (!oneof_1.isOneofGroup(group))\n return false;\n if (group.oneofKind === undefined)\n continue;\n const field = this.fields.find(f => f.localName === group.oneofKind);\n if (!field)\n return false; // we found no field, but have a kind, something is wrong\n if (!this.field(group[group.oneofKind], field, allowExcessProperties, depth))\n return false;\n }\n // check types\n for (const field of this.fields) {\n if (field.oneof !== undefined)\n continue;\n if (!this.field(message[field.localName], field, allowExcessProperties, depth))\n return false;\n }\n return true;\n }\n field(arg, field, allowExcessProperties, depth) {\n let repeated = field.repeat;\n switch (field.kind) {\n case \"scalar\":\n if (arg === undefined)\n return field.opt;\n if (repeated)\n return this.scalars(arg, field.T, depth, field.L);\n return this.scalar(arg, field.T, field.L);\n case \"enum\":\n if (arg === undefined)\n return field.opt;\n if (repeated)\n return this.scalars(arg, reflection_info_1.ScalarType.INT32, depth);\n return this.scalar(arg, reflection_info_1.ScalarType.INT32);\n case \"message\":\n if (arg === undefined)\n return true;\n if (repeated)\n return this.messages(arg, field.T(), allowExcessProperties, depth);\n return this.message(arg, field.T(), allowExcessProperties, depth);\n case \"map\":\n if (typeof arg != 'object' || arg === null)\n return false;\n if (depth < 2)\n return true;\n if (!this.mapKeys(arg, field.K, depth))\n return false;\n switch (field.V.kind) {\n case \"scalar\":\n return this.scalars(Object.values(arg), field.V.T, depth, field.V.L);\n case \"enum\":\n return this.scalars(Object.values(arg), reflection_info_1.ScalarType.INT32, depth);\n case \"message\":\n return this.messages(Object.values(arg), field.V.T(), allowExcessProperties, depth);\n }\n break;\n }\n return true;\n }\n message(arg, type, allowExcessProperties, depth) {\n if (allowExcessProperties) {\n return type.isAssignable(arg, depth);\n }\n return type.is(arg, depth);\n }\n messages(arg, type, allowExcessProperties, depth) {\n if (!Array.isArray(arg))\n return false;\n if (depth < 2)\n return true;\n if (allowExcessProperties) {\n for (let i = 0; i < arg.length && i < depth; i++)\n if (!type.isAssignable(arg[i], depth - 1))\n return false;\n }\n else {\n for (let i = 0; i < arg.length && i < depth; i++)\n if (!type.is(arg[i], depth - 1))\n return false;\n }\n return true;\n }\n scalar(arg, type, longType) {\n let argType = typeof arg;\n switch (type) {\n case reflection_info_1.ScalarType.UINT64:\n case reflection_info_1.ScalarType.FIXED64:\n case reflection_info_1.ScalarType.INT64:\n case reflection_info_1.ScalarType.SFIXED64:\n case reflection_info_1.ScalarType.SINT64:\n switch (longType) {\n case reflection_info_1.LongType.BIGINT:\n return argType == \"bigint\";\n case reflection_info_1.LongType.NUMBER:\n return argType == \"number\" && !isNaN(arg);\n default:\n return argType == \"string\";\n }\n case reflection_info_1.ScalarType.BOOL:\n return argType == 'boolean';\n case reflection_info_1.ScalarType.STRING:\n return argType == 'string';\n case reflection_info_1.ScalarType.BYTES:\n return arg instanceof Uint8Array;\n case reflection_info_1.ScalarType.DOUBLE:\n case reflection_info_1.ScalarType.FLOAT:\n return argType == 'number' && !isNaN(arg);\n default:\n // case ScalarType.UINT32:\n // case ScalarType.FIXED32:\n // case ScalarType.INT32:\n // case ScalarType.SINT32:\n // case ScalarType.SFIXED32:\n return argType == 'number' && Number.isInteger(arg);\n }\n }\n scalars(arg, type, depth, longType) {\n if (!Array.isArray(arg))\n return false;\n if (depth < 2)\n return true;\n if (Array.isArray(arg))\n for (let i = 0; i < arg.length && i < depth; i++)\n if (!this.scalar(arg[i], type, longType))\n return false;\n return true;\n }\n mapKeys(map, type, depth) {\n let keys = Object.keys(map);\n switch (type) {\n case reflection_info_1.ScalarType.INT32:\n case reflection_info_1.ScalarType.FIXED32:\n case reflection_info_1.ScalarType.SFIXED32:\n case reflection_info_1.ScalarType.SINT32:\n case reflection_info_1.ScalarType.UINT32:\n return this.scalars(keys.slice(0, depth).map(k => parseInt(k)), type, depth);\n case reflection_info_1.ScalarType.BOOL:\n return this.scalars(keys.slice(0, depth).map(k => k == 'true' ? true : k == 'false' ? false : k), type, depth);\n default:\n return this.scalars(keys, type, depth, reflection_info_1.LongType.STRING);\n }\n }\n}\nexports.ReflectionTypeCheck = ReflectionTypeCheck;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reflectionLongConvert = void 0;\nconst reflection_info_1 = require(\"./reflection-info\");\n/**\n * Utility method to convert a PbLong or PbUlong to a JavaScript\n * representation during runtime.\n *\n * Works with generated field information, `undefined` is equivalent\n * to `STRING`.\n */\nfunction reflectionLongConvert(long, type) {\n switch (type) {\n case reflection_info_1.LongType.BIGINT:\n return long.toBigInt();\n case reflection_info_1.LongType.NUMBER:\n return long.toNumber();\n default:\n // case undefined:\n // case LongType.STRING:\n return long.toString();\n }\n}\nexports.reflectionLongConvert = reflectionLongConvert;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReflectionJsonReader = void 0;\nconst json_typings_1 = require(\"./json-typings\");\nconst base64_1 = require(\"./base64\");\nconst reflection_info_1 = require(\"./reflection-info\");\nconst pb_long_1 = require(\"./pb-long\");\nconst assert_1 = require(\"./assert\");\nconst reflection_long_convert_1 = require(\"./reflection-long-convert\");\n/**\n * Reads proto3 messages in canonical JSON format using reflection information.\n *\n * https://developers.google.com/protocol-buffers/docs/proto3#json\n */\nclass ReflectionJsonReader {\n constructor(info) {\n this.info = info;\n }\n prepare() {\n var _a;\n if (this.fMap === undefined) {\n this.fMap = {};\n const fieldsInput = (_a = this.info.fields) !== null && _a !== void 0 ? _a : [];\n for (const field of fieldsInput) {\n this.fMap[field.name] = field;\n this.fMap[field.jsonName] = field;\n this.fMap[field.localName] = field;\n }\n }\n }\n // Cannot parse JSON for #.\n assert(condition, fieldName, jsonValue) {\n if (!condition) {\n let what = json_typings_1.typeofJsonValue(jsonValue);\n if (what == \"number\" || what == \"boolean\")\n what = jsonValue.toString();\n throw new Error(`Cannot parse JSON ${what} for ${this.info.typeName}#${fieldName}`);\n }\n }\n /**\n * Reads a message from canonical JSON format into the target message.\n *\n * Repeated fields are appended. Map entries are added, overwriting\n * existing keys.\n *\n * If a message field is already present, it will be merged with the\n * new data.\n */\n read(input, message, options) {\n this.prepare();\n const oneofsHandled = [];\n for (const [jsonKey, jsonValue] of Object.entries(input)) {\n const field = this.fMap[jsonKey];\n if (!field) {\n if (!options.ignoreUnknownFields)\n throw new Error(`Found unknown field while reading ${this.info.typeName} from JSON format. JSON key: ${jsonKey}`);\n continue;\n }\n const localName = field.localName;\n // handle oneof ADT\n let target; // this will be the target for the field value, whether it is member of a oneof or not\n if (field.oneof) {\n if (jsonValue === null && (field.kind !== 'enum' || field.T()[0] !== 'google.protobuf.NullValue')) {\n continue;\n }\n // since json objects are unordered by specification, it is not possible to take the last of multiple oneofs\n if (oneofsHandled.includes(field.oneof))\n throw new Error(`Multiple members of the oneof group \"${field.oneof}\" of ${this.info.typeName} are present in JSON.`);\n oneofsHandled.push(field.oneof);\n target = message[field.oneof] = {\n oneofKind: localName\n };\n }\n else {\n target = message;\n }\n // we have handled oneof above. we just have read the value into `target`.\n if (field.kind == 'map') {\n if (jsonValue === null) {\n continue;\n }\n // check input\n this.assert(json_typings_1.isJsonObject(jsonValue), field.name, jsonValue);\n // our target to put map entries into\n const fieldObj = target[localName];\n // read entries\n for (const [jsonObjKey, jsonObjValue] of Object.entries(jsonValue)) {\n this.assert(jsonObjValue !== null, field.name + \" map value\", null);\n // read value\n let val;\n switch (field.V.kind) {\n case \"message\":\n val = field.V.T().internalJsonRead(jsonObjValue, options);\n break;\n case \"enum\":\n val = this.enum(field.V.T(), jsonObjValue, field.name, options.ignoreUnknownFields);\n if (val === false)\n continue;\n break;\n case \"scalar\":\n val = this.scalar(jsonObjValue, field.V.T, field.V.L, field.name);\n break;\n }\n this.assert(val !== undefined, field.name + \" map value\", jsonObjValue);\n // read key\n let key = jsonObjKey;\n if (field.K == reflection_info_1.ScalarType.BOOL)\n key = key == \"true\" ? true : key == \"false\" ? false : key;\n key = this.scalar(key, field.K, reflection_info_1.LongType.STRING, field.name).toString();\n fieldObj[key] = val;\n }\n }\n else if (field.repeat) {\n if (jsonValue === null)\n continue;\n // check input\n this.assert(Array.isArray(jsonValue), field.name, jsonValue);\n // our target to put array entries into\n const fieldArr = target[localName];\n // read array entries\n for (const jsonItem of jsonValue) {\n this.assert(jsonItem !== null, field.name, null);\n let val;\n switch (field.kind) {\n case \"message\":\n val = field.T().internalJsonRead(jsonItem, options);\n break;\n case \"enum\":\n val = this.enum(field.T(), jsonItem, field.name, options.ignoreUnknownFields);\n if (val === false)\n continue;\n break;\n case \"scalar\":\n val = this.scalar(jsonItem, field.T, field.L, field.name);\n break;\n }\n this.assert(val !== undefined, field.name, jsonValue);\n fieldArr.push(val);\n }\n }\n else {\n switch (field.kind) {\n case \"message\":\n if (jsonValue === null && field.T().typeName != 'google.protobuf.Value') {\n this.assert(field.oneof === undefined, field.name + \" (oneof member)\", null);\n continue;\n }\n target[localName] = field.T().internalJsonRead(jsonValue, options, target[localName]);\n break;\n case \"enum\":\n if (jsonValue === null)\n continue;\n let val = this.enum(field.T(), jsonValue, field.name, options.ignoreUnknownFields);\n if (val === false)\n continue;\n target[localName] = val;\n break;\n case \"scalar\":\n if (jsonValue === null)\n continue;\n target[localName] = this.scalar(jsonValue, field.T, field.L, field.name);\n break;\n }\n }\n }\n }\n /**\n * Returns `false` for unrecognized string representations.\n *\n * google.protobuf.NullValue accepts only JSON `null` (or the old `\"NULL_VALUE\"`).\n */\n enum(type, json, fieldName, ignoreUnknownFields) {\n if (type[0] == 'google.protobuf.NullValue')\n assert_1.assert(json === null || json === \"NULL_VALUE\", `Unable to parse field ${this.info.typeName}#${fieldName}, enum ${type[0]} only accepts null.`);\n if (json === null)\n // we require 0 to be default value for all enums\n return 0;\n switch (typeof json) {\n case \"number\":\n assert_1.assert(Number.isInteger(json), `Unable to parse field ${this.info.typeName}#${fieldName}, enum can only be integral number, got ${json}.`);\n return json;\n case \"string\":\n let localEnumName = json;\n if (type[2] && json.substring(0, type[2].length) === type[2])\n // lookup without the shared prefix\n localEnumName = json.substring(type[2].length);\n let enumNumber = type[1][localEnumName];\n if (typeof enumNumber === 'undefined' && ignoreUnknownFields) {\n return false;\n }\n assert_1.assert(typeof enumNumber == \"number\", `Unable to parse field ${this.info.typeName}#${fieldName}, enum ${type[0]} has no value for \"${json}\".`);\n return enumNumber;\n }\n assert_1.assert(false, `Unable to parse field ${this.info.typeName}#${fieldName}, cannot parse enum value from ${typeof json}\".`);\n }\n scalar(json, type, longType, fieldName) {\n let e;\n try {\n switch (type) {\n // float, double: JSON value will be a number or one of the special string values \"NaN\", \"Infinity\", and \"-Infinity\".\n // Either numbers or strings are accepted. Exponent notation is also accepted.\n case reflection_info_1.ScalarType.DOUBLE:\n case reflection_info_1.ScalarType.FLOAT:\n if (json === null)\n return .0;\n if (json === \"NaN\")\n return Number.NaN;\n if (json === \"Infinity\")\n return Number.POSITIVE_INFINITY;\n if (json === \"-Infinity\")\n return Number.NEGATIVE_INFINITY;\n if (json === \"\") {\n e = \"empty string\";\n break;\n }\n if (typeof json == \"string\" && json.trim().length !== json.length) {\n e = \"extra whitespace\";\n break;\n }\n if (typeof json != \"string\" && typeof json != \"number\") {\n break;\n }\n let float = Number(json);\n if (Number.isNaN(float)) {\n e = \"not a number\";\n break;\n }\n if (!Number.isFinite(float)) {\n // infinity and -infinity are handled by string representation above, so this is an error\n e = \"too large or small\";\n break;\n }\n if (type == reflection_info_1.ScalarType.FLOAT)\n assert_1.assertFloat32(float);\n return float;\n // int32, fixed32, uint32: JSON value will be a decimal number. Either numbers or strings are accepted.\n case reflection_info_1.ScalarType.INT32:\n case reflection_info_1.ScalarType.FIXED32:\n case reflection_info_1.ScalarType.SFIXED32:\n case reflection_info_1.ScalarType.SINT32:\n case reflection_info_1.ScalarType.UINT32:\n if (json === null)\n return 0;\n let int32;\n if (typeof json == \"number\")\n int32 = json;\n else if (json === \"\")\n e = \"empty string\";\n else if (typeof json == \"string\") {\n if (json.trim().length !== json.length)\n e = \"extra whitespace\";\n else\n int32 = Number(json);\n }\n if (int32 === undefined)\n break;\n if (type == reflection_info_1.ScalarType.UINT32)\n assert_1.assertUInt32(int32);\n else\n assert_1.assertInt32(int32);\n return int32;\n // int64, fixed64, uint64: JSON value will be a decimal string. Either numbers or strings are accepted.\n case reflection_info_1.ScalarType.INT64:\n case reflection_info_1.ScalarType.SFIXED64:\n case reflection_info_1.ScalarType.SINT64:\n if (json === null)\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbLong.ZERO, longType);\n if (typeof json != \"number\" && typeof json != \"string\")\n break;\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbLong.from(json), longType);\n case reflection_info_1.ScalarType.FIXED64:\n case reflection_info_1.ScalarType.UINT64:\n if (json === null)\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbULong.ZERO, longType);\n if (typeof json != \"number\" && typeof json != \"string\")\n break;\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbULong.from(json), longType);\n // bool:\n case reflection_info_1.ScalarType.BOOL:\n if (json === null)\n return false;\n if (typeof json !== \"boolean\")\n break;\n return json;\n // string:\n case reflection_info_1.ScalarType.STRING:\n if (json === null)\n return \"\";\n if (typeof json !== \"string\") {\n e = \"extra whitespace\";\n break;\n }\n try {\n encodeURIComponent(json);\n }\n catch (e) {\n e = \"invalid UTF8\";\n break;\n }\n return json;\n // bytes: JSON value will be the data encoded as a string using standard base64 encoding with paddings.\n // Either standard or URL-safe base64 encoding with/without paddings are accepted.\n case reflection_info_1.ScalarType.BYTES:\n if (json === null || json === \"\")\n return new Uint8Array(0);\n if (typeof json !== 'string')\n break;\n return base64_1.base64decode(json);\n }\n }\n catch (error) {\n e = error.message;\n }\n this.assert(false, fieldName + (e ? \" - \" + e : \"\"), json);\n }\n}\nexports.ReflectionJsonReader = ReflectionJsonReader;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReflectionJsonWriter = void 0;\nconst base64_1 = require(\"./base64\");\nconst pb_long_1 = require(\"./pb-long\");\nconst reflection_info_1 = require(\"./reflection-info\");\nconst assert_1 = require(\"./assert\");\n/**\n * Writes proto3 messages in canonical JSON format using reflection\n * information.\n *\n * https://developers.google.com/protocol-buffers/docs/proto3#json\n */\nclass ReflectionJsonWriter {\n constructor(info) {\n var _a;\n this.fields = (_a = info.fields) !== null && _a !== void 0 ? _a : [];\n }\n /**\n * Converts the message to a JSON object, based on the field descriptors.\n */\n write(message, options) {\n const json = {}, source = message;\n for (const field of this.fields) {\n // field is not part of a oneof, simply write as is\n if (!field.oneof) {\n let jsonValue = this.field(field, source[field.localName], options);\n if (jsonValue !== undefined)\n json[options.useProtoFieldName ? field.name : field.jsonName] = jsonValue;\n continue;\n }\n // field is part of a oneof\n const group = source[field.oneof];\n if (group.oneofKind !== field.localName)\n continue; // not selected, skip\n const opt = field.kind == 'scalar' || field.kind == 'enum'\n ? Object.assign(Object.assign({}, options), { emitDefaultValues: true }) : options;\n let jsonValue = this.field(field, group[field.localName], opt);\n assert_1.assert(jsonValue !== undefined);\n json[options.useProtoFieldName ? field.name : field.jsonName] = jsonValue;\n }\n return json;\n }\n field(field, value, options) {\n let jsonValue = undefined;\n if (field.kind == 'map') {\n assert_1.assert(typeof value == \"object\" && value !== null);\n const jsonObj = {};\n switch (field.V.kind) {\n case \"scalar\":\n for (const [entryKey, entryValue] of Object.entries(value)) {\n const val = this.scalar(field.V.T, entryValue, field.name, false, true);\n assert_1.assert(val !== undefined);\n jsonObj[entryKey.toString()] = val; // JSON standard allows only (double quoted) string as property key\n }\n break;\n case \"message\":\n const messageType = field.V.T();\n for (const [entryKey, entryValue] of Object.entries(value)) {\n const val = this.message(messageType, entryValue, field.name, options);\n assert_1.assert(val !== undefined);\n jsonObj[entryKey.toString()] = val; // JSON standard allows only (double quoted) string as property key\n }\n break;\n case \"enum\":\n const enumInfo = field.V.T();\n for (const [entryKey, entryValue] of Object.entries(value)) {\n assert_1.assert(entryValue === undefined || typeof entryValue == 'number');\n const val = this.enum(enumInfo, entryValue, field.name, false, true, options.enumAsInteger);\n assert_1.assert(val !== undefined);\n jsonObj[entryKey.toString()] = val; // JSON standard allows only (double quoted) string as property key\n }\n break;\n }\n if (options.emitDefaultValues || Object.keys(jsonObj).length > 0)\n jsonValue = jsonObj;\n }\n else if (field.repeat) {\n assert_1.assert(Array.isArray(value));\n const jsonArr = [];\n switch (field.kind) {\n case \"scalar\":\n for (let i = 0; i < value.length; i++) {\n const val = this.scalar(field.T, value[i], field.name, field.opt, true);\n assert_1.assert(val !== undefined);\n jsonArr.push(val);\n }\n break;\n case \"enum\":\n const enumInfo = field.T();\n for (let i = 0; i < value.length; i++) {\n assert_1.assert(value[i] === undefined || typeof value[i] == 'number');\n const val = this.enum(enumInfo, value[i], field.name, field.opt, true, options.enumAsInteger);\n assert_1.assert(val !== undefined);\n jsonArr.push(val);\n }\n break;\n case \"message\":\n const messageType = field.T();\n for (let i = 0; i < value.length; i++) {\n const val = this.message(messageType, value[i], field.name, options);\n assert_1.assert(val !== undefined);\n jsonArr.push(val);\n }\n break;\n }\n // add converted array to json output\n if (options.emitDefaultValues || jsonArr.length > 0 || options.emitDefaultValues)\n jsonValue = jsonArr;\n }\n else {\n switch (field.kind) {\n case \"scalar\":\n jsonValue = this.scalar(field.T, value, field.name, field.opt, options.emitDefaultValues);\n break;\n case \"enum\":\n jsonValue = this.enum(field.T(), value, field.name, field.opt, options.emitDefaultValues, options.enumAsInteger);\n break;\n case \"message\":\n jsonValue = this.message(field.T(), value, field.name, options);\n break;\n }\n }\n return jsonValue;\n }\n /**\n * Returns `null` as the default for google.protobuf.NullValue.\n */\n enum(type, value, fieldName, optional, emitDefaultValues, enumAsInteger) {\n if (type[0] == 'google.protobuf.NullValue')\n return !emitDefaultValues && !optional ? undefined : null;\n if (value === undefined) {\n assert_1.assert(optional);\n return undefined;\n }\n if (value === 0 && !emitDefaultValues && !optional)\n // we require 0 to be default value for all enums\n return undefined;\n assert_1.assert(typeof value == 'number');\n assert_1.assert(Number.isInteger(value));\n if (enumAsInteger || !type[1].hasOwnProperty(value))\n // if we don't now the enum value, just return the number\n return value;\n if (type[2])\n // restore the dropped prefix\n return type[2] + type[1][value];\n return type[1][value];\n }\n message(type, value, fieldName, options) {\n if (value === undefined)\n return options.emitDefaultValues ? null : undefined;\n return type.internalJsonWrite(value, options);\n }\n scalar(type, value, fieldName, optional, emitDefaultValues) {\n if (value === undefined) {\n assert_1.assert(optional);\n return undefined;\n }\n const ed = emitDefaultValues || optional;\n // noinspection FallThroughInSwitchStatementJS\n switch (type) {\n // int32, fixed32, uint32: JSON value will be a decimal number. Either numbers or strings are accepted.\n case reflection_info_1.ScalarType.INT32:\n case reflection_info_1.ScalarType.SFIXED32:\n case reflection_info_1.ScalarType.SINT32:\n if (value === 0)\n return ed ? 0 : undefined;\n assert_1.assertInt32(value);\n return value;\n case reflection_info_1.ScalarType.FIXED32:\n case reflection_info_1.ScalarType.UINT32:\n if (value === 0)\n return ed ? 0 : undefined;\n assert_1.assertUInt32(value);\n return value;\n // float, double: JSON value will be a number or one of the special string values \"NaN\", \"Infinity\", and \"-Infinity\".\n // Either numbers or strings are accepted. Exponent notation is also accepted.\n case reflection_info_1.ScalarType.FLOAT:\n assert_1.assertFloat32(value);\n case reflection_info_1.ScalarType.DOUBLE:\n if (value === 0)\n return ed ? 0 : undefined;\n assert_1.assert(typeof value == 'number');\n if (Number.isNaN(value))\n return 'NaN';\n if (value === Number.POSITIVE_INFINITY)\n return 'Infinity';\n if (value === Number.NEGATIVE_INFINITY)\n return '-Infinity';\n return value;\n // string:\n case reflection_info_1.ScalarType.STRING:\n if (value === \"\")\n return ed ? '' : undefined;\n assert_1.assert(typeof value == 'string');\n return value;\n // bool:\n case reflection_info_1.ScalarType.BOOL:\n if (value === false)\n return ed ? false : undefined;\n assert_1.assert(typeof value == 'boolean');\n return value;\n // JSON value will be a decimal string. Either numbers or strings are accepted.\n case reflection_info_1.ScalarType.UINT64:\n case reflection_info_1.ScalarType.FIXED64:\n assert_1.assert(typeof value == 'number' || typeof value == 'string' || typeof value == 'bigint');\n let ulong = pb_long_1.PbULong.from(value);\n if (ulong.isZero() && !ed)\n return undefined;\n return ulong.toString();\n // JSON value will be a decimal string. Either numbers or strings are accepted.\n case reflection_info_1.ScalarType.INT64:\n case reflection_info_1.ScalarType.SFIXED64:\n case reflection_info_1.ScalarType.SINT64:\n assert_1.assert(typeof value == 'number' || typeof value == 'string' || typeof value == 'bigint');\n let long = pb_long_1.PbLong.from(value);\n if (long.isZero() && !ed)\n return undefined;\n return long.toString();\n // bytes: JSON value will be the data encoded as a string using standard base64 encoding with paddings.\n // Either standard or URL-safe base64 encoding with/without paddings are accepted.\n case reflection_info_1.ScalarType.BYTES:\n assert_1.assert(value instanceof Uint8Array);\n if (!value.byteLength)\n return ed ? \"\" : undefined;\n return base64_1.base64encode(value);\n }\n }\n}\nexports.ReflectionJsonWriter = ReflectionJsonWriter;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reflectionScalarDefault = void 0;\nconst reflection_info_1 = require(\"./reflection-info\");\nconst reflection_long_convert_1 = require(\"./reflection-long-convert\");\nconst pb_long_1 = require(\"./pb-long\");\n/**\n * Creates the default value for a scalar type.\n */\nfunction reflectionScalarDefault(type, longType = reflection_info_1.LongType.STRING) {\n switch (type) {\n case reflection_info_1.ScalarType.BOOL:\n return false;\n case reflection_info_1.ScalarType.UINT64:\n case reflection_info_1.ScalarType.FIXED64:\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbULong.ZERO, longType);\n case reflection_info_1.ScalarType.INT64:\n case reflection_info_1.ScalarType.SFIXED64:\n case reflection_info_1.ScalarType.SINT64:\n return reflection_long_convert_1.reflectionLongConvert(pb_long_1.PbLong.ZERO, longType);\n case reflection_info_1.ScalarType.DOUBLE:\n case reflection_info_1.ScalarType.FLOAT:\n return 0.0;\n case reflection_info_1.ScalarType.BYTES:\n return new Uint8Array(0);\n case reflection_info_1.ScalarType.STRING:\n return \"\";\n default:\n // case ScalarType.INT32:\n // case ScalarType.UINT32:\n // case ScalarType.SINT32:\n // case ScalarType.FIXED32:\n // case ScalarType.SFIXED32:\n return 0;\n }\n}\nexports.reflectionScalarDefault = reflectionScalarDefault;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReflectionBinaryReader = void 0;\nconst binary_format_contract_1 = require(\"./binary-format-contract\");\nconst reflection_info_1 = require(\"./reflection-info\");\nconst reflection_long_convert_1 = require(\"./reflection-long-convert\");\nconst reflection_scalar_default_1 = require(\"./reflection-scalar-default\");\n/**\n * Reads proto3 messages in binary format using reflection information.\n *\n * https://developers.google.com/protocol-buffers/docs/encoding\n */\nclass ReflectionBinaryReader {\n constructor(info) {\n this.info = info;\n }\n prepare() {\n var _a;\n if (!this.fieldNoToField) {\n const fieldsInput = (_a = this.info.fields) !== null && _a !== void 0 ? _a : [];\n this.fieldNoToField = new Map(fieldsInput.map(field => [field.no, field]));\n }\n }\n /**\n * Reads a message from binary format into the target message.\n *\n * Repeated fields are appended. Map entries are added, overwriting\n * existing keys.\n *\n * If a message field is already present, it will be merged with the\n * new data.\n */\n read(reader, message, options, length) {\n this.prepare();\n const end = length === undefined ? reader.len : reader.pos + length;\n while (reader.pos < end) {\n // read the tag and find the field\n const [fieldNo, wireType] = reader.tag(), field = this.fieldNoToField.get(fieldNo);\n if (!field) {\n let u = options.readUnknownField;\n if (u == \"throw\")\n throw new Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.info.typeName}`);\n let d = reader.skip(wireType);\n if (u !== false)\n (u === true ? binary_format_contract_1.UnknownFieldHandler.onRead : u)(this.info.typeName, message, fieldNo, wireType, d);\n continue;\n }\n // target object for the field we are reading\n let target = message, repeated = field.repeat, localName = field.localName;\n // if field is member of oneof ADT, use ADT as target\n if (field.oneof) {\n target = target[field.oneof];\n // if other oneof member selected, set new ADT\n if (target.oneofKind !== localName)\n target = message[field.oneof] = {\n oneofKind: localName\n };\n }\n // we have handled oneof above, we just have read the value into `target[localName]`\n switch (field.kind) {\n case \"scalar\":\n case \"enum\":\n let T = field.kind == \"enum\" ? reflection_info_1.ScalarType.INT32 : field.T;\n let L = field.kind == \"scalar\" ? field.L : undefined;\n if (repeated) {\n let arr = target[localName]; // safe to assume presence of array, oneof cannot contain repeated values\n if (wireType == binary_format_contract_1.WireType.LengthDelimited && T != reflection_info_1.ScalarType.STRING && T != reflection_info_1.ScalarType.BYTES) {\n let e = reader.uint32() + reader.pos;\n while (reader.pos < e)\n arr.push(this.scalar(reader, T, L));\n }\n else\n arr.push(this.scalar(reader, T, L));\n }\n else\n target[localName] = this.scalar(reader, T, L);\n break;\n case \"message\":\n if (repeated) {\n let arr = target[localName]; // safe to assume presence of array, oneof cannot contain repeated values\n let msg = field.T().internalBinaryRead(reader, reader.uint32(), options);\n arr.push(msg);\n }\n else\n target[localName] = field.T().internalBinaryRead(reader, reader.uint32(), options, target[localName]);\n break;\n case \"map\":\n let [mapKey, mapVal] = this.mapEntry(field, reader, options);\n // safe to assume presence of map object, oneof cannot contain repeated values\n target[localName][mapKey] = mapVal;\n break;\n }\n }\n }\n /**\n * Read a map field, expecting key field = 1, value field = 2\n */\n mapEntry(field, reader, options) {\n let length = reader.uint32();\n let end = reader.pos + length;\n let key = undefined; // javascript only allows number or string for object properties\n let val = undefined;\n while (reader.pos < end) {\n let [fieldNo, wireType] = reader.tag();\n switch (fieldNo) {\n case 1:\n if (field.K == reflection_info_1.ScalarType.BOOL)\n key = reader.bool().toString();\n else\n // long types are read as string, number types are okay as number\n key = this.scalar(reader, field.K, reflection_info_1.LongType.STRING);\n break;\n case 2:\n switch (field.V.kind) {\n case \"scalar\":\n val = this.scalar(reader, field.V.T, field.V.L);\n break;\n case \"enum\":\n val = reader.int32();\n break;\n case \"message\":\n val = field.V.T().internalBinaryRead(reader, reader.uint32(), options);\n break;\n }\n break;\n default:\n throw new Error(`Unknown field ${fieldNo} (wire type ${wireType}) in map entry for ${this.info.typeName}#${field.name}`);\n }\n }\n if (key === undefined) {\n let keyRaw = reflection_scalar_default_1.reflectionScalarDefault(field.K);\n key = field.K == reflection_info_1.ScalarType.BOOL ? keyRaw.toString() : keyRaw;\n }\n if (val === undefined)\n switch (field.V.kind) {\n case \"scalar\":\n val = reflection_scalar_default_1.reflectionScalarDefault(field.V.T, field.V.L);\n break;\n case \"enum\":\n val = 0;\n break;\n case \"message\":\n val = field.V.T().create();\n break;\n }\n return [key, val];\n }\n scalar(reader, type, longType) {\n switch (type) {\n case reflection_info_1.ScalarType.INT32:\n return reader.int32();\n case reflection_info_1.ScalarType.STRING:\n return reader.string();\n case reflection_info_1.ScalarType.BOOL:\n return reader.bool();\n case reflection_info_1.ScalarType.DOUBLE:\n return reader.double();\n case reflection_info_1.ScalarType.FLOAT:\n return reader.float();\n case reflection_info_1.ScalarType.INT64:\n return reflection_long_convert_1.reflectionLongConvert(reader.int64(), longType);\n case reflection_info_1.ScalarType.UINT64:\n return reflection_long_convert_1.reflectionLongConvert(reader.uint64(), longType);\n case reflection_info_1.ScalarType.FIXED64:\n return reflection_long_convert_1.reflectionLongConvert(reader.fixed64(), longType);\n case reflection_info_1.ScalarType.FIXED32:\n return reader.fixed32();\n case reflection_info_1.ScalarType.BYTES:\n return reader.bytes();\n case reflection_info_1.ScalarType.UINT32:\n return reader.uint32();\n case reflection_info_1.ScalarType.SFIXED32:\n return reader.sfixed32();\n case reflection_info_1.ScalarType.SFIXED64:\n return reflection_long_convert_1.reflectionLongConvert(reader.sfixed64(), longType);\n case reflection_info_1.ScalarType.SINT32:\n return reader.sint32();\n case reflection_info_1.ScalarType.SINT64:\n return reflection_long_convert_1.reflectionLongConvert(reader.sint64(), longType);\n }\n }\n}\nexports.ReflectionBinaryReader = ReflectionBinaryReader;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ReflectionBinaryWriter = void 0;\nconst binary_format_contract_1 = require(\"./binary-format-contract\");\nconst reflection_info_1 = require(\"./reflection-info\");\nconst assert_1 = require(\"./assert\");\nconst pb_long_1 = require(\"./pb-long\");\n/**\n * Writes proto3 messages in binary format using reflection information.\n *\n * https://developers.google.com/protocol-buffers/docs/encoding\n */\nclass ReflectionBinaryWriter {\n constructor(info) {\n this.info = info;\n }\n prepare() {\n if (!this.fields) {\n const fieldsInput = this.info.fields ? this.info.fields.concat() : [];\n this.fields = fieldsInput.sort((a, b) => a.no - b.no);\n }\n }\n /**\n * Writes the message to binary format.\n */\n write(message, writer, options) {\n this.prepare();\n for (const field of this.fields) {\n let value, // this will be our field value, whether it is member of a oneof or not\n emitDefault, // whether we emit the default value (only true for oneof members)\n repeated = field.repeat, localName = field.localName;\n // handle oneof ADT\n if (field.oneof) {\n const group = message[field.oneof];\n if (group.oneofKind !== localName)\n continue; // if field is not selected, skip\n value = group[localName];\n emitDefault = true;\n }\n else {\n value = message[localName];\n emitDefault = false;\n }\n // we have handled oneof above. we just have to honor `emitDefault`.\n switch (field.kind) {\n case \"scalar\":\n case \"enum\":\n let T = field.kind == \"enum\" ? reflection_info_1.ScalarType.INT32 : field.T;\n if (repeated) {\n assert_1.assert(Array.isArray(value));\n if (repeated == reflection_info_1.RepeatType.PACKED)\n this.packed(writer, T, field.no, value);\n else\n for (const item of value)\n this.scalar(writer, T, field.no, item, true);\n }\n else if (value === undefined)\n assert_1.assert(field.opt);\n else\n this.scalar(writer, T, field.no, value, emitDefault || field.opt);\n break;\n case \"message\":\n if (repeated) {\n assert_1.assert(Array.isArray(value));\n for (const item of value)\n this.message(writer, options, field.T(), field.no, item);\n }\n else {\n this.message(writer, options, field.T(), field.no, value);\n }\n break;\n case \"map\":\n assert_1.assert(typeof value == 'object' && value !== null);\n for (const [key, val] of Object.entries(value))\n this.mapEntry(writer, options, field, key, val);\n break;\n }\n }\n let u = options.writeUnknownFields;\n if (u !== false)\n (u === true ? binary_format_contract_1.UnknownFieldHandler.onWrite : u)(this.info.typeName, message, writer);\n }\n mapEntry(writer, options, field, key, value) {\n writer.tag(field.no, binary_format_contract_1.WireType.LengthDelimited);\n writer.fork();\n // javascript only allows number or string for object properties\n // we convert from our representation to the protobuf type\n let keyValue = key;\n switch (field.K) {\n case reflection_info_1.ScalarType.INT32:\n case reflection_info_1.ScalarType.FIXED32:\n case reflection_info_1.ScalarType.UINT32:\n case reflection_info_1.ScalarType.SFIXED32:\n case reflection_info_1.ScalarType.SINT32:\n keyValue = Number.parseInt(key);\n break;\n case reflection_info_1.ScalarType.BOOL:\n assert_1.assert(key == 'true' || key == 'false');\n keyValue = key == 'true';\n break;\n }\n // write key, expecting key field number = 1\n this.scalar(writer, field.K, 1, keyValue, true);\n // write value, expecting value field number = 2\n switch (field.V.kind) {\n case 'scalar':\n this.scalar(writer, field.V.T, 2, value, true);\n break;\n case 'enum':\n this.scalar(writer, reflection_info_1.ScalarType.INT32, 2, value, true);\n break;\n case 'message':\n this.message(writer, options, field.V.T(), 2, value);\n break;\n }\n writer.join();\n }\n message(writer, options, handler, fieldNo, value) {\n if (value === undefined)\n return;\n handler.internalBinaryWrite(value, writer.tag(fieldNo, binary_format_contract_1.WireType.LengthDelimited).fork(), options);\n writer.join();\n }\n /**\n * Write a single scalar value.\n */\n scalar(writer, type, fieldNo, value, emitDefault) {\n let [wireType, method, isDefault] = this.scalarInfo(type, value);\n if (!isDefault || emitDefault) {\n writer.tag(fieldNo, wireType);\n writer[method](value);\n }\n }\n /**\n * Write an array of scalar values in packed format.\n */\n packed(writer, type, fieldNo, value) {\n if (!value.length)\n return;\n assert_1.assert(type !== reflection_info_1.ScalarType.BYTES && type !== reflection_info_1.ScalarType.STRING);\n // write tag\n writer.tag(fieldNo, binary_format_contract_1.WireType.LengthDelimited);\n // begin length-delimited\n writer.fork();\n // write values without tags\n let [, method,] = this.scalarInfo(type);\n for (let i = 0; i < value.length; i++)\n writer[method](value[i]);\n // end length delimited\n writer.join();\n }\n /**\n * Get information for writing a scalar value.\n *\n * Returns tuple:\n * [0]: appropriate WireType\n * [1]: name of the appropriate method of IBinaryWriter\n * [2]: whether the given value is a default value\n *\n * If argument `value` is omitted, [2] is always false.\n */\n scalarInfo(type, value) {\n let t = binary_format_contract_1.WireType.Varint;\n let m;\n let i = value === undefined;\n let d = value === 0;\n switch (type) {\n case reflection_info_1.ScalarType.INT32:\n m = \"int32\";\n break;\n case reflection_info_1.ScalarType.STRING:\n d = i || !value.length;\n t = binary_format_contract_1.WireType.LengthDelimited;\n m = \"string\";\n break;\n case reflection_info_1.ScalarType.BOOL:\n d = value === false;\n m = \"bool\";\n break;\n case reflection_info_1.ScalarType.UINT32:\n m = \"uint32\";\n break;\n case reflection_info_1.ScalarType.DOUBLE:\n t = binary_format_contract_1.WireType.Bit64;\n m = \"double\";\n break;\n case reflection_info_1.ScalarType.FLOAT:\n t = binary_format_contract_1.WireType.Bit32;\n m = \"float\";\n break;\n case reflection_info_1.ScalarType.INT64:\n d = i || pb_long_1.PbLong.from(value).isZero();\n m = \"int64\";\n break;\n case reflection_info_1.ScalarType.UINT64:\n d = i || pb_long_1.PbULong.from(value).isZero();\n m = \"uint64\";\n break;\n case reflection_info_1.ScalarType.FIXED64:\n d = i || pb_long_1.PbULong.from(value).isZero();\n t = binary_format_contract_1.WireType.Bit64;\n m = \"fixed64\";\n break;\n case reflection_info_1.ScalarType.BYTES:\n d = i || !value.byteLength;\n t = binary_format_contract_1.WireType.LengthDelimited;\n m = \"bytes\";\n break;\n case reflection_info_1.ScalarType.FIXED32:\n t = binary_format_contract_1.WireType.Bit32;\n m = \"fixed32\";\n break;\n case reflection_info_1.ScalarType.SFIXED32:\n t = binary_format_contract_1.WireType.Bit32;\n m = \"sfixed32\";\n break;\n case reflection_info_1.ScalarType.SFIXED64:\n d = i || pb_long_1.PbLong.from(value).isZero();\n t = binary_format_contract_1.WireType.Bit64;\n m = \"sfixed64\";\n break;\n case reflection_info_1.ScalarType.SINT32:\n m = \"sint32\";\n break;\n case reflection_info_1.ScalarType.SINT64:\n d = i || pb_long_1.PbLong.from(value).isZero();\n m = \"sint64\";\n break;\n }\n return [t, m, i || d];\n }\n}\nexports.ReflectionBinaryWriter = ReflectionBinaryWriter;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reflectionCreate = void 0;\nconst reflection_scalar_default_1 = require(\"./reflection-scalar-default\");\nconst message_type_contract_1 = require(\"./message-type-contract\");\n/**\n * Creates an instance of the generic message, using the field\n * information.\n */\nfunction reflectionCreate(type) {\n /**\n * This ternary can be removed in the next major version.\n * The `Object.create()` code path utilizes a new `messagePrototype`\n * property on the `IMessageType` which has this same `MESSAGE_TYPE`\n * non-enumerable property on it. Doing it this way means that we only\n * pay the cost of `Object.defineProperty()` once per `IMessageType`\n * class of once per \"instance\". The falsy code path is only provided\n * for backwards compatibility in cases where the runtime library is\n * updated without also updating the generated code.\n */\n const msg = type.messagePrototype\n ? Object.create(type.messagePrototype)\n : Object.defineProperty({}, message_type_contract_1.MESSAGE_TYPE, { value: type });\n for (let field of type.fields) {\n let name = field.localName;\n if (field.opt)\n continue;\n if (field.oneof)\n msg[field.oneof] = { oneofKind: undefined };\n else if (field.repeat)\n msg[name] = [];\n else\n switch (field.kind) {\n case \"scalar\":\n msg[name] = reflection_scalar_default_1.reflectionScalarDefault(field.T, field.L);\n break;\n case \"enum\":\n // we require 0 to be default value for all enums\n msg[name] = 0;\n break;\n case \"map\":\n msg[name] = {};\n break;\n }\n }\n return msg;\n}\nexports.reflectionCreate = reflectionCreate;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reflectionMergePartial = void 0;\n/**\n * Copy partial data into the target message.\n *\n * If a singular scalar or enum field is present in the source, it\n * replaces the field in the target.\n *\n * If a singular message field is present in the source, it is merged\n * with the target field by calling mergePartial() of the responsible\n * message type.\n *\n * If a repeated field is present in the source, its values replace\n * all values in the target array, removing extraneous values.\n * Repeated message fields are copied, not merged.\n *\n * If a map field is present in the source, entries are added to the\n * target map, replacing entries with the same key. Entries that only\n * exist in the target remain. Entries with message values are copied,\n * not merged.\n *\n * Note that this function differs from protobuf merge semantics,\n * which appends repeated fields.\n */\nfunction reflectionMergePartial(info, target, source) {\n let fieldValue, // the field value we are working with\n input = source, output; // where we want our field value to go\n for (let field of info.fields) {\n let name = field.localName;\n if (field.oneof) {\n const group = input[field.oneof]; // this is the oneof`s group in the source\n if ((group === null || group === void 0 ? void 0 : group.oneofKind) == undefined) { // the user is free to omit\n continue; // we skip this field, and all other members too\n }\n fieldValue = group[name]; // our value comes from the the oneof group of the source\n output = target[field.oneof]; // and our output is the oneof group of the target\n output.oneofKind = group.oneofKind; // always update discriminator\n if (fieldValue == undefined) {\n delete output[name]; // remove any existing value\n continue; // skip further work on field\n }\n }\n else {\n fieldValue = input[name]; // we are using the source directly\n output = target; // we want our field value to go directly into the target\n if (fieldValue == undefined) {\n continue; // skip further work on field, existing value is used as is\n }\n }\n if (field.repeat)\n output[name].length = fieldValue.length; // resize target array to match source array\n // now we just work with `fieldValue` and `output` to merge the value\n switch (field.kind) {\n case \"scalar\":\n case \"enum\":\n if (field.repeat)\n for (let i = 0; i < fieldValue.length; i++)\n output[name][i] = fieldValue[i]; // not a reference type\n else\n output[name] = fieldValue; // not a reference type\n break;\n case \"message\":\n let T = field.T();\n if (field.repeat)\n for (let i = 0; i < fieldValue.length; i++)\n output[name][i] = T.create(fieldValue[i]);\n else if (output[name] === undefined)\n output[name] = T.create(fieldValue); // nothing to merge with\n else\n T.mergePartial(output[name], fieldValue);\n break;\n case \"map\":\n // Map and repeated fields are simply overwritten, not appended or merged\n switch (field.V.kind) {\n case \"scalar\":\n case \"enum\":\n Object.assign(output[name], fieldValue); // elements are not reference types\n break;\n case \"message\":\n let T = field.V.T();\n for (let k of Object.keys(fieldValue))\n output[name][k] = T.create(fieldValue[k]);\n break;\n }\n break;\n }\n }\n}\nexports.reflectionMergePartial = reflectionMergePartial;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.reflectionEquals = void 0;\nconst reflection_info_1 = require(\"./reflection-info\");\n/**\n * Determines whether two message of the same type have the same field values.\n * Checks for deep equality, traversing repeated fields, oneof groups, maps\n * and messages recursively.\n * Will also return true if both messages are `undefined`.\n */\nfunction reflectionEquals(info, a, b) {\n if (a === b)\n return true;\n if (!a || !b)\n return false;\n for (let field of info.fields) {\n let localName = field.localName;\n let val_a = field.oneof ? a[field.oneof][localName] : a[localName];\n let val_b = field.oneof ? b[field.oneof][localName] : b[localName];\n switch (field.kind) {\n case \"enum\":\n case \"scalar\":\n let t = field.kind == \"enum\" ? reflection_info_1.ScalarType.INT32 : field.T;\n if (!(field.repeat\n ? repeatedPrimitiveEq(t, val_a, val_b)\n : primitiveEq(t, val_a, val_b)))\n return false;\n break;\n case \"map\":\n if (!(field.V.kind == \"message\"\n ? repeatedMsgEq(field.V.T(), objectValues(val_a), objectValues(val_b))\n : repeatedPrimitiveEq(field.V.kind == \"enum\" ? reflection_info_1.ScalarType.INT32 : field.V.T, objectValues(val_a), objectValues(val_b))))\n return false;\n break;\n case \"message\":\n let T = field.T();\n if (!(field.repeat\n ? repeatedMsgEq(T, val_a, val_b)\n : T.equals(val_a, val_b)))\n return false;\n break;\n }\n }\n return true;\n}\nexports.reflectionEquals = reflectionEquals;\nconst objectValues = Object.values;\nfunction primitiveEq(type, a, b) {\n if (a === b)\n return true;\n if (type !== reflection_info_1.ScalarType.BYTES)\n return false;\n let ba = a;\n let bb = b;\n if (ba.length !== bb.length)\n return false;\n for (let i = 0; i < ba.length; i++)\n if (ba[i] != bb[i])\n return false;\n return true;\n}\nfunction repeatedPrimitiveEq(type, a, b) {\n if (a.length !== b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (!primitiveEq(type, a[i], b[i]))\n return false;\n return true;\n}\nfunction repeatedMsgEq(type, a, b) {\n if (a.length !== b.length)\n return false;\n for (let i = 0; i < a.length; i++)\n if (!type.equals(a[i], b[i]))\n return false;\n return true;\n}\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.MessageType = void 0;\nconst message_type_contract_1 = require(\"./message-type-contract\");\nconst reflection_info_1 = require(\"./reflection-info\");\nconst reflection_type_check_1 = require(\"./reflection-type-check\");\nconst reflection_json_reader_1 = require(\"./reflection-json-reader\");\nconst reflection_json_writer_1 = require(\"./reflection-json-writer\");\nconst reflection_binary_reader_1 = require(\"./reflection-binary-reader\");\nconst reflection_binary_writer_1 = require(\"./reflection-binary-writer\");\nconst reflection_create_1 = require(\"./reflection-create\");\nconst reflection_merge_partial_1 = require(\"./reflection-merge-partial\");\nconst json_typings_1 = require(\"./json-typings\");\nconst json_format_contract_1 = require(\"./json-format-contract\");\nconst reflection_equals_1 = require(\"./reflection-equals\");\nconst binary_writer_1 = require(\"./binary-writer\");\nconst binary_reader_1 = require(\"./binary-reader\");\nconst baseDescriptors = Object.getOwnPropertyDescriptors(Object.getPrototypeOf({}));\nconst messageTypeDescriptor = baseDescriptors[message_type_contract_1.MESSAGE_TYPE] = {};\n/**\n * This standard message type provides reflection-based\n * operations to work with a message.\n */\nclass MessageType {\n constructor(name, fields, options) {\n this.defaultCheckDepth = 16;\n this.typeName = name;\n this.fields = fields.map(reflection_info_1.normalizeFieldInfo);\n this.options = options !== null && options !== void 0 ? options : {};\n messageTypeDescriptor.value = this;\n this.messagePrototype = Object.create(null, baseDescriptors);\n this.refTypeCheck = new reflection_type_check_1.ReflectionTypeCheck(this);\n this.refJsonReader = new reflection_json_reader_1.ReflectionJsonReader(this);\n this.refJsonWriter = new reflection_json_writer_1.ReflectionJsonWriter(this);\n this.refBinReader = new reflection_binary_reader_1.ReflectionBinaryReader(this);\n this.refBinWriter = new reflection_binary_writer_1.ReflectionBinaryWriter(this);\n }\n create(value) {\n let message = reflection_create_1.reflectionCreate(this);\n if (value !== undefined) {\n reflection_merge_partial_1.reflectionMergePartial(this, message, value);\n }\n return message;\n }\n /**\n * Clone the message.\n *\n * Unknown fields are discarded.\n */\n clone(message) {\n let copy = this.create();\n reflection_merge_partial_1.reflectionMergePartial(this, copy, message);\n return copy;\n }\n /**\n * Determines whether two message of the same type have the same field values.\n * Checks for deep equality, traversing repeated fields, oneof groups, maps\n * and messages recursively.\n * Will also return true if both messages are `undefined`.\n */\n equals(a, b) {\n return reflection_equals_1.reflectionEquals(this, a, b);\n }\n /**\n * Is the given value assignable to our message type\n * and contains no [excess properties](https://www.typescriptlang.org/docs/handbook/interfaces.html#excess-property-checks)?\n */\n is(arg, depth = this.defaultCheckDepth) {\n return this.refTypeCheck.is(arg, depth, false);\n }\n /**\n * Is the given value assignable to our message type,\n * regardless of [excess properties](https://www.typescriptlang.org/docs/handbook/interfaces.html#excess-property-checks)?\n */\n isAssignable(arg, depth = this.defaultCheckDepth) {\n return this.refTypeCheck.is(arg, depth, true);\n }\n /**\n * Copy partial data into the target message.\n */\n mergePartial(target, source) {\n reflection_merge_partial_1.reflectionMergePartial(this, target, source);\n }\n /**\n * Create a new message from binary format.\n */\n fromBinary(data, options) {\n let opt = binary_reader_1.binaryReadOptions(options);\n return this.internalBinaryRead(opt.readerFactory(data), data.byteLength, opt);\n }\n /**\n * Read a new message from a JSON value.\n */\n fromJson(json, options) {\n return this.internalJsonRead(json, json_format_contract_1.jsonReadOptions(options));\n }\n /**\n * Read a new message from a JSON string.\n * This is equivalent to `T.fromJson(JSON.parse(json))`.\n */\n fromJsonString(json, options) {\n let value = JSON.parse(json);\n return this.fromJson(value, options);\n }\n /**\n * Write the message to canonical JSON value.\n */\n toJson(message, options) {\n return this.internalJsonWrite(message, json_format_contract_1.jsonWriteOptions(options));\n }\n /**\n * Convert the message to canonical JSON string.\n * This is equivalent to `JSON.stringify(T.toJson(t))`\n */\n toJsonString(message, options) {\n var _a;\n let value = this.toJson(message, options);\n return JSON.stringify(value, null, (_a = options === null || options === void 0 ? void 0 : options.prettySpaces) !== null && _a !== void 0 ? _a : 0);\n }\n /**\n * Write the message to binary format.\n */\n toBinary(message, options) {\n let opt = binary_writer_1.binaryWriteOptions(options);\n return this.internalBinaryWrite(message, opt.writerFactory(), opt).finish();\n }\n /**\n * This is an internal method. If you just want to read a message from\n * JSON, use `fromJson()` or `fromJsonString()`.\n *\n * Reads JSON value and merges the fields into the target\n * according to protobuf rules. If the target is omitted,\n * a new instance is created first.\n */\n internalJsonRead(json, options, target) {\n if (json !== null && typeof json == \"object\" && !Array.isArray(json)) {\n let message = target !== null && target !== void 0 ? target : this.create();\n this.refJsonReader.read(json, message, options);\n return message;\n }\n throw new Error(`Unable to parse message ${this.typeName} from JSON ${json_typings_1.typeofJsonValue(json)}.`);\n }\n /**\n * This is an internal method. If you just want to write a message\n * to JSON, use `toJson()` or `toJsonString().\n *\n * Writes JSON value and returns it.\n */\n internalJsonWrite(message, options) {\n return this.refJsonWriter.write(message, options);\n }\n /**\n * This is an internal method. If you just want to write a message\n * in binary format, use `toBinary()`.\n *\n * Serializes the message in binary format and appends it to the given\n * writer. Returns passed writer.\n */\n internalBinaryWrite(message, writer, options) {\n this.refBinWriter.write(message, writer, options);\n return writer;\n }\n /**\n * This is an internal method. If you just want to read a message from\n * binary data, use `fromBinary()`.\n *\n * Reads data from binary format and merges the fields into\n * the target according to protobuf rules. If the target is\n * omitted, a new instance is created first.\n */\n internalBinaryRead(reader, length, options, target) {\n let message = target !== null && target !== void 0 ? target : this.create();\n this.refBinReader.read(reader, message, options, length);\n return message;\n }\n}\nexports.MessageType = MessageType;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.containsMessageType = void 0;\nconst message_type_contract_1 = require(\"./message-type-contract\");\n/**\n * Check if the provided object is a proto message.\n *\n * Note that this is an experimental feature - it is here to stay, but\n * implementation details may change without notice.\n */\nfunction containsMessageType(msg) {\n return msg[message_type_contract_1.MESSAGE_TYPE] != null;\n}\nexports.containsMessageType = containsMessageType;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.listEnumNumbers = exports.listEnumNames = exports.listEnumValues = exports.isEnumObject = void 0;\n/**\n * Is this a lookup object generated by Typescript, for a Typescript enum\n * generated by protobuf-ts?\n *\n * - No `const enum` (enum must not be inlined, we need reverse mapping).\n * - No string enum (we need int32 for protobuf).\n * - Must have a value for 0 (otherwise, we would need to support custom default values).\n */\nfunction isEnumObject(arg) {\n if (typeof arg != 'object' || arg === null) {\n return false;\n }\n if (!arg.hasOwnProperty(0)) {\n return false;\n }\n for (let k of Object.keys(arg)) {\n let num = parseInt(k);\n if (!Number.isNaN(num)) {\n // is there a name for the number?\n let nam = arg[num];\n if (nam === undefined)\n return false;\n // does the name resolve back to the number?\n if (arg[nam] !== num)\n return false;\n }\n else {\n // is there a number for the name?\n let num = arg[k];\n if (num === undefined)\n return false;\n // is it a string enum?\n if (typeof num !== 'number')\n return false;\n // do we know the number?\n if (arg[num] === undefined)\n return false;\n }\n }\n return true;\n}\nexports.isEnumObject = isEnumObject;\n/**\n * Lists all values of a Typescript enum, as an array of objects with a \"name\"\n * property and a \"number\" property.\n *\n * Note that it is possible that a number appears more than once, because it is\n * possible to have aliases in an enum.\n *\n * Throws if the enum does not adhere to the rules of enums generated by\n * protobuf-ts. See `isEnumObject()`.\n */\nfunction listEnumValues(enumObject) {\n if (!isEnumObject(enumObject))\n throw new Error(\"not a typescript enum object\");\n let values = [];\n for (let [name, number] of Object.entries(enumObject))\n if (typeof number == \"number\")\n values.push({ name, number });\n return values;\n}\nexports.listEnumValues = listEnumValues;\n/**\n * Lists the names of a Typescript enum.\n *\n * Throws if the enum does not adhere to the rules of enums generated by\n * protobuf-ts. See `isEnumObject()`.\n */\nfunction listEnumNames(enumObject) {\n return listEnumValues(enumObject).map(val => val.name);\n}\nexports.listEnumNames = listEnumNames;\n/**\n * Lists the numbers of a Typescript enum.\n *\n * Throws if the enum does not adhere to the rules of enums generated by\n * protobuf-ts. See `isEnumObject()`.\n */\nfunction listEnumNumbers(enumObject) {\n return listEnumValues(enumObject)\n .map(val => val.number)\n .filter((num, index, arr) => arr.indexOf(num) == index);\n}\nexports.listEnumNumbers = listEnumNumbers;\n", "\"use strict\";\n// Public API of the protobuf-ts runtime.\n// Note: we do not use `export * from ...` to help tree shakers,\n// webpack verbose output hints that this should be useful\nObject.defineProperty(exports, \"__esModule\", { value: true });\n// Convenience JSON typings and corresponding type guards\nvar json_typings_1 = require(\"./json-typings\");\nObject.defineProperty(exports, \"typeofJsonValue\", { enumerable: true, get: function () { return json_typings_1.typeofJsonValue; } });\nObject.defineProperty(exports, \"isJsonObject\", { enumerable: true, get: function () { return json_typings_1.isJsonObject; } });\n// Base 64 encoding\nvar base64_1 = require(\"./base64\");\nObject.defineProperty(exports, \"base64decode\", { enumerable: true, get: function () { return base64_1.base64decode; } });\nObject.defineProperty(exports, \"base64encode\", { enumerable: true, get: function () { return base64_1.base64encode; } });\n// UTF8 encoding\nvar protobufjs_utf8_1 = require(\"./protobufjs-utf8\");\nObject.defineProperty(exports, \"utf8read\", { enumerable: true, get: function () { return protobufjs_utf8_1.utf8read; } });\n// Binary format contracts, options for reading and writing, for example\nvar binary_format_contract_1 = require(\"./binary-format-contract\");\nObject.defineProperty(exports, \"WireType\", { enumerable: true, get: function () { return binary_format_contract_1.WireType; } });\nObject.defineProperty(exports, \"mergeBinaryOptions\", { enumerable: true, get: function () { return binary_format_contract_1.mergeBinaryOptions; } });\nObject.defineProperty(exports, \"UnknownFieldHandler\", { enumerable: true, get: function () { return binary_format_contract_1.UnknownFieldHandler; } });\n// Standard IBinaryReader implementation\nvar binary_reader_1 = require(\"./binary-reader\");\nObject.defineProperty(exports, \"BinaryReader\", { enumerable: true, get: function () { return binary_reader_1.BinaryReader; } });\nObject.defineProperty(exports, \"binaryReadOptions\", { enumerable: true, get: function () { return binary_reader_1.binaryReadOptions; } });\n// Standard IBinaryWriter implementation\nvar binary_writer_1 = require(\"./binary-writer\");\nObject.defineProperty(exports, \"BinaryWriter\", { enumerable: true, get: function () { return binary_writer_1.BinaryWriter; } });\nObject.defineProperty(exports, \"binaryWriteOptions\", { enumerable: true, get: function () { return binary_writer_1.binaryWriteOptions; } });\n// Int64 and UInt64 implementations required for the binary format\nvar pb_long_1 = require(\"./pb-long\");\nObject.defineProperty(exports, \"PbLong\", { enumerable: true, get: function () { return pb_long_1.PbLong; } });\nObject.defineProperty(exports, \"PbULong\", { enumerable: true, get: function () { return pb_long_1.PbULong; } });\n// JSON format contracts, options for reading and writing, for example\nvar json_format_contract_1 = require(\"./json-format-contract\");\nObject.defineProperty(exports, \"jsonReadOptions\", { enumerable: true, get: function () { return json_format_contract_1.jsonReadOptions; } });\nObject.defineProperty(exports, \"jsonWriteOptions\", { enumerable: true, get: function () { return json_format_contract_1.jsonWriteOptions; } });\nObject.defineProperty(exports, \"mergeJsonOptions\", { enumerable: true, get: function () { return json_format_contract_1.mergeJsonOptions; } });\n// Message type contract\nvar message_type_contract_1 = require(\"./message-type-contract\");\nObject.defineProperty(exports, \"MESSAGE_TYPE\", { enumerable: true, get: function () { return message_type_contract_1.MESSAGE_TYPE; } });\n// Message type implementation via reflection\nvar message_type_1 = require(\"./message-type\");\nObject.defineProperty(exports, \"MessageType\", { enumerable: true, get: function () { return message_type_1.MessageType; } });\n// Reflection info, generated by the plugin, exposed to the user, used by reflection ops\nvar reflection_info_1 = require(\"./reflection-info\");\nObject.defineProperty(exports, \"ScalarType\", { enumerable: true, get: function () { return reflection_info_1.ScalarType; } });\nObject.defineProperty(exports, \"LongType\", { enumerable: true, get: function () { return reflection_info_1.LongType; } });\nObject.defineProperty(exports, \"RepeatType\", { enumerable: true, get: function () { return reflection_info_1.RepeatType; } });\nObject.defineProperty(exports, \"normalizeFieldInfo\", { enumerable: true, get: function () { return reflection_info_1.normalizeFieldInfo; } });\nObject.defineProperty(exports, \"readFieldOptions\", { enumerable: true, get: function () { return reflection_info_1.readFieldOptions; } });\nObject.defineProperty(exports, \"readFieldOption\", { enumerable: true, get: function () { return reflection_info_1.readFieldOption; } });\nObject.defineProperty(exports, \"readMessageOption\", { enumerable: true, get: function () { return reflection_info_1.readMessageOption; } });\n// Message operations via reflection\nvar reflection_type_check_1 = require(\"./reflection-type-check\");\nObject.defineProperty(exports, \"ReflectionTypeCheck\", { enumerable: true, get: function () { return reflection_type_check_1.ReflectionTypeCheck; } });\nvar reflection_create_1 = require(\"./reflection-create\");\nObject.defineProperty(exports, \"reflectionCreate\", { enumerable: true, get: function () { return reflection_create_1.reflectionCreate; } });\nvar reflection_scalar_default_1 = require(\"./reflection-scalar-default\");\nObject.defineProperty(exports, \"reflectionScalarDefault\", { enumerable: true, get: function () { return reflection_scalar_default_1.reflectionScalarDefault; } });\nvar reflection_merge_partial_1 = require(\"./reflection-merge-partial\");\nObject.defineProperty(exports, \"reflectionMergePartial\", { enumerable: true, get: function () { return reflection_merge_partial_1.reflectionMergePartial; } });\nvar reflection_equals_1 = require(\"./reflection-equals\");\nObject.defineProperty(exports, \"reflectionEquals\", { enumerable: true, get: function () { return reflection_equals_1.reflectionEquals; } });\nvar reflection_binary_reader_1 = require(\"./reflection-binary-reader\");\nObject.defineProperty(exports, \"ReflectionBinaryReader\", { enumerable: true, get: function () { return reflection_binary_reader_1.ReflectionBinaryReader; } });\nvar reflection_binary_writer_1 = require(\"./reflection-binary-writer\");\nObject.defineProperty(exports, \"ReflectionBinaryWriter\", { enumerable: true, get: function () { return reflection_binary_writer_1.ReflectionBinaryWriter; } });\nvar reflection_json_reader_1 = require(\"./reflection-json-reader\");\nObject.defineProperty(exports, \"ReflectionJsonReader\", { enumerable: true, get: function () { return reflection_json_reader_1.ReflectionJsonReader; } });\nvar reflection_json_writer_1 = require(\"./reflection-json-writer\");\nObject.defineProperty(exports, \"ReflectionJsonWriter\", { enumerable: true, get: function () { return reflection_json_writer_1.ReflectionJsonWriter; } });\nvar reflection_contains_message_type_1 = require(\"./reflection-contains-message-type\");\nObject.defineProperty(exports, \"containsMessageType\", { enumerable: true, get: function () { return reflection_contains_message_type_1.containsMessageType; } });\n// Oneof helpers\nvar oneof_1 = require(\"./oneof\");\nObject.defineProperty(exports, \"isOneofGroup\", { enumerable: true, get: function () { return oneof_1.isOneofGroup; } });\nObject.defineProperty(exports, \"setOneofValue\", { enumerable: true, get: function () { return oneof_1.setOneofValue; } });\nObject.defineProperty(exports, \"getOneofValue\", { enumerable: true, get: function () { return oneof_1.getOneofValue; } });\nObject.defineProperty(exports, \"clearOneofValue\", { enumerable: true, get: function () { return oneof_1.clearOneofValue; } });\nObject.defineProperty(exports, \"getSelectedOneofValue\", { enumerable: true, get: function () { return oneof_1.getSelectedOneofValue; } });\n// Enum object type guard and reflection util, may be interesting to the user.\nvar enum_object_1 = require(\"./enum-object\");\nObject.defineProperty(exports, \"listEnumValues\", { enumerable: true, get: function () { return enum_object_1.listEnumValues; } });\nObject.defineProperty(exports, \"listEnumNames\", { enumerable: true, get: function () { return enum_object_1.listEnumNames; } });\nObject.defineProperty(exports, \"listEnumNumbers\", { enumerable: true, get: function () { return enum_object_1.listEnumNumbers; } });\nObject.defineProperty(exports, \"isEnumObject\", { enumerable: true, get: function () { return enum_object_1.isEnumObject; } });\n// lowerCamelCase() is exported for plugin, rpc-runtime and other rpc packages\nvar lower_camel_case_1 = require(\"./lower-camel-case\");\nObject.defineProperty(exports, \"lowerCamelCase\", { enumerable: true, get: function () { return lower_camel_case_1.lowerCamelCase; } });\n// assertion functions are exported for plugin, may also be useful to user\nvar assert_1 = require(\"./assert\");\nObject.defineProperty(exports, \"assert\", { enumerable: true, get: function () { return assert_1.assert; } });\nObject.defineProperty(exports, \"assertNever\", { enumerable: true, get: function () { return assert_1.assertNever; } });\nObject.defineProperty(exports, \"assertInt32\", { enumerable: true, get: function () { return assert_1.assertInt32; } });\nObject.defineProperty(exports, \"assertUInt32\", { enumerable: true, get: function () { return assert_1.assertUInt32; } });\nObject.defineProperty(exports, \"assertFloat32\", { enumerable: true, get: function () { return assert_1.assertFloat32; } });\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.readServiceOption = exports.readMethodOption = exports.readMethodOptions = exports.normalizeMethodInfo = void 0;\nconst runtime_1 = require(\"@protobuf-ts/runtime\");\n/**\n * Turns PartialMethodInfo into MethodInfo.\n */\nfunction normalizeMethodInfo(method, service) {\n var _a, _b, _c;\n let m = method;\n m.service = service;\n m.localName = (_a = m.localName) !== null && _a !== void 0 ? _a : runtime_1.lowerCamelCase(m.name);\n // noinspection PointlessBooleanExpressionJS\n m.serverStreaming = !!m.serverStreaming;\n // noinspection PointlessBooleanExpressionJS\n m.clientStreaming = !!m.clientStreaming;\n m.options = (_b = m.options) !== null && _b !== void 0 ? _b : {};\n m.idempotency = (_c = m.idempotency) !== null && _c !== void 0 ? _c : undefined;\n return m;\n}\nexports.normalizeMethodInfo = normalizeMethodInfo;\n/**\n * Read custom method options from a generated service client.\n *\n * @deprecated use readMethodOption()\n */\nfunction readMethodOptions(service, methodName, extensionName, extensionType) {\n var _a;\n const options = (_a = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a === void 0 ? void 0 : _a.options;\n return options && options[extensionName] ? extensionType.fromJson(options[extensionName]) : undefined;\n}\nexports.readMethodOptions = readMethodOptions;\nfunction readMethodOption(service, methodName, extensionName, extensionType) {\n var _a;\n const options = (_a = service.methods.find((m, i) => m.localName === methodName || i === methodName)) === null || _a === void 0 ? void 0 : _a.options;\n if (!options) {\n return undefined;\n }\n const optionVal = options[extensionName];\n if (optionVal === undefined) {\n return optionVal;\n }\n return extensionType ? extensionType.fromJson(optionVal) : optionVal;\n}\nexports.readMethodOption = readMethodOption;\nfunction readServiceOption(service, extensionName, extensionType) {\n const options = service.options;\n if (!options) {\n return undefined;\n }\n const optionVal = options[extensionName];\n if (optionVal === undefined) {\n return optionVal;\n }\n return extensionType ? extensionType.fromJson(optionVal) : optionVal;\n}\nexports.readServiceOption = readServiceOption;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ServiceType = void 0;\nconst reflection_info_1 = require(\"./reflection-info\");\nclass ServiceType {\n constructor(typeName, methods, options) {\n this.typeName = typeName;\n this.methods = methods.map(i => reflection_info_1.normalizeMethodInfo(i, this));\n this.options = options !== null && options !== void 0 ? options : {};\n }\n}\nexports.ServiceType = ServiceType;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RpcError = void 0;\n/**\n * An error that occurred while calling a RPC method.\n */\nclass RpcError extends Error {\n constructor(message, code = 'UNKNOWN', meta) {\n super(message);\n this.name = 'RpcError';\n // see https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html#example\n Object.setPrototypeOf(this, new.target.prototype);\n this.code = code;\n this.meta = meta !== null && meta !== void 0 ? meta : {};\n }\n toString() {\n const l = [this.name + ': ' + this.message];\n if (this.code) {\n l.push('');\n l.push('Code: ' + this.code);\n }\n if (this.serviceName && this.methodName) {\n l.push('Method: ' + this.serviceName + '/' + this.methodName);\n }\n let m = Object.entries(this.meta);\n if (m.length) {\n l.push('');\n l.push('Meta:');\n for (let [k, v] of m) {\n l.push(` ${k}: ${v}`);\n }\n }\n return l.join('\\n');\n }\n}\nexports.RpcError = RpcError;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.mergeRpcOptions = void 0;\nconst runtime_1 = require(\"@protobuf-ts/runtime\");\n/**\n * Merges custom RPC options with defaults. Returns a new instance and keeps\n * the \"defaults\" and the \"options\" unmodified.\n *\n * Merges `RpcMetadata` \"meta\", overwriting values from \"defaults\" with\n * values from \"options\". Does not append values to existing entries.\n *\n * Merges \"jsonOptions\", including \"jsonOptions.typeRegistry\", by creating\n * a new array that contains types from \"options.jsonOptions.typeRegistry\"\n * first, then types from \"defaults.jsonOptions.typeRegistry\".\n *\n * Merges \"binaryOptions\".\n *\n * Merges \"interceptors\" by creating a new array that contains interceptors\n * from \"defaults\" first, then interceptors from \"options\".\n *\n * Works with objects that extend `RpcOptions`, but only if the added\n * properties are of type Date, primitive like string, boolean, or Array\n * of primitives. If you have other property types, you have to merge them\n * yourself.\n */\nfunction mergeRpcOptions(defaults, options) {\n if (!options)\n return defaults;\n let o = {};\n copy(defaults, o);\n copy(options, o);\n for (let key of Object.keys(options)) {\n let val = options[key];\n switch (key) {\n case \"jsonOptions\":\n o.jsonOptions = runtime_1.mergeJsonOptions(defaults.jsonOptions, o.jsonOptions);\n break;\n case \"binaryOptions\":\n o.binaryOptions = runtime_1.mergeBinaryOptions(defaults.binaryOptions, o.binaryOptions);\n break;\n case \"meta\":\n o.meta = {};\n copy(defaults.meta, o.meta);\n copy(options.meta, o.meta);\n break;\n case \"interceptors\":\n o.interceptors = defaults.interceptors ? defaults.interceptors.concat(val) : val.concat();\n break;\n }\n }\n return o;\n}\nexports.mergeRpcOptions = mergeRpcOptions;\nfunction copy(a, into) {\n if (!a)\n return;\n let c = into;\n for (let [k, v] of Object.entries(a)) {\n if (v instanceof Date)\n c[k] = new Date(v.getTime());\n else if (Array.isArray(v))\n c[k] = v.concat();\n else\n c[k] = v;\n }\n}\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.Deferred = exports.DeferredState = void 0;\nvar DeferredState;\n(function (DeferredState) {\n DeferredState[DeferredState[\"PENDING\"] = 0] = \"PENDING\";\n DeferredState[DeferredState[\"REJECTED\"] = 1] = \"REJECTED\";\n DeferredState[DeferredState[\"RESOLVED\"] = 2] = \"RESOLVED\";\n})(DeferredState = exports.DeferredState || (exports.DeferredState = {}));\n/**\n * A deferred promise. This is a \"controller\" for a promise, which lets you\n * pass a promise around and reject or resolve it from the outside.\n *\n * Warning: This class is to be used with care. Using it can make code very\n * difficult to read. It is intended for use in library code that exposes\n * promises, not for regular business logic.\n */\nclass Deferred {\n /**\n * @param preventUnhandledRejectionWarning - prevents the warning\n * \"Unhandled Promise rejection\" by adding a noop rejection handler.\n * Working with calls returned from the runtime-rpc package in an\n * async function usually means awaiting one call property after\n * the other. This means that the \"status\" is not being awaited when\n * an earlier await for the \"headers\" is rejected. This causes the\n * \"unhandled promise reject\" warning. A more correct behaviour for\n * calls might be to become aware whether at least one of the\n * promises is handled and swallow the rejection warning for the\n * others.\n */\n constructor(preventUnhandledRejectionWarning = true) {\n this._state = DeferredState.PENDING;\n this._promise = new Promise((resolve, reject) => {\n this._resolve = resolve;\n this._reject = reject;\n });\n if (preventUnhandledRejectionWarning) {\n this._promise.catch(_ => { });\n }\n }\n /**\n * Get the current state of the promise.\n */\n get state() {\n return this._state;\n }\n /**\n * Get the deferred promise.\n */\n get promise() {\n return this._promise;\n }\n /**\n * Resolve the promise. Throws if the promise is already resolved or rejected.\n */\n resolve(value) {\n if (this.state !== DeferredState.PENDING)\n throw new Error(`cannot resolve ${DeferredState[this.state].toLowerCase()}`);\n this._resolve(value);\n this._state = DeferredState.RESOLVED;\n }\n /**\n * Reject the promise. Throws if the promise is already resolved or rejected.\n */\n reject(reason) {\n if (this.state !== DeferredState.PENDING)\n throw new Error(`cannot reject ${DeferredState[this.state].toLowerCase()}`);\n this._reject(reason);\n this._state = DeferredState.REJECTED;\n }\n /**\n * Resolve the promise. Ignore if not pending.\n */\n resolvePending(val) {\n if (this._state === DeferredState.PENDING)\n this.resolve(val);\n }\n /**\n * Reject the promise. Ignore if not pending.\n */\n rejectPending(reason) {\n if (this._state === DeferredState.PENDING)\n this.reject(reason);\n }\n}\nexports.Deferred = Deferred;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.RpcOutputStreamController = void 0;\nconst deferred_1 = require(\"./deferred\");\nconst runtime_1 = require(\"@protobuf-ts/runtime\");\n/**\n * A `RpcOutputStream` that you control.\n */\nclass RpcOutputStreamController {\n constructor() {\n this._lis = {\n nxt: [],\n msg: [],\n err: [],\n cmp: [],\n };\n this._closed = false;\n // --- RpcOutputStream async iterator API\n // iterator state.\n // is undefined when no iterator has been acquired yet.\n this._itState = { q: [] };\n }\n // --- RpcOutputStream callback API\n onNext(callback) {\n return this.addLis(callback, this._lis.nxt);\n }\n onMessage(callback) {\n return this.addLis(callback, this._lis.msg);\n }\n onError(callback) {\n return this.addLis(callback, this._lis.err);\n }\n onComplete(callback) {\n return this.addLis(callback, this._lis.cmp);\n }\n addLis(callback, list) {\n list.push(callback);\n return () => {\n let i = list.indexOf(callback);\n if (i >= 0)\n list.splice(i, 1);\n };\n }\n // remove all listeners\n clearLis() {\n for (let l of Object.values(this._lis))\n l.splice(0, l.length);\n }\n // --- Controller API\n /**\n * Is this stream already closed by a completion or error?\n */\n get closed() {\n return this._closed !== false;\n }\n /**\n * Emit message, close with error, or close successfully, but only one\n * at a time.\n * Can be used to wrap a stream by using the other stream's `onNext`.\n */\n notifyNext(message, error, complete) {\n runtime_1.assert((message ? 1 : 0) + (error ? 1 : 0) + (complete ? 1 : 0) <= 1, 'only one emission at a time');\n if (message)\n this.notifyMessage(message);\n if (error)\n this.notifyError(error);\n if (complete)\n this.notifyComplete();\n }\n /**\n * Emits a new message. Throws if stream is closed.\n *\n * Triggers onNext and onMessage callbacks.\n */\n notifyMessage(message) {\n runtime_1.assert(!this.closed, 'stream is closed');\n this.pushIt({ value: message, done: false });\n this._lis.msg.forEach(l => l(message));\n this._lis.nxt.forEach(l => l(message, undefined, false));\n }\n /**\n * Closes the stream with an error. Throws if stream is closed.\n *\n * Triggers onNext and onError callbacks.\n */\n notifyError(error) {\n runtime_1.assert(!this.closed, 'stream is closed');\n this._closed = error;\n this.pushIt(error);\n this._lis.err.forEach(l => l(error));\n this._lis.nxt.forEach(l => l(undefined, error, false));\n this.clearLis();\n }\n /**\n * Closes the stream successfully. Throws if stream is closed.\n *\n * Triggers onNext and onComplete callbacks.\n */\n notifyComplete() {\n runtime_1.assert(!this.closed, 'stream is closed');\n this._closed = true;\n this.pushIt({ value: null, done: true });\n this._lis.cmp.forEach(l => l());\n this._lis.nxt.forEach(l => l(undefined, undefined, true));\n this.clearLis();\n }\n /**\n * Creates an async iterator (that can be used with `for await {...}`)\n * to consume the stream.\n *\n * Some things to note:\n * - If an error occurs, the `for await` will throw it.\n * - If an error occurred before the `for await` was started, `for await`\n * will re-throw it.\n * - If the stream is already complete, the `for await` will be empty.\n * - If your `for await` consumes slower than the stream produces,\n * for example because you are relaying messages in a slow operation,\n * messages are queued.\n */\n [Symbol.asyncIterator]() {\n // if we are closed, we are definitely not receiving any more messages.\n // but we can't let the iterator get stuck. we want to either:\n // a) finish the new iterator immediately, because we are completed\n // b) reject the new iterator, because we errored\n if (this._closed === true)\n this.pushIt({ value: null, done: true });\n else if (this._closed !== false)\n this.pushIt(this._closed);\n // the async iterator\n return {\n next: () => {\n let state = this._itState;\n runtime_1.assert(state, \"bad state\"); // if we don't have a state here, code is broken\n // there should be no pending result.\n // did the consumer call next() before we resolved our previous result promise?\n runtime_1.assert(!state.p, \"iterator contract broken\");\n // did we produce faster than the iterator consumed?\n // return the oldest result from the queue.\n let first = state.q.shift();\n if (first)\n return (\"value\" in first) ? Promise.resolve(first) : Promise.reject(first);\n // we have no result ATM, but we promise one.\n // as soon as we have a result, we must resolve promise.\n state.p = new deferred_1.Deferred();\n return state.p.promise;\n },\n };\n }\n // \"push\" a new iterator result.\n // this either resolves a pending promise, or enqueues the result.\n pushIt(result) {\n let state = this._itState;\n // is the consumer waiting for us?\n if (state.p) {\n // yes, consumer is waiting for this promise.\n const p = state.p;\n runtime_1.assert(p.state == deferred_1.DeferredState.PENDING, \"iterator contract broken\");\n // resolve the promise\n (\"value\" in result) ? p.resolve(result) : p.reject(result);\n // must cleanup, otherwise iterator.next() would pick it up again.\n delete state.p;\n }\n else {\n // we are producing faster than the iterator consumes.\n // push result onto queue.\n state.q.push(result);\n }\n }\n}\nexports.RpcOutputStreamController = RpcOutputStreamController;\n", "\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.UnaryCall = void 0;\n/**\n * A unary RPC call. Unary means there is exactly one input message and\n * exactly one output message unless an error occurred.\n */\nclass UnaryCall {\n constructor(method, requestHeaders, request, headers, response, status, trailers) {\n this.method = method;\n this.requestHeaders = requestHeaders;\n this.request = request;\n this.headers = headers;\n this.response = response;\n this.status = status;\n this.trailers = trailers;\n }\n /**\n * If you are only interested in the final outcome of this call,\n * you can await it to receive a `FinishedUnaryCall`.\n */\n then(onfulfilled, onrejected) {\n return this.promiseFinished().then(value => onfulfilled ? Promise.resolve(onfulfilled(value)) : value, reason => onrejected ? Promise.resolve(onrejected(reason)) : Promise.reject(reason));\n }\n promiseFinished() {\n return __awaiter(this, void 0, void 0, function* () {\n let [headers, response, status, trailers] = yield Promise.all([this.headers, this.response, this.status, this.trailers]);\n return {\n method: this.method,\n requestHeaders: this.requestHeaders,\n request: this.request,\n headers,\n response,\n status,\n trailers\n };\n });\n }\n}\nexports.UnaryCall = UnaryCall;\n", "\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ServerStreamingCall = void 0;\n/**\n * A server streaming RPC call. The client provides exactly one input message\n * but the server may respond with 0, 1, or more messages.\n */\nclass ServerStreamingCall {\n constructor(method, requestHeaders, request, headers, response, status, trailers) {\n this.method = method;\n this.requestHeaders = requestHeaders;\n this.request = request;\n this.headers = headers;\n this.responses = response;\n this.status = status;\n this.trailers = trailers;\n }\n /**\n * Instead of awaiting the response status and trailers, you can\n * just as well await this call itself to receive the server outcome.\n * You should first setup some listeners to the `request` to\n * see the actual messages the server replied with.\n */\n then(onfulfilled, onrejected) {\n return this.promiseFinished().then(value => onfulfilled ? Promise.resolve(onfulfilled(value)) : value, reason => onrejected ? Promise.resolve(onrejected(reason)) : Promise.reject(reason));\n }\n promiseFinished() {\n return __awaiter(this, void 0, void 0, function* () {\n let [headers, status, trailers] = yield Promise.all([this.headers, this.status, this.trailers]);\n return {\n method: this.method,\n requestHeaders: this.requestHeaders,\n request: this.request,\n headers,\n status,\n trailers,\n };\n });\n }\n}\nexports.ServerStreamingCall = ServerStreamingCall;\n", "\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ClientStreamingCall = void 0;\n/**\n * A client streaming RPC call. This means that the clients sends 0, 1, or\n * more messages to the server, and the server replies with exactly one\n * message.\n */\nclass ClientStreamingCall {\n constructor(method, requestHeaders, request, headers, response, status, trailers) {\n this.method = method;\n this.requestHeaders = requestHeaders;\n this.requests = request;\n this.headers = headers;\n this.response = response;\n this.status = status;\n this.trailers = trailers;\n }\n /**\n * Instead of awaiting the response status and trailers, you can\n * just as well await this call itself to receive the server outcome.\n * Note that it may still be valid to send more request messages.\n */\n then(onfulfilled, onrejected) {\n return this.promiseFinished().then(value => onfulfilled ? Promise.resolve(onfulfilled(value)) : value, reason => onrejected ? Promise.resolve(onrejected(reason)) : Promise.reject(reason));\n }\n promiseFinished() {\n return __awaiter(this, void 0, void 0, function* () {\n let [headers, response, status, trailers] = yield Promise.all([this.headers, this.response, this.status, this.trailers]);\n return {\n method: this.method,\n requestHeaders: this.requestHeaders,\n headers,\n response,\n status,\n trailers\n };\n });\n }\n}\nexports.ClientStreamingCall = ClientStreamingCall;\n", "\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.DuplexStreamingCall = void 0;\n/**\n * A duplex streaming RPC call. This means that the clients sends an\n * arbitrary amount of messages to the server, while at the same time,\n * the server sends an arbitrary amount of messages to the client.\n */\nclass DuplexStreamingCall {\n constructor(method, requestHeaders, request, headers, response, status, trailers) {\n this.method = method;\n this.requestHeaders = requestHeaders;\n this.requests = request;\n this.headers = headers;\n this.responses = response;\n this.status = status;\n this.trailers = trailers;\n }\n /**\n * Instead of awaiting the response status and trailers, you can\n * just as well await this call itself to receive the server outcome.\n * Note that it may still be valid to send more request messages.\n */\n then(onfulfilled, onrejected) {\n return this.promiseFinished().then(value => onfulfilled ? Promise.resolve(onfulfilled(value)) : value, reason => onrejected ? Promise.resolve(onrejected(reason)) : Promise.reject(reason));\n }\n promiseFinished() {\n return __awaiter(this, void 0, void 0, function* () {\n let [headers, status, trailers] = yield Promise.all([this.headers, this.status, this.trailers]);\n return {\n method: this.method,\n requestHeaders: this.requestHeaders,\n headers,\n status,\n trailers,\n };\n });\n }\n}\nexports.DuplexStreamingCall = DuplexStreamingCall;\n", "\"use strict\";\nvar __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.TestTransport = void 0;\nconst rpc_error_1 = require(\"./rpc-error\");\nconst runtime_1 = require(\"@protobuf-ts/runtime\");\nconst rpc_output_stream_1 = require(\"./rpc-output-stream\");\nconst rpc_options_1 = require(\"./rpc-options\");\nconst unary_call_1 = require(\"./unary-call\");\nconst server_streaming_call_1 = require(\"./server-streaming-call\");\nconst client_streaming_call_1 = require(\"./client-streaming-call\");\nconst duplex_streaming_call_1 = require(\"./duplex-streaming-call\");\n/**\n * Transport for testing.\n */\nclass TestTransport {\n /**\n * Initialize with mock data. Omitted fields have default value.\n */\n constructor(data) {\n /**\n * Suppress warning / error about uncaught rejections of\n * \"status\" and \"trailers\".\n */\n this.suppressUncaughtRejections = true;\n this.headerDelay = 10;\n this.responseDelay = 50;\n this.betweenResponseDelay = 10;\n this.afterResponseDelay = 10;\n this.data = data !== null && data !== void 0 ? data : {};\n }\n /**\n * Sent message(s) during the last operation.\n */\n get sentMessages() {\n if (this.lastInput instanceof TestInputStream) {\n return this.lastInput.sent;\n }\n else if (typeof this.lastInput == \"object\") {\n return [this.lastInput.single];\n }\n return [];\n }\n /**\n * Sending message(s) completed?\n */\n get sendComplete() {\n if (this.lastInput instanceof TestInputStream) {\n return this.lastInput.completed;\n }\n else if (typeof this.lastInput == \"object\") {\n return true;\n }\n return false;\n }\n // Creates a promise for response headers from the mock data.\n promiseHeaders() {\n var _a;\n const headers = (_a = this.data.headers) !== null && _a !== void 0 ? _a : TestTransport.defaultHeaders;\n return headers instanceof rpc_error_1.RpcError\n ? Promise.reject(headers)\n : Promise.resolve(headers);\n }\n // Creates a promise for a single, valid, message from the mock data.\n promiseSingleResponse(method) {\n if (this.data.response instanceof rpc_error_1.RpcError) {\n return Promise.reject(this.data.response);\n }\n let r;\n if (Array.isArray(this.data.response)) {\n runtime_1.assert(this.data.response.length > 0);\n r = this.data.response[0];\n }\n else if (this.data.response !== undefined) {\n r = this.data.response;\n }\n else {\n r = method.O.create();\n }\n runtime_1.assert(method.O.is(r));\n return Promise.resolve(r);\n }\n /**\n * Pushes response messages from the mock data to the output stream.\n * If an error response, status or trailers are mocked, the stream is\n * closed with the respective error.\n * Otherwise, stream is completed successfully.\n *\n * The returned promise resolves when the stream is closed. It should\n * not reject. If it does, code is broken.\n */\n streamResponses(method, stream, abort) {\n return __awaiter(this, void 0, void 0, function* () {\n // normalize \"data.response\" into an array of valid output messages\n const messages = [];\n if (this.data.response === undefined) {\n messages.push(method.O.create());\n }\n else if (Array.isArray(this.data.response)) {\n for (let msg of this.data.response) {\n runtime_1.assert(method.O.is(msg));\n messages.push(msg);\n }\n }\n else if (!(this.data.response instanceof rpc_error_1.RpcError)) {\n runtime_1.assert(method.O.is(this.data.response));\n messages.push(this.data.response);\n }\n // start the stream with an initial delay.\n // if the request is cancelled, notify() error and exit.\n try {\n yield delay(this.responseDelay, abort)(undefined);\n }\n catch (error) {\n stream.notifyError(error);\n return;\n }\n // if error response was mocked, notify() error (stream is now closed with error) and exit.\n if (this.data.response instanceof rpc_error_1.RpcError) {\n stream.notifyError(this.data.response);\n return;\n }\n // regular response messages were mocked. notify() them.\n for (let msg of messages) {\n stream.notifyMessage(msg);\n // add a short delay between responses\n // if the request is cancelled, notify() error and exit.\n try {\n yield delay(this.betweenResponseDelay, abort)(undefined);\n }\n catch (error) {\n stream.notifyError(error);\n return;\n }\n }\n // error status was mocked, notify() error (stream is now closed with error) and exit.\n if (this.data.status instanceof rpc_error_1.RpcError) {\n stream.notifyError(this.data.status);\n return;\n }\n // error trailers were mocked, notify() error (stream is now closed with error) and exit.\n if (this.data.trailers instanceof rpc_error_1.RpcError) {\n stream.notifyError(this.data.trailers);\n return;\n }\n // stream completed successfully\n stream.notifyComplete();\n });\n }\n // Creates a promise for response status from the mock data.\n promiseStatus() {\n var _a;\n const status = (_a = this.data.status) !== null && _a !== void 0 ? _a : TestTransport.defaultStatus;\n return status instanceof rpc_error_1.RpcError\n ? Promise.reject(status)\n : Promise.resolve(status);\n }\n // Creates a promise for response trailers from the mock data.\n promiseTrailers() {\n var _a;\n const trailers = (_a = this.data.trailers) !== null && _a !== void 0 ? _a : TestTransport.defaultTrailers;\n return trailers instanceof rpc_error_1.RpcError\n ? Promise.reject(trailers)\n : Promise.resolve(trailers);\n }\n maybeSuppressUncaught(...promise) {\n if (this.suppressUncaughtRejections) {\n for (let p of promise) {\n p.catch(() => {\n });\n }\n }\n }\n mergeOptions(options) {\n return rpc_options_1.mergeRpcOptions({}, options);\n }\n unary(method, input, options) {\n var _a;\n const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders()\n .then(delay(this.headerDelay, options.abort)), responsePromise = headersPromise\n .catch(_ => {\n })\n .then(delay(this.responseDelay, options.abort))\n .then(_ => this.promiseSingleResponse(method)), statusPromise = responsePromise\n .catch(_ => {\n })\n .then(delay(this.afterResponseDelay, options.abort))\n .then(_ => this.promiseStatus()), trailersPromise = responsePromise\n .catch(_ => {\n })\n .then(delay(this.afterResponseDelay, options.abort))\n .then(_ => this.promiseTrailers());\n this.maybeSuppressUncaught(statusPromise, trailersPromise);\n this.lastInput = { single: input };\n return new unary_call_1.UnaryCall(method, requestHeaders, input, headersPromise, responsePromise, statusPromise, trailersPromise);\n }\n serverStreaming(method, input, options) {\n var _a;\n const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders()\n .then(delay(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise\n .then(delay(this.responseDelay, options.abort))\n .catch(() => {\n })\n .then(() => this.streamResponses(method, outputStream, options.abort))\n .then(delay(this.afterResponseDelay, options.abort)), statusPromise = responseStreamClosedPromise\n .then(() => this.promiseStatus()), trailersPromise = responseStreamClosedPromise\n .then(() => this.promiseTrailers());\n this.maybeSuppressUncaught(statusPromise, trailersPromise);\n this.lastInput = { single: input };\n return new server_streaming_call_1.ServerStreamingCall(method, requestHeaders, input, headersPromise, outputStream, statusPromise, trailersPromise);\n }\n clientStreaming(method, options) {\n var _a;\n const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders()\n .then(delay(this.headerDelay, options.abort)), responsePromise = headersPromise\n .catch(_ => {\n })\n .then(delay(this.responseDelay, options.abort))\n .then(_ => this.promiseSingleResponse(method)), statusPromise = responsePromise\n .catch(_ => {\n })\n .then(delay(this.afterResponseDelay, options.abort))\n .then(_ => this.promiseStatus()), trailersPromise = responsePromise\n .catch(_ => {\n })\n .then(delay(this.afterResponseDelay, options.abort))\n .then(_ => this.promiseTrailers());\n this.maybeSuppressUncaught(statusPromise, trailersPromise);\n this.lastInput = new TestInputStream(this.data, options.abort);\n return new client_streaming_call_1.ClientStreamingCall(method, requestHeaders, this.lastInput, headersPromise, responsePromise, statusPromise, trailersPromise);\n }\n duplex(method, options) {\n var _a;\n const requestHeaders = (_a = options.meta) !== null && _a !== void 0 ? _a : {}, headersPromise = this.promiseHeaders()\n .then(delay(this.headerDelay, options.abort)), outputStream = new rpc_output_stream_1.RpcOutputStreamController(), responseStreamClosedPromise = headersPromise\n .then(delay(this.responseDelay, options.abort))\n .catch(() => {\n })\n .then(() => this.streamResponses(method, outputStream, options.abort))\n .then(delay(this.afterResponseDelay, options.abort)), statusPromise = responseStreamClosedPromise\n .then(() => this.promiseStatus()), trailersPromise = responseStreamClosedPromise\n .then(() => this.promiseTrailers());\n this.maybeSuppressUncaught(statusPromise, trailersPromise);\n this.lastInput = new TestInputStream(this.data, options.abort);\n return new duplex_streaming_call_1.DuplexStreamingCall(method, requestHeaders, this.lastInput, headersPromise, outputStream, statusPromise, trailersPromise);\n }\n}\nexports.TestTransport = TestTransport;\nTestTransport.defaultHeaders = {\n responseHeader: \"test\"\n};\nTestTransport.defaultStatus = {\n code: \"OK\", detail: \"all good\"\n};\nTestTransport.defaultTrailers = {\n responseTrailer: \"test\"\n};\nfunction delay(ms, abort) {\n return (v) => new Promise((resolve, reject) => {\n if (abort === null || abort === void 0 ? void 0 : abort.aborted) {\n reject(new rpc_error_1.RpcError(\"user cancel\", \"CANCELLED\"));\n }\n else {\n const id = setTimeout(() => resolve(v), ms);\n if (abort) {\n abort.addEventListener(\"abort\", ev => {\n clearTimeout(id);\n reject(new rpc_error_1.RpcError(\"user cancel\", \"CANCELLED\"));\n });\n }\n }\n });\n}\nclass TestInputStream {\n constructor(data, abort) {\n this._completed = false;\n this._sent = [];\n this.data = data;\n this.abort = abort;\n }\n get sent() {\n return this._sent;\n }\n get completed() {\n return this._completed;\n }\n send(message) {\n if (this.data.inputMessage instanceof rpc_error_1.RpcError) {\n return Promise.reject(this.data.inputMessage);\n }\n const delayMs = this.data.inputMessage === undefined\n ? 10\n : this.data.inputMessage;\n return Promise.resolve(undefined)\n .then(() => {\n this._sent.push(message);\n })\n .then(delay(delayMs, this.abort));\n }\n complete() {\n if (this.data.inputComplete instanceof rpc_error_1.RpcError) {\n return Promise.reject(this.data.inputComplete);\n }\n const delayMs = this.data.inputComplete === undefined\n ? 10\n : this.data.inputComplete;\n return Promise.resolve(undefined)\n .then(() => {\n this._completed = true;\n })\n .then(delay(delayMs, this.abort));\n }\n}\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.stackDuplexStreamingInterceptors = exports.stackClientStreamingInterceptors = exports.stackServerStreamingInterceptors = exports.stackUnaryInterceptors = exports.stackIntercept = void 0;\nconst runtime_1 = require(\"@protobuf-ts/runtime\");\n/**\n * Creates a \"stack\" of of all interceptors specified in the given `RpcOptions`.\n * Used by generated client implementations.\n * @internal\n */\nfunction stackIntercept(kind, transport, method, options, input) {\n var _a, _b, _c, _d;\n if (kind == \"unary\") {\n let tail = (mtd, inp, opt) => transport.unary(mtd, inp, opt);\n for (const curr of ((_a = options.interceptors) !== null && _a !== void 0 ? _a : []).filter(i => i.interceptUnary).reverse()) {\n const next = tail;\n tail = (mtd, inp, opt) => curr.interceptUnary(next, mtd, inp, opt);\n }\n return tail(method, input, options);\n }\n if (kind == \"serverStreaming\") {\n let tail = (mtd, inp, opt) => transport.serverStreaming(mtd, inp, opt);\n for (const curr of ((_b = options.interceptors) !== null && _b !== void 0 ? _b : []).filter(i => i.interceptServerStreaming).reverse()) {\n const next = tail;\n tail = (mtd, inp, opt) => curr.interceptServerStreaming(next, mtd, inp, opt);\n }\n return tail(method, input, options);\n }\n if (kind == \"clientStreaming\") {\n let tail = (mtd, opt) => transport.clientStreaming(mtd, opt);\n for (const curr of ((_c = options.interceptors) !== null && _c !== void 0 ? _c : []).filter(i => i.interceptClientStreaming).reverse()) {\n const next = tail;\n tail = (mtd, opt) => curr.interceptClientStreaming(next, mtd, opt);\n }\n return tail(method, options);\n }\n if (kind == \"duplex\") {\n let tail = (mtd, opt) => transport.duplex(mtd, opt);\n for (const curr of ((_d = options.interceptors) !== null && _d !== void 0 ? _d : []).filter(i => i.interceptDuplex).reverse()) {\n const next = tail;\n tail = (mtd, opt) => curr.interceptDuplex(next, mtd, opt);\n }\n return tail(method, options);\n }\n runtime_1.assertNever(kind);\n}\nexports.stackIntercept = stackIntercept;\n/**\n * @deprecated replaced by `stackIntercept()`, still here to support older generated code\n */\nfunction stackUnaryInterceptors(transport, method, input, options) {\n return stackIntercept(\"unary\", transport, method, options, input);\n}\nexports.stackUnaryInterceptors = stackUnaryInterceptors;\n/**\n * @deprecated replaced by `stackIntercept()`, still here to support older generated code\n */\nfunction stackServerStreamingInterceptors(transport, method, input, options) {\n return stackIntercept(\"serverStreaming\", transport, method, options, input);\n}\nexports.stackServerStreamingInterceptors = stackServerStreamingInterceptors;\n/**\n * @deprecated replaced by `stackIntercept()`, still here to support older generated code\n */\nfunction stackClientStreamingInterceptors(transport, method, options) {\n return stackIntercept(\"clientStreaming\", transport, method, options);\n}\nexports.stackClientStreamingInterceptors = stackClientStreamingInterceptors;\n/**\n * @deprecated replaced by `stackIntercept()`, still here to support older generated code\n */\nfunction stackDuplexStreamingInterceptors(transport, method, options) {\n return stackIntercept(\"duplex\", transport, method, options);\n}\nexports.stackDuplexStreamingInterceptors = stackDuplexStreamingInterceptors;\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.ServerCallContextController = void 0;\nclass ServerCallContextController {\n constructor(method, headers, deadline, sendResponseHeadersFn, defaultStatus = { code: 'OK', detail: '' }) {\n this._cancelled = false;\n this._listeners = [];\n this.method = method;\n this.headers = headers;\n this.deadline = deadline;\n this.trailers = {};\n this._sendRH = sendResponseHeadersFn;\n this.status = defaultStatus;\n }\n /**\n * Set the call cancelled.\n *\n * Invokes all callbacks registered with onCancel() and\n * sets `cancelled = true`.\n */\n notifyCancelled() {\n if (!this._cancelled) {\n this._cancelled = true;\n for (let l of this._listeners) {\n l();\n }\n }\n }\n /**\n * Send response headers.\n */\n sendResponseHeaders(data) {\n this._sendRH(data);\n }\n /**\n * Is the call cancelled?\n *\n * When the client closes the connection before the server\n * is done, the call is cancelled.\n *\n * If you want to cancel a request on the server, throw a\n * RpcError with the CANCELLED status code.\n */\n get cancelled() {\n return this._cancelled;\n }\n /**\n * Add a callback for cancellation.\n */\n onCancel(callback) {\n const l = this._listeners;\n l.push(callback);\n return () => {\n let i = l.indexOf(callback);\n if (i >= 0)\n l.splice(i, 1);\n };\n }\n}\nexports.ServerCallContextController = ServerCallContextController;\n", "\"use strict\";\n// Public API of the rpc runtime.\n// Note: we do not use `export * from ...` to help tree shakers,\n// webpack verbose output hints that this should be useful\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar service_type_1 = require(\"./service-type\");\nObject.defineProperty(exports, \"ServiceType\", { enumerable: true, get: function () { return service_type_1.ServiceType; } });\nvar reflection_info_1 = require(\"./reflection-info\");\nObject.defineProperty(exports, \"readMethodOptions\", { enumerable: true, get: function () { return reflection_info_1.readMethodOptions; } });\nObject.defineProperty(exports, \"readMethodOption\", { enumerable: true, get: function () { return reflection_info_1.readMethodOption; } });\nObject.defineProperty(exports, \"readServiceOption\", { enumerable: true, get: function () { return reflection_info_1.readServiceOption; } });\nvar rpc_error_1 = require(\"./rpc-error\");\nObject.defineProperty(exports, \"RpcError\", { enumerable: true, get: function () { return rpc_error_1.RpcError; } });\nvar rpc_options_1 = require(\"./rpc-options\");\nObject.defineProperty(exports, \"mergeRpcOptions\", { enumerable: true, get: function () { return rpc_options_1.mergeRpcOptions; } });\nvar rpc_output_stream_1 = require(\"./rpc-output-stream\");\nObject.defineProperty(exports, \"RpcOutputStreamController\", { enumerable: true, get: function () { return rpc_output_stream_1.RpcOutputStreamController; } });\nvar test_transport_1 = require(\"./test-transport\");\nObject.defineProperty(exports, \"TestTransport\", { enumerable: true, get: function () { return test_transport_1.TestTransport; } });\nvar deferred_1 = require(\"./deferred\");\nObject.defineProperty(exports, \"Deferred\", { enumerable: true, get: function () { return deferred_1.Deferred; } });\nObject.defineProperty(exports, \"DeferredState\", { enumerable: true, get: function () { return deferred_1.DeferredState; } });\nvar duplex_streaming_call_1 = require(\"./duplex-streaming-call\");\nObject.defineProperty(exports, \"DuplexStreamingCall\", { enumerable: true, get: function () { return duplex_streaming_call_1.DuplexStreamingCall; } });\nvar client_streaming_call_1 = require(\"./client-streaming-call\");\nObject.defineProperty(exports, \"ClientStreamingCall\", { enumerable: true, get: function () { return client_streaming_call_1.ClientStreamingCall; } });\nvar server_streaming_call_1 = require(\"./server-streaming-call\");\nObject.defineProperty(exports, \"ServerStreamingCall\", { enumerable: true, get: function () { return server_streaming_call_1.ServerStreamingCall; } });\nvar unary_call_1 = require(\"./unary-call\");\nObject.defineProperty(exports, \"UnaryCall\", { enumerable: true, get: function () { return unary_call_1.UnaryCall; } });\nvar rpc_interceptor_1 = require(\"./rpc-interceptor\");\nObject.defineProperty(exports, \"stackIntercept\", { enumerable: true, get: function () { return rpc_interceptor_1.stackIntercept; } });\nObject.defineProperty(exports, \"stackDuplexStreamingInterceptors\", { enumerable: true, get: function () { return rpc_interceptor_1.stackDuplexStreamingInterceptors; } });\nObject.defineProperty(exports, \"stackClientStreamingInterceptors\", { enumerable: true, get: function () { return rpc_interceptor_1.stackClientStreamingInterceptors; } });\nObject.defineProperty(exports, \"stackServerStreamingInterceptors\", { enumerable: true, get: function () { return rpc_interceptor_1.stackServerStreamingInterceptors; } });\nObject.defineProperty(exports, \"stackUnaryInterceptors\", { enumerable: true, get: function () { return rpc_interceptor_1.stackUnaryInterceptors; } });\nvar server_call_context_1 = require(\"./server-call-context\");\nObject.defineProperty(exports, \"ServerCallContextController\", { enumerable: true, get: function () { return server_call_context_1.ServerCallContextController; } });\n", "'use strict'\n\n// Note: this is the semver.org version of the spec that it implements\n// Not necessarily the package version of this code.\nconst SEMVER_SPEC_VERSION = '2.0.0'\n\nconst MAX_LENGTH = 256\nconst MAX_SAFE_INTEGER = Number.MAX_SAFE_INTEGER ||\n/* istanbul ignore next */ 9007199254740991\n\n// Max safe segment length for coercion.\nconst MAX_SAFE_COMPONENT_LENGTH = 16\n\n// Max safe length for a build identifier. The max length minus 6 characters for\n// the shortest version with a build 0.0.0+BUILD.\nconst MAX_SAFE_BUILD_LENGTH = MAX_LENGTH - 6\n\nconst RELEASE_TYPES = [\n 'major',\n 'premajor',\n 'minor',\n 'preminor',\n 'patch',\n 'prepatch',\n 'prerelease',\n]\n\nmodule.exports = {\n MAX_LENGTH,\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_SAFE_INTEGER,\n RELEASE_TYPES,\n SEMVER_SPEC_VERSION,\n FLAG_INCLUDE_PRERELEASE: 0b001,\n FLAG_LOOSE: 0b010,\n}\n", "'use strict'\n\nconst debug = (\n typeof process === 'object' &&\n process.env &&\n process.env.NODE_DEBUG &&\n /\\bsemver\\b/i.test(process.env.NODE_DEBUG)\n) ? (...args) => console.error('SEMVER', ...args)\n : () => {}\n\nmodule.exports = debug\n", "'use strict'\n\nconst {\n MAX_SAFE_COMPONENT_LENGTH,\n MAX_SAFE_BUILD_LENGTH,\n MAX_LENGTH,\n} = require('./constants')\nconst debug = require('./debug')\nexports = module.exports = {}\n\n// The actual regexps go on exports.re\nconst re = exports.re = []\nconst safeRe = exports.safeRe = []\nconst src = exports.src = []\nconst safeSrc = exports.safeSrc = []\nconst t = exports.t = {}\nlet R = 0\n\nconst LETTERDASHNUMBER = '[a-zA-Z0-9-]'\n\n// Replace some greedy regex tokens to prevent regex dos issues. These regex are\n// used internally via the safeRe object since all inputs in this library get\n// normalized first to trim and collapse all extra whitespace. The original\n// regexes are exported for userland consumption and lower level usage. A\n// future breaking change could export the safer regex only with a note that\n// all input should have extra whitespace removed.\nconst safeRegexReplacements = [\n ['\\\\s', 1],\n ['\\\\d', MAX_LENGTH],\n [LETTERDASHNUMBER, MAX_SAFE_BUILD_LENGTH],\n]\n\nconst makeSafeRegex = (value) => {\n for (const [token, max] of safeRegexReplacements) {\n value = value\n .split(`${token}*`).join(`${token}{0,${max}}`)\n .split(`${token}+`).join(`${token}{1,${max}}`)\n }\n return value\n}\n\nconst createToken = (name, value, isGlobal) => {\n const safe = makeSafeRegex(value)\n const index = R++\n debug(name, index, value)\n t[name] = index\n src[index] = value\n safeSrc[index] = safe\n re[index] = new RegExp(value, isGlobal ? 'g' : undefined)\n safeRe[index] = new RegExp(safe, isGlobal ? 'g' : undefined)\n}\n\n// The following Regular Expressions can be used for tokenizing,\n// validating, and parsing SemVer version strings.\n\n// ## Numeric Identifier\n// A single `0`, or a non-zero digit followed by zero or more digits.\n\ncreateToken('NUMERICIDENTIFIER', '0|[1-9]\\\\d*')\ncreateToken('NUMERICIDENTIFIERLOOSE', '\\\\d+')\n\n// ## Non-numeric Identifier\n// Zero or more digits, followed by a letter or hyphen, and then zero or\n// more letters, digits, or hyphens.\n\ncreateToken('NONNUMERICIDENTIFIER', `\\\\d*[a-zA-Z-]${LETTERDASHNUMBER}*`)\n\n// ## Main Version\n// Three dot-separated numeric identifiers.\n\ncreateToken('MAINVERSION', `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('MAINVERSIONLOOSE', `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})\\\\.` +\n `(${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version Identifier\n// A numeric identifier, or a non-numeric identifier.\n// Non-numeric identifiers include numeric identifiers but can be longer.\n// Therefore non-numeric identifiers must go first.\n\ncreateToken('PRERELEASEIDENTIFIER', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIER]})`)\n\ncreateToken('PRERELEASEIDENTIFIERLOOSE', `(?:${src[t.NONNUMERICIDENTIFIER]\n}|${src[t.NUMERICIDENTIFIERLOOSE]})`)\n\n// ## Pre-release Version\n// Hyphen, followed by one or more dot-separated pre-release version\n// identifiers.\n\ncreateToken('PRERELEASE', `(?:-(${src[t.PRERELEASEIDENTIFIER]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIER]})*))`)\n\ncreateToken('PRERELEASELOOSE', `(?:-?(${src[t.PRERELEASEIDENTIFIERLOOSE]\n}(?:\\\\.${src[t.PRERELEASEIDENTIFIERLOOSE]})*))`)\n\n// ## Build Metadata Identifier\n// Any combination of digits, letters, or hyphens.\n\ncreateToken('BUILDIDENTIFIER', `${LETTERDASHNUMBER}+`)\n\n// ## Build Metadata\n// Plus sign, followed by one or more period-separated build metadata\n// identifiers.\n\ncreateToken('BUILD', `(?:\\\\+(${src[t.BUILDIDENTIFIER]\n}(?:\\\\.${src[t.BUILDIDENTIFIER]})*))`)\n\n// ## Full Version String\n// A main version, followed optionally by a pre-release version and\n// build metadata.\n\n// Note that the only major, minor, patch, and pre-release sections of\n// the version string are capturing groups. The build metadata is not a\n// capturing group, because it should not ever be used in version\n// comparison.\n\ncreateToken('FULLPLAIN', `v?${src[t.MAINVERSION]\n}${src[t.PRERELEASE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('FULL', `^${src[t.FULLPLAIN]}$`)\n\n// like full, but allows v1.2.3 and =1.2.3, which people do sometimes.\n// also, 1.0.0alpha1 (prerelease without the hyphen) which is pretty\n// common in the npm registry.\ncreateToken('LOOSEPLAIN', `[v=\\\\s]*${src[t.MAINVERSIONLOOSE]\n}${src[t.PRERELEASELOOSE]}?${\n src[t.BUILD]}?`)\n\ncreateToken('LOOSE', `^${src[t.LOOSEPLAIN]}$`)\n\ncreateToken('GTLT', '((?:<|>)?=?)')\n\n// Something like \"2.*\" or \"1.2.x\".\n// Note that \"x.x\" is a valid xRange identifier, meaning \"any version\"\n// Only the first item is strictly required.\ncreateToken('XRANGEIDENTIFIERLOOSE', `${src[t.NUMERICIDENTIFIERLOOSE]}|x|X|\\\\*`)\ncreateToken('XRANGEIDENTIFIER', `${src[t.NUMERICIDENTIFIER]}|x|X|\\\\*`)\n\ncreateToken('XRANGEPLAIN', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIER]})` +\n `(?:${src[t.PRERELEASE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGEPLAINLOOSE', `[v=\\\\s]*(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:\\\\.(${src[t.XRANGEIDENTIFIERLOOSE]})` +\n `(?:${src[t.PRERELEASELOOSE]})?${\n src[t.BUILD]}?` +\n `)?)?`)\n\ncreateToken('XRANGE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAIN]}$`)\ncreateToken('XRANGELOOSE', `^${src[t.GTLT]}\\\\s*${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Coercion.\n// Extract anything that could conceivably be a part of a valid semver\ncreateToken('COERCEPLAIN', `${'(^|[^\\\\d])' +\n '(\\\\d{1,'}${MAX_SAFE_COMPONENT_LENGTH}})` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?` +\n `(?:\\\\.(\\\\d{1,${MAX_SAFE_COMPONENT_LENGTH}}))?`)\ncreateToken('COERCE', `${src[t.COERCEPLAIN]}(?:$|[^\\\\d])`)\ncreateToken('COERCEFULL', src[t.COERCEPLAIN] +\n `(?:${src[t.PRERELEASE]})?` +\n `(?:${src[t.BUILD]})?` +\n `(?:$|[^\\\\d])`)\ncreateToken('COERCERTL', src[t.COERCE], true)\ncreateToken('COERCERTLFULL', src[t.COERCEFULL], true)\n\n// Tilde ranges.\n// Meaning is \"reasonably at or greater than\"\ncreateToken('LONETILDE', '(?:~>?)')\n\ncreateToken('TILDETRIM', `(\\\\s*)${src[t.LONETILDE]}\\\\s+`, true)\nexports.tildeTrimReplace = '$1~'\n\ncreateToken('TILDE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('TILDELOOSE', `^${src[t.LONETILDE]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// Caret ranges.\n// Meaning is \"at least and backwards compatible with\"\ncreateToken('LONECARET', '(?:\\\\^)')\n\ncreateToken('CARETTRIM', `(\\\\s*)${src[t.LONECARET]}\\\\s+`, true)\nexports.caretTrimReplace = '$1^'\n\ncreateToken('CARET', `^${src[t.LONECARET]}${src[t.XRANGEPLAIN]}$`)\ncreateToken('CARETLOOSE', `^${src[t.LONECARET]}${src[t.XRANGEPLAINLOOSE]}$`)\n\n// A simple gt/lt/eq thing, or just \"\" to indicate \"any version\"\ncreateToken('COMPARATORLOOSE', `^${src[t.GTLT]}\\\\s*(${src[t.LOOSEPLAIN]})$|^$`)\ncreateToken('COMPARATOR', `^${src[t.GTLT]}\\\\s*(${src[t.FULLPLAIN]})$|^$`)\n\n// An expression to strip any whitespace between the gtlt and the thing\n// it modifies, so that `> 1.2.3` ==> `>1.2.3`\ncreateToken('COMPARATORTRIM', `(\\\\s*)${src[t.GTLT]\n}\\\\s*(${src[t.LOOSEPLAIN]}|${src[t.XRANGEPLAIN]})`, true)\nexports.comparatorTrimReplace = '$1$2$3'\n\n// Something like `1.2.3 - 1.2.4`\n// Note that these all use the loose form, because they'll be\n// checked against either the strict or loose comparator form\n// later.\ncreateToken('HYPHENRANGE', `^\\\\s*(${src[t.XRANGEPLAIN]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAIN]})` +\n `\\\\s*$`)\n\ncreateToken('HYPHENRANGELOOSE', `^\\\\s*(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s+-\\\\s+` +\n `(${src[t.XRANGEPLAINLOOSE]})` +\n `\\\\s*$`)\n\n// Star ranges basically just allow anything at all.\ncreateToken('STAR', '(<|>)?=?\\\\s*\\\\*')\n// >=0.0.0 is like a star\ncreateToken('GTE0', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0\\\\s*$')\ncreateToken('GTE0PRE', '^\\\\s*>=\\\\s*0\\\\.0\\\\.0-0\\\\s*$')\n", "'use strict'\n\n// parse out just the options we care about\nconst looseOption = Object.freeze({ loose: true })\nconst emptyOpts = Object.freeze({ })\nconst parseOptions = options => {\n if (!options) {\n return emptyOpts\n }\n\n if (typeof options !== 'object') {\n return looseOption\n }\n\n return options\n}\nmodule.exports = parseOptions\n", "'use strict'\n\nconst numeric = /^[0-9]+$/\nconst compareIdentifiers = (a, b) => {\n if (typeof a === 'number' && typeof b === 'number') {\n return a === b ? 0 : a < b ? -1 : 1\n }\n\n const anum = numeric.test(a)\n const bnum = numeric.test(b)\n\n if (anum && bnum) {\n a = +a\n b = +b\n }\n\n return a === b ? 0\n : (anum && !bnum) ? -1\n : (bnum && !anum) ? 1\n : a < b ? -1\n : 1\n}\n\nconst rcompareIdentifiers = (a, b) => compareIdentifiers(b, a)\n\nmodule.exports = {\n compareIdentifiers,\n rcompareIdentifiers,\n}\n", "'use strict'\n\nconst debug = require('../internal/debug')\nconst { MAX_LENGTH, MAX_SAFE_INTEGER } = require('../internal/constants')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst parseOptions = require('../internal/parse-options')\nconst { compareIdentifiers } = require('../internal/identifiers')\nclass SemVer {\n constructor (version, options) {\n options = parseOptions(options)\n\n if (version instanceof SemVer) {\n if (version.loose === !!options.loose &&\n version.includePrerelease === !!options.includePrerelease) {\n return version\n } else {\n version = version.version\n }\n } else if (typeof version !== 'string') {\n throw new TypeError(`Invalid version. Must be a string. Got type \"${typeof version}\".`)\n }\n\n if (version.length > MAX_LENGTH) {\n throw new TypeError(\n `version is longer than ${MAX_LENGTH} characters`\n )\n }\n\n debug('SemVer', version, options)\n this.options = options\n this.loose = !!options.loose\n // this isn't actually relevant for versions, but keep it so that we\n // don't run into trouble passing this.options around.\n this.includePrerelease = !!options.includePrerelease\n\n const m = version.trim().match(options.loose ? re[t.LOOSE] : re[t.FULL])\n\n if (!m) {\n throw new TypeError(`Invalid Version: ${version}`)\n }\n\n this.raw = version\n\n // these are actually numbers\n this.major = +m[1]\n this.minor = +m[2]\n this.patch = +m[3]\n\n if (this.major > MAX_SAFE_INTEGER || this.major < 0) {\n throw new TypeError('Invalid major version')\n }\n\n if (this.minor > MAX_SAFE_INTEGER || this.minor < 0) {\n throw new TypeError('Invalid minor version')\n }\n\n if (this.patch > MAX_SAFE_INTEGER || this.patch < 0) {\n throw new TypeError('Invalid patch version')\n }\n\n // numberify any prerelease numeric ids\n if (!m[4]) {\n this.prerelease = []\n } else {\n this.prerelease = m[4].split('.').map((id) => {\n if (/^[0-9]+$/.test(id)) {\n const num = +id\n if (num >= 0 && num < MAX_SAFE_INTEGER) {\n return num\n }\n }\n return id\n })\n }\n\n this.build = m[5] ? m[5].split('.') : []\n this.format()\n }\n\n format () {\n this.version = `${this.major}.${this.minor}.${this.patch}`\n if (this.prerelease.length) {\n this.version += `-${this.prerelease.join('.')}`\n }\n return this.version\n }\n\n toString () {\n return this.version\n }\n\n compare (other) {\n debug('SemVer.compare', this.version, this.options, other)\n if (!(other instanceof SemVer)) {\n if (typeof other === 'string' && other === this.version) {\n return 0\n }\n other = new SemVer(other, this.options)\n }\n\n if (other.version === this.version) {\n return 0\n }\n\n return this.compareMain(other) || this.comparePre(other)\n }\n\n compareMain (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n if (this.major < other.major) {\n return -1\n }\n if (this.major > other.major) {\n return 1\n }\n if (this.minor < other.minor) {\n return -1\n }\n if (this.minor > other.minor) {\n return 1\n }\n if (this.patch < other.patch) {\n return -1\n }\n if (this.patch > other.patch) {\n return 1\n }\n return 0\n }\n\n comparePre (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n // NOT having a prerelease is > having one\n if (this.prerelease.length && !other.prerelease.length) {\n return -1\n } else if (!this.prerelease.length && other.prerelease.length) {\n return 1\n } else if (!this.prerelease.length && !other.prerelease.length) {\n return 0\n }\n\n let i = 0\n do {\n const a = this.prerelease[i]\n const b = other.prerelease[i]\n debug('prerelease compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n compareBuild (other) {\n if (!(other instanceof SemVer)) {\n other = new SemVer(other, this.options)\n }\n\n let i = 0\n do {\n const a = this.build[i]\n const b = other.build[i]\n debug('build compare', i, a, b)\n if (a === undefined && b === undefined) {\n return 0\n } else if (b === undefined) {\n return 1\n } else if (a === undefined) {\n return -1\n } else if (a === b) {\n continue\n } else {\n return compareIdentifiers(a, b)\n }\n } while (++i)\n }\n\n // preminor will bump the version up to the next minor release, and immediately\n // down to pre-release. premajor and prepatch work the same way.\n inc (release, identifier, identifierBase) {\n if (release.startsWith('pre')) {\n if (!identifier && identifierBase === false) {\n throw new Error('invalid increment argument: identifier is empty')\n }\n // Avoid an invalid semver results\n if (identifier) {\n const match = `-${identifier}`.match(this.options.loose ? re[t.PRERELEASELOOSE] : re[t.PRERELEASE])\n if (!match || match[1] !== identifier) {\n throw new Error(`invalid identifier: ${identifier}`)\n }\n }\n }\n\n switch (release) {\n case 'premajor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor = 0\n this.major++\n this.inc('pre', identifier, identifierBase)\n break\n case 'preminor':\n this.prerelease.length = 0\n this.patch = 0\n this.minor++\n this.inc('pre', identifier, identifierBase)\n break\n case 'prepatch':\n // If this is already a prerelease, it will bump to the next version\n // drop any prereleases that might already exist, since they are not\n // relevant at this point.\n this.prerelease.length = 0\n this.inc('patch', identifier, identifierBase)\n this.inc('pre', identifier, identifierBase)\n break\n // If the input is a non-prerelease version, this acts the same as\n // prepatch.\n case 'prerelease':\n if (this.prerelease.length === 0) {\n this.inc('patch', identifier, identifierBase)\n }\n this.inc('pre', identifier, identifierBase)\n break\n case 'release':\n if (this.prerelease.length === 0) {\n throw new Error(`version ${this.raw} is not a prerelease`)\n }\n this.prerelease.length = 0\n break\n\n case 'major':\n // If this is a pre-major version, bump up to the same major version.\n // Otherwise increment major.\n // 1.0.0-5 bumps to 1.0.0\n // 1.1.0 bumps to 2.0.0\n if (\n this.minor !== 0 ||\n this.patch !== 0 ||\n this.prerelease.length === 0\n ) {\n this.major++\n }\n this.minor = 0\n this.patch = 0\n this.prerelease = []\n break\n case 'minor':\n // If this is a pre-minor version, bump up to the same minor version.\n // Otherwise increment minor.\n // 1.2.0-5 bumps to 1.2.0\n // 1.2.1 bumps to 1.3.0\n if (this.patch !== 0 || this.prerelease.length === 0) {\n this.minor++\n }\n this.patch = 0\n this.prerelease = []\n break\n case 'patch':\n // If this is not a pre-release version, it will increment the patch.\n // If it is a pre-release it will bump up to the same patch version.\n // 1.2.0-5 patches to 1.2.0\n // 1.2.0 patches to 1.2.1\n if (this.prerelease.length === 0) {\n this.patch++\n }\n this.prerelease = []\n break\n // This probably shouldn't be used publicly.\n // 1.0.0 'pre' would become 1.0.0-0 which is the wrong direction.\n case 'pre': {\n const base = Number(identifierBase) ? 1 : 0\n\n if (this.prerelease.length === 0) {\n this.prerelease = [base]\n } else {\n let i = this.prerelease.length\n while (--i >= 0) {\n if (typeof this.prerelease[i] === 'number') {\n this.prerelease[i]++\n i = -2\n }\n }\n if (i === -1) {\n // didn't increment anything\n if (identifier === this.prerelease.join('.') && identifierBase === false) {\n throw new Error('invalid increment argument: identifier already exists')\n }\n this.prerelease.push(base)\n }\n }\n if (identifier) {\n // 1.2.0-beta.1 bumps to 1.2.0-beta.2,\n // 1.2.0-beta.fooblz or 1.2.0-beta bumps to 1.2.0-beta.0\n let prerelease = [identifier, base]\n if (identifierBase === false) {\n prerelease = [identifier]\n }\n if (compareIdentifiers(this.prerelease[0], identifier) === 0) {\n if (isNaN(this.prerelease[1])) {\n this.prerelease = prerelease\n }\n } else {\n this.prerelease = prerelease\n }\n }\n break\n }\n default:\n throw new Error(`invalid increment argument: ${release}`)\n }\n this.raw = this.format()\n if (this.build.length) {\n this.raw += `+${this.build.join('.')}`\n }\n return this\n }\n}\n\nmodule.exports = SemVer\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = (version, options, throwErrors = false) => {\n if (version instanceof SemVer) {\n return version\n }\n try {\n return new SemVer(version, options)\n } catch (er) {\n if (!throwErrors) {\n return null\n }\n throw er\n }\n}\n\nmodule.exports = parse\n", "'use strict'\n\nconst parse = require('./parse')\nconst valid = (version, options) => {\n const v = parse(version, options)\n return v ? v.version : null\n}\nmodule.exports = valid\n", "'use strict'\n\nconst parse = require('./parse')\nconst clean = (version, options) => {\n const s = parse(version.trim().replace(/^[=v]+/, ''), options)\n return s ? s.version : null\n}\nmodule.exports = clean\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\n\nconst inc = (version, release, options, identifier, identifierBase) => {\n if (typeof (options) === 'string') {\n identifierBase = identifier\n identifier = options\n options = undefined\n }\n\n try {\n return new SemVer(\n version instanceof SemVer ? version.version : version,\n options\n ).inc(release, identifier, identifierBase).version\n } catch (er) {\n return null\n }\n}\nmodule.exports = inc\n", "'use strict'\n\nconst parse = require('./parse.js')\n\nconst diff = (version1, version2) => {\n const v1 = parse(version1, null, true)\n const v2 = parse(version2, null, true)\n const comparison = v1.compare(v2)\n\n if (comparison === 0) {\n return null\n }\n\n const v1Higher = comparison > 0\n const highVersion = v1Higher ? v1 : v2\n const lowVersion = v1Higher ? v2 : v1\n const highHasPre = !!highVersion.prerelease.length\n const lowHasPre = !!lowVersion.prerelease.length\n\n if (lowHasPre && !highHasPre) {\n // Going from prerelease -> no prerelease requires some special casing\n\n // If the low version has only a major, then it will always be a major\n // Some examples:\n // 1.0.0-1 -> 1.0.0\n // 1.0.0-1 -> 1.1.1\n // 1.0.0-1 -> 2.0.0\n if (!lowVersion.patch && !lowVersion.minor) {\n return 'major'\n }\n\n // If the main part has no difference\n if (lowVersion.compareMain(highVersion) === 0) {\n if (lowVersion.minor && !lowVersion.patch) {\n return 'minor'\n }\n return 'patch'\n }\n }\n\n // add the `pre` prefix if we are going to a prerelease version\n const prefix = highHasPre ? 'pre' : ''\n\n if (v1.major !== v2.major) {\n return prefix + 'major'\n }\n\n if (v1.minor !== v2.minor) {\n return prefix + 'minor'\n }\n\n if (v1.patch !== v2.patch) {\n return prefix + 'patch'\n }\n\n // high and low are prereleases\n return 'prerelease'\n}\n\nmodule.exports = diff\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst major = (a, loose) => new SemVer(a, loose).major\nmodule.exports = major\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst minor = (a, loose) => new SemVer(a, loose).minor\nmodule.exports = minor\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst patch = (a, loose) => new SemVer(a, loose).patch\nmodule.exports = patch\n", "'use strict'\n\nconst parse = require('./parse')\nconst prerelease = (version, options) => {\n const parsed = parse(version, options)\n return (parsed && parsed.prerelease.length) ? parsed.prerelease : null\n}\nmodule.exports = prerelease\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compare = (a, b, loose) =>\n new SemVer(a, loose).compare(new SemVer(b, loose))\n\nmodule.exports = compare\n", "'use strict'\n\nconst compare = require('./compare')\nconst rcompare = (a, b, loose) => compare(b, a, loose)\nmodule.exports = rcompare\n", "'use strict'\n\nconst compare = require('./compare')\nconst compareLoose = (a, b) => compare(a, b, true)\nmodule.exports = compareLoose\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst compareBuild = (a, b, loose) => {\n const versionA = new SemVer(a, loose)\n const versionB = new SemVer(b, loose)\n return versionA.compare(versionB) || versionA.compareBuild(versionB)\n}\nmodule.exports = compareBuild\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst sort = (list, loose) => list.sort((a, b) => compareBuild(a, b, loose))\nmodule.exports = sort\n", "'use strict'\n\nconst compareBuild = require('./compare-build')\nconst rsort = (list, loose) => list.sort((a, b) => compareBuild(b, a, loose))\nmodule.exports = rsort\n", "'use strict'\n\nconst compare = require('./compare')\nconst gt = (a, b, loose) => compare(a, b, loose) > 0\nmodule.exports = gt\n", "'use strict'\n\nconst compare = require('./compare')\nconst lt = (a, b, loose) => compare(a, b, loose) < 0\nmodule.exports = lt\n", "'use strict'\n\nconst compare = require('./compare')\nconst eq = (a, b, loose) => compare(a, b, loose) === 0\nmodule.exports = eq\n", "'use strict'\n\nconst compare = require('./compare')\nconst neq = (a, b, loose) => compare(a, b, loose) !== 0\nmodule.exports = neq\n", "'use strict'\n\nconst compare = require('./compare')\nconst gte = (a, b, loose) => compare(a, b, loose) >= 0\nmodule.exports = gte\n", "'use strict'\n\nconst compare = require('./compare')\nconst lte = (a, b, loose) => compare(a, b, loose) <= 0\nmodule.exports = lte\n", "'use strict'\n\nconst eq = require('./eq')\nconst neq = require('./neq')\nconst gt = require('./gt')\nconst gte = require('./gte')\nconst lt = require('./lt')\nconst lte = require('./lte')\n\nconst cmp = (a, op, b, loose) => {\n switch (op) {\n case '===':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a === b\n\n case '!==':\n if (typeof a === 'object') {\n a = a.version\n }\n if (typeof b === 'object') {\n b = b.version\n }\n return a !== b\n\n case '':\n case '=':\n case '==':\n return eq(a, b, loose)\n\n case '!=':\n return neq(a, b, loose)\n\n case '>':\n return gt(a, b, loose)\n\n case '>=':\n return gte(a, b, loose)\n\n case '<':\n return lt(a, b, loose)\n\n case '<=':\n return lte(a, b, loose)\n\n default:\n throw new TypeError(`Invalid operator: ${op}`)\n }\n}\nmodule.exports = cmp\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst parse = require('./parse')\nconst { safeRe: re, t } = require('../internal/re')\n\nconst coerce = (version, options) => {\n if (version instanceof SemVer) {\n return version\n }\n\n if (typeof version === 'number') {\n version = String(version)\n }\n\n if (typeof version !== 'string') {\n return null\n }\n\n options = options || {}\n\n let match = null\n if (!options.rtl) {\n match = version.match(options.includePrerelease ? re[t.COERCEFULL] : re[t.COERCE])\n } else {\n // Find the right-most coercible string that does not share\n // a terminus with a more left-ward coercible string.\n // Eg, '1.2.3.4' wants to coerce '2.3.4', not '3.4' or '4'\n // With includePrerelease option set, '1.2.3.4-rc' wants to coerce '2.3.4-rc', not '2.3.4'\n //\n // Walk through the string checking with a /g regexp\n // Manually set the index so as to pick up overlapping matches.\n // Stop when we get a match that ends at the string end, since no\n // coercible string can be more right-ward without the same terminus.\n const coerceRtlRegex = options.includePrerelease ? re[t.COERCERTLFULL] : re[t.COERCERTL]\n let next\n while ((next = coerceRtlRegex.exec(version)) &&\n (!match || match.index + match[0].length !== version.length)\n ) {\n if (!match ||\n next.index + next[0].length !== match.index + match[0].length) {\n match = next\n }\n coerceRtlRegex.lastIndex = next.index + next[1].length + next[2].length\n }\n // leave it in a clean state\n coerceRtlRegex.lastIndex = -1\n }\n\n if (match === null) {\n return null\n }\n\n const major = match[2]\n const minor = match[3] || '0'\n const patch = match[4] || '0'\n const prerelease = options.includePrerelease && match[5] ? `-${match[5]}` : ''\n const build = options.includePrerelease && match[6] ? `+${match[6]}` : ''\n\n return parse(`${major}.${minor}.${patch}${prerelease}${build}`, options)\n}\nmodule.exports = coerce\n", "'use strict'\n\nconst parse = require('./parse')\nconst constants = require('../internal/constants')\nconst SemVer = require('../classes/semver')\n\nconst truncate = (version, truncation, options) => {\n if (!constants.RELEASE_TYPES.includes(truncation)) {\n return null\n }\n\n const clonedVersion = cloneInputVersion(version, options)\n return clonedVersion && doTruncation(clonedVersion, truncation)\n}\n\nconst cloneInputVersion = (version, options) => {\n const versionStringToParse = (\n version instanceof SemVer ? version.version : version\n )\n\n return parse(versionStringToParse, options)\n}\n\nconst doTruncation = (version, truncation) => {\n if (isPrerelease(truncation)) {\n return version.version\n }\n\n version.prerelease = []\n\n switch (truncation) {\n case 'major':\n version.minor = 0\n version.patch = 0\n break\n case 'minor':\n version.patch = 0\n break\n }\n\n return version.format()\n}\n\nconst isPrerelease = (type) => {\n return type.startsWith('pre')\n}\n\nmodule.exports = truncate\n", "'use strict'\n\nclass LRUCache {\n constructor () {\n this.max = 1000\n this.map = new Map()\n }\n\n get (key) {\n const value = this.map.get(key)\n if (value === undefined) {\n return undefined\n } else {\n // Remove the key from the map and add it to the end\n this.map.delete(key)\n this.map.set(key, value)\n return value\n }\n }\n\n delete (key) {\n return this.map.delete(key)\n }\n\n set (key, value) {\n const deleted = this.delete(key)\n\n if (!deleted && value !== undefined) {\n // If cache is full, delete the least recently used item\n if (this.map.size >= this.max) {\n const firstKey = this.map.keys().next().value\n this.delete(firstKey)\n }\n\n this.map.set(key, value)\n }\n\n return this\n }\n}\n\nmodule.exports = LRUCache\n", "'use strict'\n\nconst SPACE_CHARACTERS = /\\s+/g\n\n// hoisted class for cyclic dependency\nclass Range {\n constructor (range, options) {\n options = parseOptions(options)\n\n if (range instanceof Range) {\n if (\n range.loose === !!options.loose &&\n range.includePrerelease === !!options.includePrerelease\n ) {\n return range\n } else {\n return new Range(range.raw, options)\n }\n }\n\n if (range instanceof Comparator) {\n // just put it in the set and return\n this.raw = range.value\n this.set = [[range]]\n this.formatted = undefined\n return this\n }\n\n this.options = options\n this.loose = !!options.loose\n this.includePrerelease = !!options.includePrerelease\n\n // First reduce all whitespace as much as possible so we do not have to rely\n // on potentially slow regexes like \\s*. This is then stored and used for\n // future error messages as well.\n this.raw = range.trim().replace(SPACE_CHARACTERS, ' ')\n\n // First, split on ||\n this.set = this.raw\n .split('||')\n // map the range to a 2d array of comparators\n .map(r => this.parseRange(r.trim()))\n // throw out any comparator lists that are empty\n // this generally means that it was not a valid range, which is allowed\n // in loose mode, but will still throw if the WHOLE range is invalid.\n .filter(c => c.length)\n\n if (!this.set.length) {\n throw new TypeError(`Invalid SemVer Range: ${this.raw}`)\n }\n\n // if we have any that are not the null set, throw out null sets.\n if (this.set.length > 1) {\n // keep the first one, in case they're all null sets\n const first = this.set[0]\n this.set = this.set.filter(c => !isNullSet(c[0]))\n if (this.set.length === 0) {\n this.set = [first]\n } else if (this.set.length > 1) {\n // if we have any that are *, then the range is just *\n for (const c of this.set) {\n if (c.length === 1 && isAny(c[0])) {\n this.set = [c]\n break\n }\n }\n }\n }\n\n this.formatted = undefined\n }\n\n get range () {\n if (this.formatted === undefined) {\n this.formatted = ''\n for (let i = 0; i < this.set.length; i++) {\n if (i > 0) {\n this.formatted += '||'\n }\n const comps = this.set[i]\n for (let k = 0; k < comps.length; k++) {\n if (k > 0) {\n this.formatted += ' '\n }\n this.formatted += comps[k].toString().trim()\n }\n }\n }\n return this.formatted\n }\n\n format () {\n return this.range\n }\n\n toString () {\n return this.range\n }\n\n parseRange (range) {\n // strip build metadata so it can't bleed into the version\n range = range.replace(BUILDSTRIPRE, '')\n\n // memoize range parsing for performance.\n // this is a very hot path, and fully deterministic.\n const memoOpts =\n (this.options.includePrerelease && FLAG_INCLUDE_PRERELEASE) |\n (this.options.loose && FLAG_LOOSE)\n const memoKey = memoOpts + ':' + range\n const cached = cache.get(memoKey)\n if (cached) {\n return cached\n }\n\n const loose = this.options.loose\n // `1.2.3 - 1.2.4` => `>=1.2.3 <=1.2.4`\n const hr = loose ? re[t.HYPHENRANGELOOSE] : re[t.HYPHENRANGE]\n range = range.replace(hr, hyphenReplace(this.options.includePrerelease))\n debug('hyphen replace', range)\n\n // `> 1.2.3 < 1.2.5` => `>1.2.3 <1.2.5`\n range = range.replace(re[t.COMPARATORTRIM], comparatorTrimReplace)\n debug('comparator trim', range)\n\n // `~ 1.2.3` => `~1.2.3`\n range = range.replace(re[t.TILDETRIM], tildeTrimReplace)\n debug('tilde trim', range)\n\n // `^ 1.2.3` => `^1.2.3`\n range = range.replace(re[t.CARETTRIM], caretTrimReplace)\n debug('caret trim', range)\n\n // At this point, the range is completely trimmed and\n // ready to be split into comparators.\n\n let rangeList = range\n .split(' ')\n .map(comp => parseComparator(comp, this.options))\n .join(' ')\n .split(/\\s+/)\n // >=0.0.0 is equivalent to *\n .map(comp => replaceGTE0(comp, this.options))\n\n if (loose) {\n // in loose mode, throw out any that are not valid comparators\n rangeList = rangeList.filter(comp => {\n debug('loose invalid filter', comp, this.options)\n return !!comp.match(re[t.COMPARATORLOOSE])\n })\n }\n debug('range list', rangeList)\n\n // if any comparators are the null set, then replace with JUST null set\n // if more than one comparator, remove any * comparators\n // also, don't include the same comparator more than once\n const rangeMap = new Map()\n const comparators = rangeList.map(comp => new Comparator(comp, this.options))\n for (const comp of comparators) {\n if (isNullSet(comp)) {\n return [comp]\n }\n rangeMap.set(comp.value, comp)\n }\n if (rangeMap.size > 1 && rangeMap.has('')) {\n rangeMap.delete('')\n }\n\n const result = [...rangeMap.values()]\n cache.set(memoKey, result)\n return result\n }\n\n intersects (range, options) {\n if (!(range instanceof Range)) {\n throw new TypeError('a Range is required')\n }\n\n return this.set.some((thisComparators) => {\n return (\n isSatisfiable(thisComparators, options) &&\n range.set.some((rangeComparators) => {\n return (\n isSatisfiable(rangeComparators, options) &&\n thisComparators.every((thisComparator) => {\n return rangeComparators.every((rangeComparator) => {\n return thisComparator.intersects(rangeComparator, options)\n })\n })\n )\n })\n )\n })\n }\n\n // if ANY of the sets match ALL of its comparators, then pass\n test (version) {\n if (!version) {\n return false\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n for (let i = 0; i < this.set.length; i++) {\n if (testSet(this.set[i], version, this.options)) {\n return true\n }\n }\n return false\n }\n}\n\nmodule.exports = Range\n\nconst LRU = require('../internal/lrucache')\nconst cache = new LRU()\n\nconst parseOptions = require('../internal/parse-options')\nconst Comparator = require('./comparator')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst {\n safeRe: re,\n src,\n t,\n comparatorTrimReplace,\n tildeTrimReplace,\n caretTrimReplace,\n} = require('../internal/re')\nconst { FLAG_INCLUDE_PRERELEASE, FLAG_LOOSE } = require('../internal/constants')\n\n// unbounded global build-metadata stripper used by parseRange\nconst BUILDSTRIPRE = new RegExp(src[t.BUILD], 'g')\n\nconst isNullSet = c => c.value === '<0.0.0-0'\nconst isAny = c => c.value === ''\n\n// take a set of comparators and determine whether there\n// exists a version which can satisfy it\nconst isSatisfiable = (comparators, options) => {\n let result = true\n const remainingComparators = comparators.slice()\n let testComparator = remainingComparators.pop()\n\n while (result && remainingComparators.length) {\n result = remainingComparators.every((otherComparator) => {\n return testComparator.intersects(otherComparator, options)\n })\n\n testComparator = remainingComparators.pop()\n }\n\n return result\n}\n\n// comprised of xranges, tildes, stars, and gtlt's at this point.\n// already replaced the hyphen ranges\n// turn into a set of JUST comparators.\nconst parseComparator = (comp, options) => {\n comp = comp.replace(re[t.BUILD], '')\n debug('comp', comp, options)\n comp = replaceCarets(comp, options)\n debug('caret', comp)\n comp = replaceTildes(comp, options)\n debug('tildes', comp)\n comp = replaceXRanges(comp, options)\n debug('xrange', comp)\n comp = replaceStars(comp, options)\n debug('stars', comp)\n return comp\n}\n\nconst isX = id => !id || id.toLowerCase() === 'x' || id === '*'\n\n// ~, ~> --> * (any, kinda silly)\n// ~2, ~2.x, ~2.x.x, ~>2, ~>2.x ~>2.x.x --> >=2.0.0 <3.0.0-0\n// ~2.0, ~2.0.x, ~>2.0, ~>2.0.x --> >=2.0.0 <2.1.0-0\n// ~1.2, ~1.2.x, ~>1.2, ~>1.2.x --> >=1.2.0 <1.3.0-0\n// ~1.2.3, ~>1.2.3 --> >=1.2.3 <1.3.0-0\n// ~1.2.0, ~>1.2.0 --> >=1.2.0 <1.3.0-0\n// ~0.0.1 --> >=0.0.1 <0.1.0-0\nconst replaceTildes = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceTilde(c, options))\n .join(' ')\n}\n\nconst replaceTilde = (comp, options) => {\n const r = options.loose ? re[t.TILDELOOSE] : re[t.TILDE]\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('tilde', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0 <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n // ~1.2 == >=1.2.0 <1.3.0-0\n ret = `>=${M}.${m}.0 <${M}.${+m + 1}.0-0`\n } else if (pr) {\n debug('replaceTilde pr', pr)\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n } else {\n // ~1.2.3 == >=1.2.3 <1.3.0-0\n ret = `>=${M}.${m}.${p\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('tilde return', ret)\n return ret\n })\n}\n\n// ^ --> * (any, kinda silly)\n// ^2, ^2.x, ^2.x.x --> >=2.0.0 <3.0.0-0\n// ^2.0, ^2.0.x --> >=2.0.0 <3.0.0-0\n// ^1.2, ^1.2.x --> >=1.2.0 <2.0.0-0\n// ^1.2.3 --> >=1.2.3 <2.0.0-0\n// ^1.2.0 --> >=1.2.0 <2.0.0-0\n// ^0.0.1 --> >=0.0.1 <0.0.2-0\n// ^0.1.0 --> >=0.1.0 <0.2.0-0\nconst replaceCarets = (comp, options) => {\n return comp\n .trim()\n .split(/\\s+/)\n .map((c) => replaceCaret(c, options))\n .join(' ')\n}\n\nconst replaceCaret = (comp, options) => {\n debug('caret', comp, options)\n const r = options.loose ? re[t.CARETLOOSE] : re[t.CARET]\n const z = options.includePrerelease ? '-0' : ''\n return comp.replace(r, (_, M, m, p, pr) => {\n debug('caret', comp, _, M, m, p, pr)\n let ret\n\n if (isX(M)) {\n ret = ''\n } else if (isX(m)) {\n ret = `>=${M}.0.0${z} <${+M + 1}.0.0-0`\n } else if (isX(p)) {\n if (M === '0') {\n ret = `>=${M}.${m}.0${z} <${M}.${+m + 1}.0-0`\n } else {\n ret = `>=${M}.${m}.0${z} <${+M + 1}.0.0-0`\n }\n } else if (pr) {\n debug('replaceCaret pr', pr)\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p}-${pr\n } <${+M + 1}.0.0-0`\n }\n } else {\n debug('no pr')\n if (M === '0') {\n if (m === '0') {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${m}.${+p + 1}-0`\n } else {\n ret = `>=${M}.${m}.${p\n }${z} <${M}.${+m + 1}.0-0`\n }\n } else {\n ret = `>=${M}.${m}.${p\n } <${+M + 1}.0.0-0`\n }\n }\n\n debug('caret return', ret)\n return ret\n })\n}\n\nconst replaceXRanges = (comp, options) => {\n debug('replaceXRanges', comp, options)\n return comp\n .split(/\\s+/)\n .map((c) => replaceXRange(c, options))\n .join(' ')\n}\n\nconst replaceXRange = (comp, options) => {\n comp = comp.trim()\n const r = options.loose ? re[t.XRANGELOOSE] : re[t.XRANGE]\n return comp.replace(r, (ret, gtlt, M, m, p, pr) => {\n debug('xRange', comp, ret, gtlt, M, m, p, pr)\n const xM = isX(M)\n const xm = xM || isX(m)\n const xp = xm || isX(p)\n const anyX = xp\n\n if (gtlt === '=' && anyX) {\n gtlt = ''\n }\n\n // if we're including prereleases in the match, then we need\n // to fix this to -0, the lowest possible prerelease value\n pr = options.includePrerelease ? '-0' : ''\n\n if (xM) {\n if (gtlt === '>' || gtlt === '<') {\n // nothing is allowed\n ret = '<0.0.0-0'\n } else {\n // nothing is forbidden\n ret = '*'\n }\n } else if (gtlt && anyX) {\n // we know patch is an x, because we have any x at all.\n // replace X with 0\n if (xm) {\n m = 0\n }\n p = 0\n\n if (gtlt === '>') {\n // >1 => >=2.0.0\n // >1.2 => >=1.3.0\n gtlt = '>='\n if (xm) {\n M = +M + 1\n m = 0\n p = 0\n } else {\n m = +m + 1\n p = 0\n }\n } else if (gtlt === '<=') {\n // <=0.7.x is actually <0.8.0, since any 0.7.x should\n // pass. Similarly, <=7.x is actually <8.0.0, etc.\n gtlt = '<'\n if (xm) {\n M = +M + 1\n } else {\n m = +m + 1\n }\n }\n\n if (gtlt === '<') {\n pr = '-0'\n }\n\n ret = `${gtlt + M}.${m}.${p}${pr}`\n } else if (xm) {\n ret = `>=${M}.0.0${pr} <${+M + 1}.0.0-0`\n } else if (xp) {\n ret = `>=${M}.${m}.0${pr\n } <${M}.${+m + 1}.0-0`\n }\n\n debug('xRange return', ret)\n\n return ret\n })\n}\n\n// Because * is AND-ed with everything else in the comparator,\n// and '' means \"any version\", just remove the *s entirely.\nconst replaceStars = (comp, options) => {\n debug('replaceStars', comp, options)\n // Looseness is ignored here. star is always as loose as it gets!\n return comp\n .trim()\n .replace(re[t.STAR], '')\n}\n\nconst replaceGTE0 = (comp, options) => {\n debug('replaceGTE0', comp, options)\n return comp\n .trim()\n .replace(re[options.includePrerelease ? t.GTE0PRE : t.GTE0], '')\n}\n\n// This function is passed to string.replace(re[t.HYPHENRANGE])\n// M, m, patch, prerelease, build\n// 1.2 - 3.4.5 => >=1.2.0 <=3.4.5\n// 1.2.3 - 3.4 => >=1.2.0 <3.5.0-0 Any 3.4.x will do\n// 1.2 - 3.4 => >=1.2.0 <3.5.0-0\n// TODO build?\nconst hyphenReplace = incPr => ($0,\n from, fM, fm, fp, fpr, fb,\n to, tM, tm, tp, tpr) => {\n if (isX(fM)) {\n from = ''\n } else if (isX(fm)) {\n from = `>=${fM}.0.0${incPr ? '-0' : ''}`\n } else if (isX(fp)) {\n from = `>=${fM}.${fm}.0${incPr ? '-0' : ''}`\n } else if (fpr) {\n from = `>=${from}`\n } else {\n from = `>=${from}${incPr ? '-0' : ''}`\n }\n\n if (isX(tM)) {\n to = ''\n } else if (isX(tm)) {\n to = `<${+tM + 1}.0.0-0`\n } else if (isX(tp)) {\n to = `<${tM}.${+tm + 1}.0-0`\n } else if (tpr) {\n to = `<=${tM}.${tm}.${tp}-${tpr}`\n } else if (incPr) {\n to = `<${tM}.${tm}.${+tp + 1}-0`\n } else {\n to = `<=${to}`\n }\n\n return `${from} ${to}`.trim()\n}\n\nconst testSet = (set, version, options) => {\n for (let i = 0; i < set.length; i++) {\n if (!set[i].test(version)) {\n return false\n }\n }\n\n if (version.prerelease.length && !options.includePrerelease) {\n // Find the set of versions that are allowed to have prereleases\n // For example, ^1.2.3-pr.1 desugars to >=1.2.3-pr.1 <2.0.0\n // That should allow `1.2.3-pr.2` to pass.\n // However, `1.2.4-alpha.notready` should NOT be allowed,\n // even though it's within the range set by the comparators.\n for (let i = 0; i < set.length; i++) {\n debug(set[i].semver)\n if (set[i].semver === Comparator.ANY) {\n continue\n }\n\n if (set[i].semver.prerelease.length > 0) {\n const allowed = set[i].semver\n if (allowed.major === version.major &&\n allowed.minor === version.minor &&\n allowed.patch === version.patch) {\n return true\n }\n }\n }\n\n // Version has a -pre, but it's not one of the ones we like.\n return false\n }\n\n return true\n}\n", "'use strict'\n\nconst ANY = Symbol('SemVer ANY')\n// hoisted class for cyclic dependency\nclass Comparator {\n static get ANY () {\n return ANY\n }\n\n constructor (comp, options) {\n options = parseOptions(options)\n\n if (comp instanceof Comparator) {\n if (comp.loose === !!options.loose) {\n return comp\n } else {\n comp = comp.value\n }\n }\n\n comp = comp.trim().split(/\\s+/).join(' ')\n debug('comparator', comp, options)\n this.options = options\n this.loose = !!options.loose\n this.parse(comp)\n\n if (this.semver === ANY) {\n this.value = ''\n } else {\n this.value = this.operator + this.semver.version\n }\n\n debug('comp', this)\n }\n\n parse (comp) {\n const r = this.options.loose ? re[t.COMPARATORLOOSE] : re[t.COMPARATOR]\n const m = comp.match(r)\n\n if (!m) {\n throw new TypeError(`Invalid comparator: ${comp}`)\n }\n\n this.operator = m[1] !== undefined ? m[1] : ''\n if (this.operator === '=') {\n this.operator = ''\n }\n\n // if it literally is just '>' or '' then allow anything.\n if (!m[2]) {\n this.semver = ANY\n } else {\n this.semver = new SemVer(m[2], this.options.loose)\n }\n }\n\n toString () {\n return this.value\n }\n\n test (version) {\n debug('Comparator.test', version, this.options.loose)\n\n if (this.semver === ANY || version === ANY) {\n return true\n }\n\n if (typeof version === 'string') {\n try {\n version = new SemVer(version, this.options)\n } catch (er) {\n return false\n }\n }\n\n return cmp(version, this.operator, this.semver, this.options)\n }\n\n intersects (comp, options) {\n if (!(comp instanceof Comparator)) {\n throw new TypeError('a Comparator is required')\n }\n\n if (this.operator === '') {\n if (this.value === '') {\n return true\n }\n return new Range(comp.value, options).test(this.value)\n } else if (comp.operator === '') {\n if (comp.value === '') {\n return true\n }\n return new Range(this.value, options).test(comp.semver)\n }\n\n options = parseOptions(options)\n\n // Special cases where nothing can possibly be lower\n if (options.includePrerelease &&\n (this.value === '<0.0.0-0' || comp.value === '<0.0.0-0')) {\n return false\n }\n if (!options.includePrerelease &&\n (this.value.startsWith('<0.0.0') || comp.value.startsWith('<0.0.0'))) {\n return false\n }\n\n // Same direction increasing (> or >=)\n if (this.operator.startsWith('>') && comp.operator.startsWith('>')) {\n return true\n }\n // Same direction decreasing (< or <=)\n if (this.operator.startsWith('<') && comp.operator.startsWith('<')) {\n return true\n }\n // same SemVer and both sides are inclusive (<= or >=)\n if (\n (this.semver.version === comp.semver.version) &&\n this.operator.includes('=') && comp.operator.includes('=')) {\n return true\n }\n // opposite directions less than\n if (cmp(this.semver, '<', comp.semver, options) &&\n this.operator.startsWith('>') && comp.operator.startsWith('<')) {\n return true\n }\n // opposite directions greater than\n if (cmp(this.semver, '>', comp.semver, options) &&\n this.operator.startsWith('<') && comp.operator.startsWith('>')) {\n return true\n }\n return false\n }\n}\n\nmodule.exports = Comparator\n\nconst parseOptions = require('../internal/parse-options')\nconst { safeRe: re, t } = require('../internal/re')\nconst cmp = require('../functions/cmp')\nconst debug = require('../internal/debug')\nconst SemVer = require('./semver')\nconst Range = require('./range')\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst satisfies = (version, range, options) => {\n try {\n range = new Range(range, options)\n } catch (er) {\n return false\n }\n return range.test(version)\n}\nmodule.exports = satisfies\n", "'use strict'\n\nconst Range = require('../classes/range')\n\n// Mostly just for testing and legacy API reasons\nconst toComparators = (range, options) =>\n new Range(range, options).set\n .map(comp => comp.map(c => c.value).join(' ').trim().split(' '))\n\nmodule.exports = toComparators\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\n\nconst maxSatisfying = (versions, range, options) => {\n let max = null\n let maxSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!max || maxSV.compare(v) === -1) {\n // compare(max, v, true)\n max = v\n maxSV = new SemVer(max, options)\n }\n }\n })\n return max\n}\nmodule.exports = maxSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst minSatisfying = (versions, range, options) => {\n let min = null\n let minSV = null\n let rangeObj = null\n try {\n rangeObj = new Range(range, options)\n } catch (er) {\n return null\n }\n versions.forEach((v) => {\n if (rangeObj.test(v)) {\n // satisfies(v, range, options)\n if (!min || minSV.compare(v) === 1) {\n // compare(min, v, true)\n min = v\n minSV = new SemVer(min, options)\n }\n }\n })\n return min\n}\nmodule.exports = minSatisfying\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Range = require('../classes/range')\nconst gt = require('../functions/gt')\n\nconst minVersion = (range, loose) => {\n range = new Range(range, loose)\n\n let minver = new SemVer('0.0.0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = new SemVer('0.0.0-0')\n if (range.test(minver)) {\n return minver\n }\n\n minver = null\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let setMin = null\n comparators.forEach((comparator) => {\n // Clone to avoid manipulating the comparator's semver object.\n const compver = new SemVer(comparator.semver.version)\n switch (comparator.operator) {\n case '>':\n if (compver.prerelease.length === 0) {\n compver.patch++\n } else {\n compver.prerelease.push(0)\n }\n compver.raw = compver.format()\n /* fallthrough */\n case '':\n case '>=':\n if (!setMin || gt(compver, setMin)) {\n setMin = compver\n }\n break\n case '<':\n case '<=':\n /* Ignore maximum versions */\n break\n /* istanbul ignore next */\n default:\n throw new Error(`Unexpected operation: ${comparator.operator}`)\n }\n })\n if (setMin && (!minver || gt(minver, setMin))) {\n minver = setMin\n }\n }\n\n if (minver && range.test(minver)) {\n return minver\n }\n\n return null\n}\nmodule.exports = minVersion\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst validRange = (range, options) => {\n try {\n // Return '*' instead of '' so that truthiness works.\n // This will throw if it's invalid anyway\n return new Range(range, options).range || '*'\n } catch (er) {\n return null\n }\n}\nmodule.exports = validRange\n", "'use strict'\n\nconst SemVer = require('../classes/semver')\nconst Comparator = require('../classes/comparator')\nconst { ANY } = Comparator\nconst Range = require('../classes/range')\nconst satisfies = require('../functions/satisfies')\nconst gt = require('../functions/gt')\nconst lt = require('../functions/lt')\nconst lte = require('../functions/lte')\nconst gte = require('../functions/gte')\n\nconst outside = (version, range, hilo, options) => {\n version = new SemVer(version, options)\n range = new Range(range, options)\n\n let gtfn, ltefn, ltfn, comp, ecomp\n switch (hilo) {\n case '>':\n gtfn = gt\n ltefn = lte\n ltfn = lt\n comp = '>'\n ecomp = '>='\n break\n case '<':\n gtfn = lt\n ltefn = gte\n ltfn = gt\n comp = '<'\n ecomp = '<='\n break\n default:\n throw new TypeError('Must provide a hilo val of \"<\" or \">\"')\n }\n\n // If it satisfies the range it is not outside\n if (satisfies(version, range, options)) {\n return false\n }\n\n // From now on, variable terms are as if we're in \"gtr\" mode.\n // but note that everything is flipped for the \"ltr\" function.\n\n for (let i = 0; i < range.set.length; ++i) {\n const comparators = range.set[i]\n\n let high = null\n let low = null\n\n comparators.forEach((comparator) => {\n if (comparator.semver === ANY) {\n comparator = new Comparator('>=0.0.0')\n }\n high = high || comparator\n low = low || comparator\n if (gtfn(comparator.semver, high.semver, options)) {\n high = comparator\n } else if (ltfn(comparator.semver, low.semver, options)) {\n low = comparator\n }\n })\n\n // If the edge version comparator has a operator then our version\n // isn't outside it\n if (high.operator === comp || high.operator === ecomp) {\n return false\n }\n\n // If the lowest version comparator has an operator and our version\n // is less than it then it isn't higher than the range\n if ((!low.operator || low.operator === comp) &&\n ltefn(version, low.semver)) {\n return false\n } else if (low.operator === ecomp && ltfn(version, low.semver)) {\n return false\n }\n }\n return true\n}\n\nmodule.exports = outside\n", "'use strict'\n\n// Determine if version is greater than all the versions possible in the range.\nconst outside = require('./outside')\nconst gtr = (version, range, options) => outside(version, range, '>', options)\nmodule.exports = gtr\n", "'use strict'\n\nconst outside = require('./outside')\n// Determine if version is less than all the versions possible in the range\nconst ltr = (version, range, options) => outside(version, range, '<', options)\nmodule.exports = ltr\n", "'use strict'\n\nconst Range = require('../classes/range')\nconst intersects = (r1, r2, options) => {\n r1 = new Range(r1, options)\n r2 = new Range(r2, options)\n return r1.intersects(r2, options)\n}\nmodule.exports = intersects\n", "'use strict'\n\n// given a set of versions and a range, create a \"simplified\" range\n// that includes the same versions that the original range does\n// If the original range is shorter than the simplified one, return that.\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\nmodule.exports = (versions, range, options) => {\n const set = []\n let first = null\n let prev = null\n const v = versions.sort((a, b) => compare(a, b, options))\n for (const version of v) {\n const included = satisfies(version, range, options)\n if (included) {\n prev = version\n if (!first) {\n first = version\n }\n } else {\n if (prev) {\n set.push([first, prev])\n }\n prev = null\n first = null\n }\n }\n if (first) {\n set.push([first, null])\n }\n\n const ranges = []\n for (const [min, max] of set) {\n if (min === max) {\n ranges.push(min)\n } else if (!max && min === v[0]) {\n ranges.push('*')\n } else if (!max) {\n ranges.push(`>=${min}`)\n } else if (min === v[0]) {\n ranges.push(`<=${max}`)\n } else {\n ranges.push(`${min} - ${max}`)\n }\n }\n const simplified = ranges.join(' || ')\n const original = typeof range.raw === 'string' ? range.raw : String(range)\n return simplified.length < original.length ? simplified : range\n}\n", "'use strict'\n\nconst Range = require('../classes/range.js')\nconst Comparator = require('../classes/comparator.js')\nconst { ANY } = Comparator\nconst satisfies = require('../functions/satisfies.js')\nconst compare = require('../functions/compare.js')\n\n// Complex range `r1 || r2 || ...` is a subset of `R1 || R2 || ...` iff:\n// - Every simple range `r1, r2, ...` is a null set, OR\n// - Every simple range `r1, r2, ...` which is not a null set is a subset of\n// some `R1, R2, ...`\n//\n// Simple range `c1 c2 ...` is a subset of simple range `C1 C2 ...` iff:\n// - If c is only the ANY comparator\n// - If C is only the ANY comparator, return true\n// - Else if in prerelease mode, return false\n// - else replace c with `[>=0.0.0]`\n// - If C is only the ANY comparator\n// - if in prerelease mode, return true\n// - else replace C with `[>=0.0.0]`\n// - Let EQ be the set of = comparators in c\n// - If EQ is more than one, return true (null set)\n// - Let GT be the highest > or >= comparator in c\n// - Let LT be the lowest < or <= comparator in c\n// - If GT and LT, and GT.semver > LT.semver, return true (null set)\n// - If any C is a = range, and GT or LT are set, return false\n// - If EQ\n// - If GT, and EQ does not satisfy GT, return true (null set)\n// - If LT, and EQ does not satisfy LT, return true (null set)\n// - If EQ satisfies every C, return true\n// - Else return false\n// - If GT\n// - If GT.semver is lower than any > or >= comp in C, return false\n// - If GT is >=, and GT.semver does not satisfy every C, return false\n// - If GT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the GT.semver tuple, return false\n// - If LT\n// - If LT.semver is greater than any < or <= comp in C, return false\n// - If LT is <=, and LT.semver does not satisfy every C, return false\n// - If LT.semver has a prerelease, and not in prerelease mode\n// - If no C has a prerelease and the LT.semver tuple, return false\n// - Else return true\n\nconst subset = (sub, dom, options = {}) => {\n if (sub === dom) {\n return true\n }\n\n sub = new Range(sub, options)\n dom = new Range(dom, options)\n let sawNonNull = false\n\n OUTER: for (const simpleSub of sub.set) {\n for (const simpleDom of dom.set) {\n const isSub = simpleSubset(simpleSub, simpleDom, options)\n sawNonNull = sawNonNull || isSub !== null\n if (isSub) {\n continue OUTER\n }\n }\n // the null set is a subset of everything, but null simple ranges in\n // a complex range should be ignored. so if we saw a non-null range,\n // then we know this isn't a subset, but if EVERY simple range was null,\n // then it is a subset.\n if (sawNonNull) {\n return false\n }\n }\n return true\n}\n\nconst minimumVersionWithPreRelease = [new Comparator('>=0.0.0-0')]\nconst minimumVersion = [new Comparator('>=0.0.0')]\n\nconst simpleSubset = (sub, dom, options) => {\n if (sub === dom) {\n return true\n }\n\n if (sub.length === 1 && sub[0].semver === ANY) {\n if (dom.length === 1 && dom[0].semver === ANY) {\n return true\n } else if (options.includePrerelease) {\n sub = minimumVersionWithPreRelease\n } else {\n sub = minimumVersion\n }\n }\n\n if (dom.length === 1 && dom[0].semver === ANY) {\n if (options.includePrerelease) {\n return true\n } else {\n dom = minimumVersion\n }\n }\n\n const eqSet = new Set()\n let gt, lt\n for (const c of sub) {\n if (c.operator === '>' || c.operator === '>=') {\n gt = higherGT(gt, c, options)\n } else if (c.operator === '<' || c.operator === '<=') {\n lt = lowerLT(lt, c, options)\n } else {\n eqSet.add(c.semver)\n }\n }\n\n if (eqSet.size > 1) {\n return null\n }\n\n let gtltComp\n if (gt && lt) {\n gtltComp = compare(gt.semver, lt.semver, options)\n if (gtltComp > 0) {\n return null\n } else if (gtltComp === 0 && (gt.operator !== '>=' || lt.operator !== '<=')) {\n return null\n }\n }\n\n // will iterate one or zero times\n for (const eq of eqSet) {\n if (gt && !satisfies(eq, String(gt), options)) {\n return null\n }\n\n if (lt && !satisfies(eq, String(lt), options)) {\n return null\n }\n\n for (const c of dom) {\n if (!satisfies(eq, String(c), options)) {\n return false\n }\n }\n\n return true\n }\n\n let higher, lower\n let hasDomLT, hasDomGT\n // if the subset has a prerelease, we need a comparator in the superset\n // with the same tuple and a prerelease, or it's not a subset\n let needDomLTPre = lt &&\n !options.includePrerelease &&\n lt.semver.prerelease.length ? lt.semver : false\n let needDomGTPre = gt &&\n !options.includePrerelease &&\n gt.semver.prerelease.length ? gt.semver : false\n // exception: <1.2.3-0 is the same as <1.2.3\n if (needDomLTPre && needDomLTPre.prerelease.length === 1 &&\n lt.operator === '<' && needDomLTPre.prerelease[0] === 0) {\n needDomLTPre = false\n }\n\n for (const c of dom) {\n hasDomGT = hasDomGT || c.operator === '>' || c.operator === '>='\n hasDomLT = hasDomLT || c.operator === '<' || c.operator === '<='\n if (gt) {\n if (needDomGTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomGTPre.major &&\n c.semver.minor === needDomGTPre.minor &&\n c.semver.patch === needDomGTPre.patch) {\n needDomGTPre = false\n }\n }\n if (c.operator === '>' || c.operator === '>=') {\n higher = higherGT(gt, c, options)\n if (higher === c && higher !== gt) {\n return false\n }\n } else if (gt.operator === '>=' && !c.test(gt.semver)) {\n return false\n }\n }\n if (lt) {\n if (needDomLTPre) {\n if (c.semver.prerelease && c.semver.prerelease.length &&\n c.semver.major === needDomLTPre.major &&\n c.semver.minor === needDomLTPre.minor &&\n c.semver.patch === needDomLTPre.patch) {\n needDomLTPre = false\n }\n }\n if (c.operator === '<' || c.operator === '<=') {\n lower = lowerLT(lt, c, options)\n if (lower === c && lower !== lt) {\n return false\n }\n } else if (lt.operator === '<=' && !c.test(lt.semver)) {\n return false\n }\n }\n if (!c.operator && (lt || gt) && gtltComp !== 0) {\n return false\n }\n }\n\n // if there was a < or >, and nothing in the dom, then must be false\n // UNLESS it was limited by another range in the other direction.\n // Eg, >1.0.0 <1.0.1 is still a subset of <2.0.0\n if (gt && hasDomLT && !lt && gtltComp !== 0) {\n return false\n }\n\n if (lt && hasDomGT && !gt && gtltComp !== 0) {\n return false\n }\n\n // we needed a prerelease range in a specific tuple, but didn't get one\n // then this isn't a subset. eg >=1.2.3-pre is not a subset of >=1.0.0,\n // because it includes prereleases in the 1.2.3 tuple\n if (needDomGTPre || needDomLTPre) {\n return false\n }\n\n return true\n}\n\n// >=1.2.3 is lower than >1.2.3\nconst higherGT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp > 0 ? a\n : comp < 0 ? b\n : b.operator === '>' && a.operator === '>=' ? b\n : a\n}\n\n// <=1.2.3 is higher than <1.2.3\nconst lowerLT = (a, b, options) => {\n if (!a) {\n return b\n }\n const comp = compare(a.semver, b.semver, options)\n return comp < 0 ? a\n : comp > 0 ? b\n : b.operator === '<' && a.operator === '<=' ? b\n : a\n}\n\nmodule.exports = subset\n", "'use strict'\n\n// just pre-load all the stuff that index.js lazily exports\nconst internalRe = require('./internal/re')\nconst constants = require('./internal/constants')\nconst SemVer = require('./classes/semver')\nconst identifiers = require('./internal/identifiers')\nconst parse = require('./functions/parse')\nconst valid = require('./functions/valid')\nconst clean = require('./functions/clean')\nconst inc = require('./functions/inc')\nconst diff = require('./functions/diff')\nconst major = require('./functions/major')\nconst minor = require('./functions/minor')\nconst patch = require('./functions/patch')\nconst prerelease = require('./functions/prerelease')\nconst compare = require('./functions/compare')\nconst rcompare = require('./functions/rcompare')\nconst compareLoose = require('./functions/compare-loose')\nconst compareBuild = require('./functions/compare-build')\nconst sort = require('./functions/sort')\nconst rsort = require('./functions/rsort')\nconst gt = require('./functions/gt')\nconst lt = require('./functions/lt')\nconst eq = require('./functions/eq')\nconst neq = require('./functions/neq')\nconst gte = require('./functions/gte')\nconst lte = require('./functions/lte')\nconst cmp = require('./functions/cmp')\nconst coerce = require('./functions/coerce')\nconst truncate = require('./functions/truncate')\nconst Comparator = require('./classes/comparator')\nconst Range = require('./classes/range')\nconst satisfies = require('./functions/satisfies')\nconst toComparators = require('./ranges/to-comparators')\nconst maxSatisfying = require('./ranges/max-satisfying')\nconst minSatisfying = require('./ranges/min-satisfying')\nconst minVersion = require('./ranges/min-version')\nconst validRange = require('./ranges/valid')\nconst outside = require('./ranges/outside')\nconst gtr = require('./ranges/gtr')\nconst ltr = require('./ranges/ltr')\nconst intersects = require('./ranges/intersects')\nconst simplifyRange = require('./ranges/simplify')\nconst subset = require('./ranges/subset')\nmodule.exports = {\n parse,\n valid,\n clean,\n inc,\n diff,\n major,\n minor,\n patch,\n prerelease,\n compare,\n rcompare,\n compareLoose,\n compareBuild,\n sort,\n rsort,\n gt,\n lt,\n eq,\n neq,\n gte,\n lte,\n cmp,\n coerce,\n truncate,\n Comparator,\n Range,\n satisfies,\n toComparators,\n maxSatisfying,\n minSatisfying,\n minVersion,\n validRange,\n outside,\n gtr,\n ltr,\n intersects,\n simplifyRange,\n subset,\n SemVer,\n re: internalRe.re,\n src: internalRe.src,\n tokens: internalRe.t,\n SEMVER_SPEC_VERSION: constants.SEMVER_SPEC_VERSION,\n RELEASE_TYPES: constants.RELEASE_TYPES,\n compareIdentifiers: identifiers.compareIdentifiers,\n rcompareIdentifiers: identifiers.rcompareIdentifiers,\n}\n", "/*!\n * Tmp\n *\n * Copyright (c) 2011-2017 KARASZI Istvan \n *\n * MIT Licensed\n */\n\n/*\n * Module dependencies.\n */\nconst fs = require('fs');\nconst os = require('os');\nconst path = require('path');\nconst crypto = require('crypto');\nconst _c = { fs: fs.constants, os: os.constants };\n\n/*\n * The working inner variables.\n */\nconst // the random characters to choose from\n RANDOM_CHARS = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz',\n TEMPLATE_PATTERN = /XXXXXX/,\n DEFAULT_TRIES = 3,\n CREATE_FLAGS = (_c.O_CREAT || _c.fs.O_CREAT) | (_c.O_EXCL || _c.fs.O_EXCL) | (_c.O_RDWR || _c.fs.O_RDWR),\n // constants are off on the windows platform and will not match the actual errno codes\n IS_WIN32 = os.platform() === 'win32',\n EBADF = _c.EBADF || _c.os.errno.EBADF,\n ENOENT = _c.ENOENT || _c.os.errno.ENOENT,\n DIR_MODE = 0o700 /* 448 */,\n FILE_MODE = 0o600 /* 384 */,\n EXIT = 'exit',\n // this will hold the objects need to be removed on exit\n _removeObjects = [],\n // API change in fs.rmdirSync leads to error when passing in a second parameter, e.g. the callback\n FN_RMDIR_SYNC = fs.rmdirSync.bind(fs);\n\nlet _gracefulCleanup = false;\n\n/**\n * Recursively remove a directory and its contents.\n *\n * @param {string} dirPath path of directory to remove\n * @param {Function} callback\n * @private\n */\nfunction rimraf(dirPath, callback) {\n return fs.rm(dirPath, { recursive: true }, callback);\n}\n\n/**\n * Recursively remove a directory and its contents, synchronously.\n *\n * @param {string} dirPath path of directory to remove\n * @private\n */\nfunction FN_RIMRAF_SYNC(dirPath) {\n return fs.rmSync(dirPath, { recursive: true });\n}\n\n/**\n * Gets a temporary file name.\n *\n * @param {(Options|tmpNameCallback)} options options or callback\n * @param {?tmpNameCallback} callback the callback function\n */\nfunction tmpName(options, callback) {\n const args = _parseArguments(options, callback),\n opts = args[0],\n cb = args[1];\n\n _assertAndSanitizeOptions(opts, function (err, sanitizedOptions) {\n if (err) return cb(err);\n\n let tries = sanitizedOptions.tries;\n (function _getUniqueName() {\n try {\n const name = _generateTmpName(sanitizedOptions);\n\n // check whether the path exists then retry if needed\n fs.stat(name, function (err) {\n /* istanbul ignore else */\n if (!err) {\n /* istanbul ignore else */\n if (tries-- > 0) return _getUniqueName();\n\n return cb(new Error('Could not get a unique tmp filename, max tries reached ' + name));\n }\n\n cb(null, name);\n });\n } catch (err) {\n cb(err);\n }\n })();\n });\n}\n\n/**\n * Synchronous version of tmpName.\n *\n * @param {Object} options\n * @returns {string} the generated random name\n * @throws {Error} if the options are invalid or could not generate a filename\n */\nfunction tmpNameSync(options) {\n const args = _parseArguments(options),\n opts = args[0];\n\n const sanitizedOptions = _assertAndSanitizeOptionsSync(opts);\n\n let tries = sanitizedOptions.tries;\n do {\n const name = _generateTmpName(sanitizedOptions);\n try {\n fs.statSync(name);\n } catch (e) {\n return name;\n }\n } while (tries-- > 0);\n\n throw new Error('Could not get a unique tmp filename, max tries reached');\n}\n\n/**\n * Creates and opens a temporary file.\n *\n * @param {(Options|null|undefined|fileCallback)} options the config options or the callback function or null or undefined\n * @param {?fileCallback} callback\n */\nfunction file(options, callback) {\n const args = _parseArguments(options, callback),\n opts = args[0],\n cb = args[1];\n\n // gets a temporary filename\n tmpName(opts, function _tmpNameCreated(err, name) {\n /* istanbul ignore else */\n if (err) return cb(err);\n\n // create and open the file\n fs.open(name, CREATE_FLAGS, opts.mode || FILE_MODE, function _fileCreated(err, fd) {\n /* istanbu ignore else */\n if (err) return cb(err);\n\n if (opts.discardDescriptor) {\n return fs.close(fd, function _discardCallback(possibleErr) {\n // the chance of getting an error on close here is rather low and might occur in the most edgiest cases only\n return cb(possibleErr, name, undefined, _prepareTmpFileRemoveCallback(name, -1, opts, false));\n });\n } else {\n // detachDescriptor passes the descriptor whereas discardDescriptor closes it, either way, we no longer care\n // about the descriptor\n const discardOrDetachDescriptor = opts.discardDescriptor || opts.detachDescriptor;\n cb(null, name, fd, _prepareTmpFileRemoveCallback(name, discardOrDetachDescriptor ? -1 : fd, opts, false));\n }\n });\n });\n}\n\n/**\n * Synchronous version of file.\n *\n * @param {Options} options\n * @returns {FileSyncObject} object consists of name, fd and removeCallback\n * @throws {Error} if cannot create a file\n */\nfunction fileSync(options) {\n const args = _parseArguments(options),\n opts = args[0];\n\n const discardOrDetachDescriptor = opts.discardDescriptor || opts.detachDescriptor;\n const name = tmpNameSync(opts);\n let fd = fs.openSync(name, CREATE_FLAGS, opts.mode || FILE_MODE);\n /* istanbul ignore else */\n if (opts.discardDescriptor) {\n fs.closeSync(fd);\n fd = undefined;\n }\n\n return {\n name: name,\n fd: fd,\n removeCallback: _prepareTmpFileRemoveCallback(name, discardOrDetachDescriptor ? -1 : fd, opts, true)\n };\n}\n\n/**\n * Creates a temporary directory.\n *\n * @param {(Options|dirCallback)} options the options or the callback function\n * @param {?dirCallback} callback\n */\nfunction dir(options, callback) {\n const args = _parseArguments(options, callback),\n opts = args[0],\n cb = args[1];\n\n // gets a temporary filename\n tmpName(opts, function _tmpNameCreated(err, name) {\n /* istanbul ignore else */\n if (err) return cb(err);\n\n // create the directory\n fs.mkdir(name, opts.mode || DIR_MODE, function _dirCreated(err) {\n /* istanbul ignore else */\n if (err) return cb(err);\n\n cb(null, name, _prepareTmpDirRemoveCallback(name, opts, false));\n });\n });\n}\n\n/**\n * Synchronous version of dir.\n *\n * @param {Options} options\n * @returns {DirSyncObject} object consists of name and removeCallback\n * @throws {Error} if it cannot create a directory\n */\nfunction dirSync(options) {\n const args = _parseArguments(options),\n opts = args[0];\n\n const name = tmpNameSync(opts);\n fs.mkdirSync(name, opts.mode || DIR_MODE);\n\n return {\n name: name,\n removeCallback: _prepareTmpDirRemoveCallback(name, opts, true)\n };\n}\n\n/**\n * Removes files asynchronously.\n *\n * @param {Object} fdPath\n * @param {Function} next\n * @private\n */\nfunction _removeFileAsync(fdPath, next) {\n const _handler = function (err) {\n if (err && !_isENOENT(err)) {\n // reraise any unanticipated error\n return next(err);\n }\n next();\n };\n\n if (0 <= fdPath[0])\n fs.close(fdPath[0], function () {\n fs.unlink(fdPath[1], _handler);\n });\n else fs.unlink(fdPath[1], _handler);\n}\n\n/**\n * Removes files synchronously.\n *\n * @param {Object} fdPath\n * @private\n */\nfunction _removeFileSync(fdPath) {\n let rethrownException = null;\n try {\n if (0 <= fdPath[0]) fs.closeSync(fdPath[0]);\n } catch (e) {\n // reraise any unanticipated error\n if (!_isEBADF(e) && !_isENOENT(e)) throw e;\n } finally {\n try {\n fs.unlinkSync(fdPath[1]);\n } catch (e) {\n // reraise any unanticipated error\n if (!_isENOENT(e)) rethrownException = e;\n }\n }\n if (rethrownException !== null) {\n throw rethrownException;\n }\n}\n\n/**\n * Prepares the callback for removal of the temporary file.\n *\n * Returns either a sync callback or a async callback depending on whether\n * fileSync or file was called, which is expressed by the sync parameter.\n *\n * @param {string} name the path of the file\n * @param {number} fd file descriptor\n * @param {Object} opts\n * @param {boolean} sync\n * @returns {fileCallback | fileCallbackSync}\n * @private\n */\nfunction _prepareTmpFileRemoveCallback(name, fd, opts, sync) {\n const removeCallbackSync = _prepareRemoveCallback(_removeFileSync, [fd, name], sync);\n const removeCallback = _prepareRemoveCallback(_removeFileAsync, [fd, name], sync, removeCallbackSync);\n\n if (!opts.keep) _removeObjects.unshift(removeCallbackSync);\n\n return sync ? removeCallbackSync : removeCallback;\n}\n\n/**\n * Prepares the callback for removal of the temporary directory.\n *\n * Returns either a sync callback or a async callback depending on whether\n * tmpFileSync or tmpFile was called, which is expressed by the sync parameter.\n *\n * @param {string} name\n * @param {Object} opts\n * @param {boolean} sync\n * @returns {Function} the callback\n * @private\n */\nfunction _prepareTmpDirRemoveCallback(name, opts, sync) {\n const removeFunction = opts.unsafeCleanup ? rimraf : fs.rmdir.bind(fs);\n const removeFunctionSync = opts.unsafeCleanup ? FN_RIMRAF_SYNC : FN_RMDIR_SYNC;\n const removeCallbackSync = _prepareRemoveCallback(removeFunctionSync, name, sync);\n const removeCallback = _prepareRemoveCallback(removeFunction, name, sync, removeCallbackSync);\n if (!opts.keep) _removeObjects.unshift(removeCallbackSync);\n\n return sync ? removeCallbackSync : removeCallback;\n}\n\n/**\n * Creates a guarded function wrapping the removeFunction call.\n *\n * The cleanup callback is save to be called multiple times.\n * Subsequent invocations will be ignored.\n *\n * @param {Function} removeFunction\n * @param {string} fileOrDirName\n * @param {boolean} sync\n * @param {cleanupCallbackSync?} cleanupCallbackSync\n * @returns {cleanupCallback | cleanupCallbackSync}\n * @private\n */\nfunction _prepareRemoveCallback(removeFunction, fileOrDirName, sync, cleanupCallbackSync) {\n let called = false;\n\n // if sync is true, the next parameter will be ignored\n return function _cleanupCallback(next) {\n /* istanbul ignore else */\n if (!called) {\n // remove cleanupCallback from cache\n const toRemove = cleanupCallbackSync || _cleanupCallback;\n const index = _removeObjects.indexOf(toRemove);\n /* istanbul ignore else */\n if (index >= 0) _removeObjects.splice(index, 1);\n\n called = true;\n if (sync || removeFunction === FN_RMDIR_SYNC || removeFunction === FN_RIMRAF_SYNC) {\n return removeFunction(fileOrDirName);\n } else {\n return removeFunction(fileOrDirName, next || function () {});\n }\n }\n };\n}\n\n/**\n * The garbage collector.\n *\n * @private\n */\nfunction _garbageCollector() {\n /* istanbul ignore else */\n if (!_gracefulCleanup) return;\n\n // the function being called removes itself from _removeObjects,\n // loop until _removeObjects is empty\n while (_removeObjects.length) {\n try {\n _removeObjects[0]();\n } catch (e) {\n // already removed?\n }\n }\n}\n\n/**\n * Random name generator based on crypto.\n * Adapted from http://blog.tompawlak.org/how-to-generate-random-values-nodejs-javascript\n *\n * @param {number} howMany\n * @returns {string} the generated random name\n * @private\n */\nfunction _randomChars(howMany) {\n let value = [],\n rnd = null;\n\n // make sure that we do not fail because we ran out of entropy\n try {\n rnd = crypto.randomBytes(howMany);\n } catch (e) {\n rnd = crypto.pseudoRandomBytes(howMany);\n }\n\n for (let i = 0; i < howMany; i++) {\n value.push(RANDOM_CHARS[rnd[i] % RANDOM_CHARS.length]);\n }\n\n return value.join('');\n}\n\n/**\n * Checks whether the `obj` parameter is defined or not.\n *\n * @param {Object} obj\n * @returns {boolean} true if the object is undefined\n * @private\n */\nfunction _isUndefined(obj) {\n return typeof obj === 'undefined';\n}\n\n/**\n * Parses the function arguments.\n *\n * This function helps to have optional arguments.\n *\n * @param {(Options|null|undefined|Function)} options\n * @param {?Function} callback\n * @returns {Array} parsed arguments\n * @private\n */\nfunction _parseArguments(options, callback) {\n /* istanbul ignore else */\n if (typeof options === 'function') {\n return [{}, options];\n }\n\n /* istanbul ignore else */\n if (_isUndefined(options)) {\n return [{}, callback];\n }\n\n // copy options so we do not leak the changes we make internally\n const actualOptions = {};\n for (const key of Object.getOwnPropertyNames(options)) {\n actualOptions[key] = options[key];\n }\n\n return [actualOptions, callback];\n}\n\n/**\n * Resolve the specified path name in respect to tmpDir.\n *\n * The specified name might include relative path components, e.g. ../\n * so we need to resolve in order to be sure that is is located inside tmpDir\n *\n * @private\n */\nfunction _resolvePath(name, tmpDir, cb) {\n const pathToResolve = path.isAbsolute(name) ? name : path.join(tmpDir, name);\n\n fs.stat(pathToResolve, function (err) {\n if (err) {\n fs.realpath(path.dirname(pathToResolve), function (err, parentDir) {\n if (err) return cb(err);\n\n cb(null, path.join(parentDir, path.basename(pathToResolve)));\n });\n } else {\n fs.realpath(pathToResolve, cb);\n }\n });\n}\n\n/**\n * Resolve the specified path name in respect to tmpDir.\n *\n * The specified name might include relative path components, e.g. ../\n * so we need to resolve in order to be sure that is is located inside tmpDir\n *\n * @private\n */\nfunction _resolvePathSync(name, tmpDir) {\n const pathToResolve = path.isAbsolute(name) ? name : path.join(tmpDir, name);\n\n try {\n fs.statSync(pathToResolve);\n return fs.realpathSync(pathToResolve);\n } catch (_err) {\n const parentDir = fs.realpathSync(path.dirname(pathToResolve));\n\n return path.join(parentDir, path.basename(pathToResolve));\n }\n}\n\n/**\n * Generates a new temporary name.\n *\n * @param {Object} opts\n * @returns {string} the new random name according to opts\n * @private\n */\nfunction _generateTmpName(opts) {\n const tmpDir = opts.tmpdir;\n\n /* istanbul ignore else */\n if (!_isUndefined(opts.name)) {\n return path.join(tmpDir, opts.dir, opts.name);\n }\n\n /* istanbul ignore else */\n if (!_isUndefined(opts.template)) {\n return path.join(tmpDir, opts.dir, opts.template).replace(TEMPLATE_PATTERN, _randomChars(6));\n }\n\n // prefix and postfix\n const name = [\n opts.prefix ? opts.prefix : 'tmp',\n '-',\n process.pid,\n '-',\n _randomChars(12),\n opts.postfix ? '-' + opts.postfix : ''\n ].join('');\n\n return path.join(tmpDir, opts.dir, name);\n}\n\n/**\n * Check the prefix, postfix, and template options.\n *\n * Rejects non-string inputs so that a non-string `.includes('..')` cannot evade\n * the substring check (e.g. an Array whose `.includes('..')` is element-wise,\n * or a duck-typed object with a custom `.includes`), and so that the value is\n * not later coerced to a string with traversal sequences via `Array.prototype.join`\n * or `path.join`.\n *\n * @private\n */\nfunction _assertPath(option, value) {\n if (typeof value !== 'string') {\n throw new Error(`${option} option must be a string, got \"${typeof value}\".`);\n }\n\n if (value.includes(\"..\")) {\n throw new Error(\"Relative value not allowed\");\n }\n\n return value;\n}\n\n/**\n * Asserts and sanitizes the basic options.\n *\n * @private\n */\nfunction _assertOptionsBase(options) {\n if (!_isUndefined(options.name)) {\n const name = options.name;\n\n // assert that name is not absolute and does not contain a path\n if (path.isAbsolute(name)) throw new Error(`name option must not contain an absolute path, found \"${name}\".`);\n\n // must not fail on valid . or .. or similar such constructs\n const basename = path.basename(name);\n if (basename === '..' || basename === '.' || basename !== name) {\n throw new Error(`name option must not contain a path, found \"${name}\".`);\n }\n }\n\n /* istanbul ignore else */\n if (!_isUndefined(options.template)) {\n if (typeof options.template !== 'string') {\n throw new Error(`template option must be a string, got \"${typeof options.template}\".`);\n }\n if (!options.template.match(TEMPLATE_PATTERN)) {\n throw new Error(`Invalid template, found \"${options.template}\".`);\n }\n }\n\n /* istanbul ignore else */\n if ((!_isUndefined(options.tries) && isNaN(options.tries)) || options.tries < 0) {\n throw new Error(`Invalid tries, found \"${options.tries}\".`);\n }\n\n // if a name was specified we will try once\n options.tries = _isUndefined(options.name) ? options.tries || DEFAULT_TRIES : 1;\n options.keep = !!options.keep;\n options.detachDescriptor = !!options.detachDescriptor;\n options.discardDescriptor = !!options.discardDescriptor;\n options.unsafeCleanup = !!options.unsafeCleanup;\n\n // for completeness' sake only, also keep (multiple) blanks if the user, purportedly sane, requests us to\n options.prefix = _isUndefined(options.prefix) ? '' : _assertPath('prefix', options.prefix);\n options.postfix = _isUndefined(options.postfix) ? '' : _assertPath('postfix', options.postfix);\n options.template = _isUndefined(options.template) ? undefined : _assertPath('template', options.template);\n}\n\n/**\n * Gets the relative directory to tmpDir.\n *\n * @private\n */\nfunction _getRelativePath(option, name, tmpDir, cb) {\n if (_isUndefined(name)) return cb(null);\n\n _resolvePath(name, tmpDir, function (err, resolvedPath) {\n if (err) return cb(err);\n\n const relativePath = path.relative(tmpDir, resolvedPath);\n\n if (relativePath.startsWith('..') || path.isAbsolute(relativePath)) {\n return cb(new Error(`${option} option must be relative to \"${tmpDir}\", found \"${relativePath}\".`));\n }\n\n cb(null, relativePath);\n });\n}\n\n/**\n * Gets the relative path to tmpDir.\n *\n * @private\n */\nfunction _getRelativePathSync(option, name, tmpDir) {\n if (_isUndefined(name)) return;\n\n const resolvedPath = _resolvePathSync(name, tmpDir);\n const relativePath = path.relative(tmpDir, resolvedPath);\n\n if (relativePath.startsWith('..') || path.isAbsolute(relativePath)) {\n throw new Error(`${option} option must be relative to \"${tmpDir}\", found \"${relativePath}\".`);\n }\n\n return relativePath;\n}\n\n/**\n * Asserts whether the specified options are valid, also sanitizes options and provides sane defaults for missing\n * options.\n *\n * @private\n */\nfunction _assertAndSanitizeOptions(options, cb) {\n _getTmpDir(options, function (err, tmpDir) {\n if (err) return cb(err);\n\n options.tmpdir = tmpDir;\n\n try {\n _assertOptionsBase(options, tmpDir);\n } catch (err) {\n return cb(err);\n }\n\n // sanitize dir, also keep (multiple) blanks if the user, purportedly sane, requests us to\n _getRelativePath('dir', options.dir, tmpDir, function (err, dir) {\n if (err) return cb(err);\n\n options.dir = _isUndefined(dir) ? '' : dir;\n\n // sanitize further if template is relative to options.dir\n _getRelativePath('template', options.template, tmpDir, function (err, template) {\n if (err) return cb(err);\n\n options.template = template;\n\n cb(null, options);\n });\n });\n });\n}\n\n/**\n * Asserts whether the specified options are valid, also sanitizes options and provides sane defaults for missing\n * options.\n *\n * @private\n */\nfunction _assertAndSanitizeOptionsSync(options) {\n const tmpDir = (options.tmpdir = _getTmpDirSync(options));\n\n _assertOptionsBase(options, tmpDir);\n\n const dir = _getRelativePathSync('dir', options.dir, tmpDir);\n options.dir = _isUndefined(dir) ? '' : dir;\n\n options.template = _getRelativePathSync('template', options.template, tmpDir);\n\n return options;\n}\n\n/**\n * Helper for testing against EBADF to compensate changes made to Node 7.x under Windows.\n *\n * @private\n */\nfunction _isEBADF(error) {\n return _isExpectedError(error, -EBADF, 'EBADF');\n}\n\n/**\n * Helper for testing against ENOENT to compensate changes made to Node 7.x under Windows.\n *\n * @private\n */\nfunction _isENOENT(error) {\n return _isExpectedError(error, -ENOENT, 'ENOENT');\n}\n\n/**\n * Helper to determine whether the expected error code matches the actual code and errno,\n * which will differ between the supported node versions.\n *\n * - Node >= 7.0:\n * error.code {string}\n * error.errno {number} any numerical value will be negated\n *\n * CAVEAT\n *\n * On windows, the errno for EBADF is -4083 but os.constants.errno.EBADF is different and we must assume that ENOENT\n * is no different here.\n *\n * @param {SystemError} error\n * @param {number} errno\n * @param {string} code\n * @private\n */\nfunction _isExpectedError(error, errno, code) {\n return IS_WIN32 ? error.code === code : error.code === code && error.errno === errno;\n}\n\n/**\n * Sets the graceful cleanup.\n *\n * If graceful cleanup is set, tmp will remove all controlled temporary objects on process exit, otherwise the\n * temporary objects will remain in place, waiting to be cleaned up on system restart or otherwise scheduled temporary\n * object removals.\n */\nfunction setGracefulCleanup() {\n _gracefulCleanup = true;\n}\n\n/**\n * Returns the currently configured tmp dir from os.tmpdir().\n *\n * @private\n */\nfunction _getTmpDir(options, cb) {\n return fs.realpath((options && options.tmpdir) || os.tmpdir(), cb);\n}\n\n/**\n * Returns the currently configured tmp dir from os.tmpdir().\n *\n * @private\n */\nfunction _getTmpDirSync(options) {\n return fs.realpathSync((options && options.tmpdir) || os.tmpdir());\n}\n\n// Install process exit listener\nprocess.addListener(EXIT, _garbageCollector);\n\n/**\n * Configuration options.\n *\n * @typedef {Object} Options\n * @property {?boolean} keep the temporary object (file or dir) will not be garbage collected\n * @property {?number} tries the number of tries before give up the name generation\n * @property (?int) mode the access mode, defaults are 0o700 for directories and 0o600 for files\n * @property {?string} template the \"mkstemp\" like filename template\n * @property {?string} name fixed name relative to tmpdir or the specified dir option\n * @property {?string} dir tmp directory relative to the root tmp directory in use\n * @property {?string} prefix prefix for the generated name\n * @property {?string} postfix postfix for the generated name\n * @property {?string} tmpdir the root tmp directory which overrides the os tmpdir\n * @property {?boolean} unsafeCleanup recursively removes the created temporary directory, even when it's not empty\n * @property {?boolean} detachDescriptor detaches the file descriptor, caller is responsible for closing the file, tmp will no longer try closing the file during garbage collection\n * @property {?boolean} discardDescriptor discards the file descriptor (closes file, fd is -1), tmp will no longer try closing the file during garbage collection\n */\n\n/**\n * @typedef {Object} FileSyncObject\n * @property {string} name the name of the file\n * @property {string} fd the file descriptor or -1 if the fd has been discarded\n * @property {fileCallback} removeCallback the callback function to remove the file\n */\n\n/**\n * @typedef {Object} DirSyncObject\n * @property {string} name the name of the directory\n * @property {fileCallback} removeCallback the callback function to remove the directory\n */\n\n/**\n * @callback tmpNameCallback\n * @param {?Error} err the error object if anything goes wrong\n * @param {string} name the temporary file name\n */\n\n/**\n * @callback fileCallback\n * @param {?Error} err the error object if anything goes wrong\n * @param {string} name the temporary file name\n * @param {number} fd the file descriptor or -1 if the fd had been discarded\n * @param {cleanupCallback} fn the cleanup callback function\n */\n\n/**\n * @callback fileCallbackSync\n * @param {?Error} err the error object if anything goes wrong\n * @param {string} name the temporary file name\n * @param {number} fd the file descriptor or -1 if the fd had been discarded\n * @param {cleanupCallbackSync} fn the cleanup callback function\n */\n\n/**\n * @callback dirCallback\n * @param {?Error} err the error object if anything goes wrong\n * @param {string} name the temporary file name\n * @param {cleanupCallback} fn the cleanup callback function\n */\n\n/**\n * @callback dirCallbackSync\n * @param {?Error} err the error object if anything goes wrong\n * @param {string} name the temporary file name\n * @param {cleanupCallbackSync} fn the cleanup callback function\n */\n\n/**\n * Removes the temporary created file or directory.\n *\n * @callback cleanupCallback\n * @param {simpleCallback} [next] function to call whenever the tmp object needs to be removed\n */\n\n/**\n * Removes the temporary created file or directory.\n *\n * @callback cleanupCallbackSync\n */\n\n/**\n * Callback function for function composition.\n * @see {@link https://github.com/raszi/node-tmp/issues/57|raszi/node-tmp#57}\n *\n * @callback simpleCallback\n */\n\n// exporting all the needed methods\n\n// evaluate _getTmpDir() lazily, mainly for simplifying testing but it also will\n// allow users to reconfigure the temporary directory\nObject.defineProperty(module.exports, 'tmpdir', {\n enumerable: true,\n configurable: false,\n get: function () {\n return _getTmpDirSync();\n }\n});\n\nmodule.exports.dir = dir;\nmodule.exports.dirSync = dirSync;\n\nmodule.exports.file = file;\nmodule.exports.fileSync = fileSync;\n\nmodule.exports.tmpName = tmpName;\nmodule.exports.tmpNameSync = tmpNameSync;\n\nmodule.exports.setGracefulCleanup = setGracefulCleanup;\n", "const escape = {\n '&': '&',\n '<': '<',\n '>': '>',\n '\"': '"',\n \"'\": ''',\n '`': '`',\n '=': '='\n};\n\nconst badChars = /[&<>\"'`=]/g,\n possible = /[&<>\"'`=]/;\n\nfunction escapeChar(chr) {\n return escape[chr];\n}\n\nexport function extend(obj /* , ...source */) {\n for (let i = 1; i < arguments.length; i++) {\n for (let key in arguments[i]) {\n if (Object.prototype.hasOwnProperty.call(arguments[i], key)) {\n obj[key] = arguments[i][key];\n }\n }\n }\n\n return obj;\n}\n\nexport let toString = Object.prototype.toString;\n\n// Sourced from lodash\n// https://github.com/bestiejs/lodash/blob/master/LICENSE.txt\n/* eslint-disable func-style */\nlet isFunction = function(value) {\n return typeof value === 'function';\n};\n// fallback for older versions of Chrome and Safari\n/* istanbul ignore next */\nif (isFunction(/x/)) {\n isFunction = function(value) {\n return (\n typeof value === 'function' &&\n toString.call(value) === '[object Function]'\n );\n };\n}\nexport { isFunction };\n/* eslint-enable func-style */\n\n/* istanbul ignore next */\nexport const isArray =\n Array.isArray ||\n function(value) {\n return value && typeof value === 'object'\n ? toString.call(value) === '[object Array]'\n : false;\n };\n\n// Older IE versions do not directly support indexOf so we must implement our own, sadly.\nexport function indexOf(array, value) {\n for (let i = 0, len = array.length; i < len; i++) {\n if (array[i] === value) {\n return i;\n }\n }\n return -1;\n}\n\nexport function escapeExpression(string) {\n if (typeof string !== 'string') {\n // don't escape SafeStrings, since they're already safe\n if (string && string.toHTML) {\n return string.toHTML();\n } else if (string == null) {\n return '';\n } else if (!string) {\n return string + '';\n }\n\n // Force a string conversion as this will be done by the append regardless and\n // the regex test will do this transparently behind the scenes, causing issues if\n // an object's to string has escaped characters in it.\n string = '' + string;\n }\n\n if (!possible.test(string)) {\n return string;\n }\n return string.replace(badChars, escapeChar);\n}\n\nexport function isEmpty(value) {\n if (!value && value !== 0) {\n return true;\n } else if (isArray(value) && value.length === 0) {\n return true;\n } else {\n return false;\n }\n}\n\nexport function createFrame(object) {\n let frame = extend({}, object);\n frame._parent = object;\n return frame;\n}\n\nexport function blockParams(params, ids) {\n params.path = ids;\n return params;\n}\n\nexport function appendContextPath(contextPath, id) {\n return (contextPath ? contextPath + '.' : '') + id;\n}\n", "const errorProps = [\n 'description',\n 'fileName',\n 'lineNumber',\n 'endLineNumber',\n 'message',\n 'name',\n 'number',\n 'stack'\n];\n\nfunction Exception(message, node) {\n let loc = node && node.loc,\n line,\n endLineNumber,\n column,\n endColumn;\n\n if (loc) {\n line = loc.start.line;\n endLineNumber = loc.end.line;\n column = loc.start.column;\n endColumn = loc.end.column;\n\n message += ' - ' + line + ':' + column;\n }\n\n let tmp = Error.prototype.constructor.call(this, message);\n\n // Unfortunately errors are not enumerable in Chrome (at least), so `for prop in tmp` doesn't work.\n for (let idx = 0; idx < errorProps.length; idx++) {\n this[errorProps[idx]] = tmp[errorProps[idx]];\n }\n\n /* istanbul ignore else */\n if (Error.captureStackTrace) {\n Error.captureStackTrace(this, Exception);\n }\n\n try {\n if (loc) {\n this.lineNumber = line;\n this.endLineNumber = endLineNumber;\n\n // Work around issue under safari where we can't directly set the column value\n /* istanbul ignore next */\n if (Object.defineProperty) {\n Object.defineProperty(this, 'column', {\n value: column,\n enumerable: true\n });\n Object.defineProperty(this, 'endColumn', {\n value: endColumn,\n enumerable: true\n });\n } else {\n this.column = column;\n this.endColumn = endColumn;\n }\n }\n } catch (nop) {\n /* Ignore if the browser is very particular */\n }\n}\n\nException.prototype = new Error();\n\nexport default Exception;\n", "import { appendContextPath, createFrame, isArray } from '../utils';\n\nexport default function(instance) {\n instance.registerHelper('blockHelperMissing', function(context, options) {\n let inverse = options.inverse,\n fn = options.fn;\n\n if (context === true) {\n return fn(this);\n } else if (context === false || context == null) {\n return inverse(this);\n } else if (isArray(context)) {\n if (context.length > 0) {\n if (options.ids) {\n options.ids = [options.name];\n }\n\n return instance.helpers.each(context, options);\n } else {\n return inverse(this);\n }\n } else {\n if (options.data && options.ids) {\n let data = createFrame(options.data);\n data.contextPath = appendContextPath(\n options.data.contextPath,\n options.name\n );\n options = { data: data };\n }\n\n return fn(context, options);\n }\n });\n}\n", "import {\n appendContextPath,\n blockParams,\n createFrame,\n isArray,\n isFunction\n} from '../utils';\nimport Exception from '../exception';\n\nexport default function(instance) {\n instance.registerHelper('each', function(context, options) {\n if (!options) {\n throw new Exception('Must pass iterator to #each');\n }\n\n let fn = options.fn,\n inverse = options.inverse,\n i = 0,\n ret = '',\n data,\n contextPath;\n\n if (options.data && options.ids) {\n contextPath =\n appendContextPath(options.data.contextPath, options.ids[0]) + '.';\n }\n\n if (isFunction(context)) {\n context = context.call(this);\n }\n\n if (options.data) {\n data = createFrame(options.data);\n }\n\n function execIteration(field, index, last) {\n if (data) {\n data.key = field;\n data.index = index;\n data.first = index === 0;\n data.last = !!last;\n\n if (contextPath) {\n data.contextPath = contextPath + field;\n }\n }\n\n ret =\n ret +\n fn(context[field], {\n data: data,\n blockParams: blockParams(\n [context[field], field],\n [contextPath + field, null]\n )\n });\n }\n\n if (context && typeof context === 'object') {\n if (isArray(context)) {\n for (let j = context.length; i < j; i++) {\n if (i in context) {\n execIteration(i, i, i === context.length - 1);\n }\n }\n } else if (typeof Symbol === 'function' && context[Symbol.iterator]) {\n const newContext = [];\n const iterator = context[Symbol.iterator]();\n for (let it = iterator.next(); !it.done; it = iterator.next()) {\n newContext.push(it.value);\n }\n context = newContext;\n for (let j = context.length; i < j; i++) {\n execIteration(i, i, i === context.length - 1);\n }\n } else {\n let priorKey;\n\n Object.keys(context).forEach(key => {\n // We're running the iterations one step out of sync so we can detect\n // the last iteration without have to scan the object twice and create\n // an itermediate keys array.\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1);\n }\n priorKey = key;\n i++;\n });\n if (priorKey !== undefined) {\n execIteration(priorKey, i - 1, true);\n }\n }\n }\n\n if (i === 0) {\n ret = inverse(this);\n }\n\n return ret;\n });\n}\n", "import Exception from '../exception';\n\nexport default function(instance) {\n instance.registerHelper('helperMissing', function(/* [args, ]options */) {\n if (arguments.length === 1) {\n // A missing field in a {{foo}} construct.\n return undefined;\n } else {\n // Someone is actually trying to call something, blow up.\n throw new Exception(\n 'Missing helper: \"' + arguments[arguments.length - 1].name + '\"'\n );\n }\n });\n}\n", "import { isEmpty, isFunction } from '../utils';\nimport Exception from '../exception';\n\nexport default function(instance) {\n instance.registerHelper('if', function(conditional, options) {\n if (arguments.length != 2) {\n throw new Exception('#if requires exactly one argument');\n }\n if (isFunction(conditional)) {\n conditional = conditional.call(this);\n }\n\n // Default behavior is to render the positive path if the value is truthy and not empty.\n // The `includeZero` option may be set to treat the condtional as purely not empty based on the\n // behavior of isEmpty. Effectively this determines if 0 is handled by the positive path or negative.\n if ((!options.hash.includeZero && !conditional) || isEmpty(conditional)) {\n return options.inverse(this);\n } else {\n return options.fn(this);\n }\n });\n\n instance.registerHelper('unless', function(conditional, options) {\n if (arguments.length != 2) {\n throw new Exception('#unless requires exactly one argument');\n }\n return instance.helpers['if'].call(this, conditional, {\n fn: options.inverse,\n inverse: options.fn,\n hash: options.hash\n });\n });\n}\n", "export default function(instance) {\n instance.registerHelper('log', function(/* message, options */) {\n let args = [undefined],\n options = arguments[arguments.length - 1];\n for (let i = 0; i < arguments.length - 1; i++) {\n args.push(arguments[i]);\n }\n\n let level = 1;\n if (options.hash.level != null) {\n level = options.hash.level;\n } else if (options.data && options.data.level != null) {\n level = options.data.level;\n }\n args[0] = level;\n\n instance.log(...args);\n });\n}\n", "export default function(instance) {\n instance.registerHelper('lookup', function(obj, field, options) {\n if (!obj) {\n // Note for 5.0: Change to \"obj == null\" in 5.0\n return obj;\n }\n return options.lookupProperty(obj, field);\n });\n}\n", "import {\n appendContextPath,\n blockParams,\n createFrame,\n isEmpty,\n isFunction\n} from '../utils';\nimport Exception from '../exception';\n\nexport default function(instance) {\n instance.registerHelper('with', function(context, options) {\n if (arguments.length != 2) {\n throw new Exception('#with requires exactly one argument');\n }\n if (isFunction(context)) {\n context = context.call(this);\n }\n\n let fn = options.fn;\n\n if (!isEmpty(context)) {\n let data = options.data;\n if (options.data && options.ids) {\n data = createFrame(options.data);\n data.contextPath = appendContextPath(\n options.data.contextPath,\n options.ids[0]\n );\n }\n\n return fn(context, {\n data: data,\n blockParams: blockParams([context], [data && data.contextPath])\n });\n } else {\n return options.inverse(this);\n }\n });\n}\n", "import registerBlockHelperMissing from './helpers/block-helper-missing';\nimport registerEach from './helpers/each';\nimport registerHelperMissing from './helpers/helper-missing';\nimport registerIf from './helpers/if';\nimport registerLog from './helpers/log';\nimport registerLookup from './helpers/lookup';\nimport registerWith from './helpers/with';\n\nexport function registerDefaultHelpers(instance) {\n registerBlockHelperMissing(instance);\n registerEach(instance);\n registerHelperMissing(instance);\n registerIf(instance);\n registerLog(instance);\n registerLookup(instance);\n registerWith(instance);\n}\n\nexport function moveHelperToHooks(instance, helperName, keepHelper) {\n if (instance.helpers[helperName]) {\n instance.hooks[helperName] = instance.helpers[helperName];\n if (!keepHelper) {\n // Using delete is slow\n instance.helpers[helperName] = undefined;\n }\n }\n}\n", "import { extend } from '../utils';\n\nexport default function(instance) {\n instance.registerDecorator('inline', function(fn, props, container, options) {\n let ret = fn;\n if (!props.partials) {\n props.partials = {};\n ret = function(context, options) {\n // Create a new partials stack frame prior to exec.\n let original = container.partials;\n container.partials = extend({}, original, props.partials);\n let ret = fn(context, options);\n container.partials = original;\n return ret;\n };\n }\n\n props.partials[options.args[0]] = options.fn;\n\n return ret;\n });\n}\n", "import registerInline from './decorators/inline';\n\nexport function registerDefaultDecorators(instance) {\n registerInline(instance);\n}\n", "import { indexOf } from './utils';\n\nlet logger = {\n methodMap: ['debug', 'info', 'warn', 'error'],\n level: 'info',\n\n // Maps a given level value to the `methodMap` indexes above.\n lookupLevel: function(level) {\n if (typeof level === 'string') {\n let levelMap = indexOf(logger.methodMap, level.toLowerCase());\n if (levelMap >= 0) {\n level = levelMap;\n } else {\n level = parseInt(level, 10);\n }\n }\n\n return level;\n },\n\n // Can be overridden in the host environment\n log: function(level, ...message) {\n level = logger.lookupLevel(level);\n\n if (\n typeof console !== 'undefined' &&\n logger.lookupLevel(logger.level) <= level\n ) {\n let method = logger.methodMap[level];\n // eslint-disable-next-line no-console\n if (!console[method]) {\n method = 'log';\n }\n console[method](...message); // eslint-disable-line no-console\n }\n }\n};\n\nexport default logger;\n", "import { extend } from '../utils';\nimport logger from '../logger';\n\nconst loggedProperties = Object.create(null);\n\nexport function createProtoAccessControl(runtimeOptions) {\n // Create an object with \"null\"-prototype to avoid truthy results on\n // prototype properties.\n const propertyWhiteList = Object.create(null);\n // eslint-disable-next-line no-proto\n propertyWhiteList['__proto__'] = false;\n extend(propertyWhiteList, runtimeOptions.allowedProtoProperties);\n\n const methodWhiteList = Object.create(null);\n methodWhiteList['constructor'] = false;\n methodWhiteList['__defineGetter__'] = false;\n methodWhiteList['__defineSetter__'] = false;\n methodWhiteList['__lookupGetter__'] = false;\n methodWhiteList['__lookupSetter__'] = false;\n extend(methodWhiteList, runtimeOptions.allowedProtoMethods);\n\n return {\n properties: {\n whitelist: propertyWhiteList,\n defaultValue: runtimeOptions.allowProtoPropertiesByDefault\n },\n methods: {\n whitelist: methodWhiteList,\n defaultValue: runtimeOptions.allowProtoMethodsByDefault\n }\n };\n}\n\nexport function resultIsAllowed(result, protoAccessControl, propertyName) {\n if (typeof result === 'function') {\n return checkWhiteList(protoAccessControl.methods, propertyName);\n } else {\n return checkWhiteList(protoAccessControl.properties, propertyName);\n }\n}\n\nfunction checkWhiteList(protoAccessControlForType, propertyName) {\n if (protoAccessControlForType.whitelist[propertyName] !== undefined) {\n return protoAccessControlForType.whitelist[propertyName] === true;\n }\n if (protoAccessControlForType.defaultValue !== undefined) {\n return protoAccessControlForType.defaultValue;\n }\n logUnexpecedPropertyAccessOnce(propertyName);\n return false;\n}\n\nfunction logUnexpecedPropertyAccessOnce(propertyName) {\n if (loggedProperties[propertyName] !== true) {\n loggedProperties[propertyName] = true;\n logger.log(\n 'error',\n `Handlebars: Access has been denied to resolve the property \"${propertyName}\" because it is not an \"own property\" of its parent.\\n` +\n `You can add a runtime option to disable the check or this warning:\\n` +\n `See https://handlebarsjs.com/api-reference/runtime-options.html#options-to-control-prototype-access for details`\n );\n }\n}\n\nexport function resetLoggedProperties() {\n Object.keys(loggedProperties).forEach(propertyName => {\n delete loggedProperties[propertyName];\n });\n}\n", "import { createFrame, extend, toString } from './utils';\nimport Exception from './exception';\nimport { registerDefaultHelpers } from './helpers';\nimport { registerDefaultDecorators } from './decorators';\nimport logger from './logger';\nimport { resetLoggedProperties } from './internal/proto-access';\n\nexport const VERSION = '4.7.9';\nexport const COMPILER_REVISION = 8;\nexport const LAST_COMPATIBLE_COMPILER_REVISION = 7;\n\nexport const REVISION_CHANGES = {\n 1: '<= 1.0.rc.2', // 1.0.rc.2 is actually rev2 but doesn't report it\n 2: '== 1.0.0-rc.3',\n 3: '== 1.0.0-rc.4',\n 4: '== 1.x.x',\n 5: '== 2.0.0-alpha.x',\n 6: '>= 2.0.0-beta.1',\n 7: '>= 4.0.0 <4.3.0',\n 8: '>= 4.3.0'\n};\n\nconst objectType = '[object Object]';\n\nexport function HandlebarsEnvironment(helpers, partials, decorators) {\n this.helpers = helpers || {};\n this.partials = partials || {};\n this.decorators = decorators || {};\n\n registerDefaultHelpers(this);\n registerDefaultDecorators(this);\n}\n\nHandlebarsEnvironment.prototype = {\n constructor: HandlebarsEnvironment,\n\n logger: logger,\n log: logger.log,\n\n registerHelper: function(name, fn) {\n if (toString.call(name) === objectType) {\n if (fn) {\n throw new Exception('Arg not supported with multiple helpers');\n }\n extend(this.helpers, name);\n } else {\n this.helpers[name] = fn;\n }\n },\n unregisterHelper: function(name) {\n delete this.helpers[name];\n },\n\n registerPartial: function(name, partial) {\n if (toString.call(name) === objectType) {\n extend(this.partials, name);\n } else {\n if (typeof partial === 'undefined') {\n throw new Exception(\n `Attempting to register a partial called \"${name}\" as undefined`\n );\n }\n this.partials[name] = partial;\n }\n },\n unregisterPartial: function(name) {\n delete this.partials[name];\n },\n\n registerDecorator: function(name, fn) {\n if (toString.call(name) === objectType) {\n if (fn) {\n throw new Exception('Arg not supported with multiple decorators');\n }\n extend(this.decorators, name);\n } else {\n this.decorators[name] = fn;\n }\n },\n unregisterDecorator: function(name) {\n delete this.decorators[name];\n },\n /**\n * Reset the memory of illegal property accesses that have already been logged.\n * @deprecated should only be used in handlebars test-cases\n */\n resetLoggedPropertyAccesses() {\n resetLoggedProperties();\n }\n};\n\nexport let log = logger.log;\n\nexport { createFrame, logger };\n", "// Build out our basic SafeString type\nfunction SafeString(string) {\n this.string = string;\n}\n\nSafeString.prototype.toString = SafeString.prototype.toHTML = function() {\n return '' + this.string;\n};\n\nexport default SafeString;\n", "export function wrapHelper(helper, transformOptionsFn) {\n if (typeof helper !== 'function') {\n // This should not happen, but apparently it does in https://github.com/wycats/handlebars.js/issues/1639\n // We try to make the wrapper least-invasive by not wrapping it, if the helper is not a function.\n return helper;\n }\n let wrapper = function(/* dynamic arguments */) {\n const options = arguments[arguments.length - 1];\n arguments[arguments.length - 1] = transformOptionsFn(options);\n return helper.apply(this, arguments);\n };\n return wrapper;\n}\n", "import * as Utils from './utils';\nimport Exception from './exception';\nimport {\n COMPILER_REVISION,\n createFrame,\n LAST_COMPATIBLE_COMPILER_REVISION,\n REVISION_CHANGES\n} from './base';\nimport { moveHelperToHooks } from './helpers';\nimport { wrapHelper } from './internal/wrapHelper';\nimport {\n createProtoAccessControl,\n resultIsAllowed\n} from './internal/proto-access';\n\nexport function checkRevision(compilerInfo) {\n const compilerRevision = (compilerInfo && compilerInfo[0]) || 1,\n currentRevision = COMPILER_REVISION;\n\n if (\n compilerRevision >= LAST_COMPATIBLE_COMPILER_REVISION &&\n compilerRevision <= COMPILER_REVISION\n ) {\n return;\n }\n\n if (compilerRevision < LAST_COMPATIBLE_COMPILER_REVISION) {\n const runtimeVersions = REVISION_CHANGES[currentRevision],\n compilerVersions = REVISION_CHANGES[compilerRevision];\n throw new Exception(\n 'Template was precompiled with an older version of Handlebars than the current runtime. ' +\n 'Please update your precompiler to a newer version (' +\n runtimeVersions +\n ') or downgrade your runtime to an older version (' +\n compilerVersions +\n ').'\n );\n } else {\n // Use the embedded version info since the runtime doesn't know about this revision yet\n throw new Exception(\n 'Template was precompiled with a newer version of Handlebars than the current runtime. ' +\n 'Please update your runtime to a newer version (' +\n compilerInfo[1] +\n ').'\n );\n }\n}\n\nexport function template(templateSpec, env) {\n /* istanbul ignore next */\n if (!env) {\n throw new Exception('No environment passed to template');\n }\n if (!templateSpec || !templateSpec.main) {\n throw new Exception('Unknown template object: ' + typeof templateSpec);\n }\n\n templateSpec.main.decorator = templateSpec.main_d;\n\n // Note: Using env.VM references rather than local var references throughout this section to allow\n // for external users to override these as pseudo-supported APIs.\n env.VM.checkRevision(templateSpec.compiler);\n\n // backwards compatibility for precompiled templates with compiler-version 7 (<4.3.0)\n const templateWasPrecompiledWithCompilerV7 =\n templateSpec.compiler && templateSpec.compiler[0] === 7;\n\n function invokePartialWrapper(partial, context, options) {\n if (options.hash) {\n context = Utils.extend({}, context, options.hash);\n if (options.ids) {\n options.ids[0] = true;\n }\n }\n partial = env.VM.resolvePartial.call(this, partial, context, options);\n\n options.hooks = this.hooks;\n options.protoAccessControl = this.protoAccessControl;\n\n let result = env.VM.invokePartial.call(this, partial, context, options);\n\n if (result == null && env.compile) {\n options.partials[options.name] = env.compile(\n partial,\n templateSpec.compilerOptions,\n env\n );\n result = options.partials[options.name](context, options);\n }\n if (result != null) {\n if (options.indent) {\n let lines = result.split('\\n');\n for (let i = 0, l = lines.length; i < l; i++) {\n if (!lines[i] && i + 1 === l) {\n break;\n }\n\n lines[i] = options.indent + lines[i];\n }\n result = lines.join('\\n');\n }\n return result;\n } else {\n throw new Exception(\n 'The partial ' +\n options.name +\n ' could not be compiled when running in runtime-only mode'\n );\n }\n }\n\n // Just add water\n let container = {\n strict: function(obj, name, loc) {\n if (!obj || !(name in obj)) {\n throw new Exception('\"' + name + '\" not defined in ' + obj, {\n loc: loc\n });\n }\n return container.lookupProperty(obj, name);\n },\n lookupProperty: function(parent, propertyName) {\n let result = parent[propertyName];\n if (result == null) {\n return result;\n }\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return result;\n }\n\n if (resultIsAllowed(result, container.protoAccessControl, propertyName)) {\n return result;\n }\n return undefined;\n },\n lookup: function(depths, name) {\n const len = depths.length;\n for (let i = 0; i < len; i++) {\n let result = depths[i] && container.lookupProperty(depths[i], name);\n if (result != null) {\n return result;\n }\n }\n },\n lambda: function(current, context) {\n return typeof current === 'function' ? current.call(context) : current;\n },\n\n escapeExpression: Utils.escapeExpression,\n invokePartial: invokePartialWrapper,\n\n fn: function(i) {\n let ret = templateSpec[i];\n ret.decorator = templateSpec[i + '_d'];\n return ret;\n },\n\n programs: [],\n program: function(i, data, declaredBlockParams, blockParams, depths) {\n let programWrapper = this.programs[i],\n fn = this.fn(i);\n if (data || depths || blockParams || declaredBlockParams) {\n programWrapper = wrapProgram(\n this,\n i,\n fn,\n data,\n declaredBlockParams,\n blockParams,\n depths\n );\n } else if (!programWrapper) {\n programWrapper = this.programs[i] = wrapProgram(this, i, fn);\n }\n return programWrapper;\n },\n\n data: function(value, depth) {\n while (value && depth--) {\n value = value._parent;\n }\n return value;\n },\n mergeIfNeeded: function(param, common) {\n let obj = param || common;\n\n if (param && common && param !== common) {\n obj = Utils.extend({}, common, param);\n }\n\n return obj;\n },\n // An empty object to use as replacement for null-contexts\n nullContext: Object.seal({}),\n\n noop: env.VM.noop,\n compilerInfo: templateSpec.compiler\n };\n\n function ret(context, options = {}) {\n let data = options.data;\n\n ret._setup(options);\n if (!options.partial && templateSpec.useData) {\n data = initData(context, data);\n }\n let depths,\n blockParams = templateSpec.useBlockParams ? [] : undefined;\n if (templateSpec.useDepths) {\n if (options.depths) {\n depths =\n context != options.depths[0]\n ? [context].concat(options.depths)\n : options.depths;\n } else {\n depths = [context];\n }\n }\n\n function main(context /*, options*/) {\n return (\n '' +\n templateSpec.main(\n container,\n context,\n container.helpers,\n container.partials,\n data,\n blockParams,\n depths\n )\n );\n }\n\n main = executeDecorators(\n templateSpec.main,\n main,\n container,\n options.depths || [],\n data,\n blockParams\n );\n return main(context, options);\n }\n\n ret.isTop = true;\n\n ret._setup = function(options) {\n if (!options.partial) {\n let mergedHelpers = {};\n addHelpers(mergedHelpers, env.helpers, container);\n addHelpers(mergedHelpers, options.helpers, container);\n container.helpers = mergedHelpers;\n\n if (templateSpec.usePartial) {\n // Use mergeIfNeeded here to prevent compiling global partials multiple times\n container.partials = container.mergeIfNeeded(\n options.partials,\n env.partials\n );\n }\n if (templateSpec.usePartial || templateSpec.useDecorators) {\n container.decorators = Utils.extend(\n {},\n env.decorators,\n options.decorators\n );\n }\n\n container.hooks = {};\n container.protoAccessControl = createProtoAccessControl(options);\n\n let keepHelperInHelpers =\n options.allowCallsToHelperMissing ||\n templateWasPrecompiledWithCompilerV7;\n moveHelperToHooks(container, 'helperMissing', keepHelperInHelpers);\n moveHelperToHooks(container, 'blockHelperMissing', keepHelperInHelpers);\n } else {\n container.protoAccessControl = options.protoAccessControl; // internal option\n container.helpers = options.helpers;\n container.partials = options.partials;\n container.decorators = options.decorators;\n container.hooks = options.hooks;\n }\n };\n\n ret._child = function(i, data, blockParams, depths) {\n if (templateSpec.useBlockParams && !blockParams) {\n throw new Exception('must pass block params');\n }\n if (templateSpec.useDepths && !depths) {\n throw new Exception('must pass parent depths');\n }\n\n return wrapProgram(\n container,\n i,\n templateSpec[i],\n data,\n 0,\n blockParams,\n depths\n );\n };\n return ret;\n}\n\nexport function wrapProgram(\n container,\n i,\n fn,\n data,\n declaredBlockParams,\n blockParams,\n depths\n) {\n function prog(context, options = {}) {\n let currentDepths = depths;\n if (\n depths &&\n context != depths[0] &&\n !(context === container.nullContext && depths[0] === null)\n ) {\n currentDepths = [context].concat(depths);\n }\n\n return fn(\n container,\n context,\n container.helpers,\n container.partials,\n options.data || data,\n blockParams && [options.blockParams].concat(blockParams),\n currentDepths\n );\n }\n\n prog = executeDecorators(fn, prog, container, depths, data, blockParams);\n\n prog.program = i;\n prog.depth = depths ? depths.length : 0;\n prog.blockParams = declaredBlockParams || 0;\n return prog;\n}\n\n/**\n * This is currently part of the official API, therefore implementation details should not be changed.\n */\nexport function resolvePartial(partial, context, options) {\n if (!partial) {\n if (options.name === '@partial-block') {\n partial = lookupOwnProperty(options.data, 'partial-block');\n } else {\n partial = lookupOwnProperty(options.partials, options.name);\n }\n } else if (!partial.call && !options.name) {\n // This is a dynamic partial that returned a string\n options.name = partial;\n partial = lookupOwnProperty(options.partials, partial);\n }\n return partial;\n}\n\nexport function invokePartial(partial, context, options) {\n // Use the current closure context to save the partial-block if this partial\n const currentPartialBlock = lookupOwnProperty(options.data, 'partial-block');\n options.partial = true;\n if (options.ids) {\n options.data.contextPath = options.ids[0] || options.data.contextPath;\n }\n\n let partialBlock;\n if (options.fn && options.fn !== noop) {\n options.data = createFrame(options.data);\n // Wrapper function to get access to currentPartialBlock from the closure\n let fn = options.fn;\n partialBlock = options.data['partial-block'] = function partialBlockWrapper(\n context,\n options = {}\n ) {\n // Restore the partial-block from the closure for the execution of the block\n // i.e. the part inside the block of the partial call.\n options.data = createFrame(options.data);\n options.data['partial-block'] = currentPartialBlock;\n return fn(context, options);\n };\n if (fn.partials) {\n options.partials = Utils.extend({}, options.partials, fn.partials);\n }\n }\n\n if (partial === undefined && partialBlock) {\n partial = partialBlock;\n }\n\n if (partial === undefined) {\n throw new Exception('The partial ' + options.name + ' could not be found');\n } else if (partial instanceof Function) {\n return partial(context, options);\n }\n}\n\nexport function noop() {\n return '';\n}\n\nfunction lookupOwnProperty(obj, name) {\n if (obj && Object.prototype.hasOwnProperty.call(obj, name)) {\n return obj[name];\n }\n}\n\nfunction initData(context, data) {\n if (!data || !('root' in data)) {\n data = data ? createFrame(data) : {};\n data.root = context;\n }\n return data;\n}\n\nfunction executeDecorators(fn, prog, container, depths, data, blockParams) {\n if (fn.decorator) {\n let props = {};\n prog = fn.decorator(\n prog,\n props,\n container,\n depths && depths[0],\n data,\n blockParams,\n depths\n );\n Utils.extend(prog, props);\n }\n return prog;\n}\n\nfunction addHelpers(mergedHelpers, helpers, container) {\n if (!helpers) return;\n Object.keys(helpers).forEach(helperName => {\n let helper = helpers[helperName];\n mergedHelpers[helperName] = passLookupPropertyOption(helper, container);\n });\n}\n\nfunction passLookupPropertyOption(helper, container) {\n const lookupProperty = container.lookupProperty;\n return wrapHelper(helper, options => {\n options.lookupProperty = lookupProperty;\n return options;\n });\n}\n", "/* global globalThis */\nexport default function(Handlebars) {\n /* istanbul ignore next */\n // https://mathiasbynens.be/notes/globalthis\n (function() {\n if (typeof globalThis === 'object') return;\n Object.prototype.__defineGetter__('__magic__', function() {\n return this;\n });\n __magic__.globalThis = __magic__; // eslint-disable-line no-undef\n delete Object.prototype.__magic__;\n })();\n\n const $Handlebars = globalThis.Handlebars;\n\n /* istanbul ignore next */\n Handlebars.noConflict = function() {\n if (globalThis.Handlebars === Handlebars) {\n globalThis.Handlebars = $Handlebars;\n }\n return Handlebars;\n };\n}\n", "import * as base from './handlebars/base';\n\n// Each of these augment the Handlebars object. No need to setup here.\n// (This is done to easily share code between commonjs and browse envs)\nimport SafeString from './handlebars/safe-string';\nimport Exception from './handlebars/exception';\nimport * as Utils from './handlebars/utils';\nimport * as runtime from './handlebars/runtime';\n\nimport noConflict from './handlebars/no-conflict';\n\n// For compatibility and usage outside of module systems, make the Handlebars object a namespace\nfunction create() {\n let hb = new base.HandlebarsEnvironment();\n\n Utils.extend(hb, base);\n hb.SafeString = SafeString;\n hb.Exception = Exception;\n hb.Utils = Utils;\n hb.escapeExpression = Utils.escapeExpression;\n\n hb.VM = runtime;\n hb.template = function(spec) {\n return runtime.template(spec, hb);\n };\n\n return hb;\n}\n\nlet inst = create();\ninst.create = create;\n\nnoConflict(inst);\n\ninst['default'] = inst;\n\nexport default inst;\n", "let AST = {\n // Public API used to evaluate derived attributes regarding AST nodes\n helpers: {\n // a mustache is definitely a helper if:\n // * it is an eligible helper, and\n // * it has at least one parameter or hash segment\n helperExpression: function(node) {\n return (\n node.type === 'SubExpression' ||\n ((node.type === 'MustacheStatement' ||\n node.type === 'BlockStatement') &&\n !!((node.params && node.params.length) || node.hash))\n );\n },\n\n scopedId: function(path) {\n return /^\\.|this\\b/.test(path.original);\n },\n\n // an ID is simple if it only has one part, and that part is not\n // `..` or `this`.\n simpleId: function(path) {\n return (\n path.parts.length === 1 && !AST.helpers.scopedId(path) && !path.depth\n );\n }\n }\n};\n\n// Must be exported as an object rather than the root of the module as the jison lexer\n// must modify the object to operate properly.\nexport default AST;\n", "// File ignored in coverage tests via setting in .istanbul.yml\n/* Jison generated parser */\nvar handlebars = (function(){\nvar parser = {trace: function trace () { },\nyy: {},\nsymbols_: {\"error\":2,\"root\":3,\"program\":4,\"EOF\":5,\"program_repetition0\":6,\"statement\":7,\"mustache\":8,\"block\":9,\"rawBlock\":10,\"partial\":11,\"partialBlock\":12,\"content\":13,\"COMMENT\":14,\"CONTENT\":15,\"openRawBlock\":16,\"rawBlock_repetition0\":17,\"END_RAW_BLOCK\":18,\"OPEN_RAW_BLOCK\":19,\"helperName\":20,\"openRawBlock_repetition0\":21,\"openRawBlock_option0\":22,\"CLOSE_RAW_BLOCK\":23,\"openBlock\":24,\"block_option0\":25,\"closeBlock\":26,\"openInverse\":27,\"block_option1\":28,\"OPEN_BLOCK\":29,\"openBlock_repetition0\":30,\"openBlock_option0\":31,\"openBlock_option1\":32,\"CLOSE\":33,\"OPEN_INVERSE\":34,\"openInverse_repetition0\":35,\"openInverse_option0\":36,\"openInverse_option1\":37,\"openInverseChain\":38,\"OPEN_INVERSE_CHAIN\":39,\"openInverseChain_repetition0\":40,\"openInverseChain_option0\":41,\"openInverseChain_option1\":42,\"inverseAndProgram\":43,\"INVERSE\":44,\"inverseChain\":45,\"inverseChain_option0\":46,\"OPEN_ENDBLOCK\":47,\"OPEN\":48,\"mustache_repetition0\":49,\"mustache_option0\":50,\"OPEN_UNESCAPED\":51,\"mustache_repetition1\":52,\"mustache_option1\":53,\"CLOSE_UNESCAPED\":54,\"OPEN_PARTIAL\":55,\"partialName\":56,\"partial_repetition0\":57,\"partial_option0\":58,\"openPartialBlock\":59,\"OPEN_PARTIAL_BLOCK\":60,\"openPartialBlock_repetition0\":61,\"openPartialBlock_option0\":62,\"param\":63,\"sexpr\":64,\"OPEN_SEXPR\":65,\"sexpr_repetition0\":66,\"sexpr_option0\":67,\"CLOSE_SEXPR\":68,\"hash\":69,\"hash_repetition_plus0\":70,\"hashSegment\":71,\"ID\":72,\"EQUALS\":73,\"blockParams\":74,\"OPEN_BLOCK_PARAMS\":75,\"blockParams_repetition_plus0\":76,\"CLOSE_BLOCK_PARAMS\":77,\"path\":78,\"dataName\":79,\"STRING\":80,\"NUMBER\":81,\"BOOLEAN\":82,\"UNDEFINED\":83,\"NULL\":84,\"DATA\":85,\"pathSegments\":86,\"SEP\":87,\"$accept\":0,\"$end\":1},\nterminals_: {2:\"error\",5:\"EOF\",14:\"COMMENT\",15:\"CONTENT\",18:\"END_RAW_BLOCK\",19:\"OPEN_RAW_BLOCK\",23:\"CLOSE_RAW_BLOCK\",29:\"OPEN_BLOCK\",33:\"CLOSE\",34:\"OPEN_INVERSE\",39:\"OPEN_INVERSE_CHAIN\",44:\"INVERSE\",47:\"OPEN_ENDBLOCK\",48:\"OPEN\",51:\"OPEN_UNESCAPED\",54:\"CLOSE_UNESCAPED\",55:\"OPEN_PARTIAL\",60:\"OPEN_PARTIAL_BLOCK\",65:\"OPEN_SEXPR\",68:\"CLOSE_SEXPR\",72:\"ID\",73:\"EQUALS\",75:\"OPEN_BLOCK_PARAMS\",77:\"CLOSE_BLOCK_PARAMS\",80:\"STRING\",81:\"NUMBER\",82:\"BOOLEAN\",83:\"UNDEFINED\",84:\"NULL\",85:\"DATA\",87:\"SEP\"},\nproductions_: [0,[3,2],[4,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[13,1],[10,3],[16,5],[9,4],[9,4],[24,6],[27,6],[38,6],[43,2],[45,3],[45,1],[26,3],[8,5],[8,5],[11,5],[12,3],[59,5],[63,1],[63,1],[64,5],[69,1],[71,3],[74,3],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[20,1],[56,1],[56,1],[79,2],[78,1],[86,3],[86,1],[6,0],[6,2],[17,0],[17,2],[21,0],[21,2],[22,0],[22,1],[25,0],[25,1],[28,0],[28,1],[30,0],[30,2],[31,0],[31,1],[32,0],[32,1],[35,0],[35,2],[36,0],[36,1],[37,0],[37,1],[40,0],[40,2],[41,0],[41,1],[42,0],[42,1],[46,0],[46,1],[49,0],[49,2],[50,0],[50,1],[52,0],[52,2],[53,0],[53,1],[57,0],[57,2],[58,0],[58,1],[61,0],[61,2],[62,0],[62,1],[66,0],[66,2],[67,0],[67,1],[70,1],[70,2],[76,1],[76,2]],\nperformAction: function anonymous(yytext,yyleng,yylineno,yy,yystate,$$,_$\n) {\n\nvar $0 = $$.length - 1;\nswitch (yystate) {\ncase 1: return $$[$0-1]; \nbreak;\ncase 2:this.$ = yy.prepareProgram($$[$0]);\nbreak;\ncase 3:this.$ = $$[$0];\nbreak;\ncase 4:this.$ = $$[$0];\nbreak;\ncase 5:this.$ = $$[$0];\nbreak;\ncase 6:this.$ = $$[$0];\nbreak;\ncase 7:this.$ = $$[$0];\nbreak;\ncase 8:this.$ = $$[$0];\nbreak;\ncase 9:\n this.$ = {\n type: 'CommentStatement',\n value: yy.stripComment($$[$0]),\n strip: yy.stripFlags($$[$0], $$[$0]),\n loc: yy.locInfo(this._$)\n };\n \nbreak;\ncase 10:\n this.$ = {\n type: 'ContentStatement',\n original: $$[$0],\n value: $$[$0],\n loc: yy.locInfo(this._$)\n };\n \nbreak;\ncase 11:this.$ = yy.prepareRawBlock($$[$0-2], $$[$0-1], $$[$0], this._$);\nbreak;\ncase 12:this.$ = { path: $$[$0-3], params: $$[$0-2], hash: $$[$0-1] };\nbreak;\ncase 13:this.$ = yy.prepareBlock($$[$0-3], $$[$0-2], $$[$0-1], $$[$0], false, this._$);\nbreak;\ncase 14:this.$ = yy.prepareBlock($$[$0-3], $$[$0-2], $$[$0-1], $$[$0], true, this._$);\nbreak;\ncase 15:this.$ = { open: $$[$0-5], path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };\nbreak;\ncase 16:this.$ = { path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };\nbreak;\ncase 17:this.$ = { path: $$[$0-4], params: $$[$0-3], hash: $$[$0-2], blockParams: $$[$0-1], strip: yy.stripFlags($$[$0-5], $$[$0]) };\nbreak;\ncase 18:this.$ = { strip: yy.stripFlags($$[$0-1], $$[$0-1]), program: $$[$0] };\nbreak;\ncase 19:\n var inverse = yy.prepareBlock($$[$0-2], $$[$0-1], $$[$0], $$[$0], false, this._$),\n program = yy.prepareProgram([inverse], $$[$0-1].loc);\n program.chained = true;\n\n this.$ = { strip: $$[$0-2].strip, program: program, chain: true };\n \nbreak;\ncase 20:this.$ = $$[$0];\nbreak;\ncase 21:this.$ = {path: $$[$0-1], strip: yy.stripFlags($$[$0-2], $$[$0])};\nbreak;\ncase 22:this.$ = yy.prepareMustache($$[$0-3], $$[$0-2], $$[$0-1], $$[$0-4], yy.stripFlags($$[$0-4], $$[$0]), this._$);\nbreak;\ncase 23:this.$ = yy.prepareMustache($$[$0-3], $$[$0-2], $$[$0-1], $$[$0-4], yy.stripFlags($$[$0-4], $$[$0]), this._$);\nbreak;\ncase 24:\n this.$ = {\n type: 'PartialStatement',\n name: $$[$0-3],\n params: $$[$0-2],\n hash: $$[$0-1],\n indent: '',\n strip: yy.stripFlags($$[$0-4], $$[$0]),\n loc: yy.locInfo(this._$)\n };\n \nbreak;\ncase 25:this.$ = yy.preparePartialBlock($$[$0-2], $$[$0-1], $$[$0], this._$);\nbreak;\ncase 26:this.$ = { path: $$[$0-3], params: $$[$0-2], hash: $$[$0-1], strip: yy.stripFlags($$[$0-4], $$[$0]) };\nbreak;\ncase 27:this.$ = $$[$0];\nbreak;\ncase 28:this.$ = $$[$0];\nbreak;\ncase 29:\n this.$ = {\n type: 'SubExpression',\n path: $$[$0-3],\n params: $$[$0-2],\n hash: $$[$0-1],\n loc: yy.locInfo(this._$)\n };\n \nbreak;\ncase 30:this.$ = {type: 'Hash', pairs: $$[$0], loc: yy.locInfo(this._$)};\nbreak;\ncase 31:this.$ = {type: 'HashPair', key: yy.id($$[$0-2]), value: $$[$0], loc: yy.locInfo(this._$)};\nbreak;\ncase 32:this.$ = yy.id($$[$0-1]);\nbreak;\ncase 33:this.$ = $$[$0];\nbreak;\ncase 34:this.$ = $$[$0];\nbreak;\ncase 35:this.$ = {type: 'StringLiteral', value: $$[$0], original: $$[$0], loc: yy.locInfo(this._$)};\nbreak;\ncase 36:this.$ = {type: 'NumberLiteral', value: Number($$[$0]), original: Number($$[$0]), loc: yy.locInfo(this._$)};\nbreak;\ncase 37:this.$ = {type: 'BooleanLiteral', value: $$[$0] === 'true', original: $$[$0] === 'true', loc: yy.locInfo(this._$)};\nbreak;\ncase 38:this.$ = {type: 'UndefinedLiteral', original: undefined, value: undefined, loc: yy.locInfo(this._$)};\nbreak;\ncase 39:this.$ = {type: 'NullLiteral', original: null, value: null, loc: yy.locInfo(this._$)};\nbreak;\ncase 40:this.$ = $$[$0];\nbreak;\ncase 41:this.$ = $$[$0];\nbreak;\ncase 42:this.$ = yy.preparePath(true, $$[$0], this._$);\nbreak;\ncase 43:this.$ = yy.preparePath(false, $$[$0], this._$);\nbreak;\ncase 44: $$[$0-2].push({part: yy.id($$[$0]), original: $$[$0], separator: $$[$0-1]}); this.$ = $$[$0-2]; \nbreak;\ncase 45:this.$ = [{part: yy.id($$[$0]), original: $$[$0]}];\nbreak;\ncase 46:this.$ = [];\nbreak;\ncase 47:$$[$0-1].push($$[$0]);\nbreak;\ncase 48:this.$ = [];\nbreak;\ncase 49:$$[$0-1].push($$[$0]);\nbreak;\ncase 50:this.$ = [];\nbreak;\ncase 51:$$[$0-1].push($$[$0]);\nbreak;\ncase 58:this.$ = [];\nbreak;\ncase 59:$$[$0-1].push($$[$0]);\nbreak;\ncase 64:this.$ = [];\nbreak;\ncase 65:$$[$0-1].push($$[$0]);\nbreak;\ncase 70:this.$ = [];\nbreak;\ncase 71:$$[$0-1].push($$[$0]);\nbreak;\ncase 78:this.$ = [];\nbreak;\ncase 79:$$[$0-1].push($$[$0]);\nbreak;\ncase 82:this.$ = [];\nbreak;\ncase 83:$$[$0-1].push($$[$0]);\nbreak;\ncase 86:this.$ = [];\nbreak;\ncase 87:$$[$0-1].push($$[$0]);\nbreak;\ncase 90:this.$ = [];\nbreak;\ncase 91:$$[$0-1].push($$[$0]);\nbreak;\ncase 94:this.$ = [];\nbreak;\ncase 95:$$[$0-1].push($$[$0]);\nbreak;\ncase 98:this.$ = [$$[$0]];\nbreak;\ncase 99:$$[$0-1].push($$[$0]);\nbreak;\ncase 100:this.$ = [$$[$0]];\nbreak;\ncase 101:$$[$0-1].push($$[$0]);\nbreak;\n}\n},\ntable: [{3:1,4:2,5:[2,46],6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{1:[3]},{5:[1,4]},{5:[2,2],7:5,8:6,9:7,10:8,11:9,12:10,13:11,14:[1,12],15:[1,20],16:17,19:[1,23],24:15,27:16,29:[1,21],34:[1,22],39:[2,2],44:[2,2],47:[2,2],48:[1,13],51:[1,14],55:[1,18],59:19,60:[1,24]},{1:[2,1]},{5:[2,47],14:[2,47],15:[2,47],19:[2,47],29:[2,47],34:[2,47],39:[2,47],44:[2,47],47:[2,47],48:[2,47],51:[2,47],55:[2,47],60:[2,47]},{5:[2,3],14:[2,3],15:[2,3],19:[2,3],29:[2,3],34:[2,3],39:[2,3],44:[2,3],47:[2,3],48:[2,3],51:[2,3],55:[2,3],60:[2,3]},{5:[2,4],14:[2,4],15:[2,4],19:[2,4],29:[2,4],34:[2,4],39:[2,4],44:[2,4],47:[2,4],48:[2,4],51:[2,4],55:[2,4],60:[2,4]},{5:[2,5],14:[2,5],15:[2,5],19:[2,5],29:[2,5],34:[2,5],39:[2,5],44:[2,5],47:[2,5],48:[2,5],51:[2,5],55:[2,5],60:[2,5]},{5:[2,6],14:[2,6],15:[2,6],19:[2,6],29:[2,6],34:[2,6],39:[2,6],44:[2,6],47:[2,6],48:[2,6],51:[2,6],55:[2,6],60:[2,6]},{5:[2,7],14:[2,7],15:[2,7],19:[2,7],29:[2,7],34:[2,7],39:[2,7],44:[2,7],47:[2,7],48:[2,7],51:[2,7],55:[2,7],60:[2,7]},{5:[2,8],14:[2,8],15:[2,8],19:[2,8],29:[2,8],34:[2,8],39:[2,8],44:[2,8],47:[2,8],48:[2,8],51:[2,8],55:[2,8],60:[2,8]},{5:[2,9],14:[2,9],15:[2,9],19:[2,9],29:[2,9],34:[2,9],39:[2,9],44:[2,9],47:[2,9],48:[2,9],51:[2,9],55:[2,9],60:[2,9]},{20:25,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:36,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:37,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{4:38,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{15:[2,48],17:39,18:[2,48]},{20:41,56:40,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:44,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{5:[2,10],14:[2,10],15:[2,10],18:[2,10],19:[2,10],29:[2,10],34:[2,10],39:[2,10],44:[2,10],47:[2,10],48:[2,10],51:[2,10],55:[2,10],60:[2,10]},{20:45,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:46,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:47,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:41,56:48,64:42,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[2,78],49:49,65:[2,78],72:[2,78],80:[2,78],81:[2,78],82:[2,78],83:[2,78],84:[2,78],85:[2,78]},{23:[2,33],33:[2,33],54:[2,33],65:[2,33],68:[2,33],72:[2,33],75:[2,33],80:[2,33],81:[2,33],82:[2,33],83:[2,33],84:[2,33],85:[2,33]},{23:[2,34],33:[2,34],54:[2,34],65:[2,34],68:[2,34],72:[2,34],75:[2,34],80:[2,34],81:[2,34],82:[2,34],83:[2,34],84:[2,34],85:[2,34]},{23:[2,35],33:[2,35],54:[2,35],65:[2,35],68:[2,35],72:[2,35],75:[2,35],80:[2,35],81:[2,35],82:[2,35],83:[2,35],84:[2,35],85:[2,35]},{23:[2,36],33:[2,36],54:[2,36],65:[2,36],68:[2,36],72:[2,36],75:[2,36],80:[2,36],81:[2,36],82:[2,36],83:[2,36],84:[2,36],85:[2,36]},{23:[2,37],33:[2,37],54:[2,37],65:[2,37],68:[2,37],72:[2,37],75:[2,37],80:[2,37],81:[2,37],82:[2,37],83:[2,37],84:[2,37],85:[2,37]},{23:[2,38],33:[2,38],54:[2,38],65:[2,38],68:[2,38],72:[2,38],75:[2,38],80:[2,38],81:[2,38],82:[2,38],83:[2,38],84:[2,38],85:[2,38]},{23:[2,39],33:[2,39],54:[2,39],65:[2,39],68:[2,39],72:[2,39],75:[2,39],80:[2,39],81:[2,39],82:[2,39],83:[2,39],84:[2,39],85:[2,39]},{23:[2,43],33:[2,43],54:[2,43],65:[2,43],68:[2,43],72:[2,43],75:[2,43],80:[2,43],81:[2,43],82:[2,43],83:[2,43],84:[2,43],85:[2,43],87:[1,50]},{72:[1,35],86:51},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{52:52,54:[2,82],65:[2,82],72:[2,82],80:[2,82],81:[2,82],82:[2,82],83:[2,82],84:[2,82],85:[2,82]},{25:53,38:55,39:[1,57],43:56,44:[1,58],45:54,47:[2,54]},{28:59,43:60,44:[1,58],47:[2,56]},{13:62,15:[1,20],18:[1,61]},{33:[2,86],57:63,65:[2,86],72:[2,86],80:[2,86],81:[2,86],82:[2,86],83:[2,86],84:[2,86],85:[2,86]},{33:[2,40],65:[2,40],72:[2,40],80:[2,40],81:[2,40],82:[2,40],83:[2,40],84:[2,40],85:[2,40]},{33:[2,41],65:[2,41],72:[2,41],80:[2,41],81:[2,41],82:[2,41],83:[2,41],84:[2,41],85:[2,41]},{20:64,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:65,47:[1,66]},{30:67,33:[2,58],65:[2,58],72:[2,58],75:[2,58],80:[2,58],81:[2,58],82:[2,58],83:[2,58],84:[2,58],85:[2,58]},{33:[2,64],35:68,65:[2,64],72:[2,64],75:[2,64],80:[2,64],81:[2,64],82:[2,64],83:[2,64],84:[2,64],85:[2,64]},{21:69,23:[2,50],65:[2,50],72:[2,50],80:[2,50],81:[2,50],82:[2,50],83:[2,50],84:[2,50],85:[2,50]},{33:[2,90],61:70,65:[2,90],72:[2,90],80:[2,90],81:[2,90],82:[2,90],83:[2,90],84:[2,90],85:[2,90]},{20:74,33:[2,80],50:71,63:72,64:75,65:[1,43],69:73,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{72:[1,79]},{23:[2,42],33:[2,42],54:[2,42],65:[2,42],68:[2,42],72:[2,42],75:[2,42],80:[2,42],81:[2,42],82:[2,42],83:[2,42],84:[2,42],85:[2,42],87:[1,50]},{20:74,53:80,54:[2,84],63:81,64:75,65:[1,43],69:82,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{26:83,47:[1,66]},{47:[2,55]},{4:84,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],39:[2,46],44:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{47:[2,20]},{20:85,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{4:86,6:3,14:[2,46],15:[2,46],19:[2,46],29:[2,46],34:[2,46],47:[2,46],48:[2,46],51:[2,46],55:[2,46],60:[2,46]},{26:87,47:[1,66]},{47:[2,57]},{5:[2,11],14:[2,11],15:[2,11],19:[2,11],29:[2,11],34:[2,11],39:[2,11],44:[2,11],47:[2,11],48:[2,11],51:[2,11],55:[2,11],60:[2,11]},{15:[2,49],18:[2,49]},{20:74,33:[2,88],58:88,63:89,64:75,65:[1,43],69:90,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{65:[2,94],66:91,68:[2,94],72:[2,94],80:[2,94],81:[2,94],82:[2,94],83:[2,94],84:[2,94],85:[2,94]},{5:[2,25],14:[2,25],15:[2,25],19:[2,25],29:[2,25],34:[2,25],39:[2,25],44:[2,25],47:[2,25],48:[2,25],51:[2,25],55:[2,25],60:[2,25]},{20:92,72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,31:93,33:[2,60],63:94,64:75,65:[1,43],69:95,70:76,71:77,72:[1,78],75:[2,60],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,66],36:96,63:97,64:75,65:[1,43],69:98,70:76,71:77,72:[1,78],75:[2,66],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,22:99,23:[2,52],63:100,64:75,65:[1,43],69:101,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{20:74,33:[2,92],62:102,63:103,64:75,65:[1,43],69:104,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,105]},{33:[2,79],65:[2,79],72:[2,79],80:[2,79],81:[2,79],82:[2,79],83:[2,79],84:[2,79],85:[2,79]},{33:[2,81]},{23:[2,27],33:[2,27],54:[2,27],65:[2,27],68:[2,27],72:[2,27],75:[2,27],80:[2,27],81:[2,27],82:[2,27],83:[2,27],84:[2,27],85:[2,27]},{23:[2,28],33:[2,28],54:[2,28],65:[2,28],68:[2,28],72:[2,28],75:[2,28],80:[2,28],81:[2,28],82:[2,28],83:[2,28],84:[2,28],85:[2,28]},{23:[2,30],33:[2,30],54:[2,30],68:[2,30],71:106,72:[1,107],75:[2,30]},{23:[2,98],33:[2,98],54:[2,98],68:[2,98],72:[2,98],75:[2,98]},{23:[2,45],33:[2,45],54:[2,45],65:[2,45],68:[2,45],72:[2,45],73:[1,108],75:[2,45],80:[2,45],81:[2,45],82:[2,45],83:[2,45],84:[2,45],85:[2,45],87:[2,45]},{23:[2,44],33:[2,44],54:[2,44],65:[2,44],68:[2,44],72:[2,44],75:[2,44],80:[2,44],81:[2,44],82:[2,44],83:[2,44],84:[2,44],85:[2,44],87:[2,44]},{54:[1,109]},{54:[2,83],65:[2,83],72:[2,83],80:[2,83],81:[2,83],82:[2,83],83:[2,83],84:[2,83],85:[2,83]},{54:[2,85]},{5:[2,13],14:[2,13],15:[2,13],19:[2,13],29:[2,13],34:[2,13],39:[2,13],44:[2,13],47:[2,13],48:[2,13],51:[2,13],55:[2,13],60:[2,13]},{38:55,39:[1,57],43:56,44:[1,58],45:111,46:110,47:[2,76]},{33:[2,70],40:112,65:[2,70],72:[2,70],75:[2,70],80:[2,70],81:[2,70],82:[2,70],83:[2,70],84:[2,70],85:[2,70]},{47:[2,18]},{5:[2,14],14:[2,14],15:[2,14],19:[2,14],29:[2,14],34:[2,14],39:[2,14],44:[2,14],47:[2,14],48:[2,14],51:[2,14],55:[2,14],60:[2,14]},{33:[1,113]},{33:[2,87],65:[2,87],72:[2,87],80:[2,87],81:[2,87],82:[2,87],83:[2,87],84:[2,87],85:[2,87]},{33:[2,89]},{20:74,63:115,64:75,65:[1,43],67:114,68:[2,96],69:116,70:76,71:77,72:[1,78],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{33:[1,117]},{32:118,33:[2,62],74:119,75:[1,120]},{33:[2,59],65:[2,59],72:[2,59],75:[2,59],80:[2,59],81:[2,59],82:[2,59],83:[2,59],84:[2,59],85:[2,59]},{33:[2,61],75:[2,61]},{33:[2,68],37:121,74:122,75:[1,120]},{33:[2,65],65:[2,65],72:[2,65],75:[2,65],80:[2,65],81:[2,65],82:[2,65],83:[2,65],84:[2,65],85:[2,65]},{33:[2,67],75:[2,67]},{23:[1,123]},{23:[2,51],65:[2,51],72:[2,51],80:[2,51],81:[2,51],82:[2,51],83:[2,51],84:[2,51],85:[2,51]},{23:[2,53]},{33:[1,124]},{33:[2,91],65:[2,91],72:[2,91],80:[2,91],81:[2,91],82:[2,91],83:[2,91],84:[2,91],85:[2,91]},{33:[2,93]},{5:[2,22],14:[2,22],15:[2,22],19:[2,22],29:[2,22],34:[2,22],39:[2,22],44:[2,22],47:[2,22],48:[2,22],51:[2,22],55:[2,22],60:[2,22]},{23:[2,99],33:[2,99],54:[2,99],68:[2,99],72:[2,99],75:[2,99]},{73:[1,108]},{20:74,63:125,64:75,65:[1,43],72:[1,35],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,23],14:[2,23],15:[2,23],19:[2,23],29:[2,23],34:[2,23],39:[2,23],44:[2,23],47:[2,23],48:[2,23],51:[2,23],55:[2,23],60:[2,23]},{47:[2,19]},{47:[2,77]},{20:74,33:[2,72],41:126,63:127,64:75,65:[1,43],69:128,70:76,71:77,72:[1,78],75:[2,72],78:26,79:27,80:[1,28],81:[1,29],82:[1,30],83:[1,31],84:[1,32],85:[1,34],86:33},{5:[2,24],14:[2,24],15:[2,24],19:[2,24],29:[2,24],34:[2,24],39:[2,24],44:[2,24],47:[2,24],48:[2,24],51:[2,24],55:[2,24],60:[2,24]},{68:[1,129]},{65:[2,95],68:[2,95],72:[2,95],80:[2,95],81:[2,95],82:[2,95],83:[2,95],84:[2,95],85:[2,95]},{68:[2,97]},{5:[2,21],14:[2,21],15:[2,21],19:[2,21],29:[2,21],34:[2,21],39:[2,21],44:[2,21],47:[2,21],48:[2,21],51:[2,21],55:[2,21],60:[2,21]},{33:[1,130]},{33:[2,63]},{72:[1,132],76:131},{33:[1,133]},{33:[2,69]},{15:[2,12],18:[2,12]},{14:[2,26],15:[2,26],19:[2,26],29:[2,26],34:[2,26],47:[2,26],48:[2,26],51:[2,26],55:[2,26],60:[2,26]},{23:[2,31],33:[2,31],54:[2,31],68:[2,31],72:[2,31],75:[2,31]},{33:[2,74],42:134,74:135,75:[1,120]},{33:[2,71],65:[2,71],72:[2,71],75:[2,71],80:[2,71],81:[2,71],82:[2,71],83:[2,71],84:[2,71],85:[2,71]},{33:[2,73],75:[2,73]},{23:[2,29],33:[2,29],54:[2,29],65:[2,29],68:[2,29],72:[2,29],75:[2,29],80:[2,29],81:[2,29],82:[2,29],83:[2,29],84:[2,29],85:[2,29]},{14:[2,15],15:[2,15],19:[2,15],29:[2,15],34:[2,15],39:[2,15],44:[2,15],47:[2,15],48:[2,15],51:[2,15],55:[2,15],60:[2,15]},{72:[1,137],77:[1,136]},{72:[2,100],77:[2,100]},{14:[2,16],15:[2,16],19:[2,16],29:[2,16],34:[2,16],44:[2,16],47:[2,16],48:[2,16],51:[2,16],55:[2,16],60:[2,16]},{33:[1,138]},{33:[2,75]},{33:[2,32]},{72:[2,101],77:[2,101]},{14:[2,17],15:[2,17],19:[2,17],29:[2,17],34:[2,17],39:[2,17],44:[2,17],47:[2,17],48:[2,17],51:[2,17],55:[2,17],60:[2,17]}],\ndefaultActions: {4:[2,1],54:[2,55],56:[2,20],60:[2,57],73:[2,81],82:[2,85],86:[2,18],90:[2,89],101:[2,53],104:[2,93],110:[2,19],111:[2,77],116:[2,97],119:[2,63],122:[2,69],135:[2,75],136:[2,32]},\nparseError: function parseError (str, hash) {\n throw new Error(str);\n},\nparse: function parse(input) {\n var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = \"\", yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;\n this.lexer.setInput(input);\n this.lexer.yy = this.yy;\n this.yy.lexer = this.lexer;\n this.yy.parser = this;\n if (typeof this.lexer.yylloc == \"undefined\")\n this.lexer.yylloc = {};\n var yyloc = this.lexer.yylloc;\n lstack.push(yyloc);\n var ranges = this.lexer.options && this.lexer.options.ranges;\n if (typeof this.yy.parseError === \"function\")\n this.parseError = this.yy.parseError;\n function popStack(n) {\n stack.length = stack.length - 2 * n;\n vstack.length = vstack.length - n;\n lstack.length = lstack.length - n;\n }\n function lex() {\n var token;\n token = self.lexer.lex() || 1;\n if (typeof token !== \"number\") {\n token = self.symbols_[token] || token;\n }\n return token;\n }\n var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;\n while (true) {\n state = stack[stack.length - 1];\n if (this.defaultActions[state]) {\n action = this.defaultActions[state];\n } else {\n if (symbol === null || typeof symbol == \"undefined\") {\n symbol = lex();\n }\n action = table[state] && table[state][symbol];\n }\n if (typeof action === \"undefined\" || !action.length || !action[0]) {\n var errStr = \"\";\n if (!recovering) {\n expected = [];\n for (p in table[state])\n if (this.terminals_[p] && p > 2) {\n expected.push(\"'\" + this.terminals_[p] + \"'\");\n }\n if (this.lexer.showPosition) {\n errStr = \"Parse error on line \" + (yylineno + 1) + \":\\n\" + this.lexer.showPosition() + \"\\nExpecting \" + expected.join(\", \") + \", got '\" + (this.terminals_[symbol] || symbol) + \"'\";\n } else {\n errStr = \"Parse error on line \" + (yylineno + 1) + \": Unexpected \" + (symbol == 1?\"end of input\":\"'\" + (this.terminals_[symbol] || symbol) + \"'\");\n }\n this.parseError(errStr, {text: this.lexer.match, token: this.terminals_[symbol] || symbol, line: this.lexer.yylineno, loc: yyloc, expected: expected});\n }\n }\n if (action[0] instanceof Array && action.length > 1) {\n throw new Error(\"Parse Error: multiple actions possible at state: \" + state + \", token: \" + symbol);\n }\n switch (action[0]) {\n case 1:\n stack.push(symbol);\n vstack.push(this.lexer.yytext);\n lstack.push(this.lexer.yylloc);\n stack.push(action[1]);\n symbol = null;\n if (!preErrorSymbol) {\n yyleng = this.lexer.yyleng;\n yytext = this.lexer.yytext;\n yylineno = this.lexer.yylineno;\n yyloc = this.lexer.yylloc;\n if (recovering > 0)\n recovering--;\n } else {\n symbol = preErrorSymbol;\n preErrorSymbol = null;\n }\n break;\n case 2:\n len = this.productions_[action[1]][1];\n yyval.$ = vstack[vstack.length - len];\n yyval._$ = {first_line: lstack[lstack.length - (len || 1)].first_line, last_line: lstack[lstack.length - 1].last_line, first_column: lstack[lstack.length - (len || 1)].first_column, last_column: lstack[lstack.length - 1].last_column};\n if (ranges) {\n yyval._$.range = [lstack[lstack.length - (len || 1)].range[0], lstack[lstack.length - 1].range[1]];\n }\n r = this.performAction.call(yyval, yytext, yyleng, yylineno, this.yy, action[1], vstack, lstack);\n if (typeof r !== \"undefined\") {\n return r;\n }\n if (len) {\n stack = stack.slice(0, -1 * len * 2);\n vstack = vstack.slice(0, -1 * len);\n lstack = lstack.slice(0, -1 * len);\n }\n stack.push(this.productions_[action[1]][0]);\n vstack.push(yyval.$);\n lstack.push(yyval._$);\n newState = table[stack[stack.length - 2]][stack[stack.length - 1]];\n stack.push(newState);\n break;\n case 3:\n return true;\n }\n }\n return true;\n}\n};\n/* Jison generated lexer */\nvar lexer = (function(){\nvar lexer = ({EOF:1,\nparseError:function parseError(str, hash) {\n if (this.yy.parser) {\n this.yy.parser.parseError(str, hash);\n } else {\n throw new Error(str);\n }\n },\nsetInput:function (input) {\n this._input = input;\n this._more = this._less = this.done = false;\n this.yylineno = this.yyleng = 0;\n this.yytext = this.matched = this.match = '';\n this.conditionStack = ['INITIAL'];\n this.yylloc = {first_line:1,first_column:0,last_line:1,last_column:0};\n if (this.options.ranges) this.yylloc.range = [0,0];\n this.offset = 0;\n return this;\n },\ninput:function () {\n var ch = this._input[0];\n this.yytext += ch;\n this.yyleng++;\n this.offset++;\n this.match += ch;\n this.matched += ch;\n var lines = ch.match(/(?:\\r\\n?|\\n).*/g);\n if (lines) {\n this.yylineno++;\n this.yylloc.last_line++;\n } else {\n this.yylloc.last_column++;\n }\n if (this.options.ranges) this.yylloc.range[1]++;\n\n this._input = this._input.slice(1);\n return ch;\n },\nunput:function (ch) {\n var len = ch.length;\n var lines = ch.split(/(?:\\r\\n?|\\n)/g);\n\n this._input = ch + this._input;\n this.yytext = this.yytext.substr(0, this.yytext.length-len-1);\n //this.yyleng -= len;\n this.offset -= len;\n var oldLines = this.match.split(/(?:\\r\\n?|\\n)/g);\n this.match = this.match.substr(0, this.match.length-1);\n this.matched = this.matched.substr(0, this.matched.length-1);\n\n if (lines.length-1) this.yylineno -= lines.length-1;\n var r = this.yylloc.range;\n\n this.yylloc = {first_line: this.yylloc.first_line,\n last_line: this.yylineno+1,\n first_column: this.yylloc.first_column,\n last_column: lines ?\n (lines.length === oldLines.length ? this.yylloc.first_column : 0) + oldLines[oldLines.length - lines.length].length - lines[0].length:\n this.yylloc.first_column - len\n };\n\n if (this.options.ranges) {\n this.yylloc.range = [r[0], r[0] + this.yyleng - len];\n }\n return this;\n },\nmore:function () {\n this._more = true;\n return this;\n },\nless:function (n) {\n this.unput(this.match.slice(n));\n },\npastInput:function () {\n var past = this.matched.substr(0, this.matched.length - this.match.length);\n return (past.length > 20 ? '...':'') + past.substr(-20).replace(/\\n/g, \"\");\n },\nupcomingInput:function () {\n var next = this.match;\n if (next.length < 20) {\n next += this._input.substr(0, 20-next.length);\n }\n return (next.substr(0,20)+(next.length > 20 ? '...':'')).replace(/\\n/g, \"\");\n },\nshowPosition:function () {\n var pre = this.pastInput();\n var c = new Array(pre.length + 1).join(\"-\");\n return pre + this.upcomingInput() + \"\\n\" + c+\"^\";\n },\nnext:function () {\n if (this.done) {\n return this.EOF;\n }\n if (!this._input) this.done = true;\n\n var token,\n match,\n tempMatch,\n index,\n col,\n lines;\n if (!this._more) {\n this.yytext = '';\n this.match = '';\n }\n var rules = this._currentRules();\n for (var i=0;i < rules.length; i++) {\n tempMatch = this._input.match(this.rules[rules[i]]);\n if (tempMatch && (!match || tempMatch[0].length > match[0].length)) {\n match = tempMatch;\n index = i;\n if (!this.options.flex) break;\n }\n }\n if (match) {\n lines = match[0].match(/(?:\\r\\n?|\\n).*/g);\n if (lines) this.yylineno += lines.length;\n this.yylloc = {first_line: this.yylloc.last_line,\n last_line: this.yylineno+1,\n first_column: this.yylloc.last_column,\n last_column: lines ? lines[lines.length-1].length-lines[lines.length-1].match(/\\r?\\n?/)[0].length : this.yylloc.last_column + match[0].length};\n this.yytext += match[0];\n this.match += match[0];\n this.matches = match;\n this.yyleng = this.yytext.length;\n if (this.options.ranges) {\n this.yylloc.range = [this.offset, this.offset += this.yyleng];\n }\n this._more = false;\n this._input = this._input.slice(match[0].length);\n this.matched += match[0];\n token = this.performAction.call(this, this.yy, this, rules[index],this.conditionStack[this.conditionStack.length-1]);\n if (this.done && this._input) this.done = false;\n if (token) return token;\n else return;\n }\n if (this._input === \"\") {\n return this.EOF;\n } else {\n return this.parseError('Lexical error on line '+(this.yylineno+1)+'. Unrecognized text.\\n'+this.showPosition(),\n {text: \"\", token: null, line: this.yylineno});\n }\n },\nlex:function lex () {\n var r = this.next();\n if (typeof r !== 'undefined') {\n return r;\n } else {\n return this.lex();\n }\n },\nbegin:function begin (condition) {\n this.conditionStack.push(condition);\n },\npopState:function popState () {\n return this.conditionStack.pop();\n },\n_currentRules:function _currentRules () {\n return this.conditions[this.conditionStack[this.conditionStack.length-1]].rules;\n },\ntopState:function () {\n return this.conditionStack[this.conditionStack.length-2];\n },\npushState:function begin (condition) {\n this.begin(condition);\n }});\nlexer.options = {};\nlexer.performAction = function anonymous(yy,yy_,$avoiding_name_collisions,YY_START\n) {\n\n\nfunction strip(start, end) {\n return yy_.yytext = yy_.yytext.substring(start, yy_.yyleng - end + start);\n}\n\n\nvar YYSTATE=YY_START\nswitch($avoiding_name_collisions) {\ncase 0:\n if(yy_.yytext.slice(-2) === \"\\\\\\\\\") {\n strip(0,1);\n this.begin(\"mu\");\n } else if(yy_.yytext.slice(-1) === \"\\\\\") {\n strip(0,1);\n this.begin(\"emu\");\n } else {\n this.begin(\"mu\");\n }\n if(yy_.yytext) return 15;\n \nbreak;\ncase 1:return 15;\nbreak;\ncase 2:\n this.popState();\n return 15;\n \nbreak;\ncase 3:this.begin('raw'); return 15;\nbreak;\ncase 4:\n this.popState();\n // Should be using `this.topState()` below, but it currently\n // returns the second top instead of the first top. Opened an\n // issue about it at https://github.com/zaach/jison/issues/291\n if (this.conditionStack[this.conditionStack.length-1] === 'raw') {\n return 15;\n } else {\n strip(5, 9);\n return 'END_RAW_BLOCK';\n }\n \nbreak;\ncase 5: return 15; \nbreak;\ncase 6:\n this.popState();\n return 14;\n\nbreak;\ncase 7:return 65;\nbreak;\ncase 8:return 68;\nbreak;\ncase 9: return 19; \nbreak;\ncase 10:\n this.popState();\n this.begin('raw');\n return 23;\n \nbreak;\ncase 11:return 55;\nbreak;\ncase 12:return 60;\nbreak;\ncase 13:return 29;\nbreak;\ncase 14:return 47;\nbreak;\ncase 15:this.popState(); return 44;\nbreak;\ncase 16:this.popState(); return 44;\nbreak;\ncase 17:return 34;\nbreak;\ncase 18:return 39;\nbreak;\ncase 19:return 51;\nbreak;\ncase 20:return 48;\nbreak;\ncase 21:\n this.unput(yy_.yytext);\n this.popState();\n this.begin('com');\n\nbreak;\ncase 22:\n this.popState();\n return 14;\n\nbreak;\ncase 23:return 48;\nbreak;\ncase 24:return 73;\nbreak;\ncase 25:return 72;\nbreak;\ncase 26:return 72;\nbreak;\ncase 27:return 87;\nbreak;\ncase 28:// ignore whitespace\nbreak;\ncase 29:this.popState(); return 54;\nbreak;\ncase 30:this.popState(); return 33;\nbreak;\ncase 31:yy_.yytext = strip(1,2).replace(/\\\\\"/g,'\"'); return 80;\nbreak;\ncase 32:yy_.yytext = strip(1,2).replace(/\\\\'/g,\"'\"); return 80;\nbreak;\ncase 33:return 85;\nbreak;\ncase 34:return 82;\nbreak;\ncase 35:return 82;\nbreak;\ncase 36:return 83;\nbreak;\ncase 37:return 84;\nbreak;\ncase 38:return 81;\nbreak;\ncase 39:return 75;\nbreak;\ncase 40:return 77;\nbreak;\ncase 41:return 72;\nbreak;\ncase 42:yy_.yytext = yy_.yytext.replace(/\\\\([\\\\\\]])/g,'$1'); return 72;\nbreak;\ncase 43:return 'INVALID';\nbreak;\ncase 44:return 5;\nbreak;\n}\n};\nlexer.rules = [/^(?:[^\\x00]*?(?=(\\{\\{)))/,/^(?:[^\\x00]+)/,/^(?:[^\\x00]{2,}?(?=(\\{\\{|\\\\\\{\\{|\\\\\\\\\\{\\{|$)))/,/^(?:\\{\\{\\{\\{(?=[^\\/]))/,/^(?:\\{\\{\\{\\{\\/[^\\s!\"#%-,\\.\\/;->@\\[-\\^`\\{-~]+(?=[=}\\s\\/.])\\}\\}\\}\\})/,/^(?:[^\\x00]+?(?=(\\{\\{\\{\\{)))/,/^(?:[\\s\\S]*?--(~)?\\}\\})/,/^(?:\\()/,/^(?:\\))/,/^(?:\\{\\{\\{\\{)/,/^(?:\\}\\}\\}\\})/,/^(?:\\{\\{(~)?>)/,/^(?:\\{\\{(~)?#>)/,/^(?:\\{\\{(~)?#\\*?)/,/^(?:\\{\\{(~)?\\/)/,/^(?:\\{\\{(~)?\\^\\s*(~)?\\}\\})/,/^(?:\\{\\{(~)?\\s*else\\s*(~)?\\}\\})/,/^(?:\\{\\{(~)?\\^)/,/^(?:\\{\\{(~)?\\s*else\\b)/,/^(?:\\{\\{(~)?\\{)/,/^(?:\\{\\{(~)?&)/,/^(?:\\{\\{(~)?!--)/,/^(?:\\{\\{(~)?![\\s\\S]*?\\}\\})/,/^(?:\\{\\{(~)?\\*?)/,/^(?:=)/,/^(?:\\.\\.)/,/^(?:\\.(?=([=~}\\s\\/.)|])))/,/^(?:[\\/.])/,/^(?:\\s+)/,/^(?:\\}(~)?\\}\\})/,/^(?:(~)?\\}\\})/,/^(?:\"(\\\\[\"]|[^\"])*\")/,/^(?:'(\\\\[']|[^'])*')/,/^(?:@)/,/^(?:true(?=([~}\\s)])))/,/^(?:false(?=([~}\\s)])))/,/^(?:undefined(?=([~}\\s)])))/,/^(?:null(?=([~}\\s)])))/,/^(?:-?[0-9]+(?:\\.[0-9]+)?(?=([~}\\s)])))/,/^(?:as\\s+\\|)/,/^(?:\\|)/,/^(?:([^\\s!\"#%-,\\.\\/;->@\\[-\\^`\\{-~]+(?=([=~}\\s\\/.)|]))))/,/^(?:\\[(\\\\\\]|[^\\]])*\\])/,/^(?:.)/,/^(?:$)/];\nlexer.conditions = {\"mu\":{\"rules\":[7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44],\"inclusive\":false},\"emu\":{\"rules\":[2],\"inclusive\":false},\"com\":{\"rules\":[6],\"inclusive\":false},\"raw\":{\"rules\":[3,4,5],\"inclusive\":false},\"INITIAL\":{\"rules\":[0,1,44],\"inclusive\":true}};\nreturn lexer;})()\nparser.lexer = lexer;\nfunction Parser () { this.yy = {}; }Parser.prototype = parser;parser.Parser = Parser;\nreturn new Parser;\n})();export default handlebars;\n", "import Exception from '../exception';\n\nfunction Visitor() {\n this.parents = [];\n}\n\nVisitor.prototype = {\n constructor: Visitor,\n mutating: false,\n\n // Visits a given value. If mutating, will replace the value if necessary.\n acceptKey: function(node, name) {\n let value = this.accept(node[name]);\n if (this.mutating) {\n // Hacky sanity check: This may have a few false positives for type for the helper\n // methods but will generally do the right thing without a lot of overhead.\n if (value && !Visitor.prototype[value.type]) {\n throw new Exception(\n 'Unexpected node type \"' +\n value.type +\n '\" found when accepting ' +\n name +\n ' on ' +\n node.type\n );\n }\n node[name] = value;\n }\n },\n\n // Performs an accept operation with added sanity check to ensure\n // required keys are not removed.\n acceptRequired: function(node, name) {\n this.acceptKey(node, name);\n\n if (!node[name]) {\n throw new Exception(node.type + ' requires ' + name);\n }\n },\n\n // Traverses a given array. If mutating, empty respnses will be removed\n // for child elements.\n acceptArray: function(array) {\n for (let i = 0, l = array.length; i < l; i++) {\n this.acceptKey(array, i);\n\n if (!array[i]) {\n array.splice(i, 1);\n i--;\n l--;\n }\n }\n },\n\n accept: function(object) {\n if (!object) {\n return;\n }\n\n /* istanbul ignore next: Sanity code */\n if (!this[object.type]) {\n throw new Exception('Unknown type: ' + object.type, object);\n }\n\n if (this.current) {\n this.parents.unshift(this.current);\n }\n this.current = object;\n\n let ret = this[object.type](object);\n\n this.current = this.parents.shift();\n\n if (!this.mutating || ret) {\n return ret;\n } else if (ret !== false) {\n return object;\n }\n },\n\n Program: function(program) {\n this.acceptArray(program.body);\n },\n\n MustacheStatement: visitSubExpression,\n Decorator: visitSubExpression,\n\n BlockStatement: visitBlock,\n DecoratorBlock: visitBlock,\n\n PartialStatement: visitPartial,\n PartialBlockStatement: function(partial) {\n visitPartial.call(this, partial);\n\n this.acceptKey(partial, 'program');\n },\n\n ContentStatement: function(/* content */) {},\n CommentStatement: function(/* comment */) {},\n\n SubExpression: visitSubExpression,\n\n PathExpression: function(/* path */) {},\n\n StringLiteral: function(/* string */) {},\n NumberLiteral: function(/* number */) {},\n BooleanLiteral: function(/* bool */) {},\n UndefinedLiteral: function(/* literal */) {},\n NullLiteral: function(/* literal */) {},\n\n Hash: function(hash) {\n this.acceptArray(hash.pairs);\n },\n HashPair: function(pair) {\n this.acceptRequired(pair, 'value');\n }\n};\n\nfunction visitSubExpression(mustache) {\n this.acceptRequired(mustache, 'path');\n this.acceptArray(mustache.params);\n this.acceptKey(mustache, 'hash');\n}\nfunction visitBlock(block) {\n visitSubExpression.call(this, block);\n\n this.acceptKey(block, 'program');\n this.acceptKey(block, 'inverse');\n}\nfunction visitPartial(partial) {\n this.acceptRequired(partial, 'name');\n this.acceptArray(partial.params);\n this.acceptKey(partial, 'hash');\n}\n\nexport default Visitor;\n", "import Visitor from './visitor';\n\nfunction WhitespaceControl(options = {}) {\n this.options = options;\n}\nWhitespaceControl.prototype = new Visitor();\n\nWhitespaceControl.prototype.Program = function(program) {\n const doStandalone = !this.options.ignoreStandalone;\n\n let isRoot = !this.isRootSeen;\n this.isRootSeen = true;\n\n let body = program.body;\n for (let i = 0, l = body.length; i < l; i++) {\n let current = body[i],\n strip = this.accept(current);\n\n if (!strip) {\n continue;\n }\n\n let _isPrevWhitespace = isPrevWhitespace(body, i, isRoot),\n _isNextWhitespace = isNextWhitespace(body, i, isRoot),\n openStandalone = strip.openStandalone && _isPrevWhitespace,\n closeStandalone = strip.closeStandalone && _isNextWhitespace,\n inlineStandalone =\n strip.inlineStandalone && _isPrevWhitespace && _isNextWhitespace;\n\n if (strip.close) {\n omitRight(body, i, true);\n }\n if (strip.open) {\n omitLeft(body, i, true);\n }\n\n if (doStandalone && inlineStandalone) {\n omitRight(body, i);\n\n if (omitLeft(body, i)) {\n // If we are on a standalone node, save the indent info for partials\n if (current.type === 'PartialStatement') {\n // Pull out the whitespace from the final line\n current.indent = /([ \\t]+$)/.exec(body[i - 1].original)[1];\n }\n }\n }\n if (doStandalone && openStandalone) {\n omitRight((current.program || current.inverse).body);\n\n // Strip out the previous content node if it's whitespace only\n omitLeft(body, i);\n }\n if (doStandalone && closeStandalone) {\n // Always strip the next node\n omitRight(body, i);\n\n omitLeft((current.inverse || current.program).body);\n }\n }\n\n return program;\n};\n\nWhitespaceControl.prototype.BlockStatement = WhitespaceControl.prototype.DecoratorBlock = WhitespaceControl.prototype.PartialBlockStatement = function(\n block\n) {\n this.accept(block.program);\n this.accept(block.inverse);\n\n // Find the inverse program that is involed with whitespace stripping.\n let program = block.program || block.inverse,\n inverse = block.program && block.inverse,\n firstInverse = inverse,\n lastInverse = inverse;\n\n if (inverse && inverse.chained) {\n firstInverse = inverse.body[0].program;\n\n // Walk the inverse chain to find the last inverse that is actually in the chain.\n while (lastInverse.chained) {\n lastInverse = lastInverse.body[lastInverse.body.length - 1].program;\n }\n }\n\n let strip = {\n open: block.openStrip.open,\n close: block.closeStrip.close,\n\n // Determine the standalone candiacy. Basically flag our content as being possibly standalone\n // so our parent can determine if we actually are standalone\n openStandalone: isNextWhitespace(program.body),\n closeStandalone: isPrevWhitespace((firstInverse || program).body)\n };\n\n if (block.openStrip.close) {\n omitRight(program.body, null, true);\n }\n\n if (inverse) {\n let inverseStrip = block.inverseStrip;\n\n if (inverseStrip.open) {\n omitLeft(program.body, null, true);\n }\n\n if (inverseStrip.close) {\n omitRight(firstInverse.body, null, true);\n }\n if (block.closeStrip.open) {\n omitLeft(lastInverse.body, null, true);\n }\n\n // Find standalone else statments\n if (\n !this.options.ignoreStandalone &&\n isPrevWhitespace(program.body) &&\n isNextWhitespace(firstInverse.body)\n ) {\n omitLeft(program.body);\n omitRight(firstInverse.body);\n }\n } else if (block.closeStrip.open) {\n omitLeft(program.body, null, true);\n }\n\n return strip;\n};\n\nWhitespaceControl.prototype.Decorator = WhitespaceControl.prototype.MustacheStatement = function(\n mustache\n) {\n return mustache.strip;\n};\n\nWhitespaceControl.prototype.PartialStatement = WhitespaceControl.prototype.CommentStatement = function(\n node\n) {\n /* istanbul ignore next */\n let strip = node.strip || {};\n return {\n inlineStandalone: true,\n open: strip.open,\n close: strip.close\n };\n};\n\nfunction isPrevWhitespace(body, i, isRoot) {\n if (i === undefined) {\n i = body.length;\n }\n\n // Nodes that end with newlines are considered whitespace (but are special\n // cased for strip operations)\n let prev = body[i - 1],\n sibling = body[i - 2];\n if (!prev) {\n return isRoot;\n }\n\n if (prev.type === 'ContentStatement') {\n return (sibling || !isRoot ? /\\r?\\n\\s*?$/ : /(^|\\r?\\n)\\s*?$/).test(\n prev.original\n );\n }\n}\nfunction isNextWhitespace(body, i, isRoot) {\n if (i === undefined) {\n i = -1;\n }\n\n let next = body[i + 1],\n sibling = body[i + 2];\n if (!next) {\n return isRoot;\n }\n\n if (next.type === 'ContentStatement') {\n return (sibling || !isRoot ? /^\\s*?\\r?\\n/ : /^\\s*?(\\r?\\n|$)/).test(\n next.original\n );\n }\n}\n\n// Marks the node to the right of the position as omitted.\n// I.e. {{foo}}' ' will mark the ' ' node as omitted.\n//\n// If i is undefined, then the first child will be marked as such.\n//\n// If mulitple is truthy then all whitespace will be stripped out until non-whitespace\n// content is met.\nfunction omitRight(body, i, multiple) {\n let current = body[i == null ? 0 : i + 1];\n if (\n !current ||\n current.type !== 'ContentStatement' ||\n (!multiple && current.rightStripped)\n ) {\n return;\n }\n\n let original = current.value;\n current.value = current.value.replace(\n multiple ? /^\\s+/ : /^[ \\t]*\\r?\\n?/,\n ''\n );\n current.rightStripped = current.value !== original;\n}\n\n// Marks the node to the left of the position as omitted.\n// I.e. ' '{{foo}} will mark the ' ' node as omitted.\n//\n// If i is undefined then the last child will be marked as such.\n//\n// If mulitple is truthy then all whitespace will be stripped out until non-whitespace\n// content is met.\nfunction omitLeft(body, i, multiple) {\n let current = body[i == null ? body.length - 1 : i - 1];\n if (\n !current ||\n current.type !== 'ContentStatement' ||\n (!multiple && current.leftStripped)\n ) {\n return;\n }\n\n // We omit the last node if it's whitespace only and not preceded by a non-content node.\n let original = current.value;\n current.value = current.value.replace(multiple ? /\\s+$/ : /[ \\t]+$/, '');\n current.leftStripped = current.value !== original;\n return current.leftStripped;\n}\n\nexport default WhitespaceControl;\n", "import Exception from '../exception';\n\nfunction validateClose(open, close) {\n close = close.path ? close.path.original : close;\n\n if (open.path.original !== close) {\n let errorNode = { loc: open.path.loc };\n\n throw new Exception(\n open.path.original + \" doesn't match \" + close,\n errorNode\n );\n }\n}\n\nexport function SourceLocation(source, locInfo) {\n this.source = source;\n this.start = {\n line: locInfo.first_line,\n column: locInfo.first_column\n };\n this.end = {\n line: locInfo.last_line,\n column: locInfo.last_column\n };\n}\n\nexport function id(token) {\n if (/^\\[.*\\]$/.test(token)) {\n return token.substring(1, token.length - 1);\n } else {\n return token;\n }\n}\n\nexport function stripFlags(open, close) {\n return {\n open: open.charAt(2) === '~',\n close: close.charAt(close.length - 3) === '~'\n };\n}\n\nexport function stripComment(comment) {\n return comment.replace(/^\\{\\{~?!-?-?/, '').replace(/-?-?~?\\}\\}$/, '');\n}\n\nexport function preparePath(data, parts, loc) {\n loc = this.locInfo(loc);\n\n let original = data ? '@' : '',\n dig = [],\n depth = 0;\n\n for (let i = 0, l = parts.length; i < l; i++) {\n let part = parts[i].part,\n // If we have [] syntax then we do not treat path references as operators,\n // i.e. foo.[this] resolves to approximately context.foo['this']\n isLiteral = parts[i].original !== part;\n original += (parts[i].separator || '') + part;\n\n if (!isLiteral && (part === '..' || part === '.' || part === 'this')) {\n if (dig.length > 0) {\n throw new Exception('Invalid path: ' + original, { loc });\n } else if (part === '..') {\n depth++;\n }\n } else {\n dig.push(part);\n }\n }\n\n return {\n type: 'PathExpression',\n data,\n depth,\n parts: dig,\n original,\n loc\n };\n}\n\nexport function prepareMustache(path, params, hash, open, strip, locInfo) {\n // Must use charAt to support IE pre-10\n let escapeFlag = open.charAt(3) || open.charAt(2),\n escaped = escapeFlag !== '{' && escapeFlag !== '&';\n\n let decorator = /\\*/.test(open);\n return {\n type: decorator ? 'Decorator' : 'MustacheStatement',\n path,\n params,\n hash,\n escaped,\n strip,\n loc: this.locInfo(locInfo)\n };\n}\n\nexport function prepareRawBlock(openRawBlock, contents, close, locInfo) {\n validateClose(openRawBlock, close);\n\n locInfo = this.locInfo(locInfo);\n let program = {\n type: 'Program',\n body: contents,\n strip: {},\n loc: locInfo\n };\n\n return {\n type: 'BlockStatement',\n path: openRawBlock.path,\n params: openRawBlock.params,\n hash: openRawBlock.hash,\n program,\n openStrip: {},\n inverseStrip: {},\n closeStrip: {},\n loc: locInfo\n };\n}\n\nexport function prepareBlock(\n openBlock,\n program,\n inverseAndProgram,\n close,\n inverted,\n locInfo\n) {\n if (close && close.path) {\n validateClose(openBlock, close);\n }\n\n let decorator = /\\*/.test(openBlock.open);\n\n program.blockParams = openBlock.blockParams;\n\n let inverse, inverseStrip;\n\n if (inverseAndProgram) {\n if (decorator) {\n throw new Exception(\n 'Unexpected inverse block on decorator',\n inverseAndProgram\n );\n }\n\n if (inverseAndProgram.chain) {\n inverseAndProgram.program.body[0].closeStrip = close.strip;\n }\n\n inverseStrip = inverseAndProgram.strip;\n inverse = inverseAndProgram.program;\n }\n\n if (inverted) {\n inverted = inverse;\n inverse = program;\n program = inverted;\n }\n\n return {\n type: decorator ? 'DecoratorBlock' : 'BlockStatement',\n path: openBlock.path,\n params: openBlock.params,\n hash: openBlock.hash,\n program,\n inverse,\n openStrip: openBlock.strip,\n inverseStrip,\n closeStrip: close && close.strip,\n loc: this.locInfo(locInfo)\n };\n}\n\nexport function prepareProgram(statements, loc) {\n if (!loc && statements.length) {\n const firstLoc = statements[0].loc,\n lastLoc = statements[statements.length - 1].loc;\n\n /* istanbul ignore else */\n if (firstLoc && lastLoc) {\n loc = {\n source: firstLoc.source,\n start: {\n line: firstLoc.start.line,\n column: firstLoc.start.column\n },\n end: {\n line: lastLoc.end.line,\n column: lastLoc.end.column\n }\n };\n }\n }\n\n return {\n type: 'Program',\n body: statements,\n strip: {},\n loc: loc\n };\n}\n\nexport function preparePartialBlock(open, program, close, locInfo) {\n validateClose(open, close);\n\n return {\n type: 'PartialBlockStatement',\n name: open.path,\n params: open.params,\n hash: open.hash,\n program,\n openStrip: open.strip,\n closeStrip: close && close.strip,\n loc: this.locInfo(locInfo)\n };\n}\n", "import parser from './parser';\nimport WhitespaceControl from './whitespace-control';\nimport * as Helpers from './helpers';\nimport Exception from '../exception';\nimport { extend } from '../utils';\n\nexport { parser };\n\nlet yy = {};\nextend(yy, Helpers);\n\nexport function parseWithoutProcessing(input, options) {\n // Just return if an already-compiled AST was passed in.\n if (input.type === 'Program') {\n // When a pre-parsed AST is passed in, validate all node values to prevent\n // code injection via type-confused literals.\n validateInputAst(input);\n return input;\n }\n\n parser.yy = yy;\n\n // Altering the shared object here, but this is ok as parser is a sync operation\n yy.locInfo = function(locInfo) {\n return new yy.SourceLocation(options && options.srcName, locInfo);\n };\n\n let ast = parser.parse(input);\n\n return ast;\n}\n\nexport function parse(input, options) {\n let ast = parseWithoutProcessing(input, options);\n let strip = new WhitespaceControl(options);\n\n return strip.accept(ast);\n}\n\nfunction validateInputAst(ast) {\n validateAstNode(ast);\n}\n\nfunction validateAstNode(node) {\n if (node == null) {\n return;\n }\n\n if (Array.isArray(node)) {\n node.forEach(validateAstNode);\n return;\n }\n\n if (typeof node !== 'object') {\n return;\n }\n\n if (node.type === 'PathExpression') {\n if (!isValidDepth(node.depth)) {\n throw new Exception(\n 'Invalid AST: PathExpression.depth must be an integer'\n );\n }\n if (!Array.isArray(node.parts)) {\n throw new Exception('Invalid AST: PathExpression.parts must be an array');\n }\n for (let i = 0; i < node.parts.length; i++) {\n if (typeof node.parts[i] !== 'string') {\n throw new Exception(\n 'Invalid AST: PathExpression.parts must only contain strings'\n );\n }\n }\n } else if (node.type === 'NumberLiteral') {\n if (typeof node.value !== 'number' || !isFinite(node.value)) {\n throw new Exception('Invalid AST: NumberLiteral.value must be a number');\n }\n } else if (node.type === 'BooleanLiteral') {\n if (typeof node.value !== 'boolean') {\n throw new Exception(\n 'Invalid AST: BooleanLiteral.value must be a boolean'\n );\n }\n }\n\n Object.keys(node).forEach(propertyName => {\n if (propertyName === 'loc') {\n return;\n }\n validateAstNode(node[propertyName]);\n });\n}\n\nfunction isValidDepth(depth) {\n return (\n typeof depth === 'number' &&\n isFinite(depth) &&\n Math.floor(depth) === depth &&\n depth >= 0\n );\n}\n", "/* eslint-disable new-cap */\n\nimport Exception from '../exception';\nimport { isArray, indexOf, extend } from '../utils';\nimport AST from './ast';\n\nconst slice = [].slice;\n\nexport function Compiler() {}\n\n// the foundHelper register will disambiguate helper lookup from finding a\n// function in a context. This is necessary for mustache compatibility, which\n// requires that context functions in blocks are evaluated by blockHelperMissing,\n// and then proceed as if the resulting value was provided to blockHelperMissing.\n\nCompiler.prototype = {\n compiler: Compiler,\n\n equals: function(other) {\n let len = this.opcodes.length;\n if (other.opcodes.length !== len) {\n return false;\n }\n\n for (let i = 0; i < len; i++) {\n let opcode = this.opcodes[i],\n otherOpcode = other.opcodes[i];\n if (\n opcode.opcode !== otherOpcode.opcode ||\n !argEquals(opcode.args, otherOpcode.args)\n ) {\n return false;\n }\n }\n\n // We know that length is the same between the two arrays because they are directly tied\n // to the opcode behavior above.\n len = this.children.length;\n for (let i = 0; i < len; i++) {\n if (!this.children[i].equals(other.children[i])) {\n return false;\n }\n }\n\n return true;\n },\n\n guid: 0,\n\n compile: function(program, options) {\n this.sourceNode = [];\n this.opcodes = [];\n this.children = [];\n this.options = options;\n this.stringParams = options.stringParams;\n this.trackIds = options.trackIds;\n\n options.blockParams = options.blockParams || [];\n\n options.knownHelpers = extend(\n Object.create(null),\n {\n helperMissing: true,\n blockHelperMissing: true,\n each: true,\n if: true,\n unless: true,\n with: true,\n log: true,\n lookup: true\n },\n options.knownHelpers\n );\n\n return this.accept(program);\n },\n\n compileProgram: function(program) {\n let childCompiler = new this.compiler(), // eslint-disable-line new-cap\n result = childCompiler.compile(program, this.options),\n guid = this.guid++;\n\n this.usePartial = this.usePartial || result.usePartial;\n\n this.children[guid] = result;\n this.useDepths = this.useDepths || result.useDepths;\n\n return guid;\n },\n\n accept: function(node) {\n /* istanbul ignore next: Sanity code */\n if (!this[node.type]) {\n throw new Exception('Unknown type: ' + node.type, node);\n }\n\n this.sourceNode.unshift(node);\n let ret = this[node.type](node);\n this.sourceNode.shift();\n return ret;\n },\n\n Program: function(program) {\n this.options.blockParams.unshift(program.blockParams);\n\n let body = program.body,\n bodyLength = body.length;\n for (let i = 0; i < bodyLength; i++) {\n this.accept(body[i]);\n }\n\n this.options.blockParams.shift();\n\n this.isSimple = bodyLength === 1;\n this.blockParams = program.blockParams ? program.blockParams.length : 0;\n\n return this;\n },\n\n BlockStatement: function(block) {\n transformLiteralToPath(block);\n\n let program = block.program,\n inverse = block.inverse;\n\n program = program && this.compileProgram(program);\n inverse = inverse && this.compileProgram(inverse);\n\n let type = this.classifySexpr(block);\n\n if (type === 'helper') {\n this.helperSexpr(block, program, inverse);\n } else if (type === 'simple') {\n this.simpleSexpr(block);\n\n // now that the simple mustache is resolved, we need to\n // evaluate it by executing `blockHelperMissing`\n this.opcode('pushProgram', program);\n this.opcode('pushProgram', inverse);\n this.opcode('emptyHash');\n this.opcode('blockValue', block.path.original);\n } else {\n this.ambiguousSexpr(block, program, inverse);\n\n // now that the simple mustache is resolved, we need to\n // evaluate it by executing `blockHelperMissing`\n this.opcode('pushProgram', program);\n this.opcode('pushProgram', inverse);\n this.opcode('emptyHash');\n this.opcode('ambiguousBlockValue');\n }\n\n this.opcode('append');\n },\n\n DecoratorBlock(decorator) {\n let program = decorator.program && this.compileProgram(decorator.program);\n let params = this.setupFullMustacheParams(decorator, program, undefined),\n path = decorator.path;\n\n this.useDecorators = true;\n this.opcode('registerDecorator', params.length, path.original);\n },\n\n PartialStatement: function(partial) {\n this.usePartial = true;\n\n let program = partial.program;\n if (program) {\n program = this.compileProgram(partial.program);\n }\n\n let params = partial.params;\n if (params.length > 1) {\n throw new Exception(\n 'Unsupported number of partial arguments: ' + params.length,\n partial\n );\n } else if (!params.length) {\n if (this.options.explicitPartialContext) {\n this.opcode('pushLiteral', 'undefined');\n } else {\n params.push({ type: 'PathExpression', parts: [], depth: 0 });\n }\n }\n\n let partialName = partial.name.original,\n isDynamic = partial.name.type === 'SubExpression';\n if (isDynamic) {\n this.accept(partial.name);\n }\n\n this.setupFullMustacheParams(partial, program, undefined, true);\n\n let indent = partial.indent || '';\n if (this.options.preventIndent && indent) {\n this.opcode('appendContent', indent);\n indent = '';\n }\n\n this.opcode('invokePartial', isDynamic, partialName, indent);\n this.opcode('append');\n },\n PartialBlockStatement: function(partialBlock) {\n this.PartialStatement(partialBlock);\n },\n\n MustacheStatement: function(mustache) {\n this.SubExpression(mustache);\n\n if (mustache.escaped && !this.options.noEscape) {\n this.opcode('appendEscaped');\n } else {\n this.opcode('append');\n }\n },\n Decorator(decorator) {\n this.DecoratorBlock(decorator);\n },\n\n ContentStatement: function(content) {\n if (content.value) {\n this.opcode('appendContent', content.value);\n }\n },\n\n CommentStatement: function() {},\n\n SubExpression: function(sexpr) {\n transformLiteralToPath(sexpr);\n let type = this.classifySexpr(sexpr);\n\n if (type === 'simple') {\n this.simpleSexpr(sexpr);\n } else if (type === 'helper') {\n this.helperSexpr(sexpr);\n } else {\n this.ambiguousSexpr(sexpr);\n }\n },\n ambiguousSexpr: function(sexpr, program, inverse) {\n let path = sexpr.path,\n name = path.parts[0],\n isBlock = program != null || inverse != null;\n\n this.opcode('getContext', path.depth);\n\n this.opcode('pushProgram', program);\n this.opcode('pushProgram', inverse);\n\n path.strict = true;\n this.accept(path);\n\n this.opcode('invokeAmbiguous', name, isBlock);\n },\n\n simpleSexpr: function(sexpr) {\n let path = sexpr.path;\n path.strict = true;\n this.accept(path);\n this.opcode('resolvePossibleLambda');\n },\n\n helperSexpr: function(sexpr, program, inverse) {\n let params = this.setupFullMustacheParams(sexpr, program, inverse),\n path = sexpr.path,\n name = path.parts[0];\n\n if (this.options.knownHelpers[name]) {\n this.opcode('invokeKnownHelper', params.length, name);\n } else if (this.options.knownHelpersOnly) {\n throw new Exception(\n 'You specified knownHelpersOnly, but used the unknown helper ' + name,\n sexpr\n );\n } else {\n path.strict = true;\n path.falsy = true;\n\n this.accept(path);\n this.opcode(\n 'invokeHelper',\n params.length,\n path.original,\n AST.helpers.simpleId(path)\n );\n }\n },\n\n PathExpression: function(path) {\n this.addDepth(path.depth);\n this.opcode('getContext', path.depth);\n\n let name = path.parts[0],\n scoped = AST.helpers.scopedId(path),\n blockParamId = !path.depth && !scoped && this.blockParamIndex(name);\n\n if (blockParamId) {\n this.opcode('lookupBlockParam', blockParamId, path.parts);\n } else if (!name) {\n // Context reference, i.e. `{{foo .}}` or `{{foo ..}}`\n this.opcode('pushContext');\n } else if (path.data) {\n this.options.data = true;\n this.opcode('lookupData', path.depth, path.parts, path.strict);\n } else {\n this.opcode(\n 'lookupOnContext',\n path.parts,\n path.falsy,\n path.strict,\n scoped\n );\n }\n },\n\n StringLiteral: function(string) {\n this.opcode('pushString', string.value);\n },\n\n NumberLiteral: function(number) {\n this.opcode('pushLiteral', number.value);\n },\n\n BooleanLiteral: function(bool) {\n this.opcode('pushLiteral', bool.value);\n },\n\n UndefinedLiteral: function() {\n this.opcode('pushLiteral', 'undefined');\n },\n\n NullLiteral: function() {\n this.opcode('pushLiteral', 'null');\n },\n\n Hash: function(hash) {\n let pairs = hash.pairs,\n i = 0,\n l = pairs.length;\n\n this.opcode('pushHash');\n\n for (; i < l; i++) {\n this.pushParam(pairs[i].value);\n }\n while (i--) {\n this.opcode('assignToHash', pairs[i].key);\n }\n this.opcode('popHash');\n },\n\n // HELPERS\n opcode: function(name) {\n this.opcodes.push({\n opcode: name,\n args: slice.call(arguments, 1),\n loc: this.sourceNode[0].loc\n });\n },\n\n addDepth: function(depth) {\n if (!depth) {\n return;\n }\n\n this.useDepths = true;\n },\n\n classifySexpr: function(sexpr) {\n let isSimple = AST.helpers.simpleId(sexpr.path);\n\n let isBlockParam = isSimple && !!this.blockParamIndex(sexpr.path.parts[0]);\n\n // a mustache is an eligible helper if:\n // * its id is simple (a single part, not `this` or `..`)\n let isHelper = !isBlockParam && AST.helpers.helperExpression(sexpr);\n\n // if a mustache is an eligible helper but not a definite\n // helper, it is ambiguous, and will be resolved in a later\n // pass or at runtime.\n let isEligible = !isBlockParam && (isHelper || isSimple);\n\n // if ambiguous, we can possibly resolve the ambiguity now\n // An eligible helper is one that does not have a complex path, i.e. `this.foo`, `../foo` etc.\n if (isEligible && !isHelper) {\n let name = sexpr.path.parts[0],\n options = this.options;\n if (options.knownHelpers[name]) {\n isHelper = true;\n } else if (options.knownHelpersOnly) {\n isEligible = false;\n }\n }\n\n if (isHelper) {\n return 'helper';\n } else if (isEligible) {\n return 'ambiguous';\n } else {\n return 'simple';\n }\n },\n\n pushParams: function(params) {\n for (let i = 0, l = params.length; i < l; i++) {\n this.pushParam(params[i]);\n }\n },\n\n pushParam: function(val) {\n let value = val.value != null ? val.value : val.original || '';\n\n if (this.stringParams) {\n if (value.replace) {\n value = value.replace(/^(\\.?\\.\\/)*/g, '').replace(/\\//g, '.');\n }\n\n if (val.depth) {\n this.addDepth(val.depth);\n }\n this.opcode('getContext', val.depth || 0);\n this.opcode('pushStringParam', value, val.type);\n\n if (val.type === 'SubExpression') {\n // SubExpressions get evaluated and passed in\n // in string params mode.\n this.accept(val);\n }\n } else {\n if (this.trackIds) {\n let blockParamIndex;\n if (val.parts && !AST.helpers.scopedId(val) && !val.depth) {\n blockParamIndex = this.blockParamIndex(val.parts[0]);\n }\n if (blockParamIndex) {\n let blockParamChild = val.parts.slice(1).join('.');\n this.opcode('pushId', 'BlockParam', blockParamIndex, blockParamChild);\n } else {\n value = val.original || value;\n if (value.replace) {\n value = value\n .replace(/^this(?:\\.|$)/, '')\n .replace(/^\\.\\//, '')\n .replace(/^\\.$/, '');\n }\n\n this.opcode('pushId', val.type, value);\n }\n }\n this.accept(val);\n }\n },\n\n setupFullMustacheParams: function(sexpr, program, inverse, omitEmpty) {\n let params = sexpr.params;\n this.pushParams(params);\n\n this.opcode('pushProgram', program);\n this.opcode('pushProgram', inverse);\n\n if (sexpr.hash) {\n this.accept(sexpr.hash);\n } else {\n this.opcode('emptyHash', omitEmpty);\n }\n\n return params;\n },\n\n blockParamIndex: function(name) {\n for (\n let depth = 0, len = this.options.blockParams.length;\n depth < len;\n depth++\n ) {\n let blockParams = this.options.blockParams[depth],\n param = blockParams && indexOf(blockParams, name);\n if (blockParams && param >= 0) {\n return [depth, param];\n }\n }\n }\n};\n\nexport function precompile(input, options, env) {\n if (\n input == null ||\n (typeof input !== 'string' && input.type !== 'Program')\n ) {\n throw new Exception(\n 'You must pass a string or Handlebars AST to Handlebars.precompile. You passed ' +\n input\n );\n }\n\n options = options || {};\n if (!('data' in options)) {\n options.data = true;\n }\n if (options.compat) {\n options.useDepths = true;\n }\n\n let ast = env.parse(input, options),\n environment = new env.Compiler().compile(ast, options);\n return new env.JavaScriptCompiler().compile(environment, options);\n}\n\nexport function compile(input, options = {}, env) {\n if (\n input == null ||\n (typeof input !== 'string' && input.type !== 'Program')\n ) {\n throw new Exception(\n 'You must pass a string or Handlebars AST to Handlebars.compile. You passed ' +\n input\n );\n }\n\n options = extend({}, options);\n if (!('data' in options)) {\n options.data = true;\n }\n if (options.compat) {\n options.useDepths = true;\n }\n\n let compiled;\n\n function compileInput() {\n let ast = env.parse(input, options),\n environment = new env.Compiler().compile(ast, options),\n templateSpec = new env.JavaScriptCompiler().compile(\n environment,\n options,\n undefined,\n true\n );\n return env.template(templateSpec);\n }\n\n // Template is only compiled on first use and cached after that point.\n function ret(context, execOptions) {\n if (!compiled) {\n compiled = compileInput();\n }\n return compiled.call(this, context, execOptions);\n }\n ret._setup = function(setupOptions) {\n if (!compiled) {\n compiled = compileInput();\n }\n return compiled._setup(setupOptions);\n };\n ret._child = function(i, data, blockParams, depths) {\n if (!compiled) {\n compiled = compileInput();\n }\n return compiled._child(i, data, blockParams, depths);\n };\n return ret;\n}\n\nfunction argEquals(a, b) {\n if (a === b) {\n return true;\n }\n\n if (isArray(a) && isArray(b) && a.length === b.length) {\n for (let i = 0; i < a.length; i++) {\n if (!argEquals(a[i], b[i])) {\n return false;\n }\n }\n return true;\n }\n}\n\nfunction transformLiteralToPath(sexpr) {\n if (!sexpr.path.parts) {\n let literal = sexpr.path;\n // Casting to string here to make false and 0 literal values play nicely with the rest\n // of the system.\n sexpr.path = {\n type: 'PathExpression',\n data: false,\n depth: 0,\n parts: [literal.original + ''],\n original: literal.original + '',\n loc: literal.loc\n };\n }\n}\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar intToCharMap = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'.split('');\n\n/**\n * Encode an integer in the range of 0 to 63 to a single base 64 digit.\n */\nexports.encode = function (number) {\n if (0 <= number && number < intToCharMap.length) {\n return intToCharMap[number];\n }\n throw new TypeError(\"Must be between 0 and 63: \" + number);\n};\n\n/**\n * Decode a single base 64 character code digit to an integer. Returns -1 on\n * failure.\n */\nexports.decode = function (charCode) {\n var bigA = 65; // 'A'\n var bigZ = 90; // 'Z'\n\n var littleA = 97; // 'a'\n var littleZ = 122; // 'z'\n\n var zero = 48; // '0'\n var nine = 57; // '9'\n\n var plus = 43; // '+'\n var slash = 47; // '/'\n\n var littleOffset = 26;\n var numberOffset = 52;\n\n // 0 - 25: ABCDEFGHIJKLMNOPQRSTUVWXYZ\n if (bigA <= charCode && charCode <= bigZ) {\n return (charCode - bigA);\n }\n\n // 26 - 51: abcdefghijklmnopqrstuvwxyz\n if (littleA <= charCode && charCode <= littleZ) {\n return (charCode - littleA + littleOffset);\n }\n\n // 52 - 61: 0123456789\n if (zero <= charCode && charCode <= nine) {\n return (charCode - zero + numberOffset);\n }\n\n // 62: +\n if (charCode == plus) {\n return 62;\n }\n\n // 63: /\n if (charCode == slash) {\n return 63;\n }\n\n // Invalid base64 digit.\n return -1;\n};\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n *\n * Based on the Base 64 VLQ implementation in Closure Compiler:\n * https://code.google.com/p/closure-compiler/source/browse/trunk/src/com/google/debugging/sourcemap/Base64VLQ.java\n *\n * Copyright 2011 The Closure Compiler Authors. All rights reserved.\n * Redistribution and use in source and binary forms, with or without\n * modification, are permitted provided that the following conditions are\n * met:\n *\n * * Redistributions of source code must retain the above copyright\n * notice, this list of conditions and the following disclaimer.\n * * Redistributions in binary form must reproduce the above\n * copyright notice, this list of conditions and the following\n * disclaimer in the documentation and/or other materials provided\n * with the distribution.\n * * Neither the name of Google Inc. nor the names of its\n * contributors may be used to endorse or promote products derived\n * from this software without specific prior written permission.\n *\n * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS\n * \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT\n * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR\n * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT\n * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,\n * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT\n * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,\n * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY\n * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT\n * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE\n * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.\n */\n\nvar base64 = require('./base64');\n\n// A single base 64 digit can contain 6 bits of data. For the base 64 variable\n// length quantities we use in the source map spec, the first bit is the sign,\n// the next four bits are the actual value, and the 6th bit is the\n// continuation bit. The continuation bit tells us whether there are more\n// digits in this value following this digit.\n//\n// Continuation\n// | Sign\n// | |\n// V V\n// 101011\n\nvar VLQ_BASE_SHIFT = 5;\n\n// binary: 100000\nvar VLQ_BASE = 1 << VLQ_BASE_SHIFT;\n\n// binary: 011111\nvar VLQ_BASE_MASK = VLQ_BASE - 1;\n\n// binary: 100000\nvar VLQ_CONTINUATION_BIT = VLQ_BASE;\n\n/**\n * Converts from a two-complement value to a value where the sign bit is\n * placed in the least significant bit. For example, as decimals:\n * 1 becomes 2 (10 binary), -1 becomes 3 (11 binary)\n * 2 becomes 4 (100 binary), -2 becomes 5 (101 binary)\n */\nfunction toVLQSigned(aValue) {\n return aValue < 0\n ? ((-aValue) << 1) + 1\n : (aValue << 1) + 0;\n}\n\n/**\n * Converts to a two-complement value from a value where the sign bit is\n * placed in the least significant bit. For example, as decimals:\n * 2 (10 binary) becomes 1, 3 (11 binary) becomes -1\n * 4 (100 binary) becomes 2, 5 (101 binary) becomes -2\n */\nfunction fromVLQSigned(aValue) {\n var isNegative = (aValue & 1) === 1;\n var shifted = aValue >> 1;\n return isNegative\n ? -shifted\n : shifted;\n}\n\n/**\n * Returns the base 64 VLQ encoded value.\n */\nexports.encode = function base64VLQ_encode(aValue) {\n var encoded = \"\";\n var digit;\n\n var vlq = toVLQSigned(aValue);\n\n do {\n digit = vlq & VLQ_BASE_MASK;\n vlq >>>= VLQ_BASE_SHIFT;\n if (vlq > 0) {\n // There are still more digits in this value, so we must make sure the\n // continuation bit is marked.\n digit |= VLQ_CONTINUATION_BIT;\n }\n encoded += base64.encode(digit);\n } while (vlq > 0);\n\n return encoded;\n};\n\n/**\n * Decodes the next base 64 VLQ value from the given string and returns the\n * value and the rest of the string via the out parameter.\n */\nexports.decode = function base64VLQ_decode(aStr, aIndex, aOutParam) {\n var strLen = aStr.length;\n var result = 0;\n var shift = 0;\n var continuation, digit;\n\n do {\n if (aIndex >= strLen) {\n throw new Error(\"Expected more digits in base 64 VLQ value.\");\n }\n\n digit = base64.decode(aStr.charCodeAt(aIndex++));\n if (digit === -1) {\n throw new Error(\"Invalid base64 digit: \" + aStr.charAt(aIndex - 1));\n }\n\n continuation = !!(digit & VLQ_CONTINUATION_BIT);\n digit &= VLQ_BASE_MASK;\n result = result + (digit << shift);\n shift += VLQ_BASE_SHIFT;\n } while (continuation);\n\n aOutParam.value = fromVLQSigned(result);\n aOutParam.rest = aIndex;\n};\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\n/**\n * This is a helper function for getting values from parameter/options\n * objects.\n *\n * @param args The object we are extracting values from\n * @param name The name of the property we are getting.\n * @param defaultValue An optional value to return if the property is missing\n * from the object. If this is not specified and the property is missing, an\n * error will be thrown.\n */\nfunction getArg(aArgs, aName, aDefaultValue) {\n if (aName in aArgs) {\n return aArgs[aName];\n } else if (arguments.length === 3) {\n return aDefaultValue;\n } else {\n throw new Error('\"' + aName + '\" is a required argument.');\n }\n}\nexports.getArg = getArg;\n\nvar urlRegexp = /^(?:([\\w+\\-.]+):)?\\/\\/(?:(\\w+:\\w+)@)?([\\w.-]*)(?::(\\d+))?(.*)$/;\nvar dataUrlRegexp = /^data:.+\\,.+$/;\n\nfunction urlParse(aUrl) {\n var match = aUrl.match(urlRegexp);\n if (!match) {\n return null;\n }\n return {\n scheme: match[1],\n auth: match[2],\n host: match[3],\n port: match[4],\n path: match[5]\n };\n}\nexports.urlParse = urlParse;\n\nfunction urlGenerate(aParsedUrl) {\n var url = '';\n if (aParsedUrl.scheme) {\n url += aParsedUrl.scheme + ':';\n }\n url += '//';\n if (aParsedUrl.auth) {\n url += aParsedUrl.auth + '@';\n }\n if (aParsedUrl.host) {\n url += aParsedUrl.host;\n }\n if (aParsedUrl.port) {\n url += \":\" + aParsedUrl.port\n }\n if (aParsedUrl.path) {\n url += aParsedUrl.path;\n }\n return url;\n}\nexports.urlGenerate = urlGenerate;\n\n/**\n * Normalizes a path, or the path portion of a URL:\n *\n * - Replaces consecutive slashes with one slash.\n * - Removes unnecessary '.' parts.\n * - Removes unnecessary '/..' parts.\n *\n * Based on code in the Node.js 'path' core module.\n *\n * @param aPath The path or url to normalize.\n */\nfunction normalize(aPath) {\n var path = aPath;\n var url = urlParse(aPath);\n if (url) {\n if (!url.path) {\n return aPath;\n }\n path = url.path;\n }\n var isAbsolute = exports.isAbsolute(path);\n\n var parts = path.split(/\\/+/);\n for (var part, up = 0, i = parts.length - 1; i >= 0; i--) {\n part = parts[i];\n if (part === '.') {\n parts.splice(i, 1);\n } else if (part === '..') {\n up++;\n } else if (up > 0) {\n if (part === '') {\n // The first part is blank if the path is absolute. Trying to go\n // above the root is a no-op. Therefore we can remove all '..' parts\n // directly after the root.\n parts.splice(i + 1, up);\n up = 0;\n } else {\n parts.splice(i, 2);\n up--;\n }\n }\n }\n path = parts.join('/');\n\n if (path === '') {\n path = isAbsolute ? '/' : '.';\n }\n\n if (url) {\n url.path = path;\n return urlGenerate(url);\n }\n return path;\n}\nexports.normalize = normalize;\n\n/**\n * Joins two paths/URLs.\n *\n * @param aRoot The root path or URL.\n * @param aPath The path or URL to be joined with the root.\n *\n * - If aPath is a URL or a data URI, aPath is returned, unless aPath is a\n * scheme-relative URL: Then the scheme of aRoot, if any, is prepended\n * first.\n * - Otherwise aPath is a path. If aRoot is a URL, then its path portion\n * is updated with the result and aRoot is returned. Otherwise the result\n * is returned.\n * - If aPath is absolute, the result is aPath.\n * - Otherwise the two paths are joined with a slash.\n * - Joining for example 'http://' and 'www.example.com' is also supported.\n */\nfunction join(aRoot, aPath) {\n if (aRoot === \"\") {\n aRoot = \".\";\n }\n if (aPath === \"\") {\n aPath = \".\";\n }\n var aPathUrl = urlParse(aPath);\n var aRootUrl = urlParse(aRoot);\n if (aRootUrl) {\n aRoot = aRootUrl.path || '/';\n }\n\n // `join(foo, '//www.example.org')`\n if (aPathUrl && !aPathUrl.scheme) {\n if (aRootUrl) {\n aPathUrl.scheme = aRootUrl.scheme;\n }\n return urlGenerate(aPathUrl);\n }\n\n if (aPathUrl || aPath.match(dataUrlRegexp)) {\n return aPath;\n }\n\n // `join('http://', 'www.example.com')`\n if (aRootUrl && !aRootUrl.host && !aRootUrl.path) {\n aRootUrl.host = aPath;\n return urlGenerate(aRootUrl);\n }\n\n var joined = aPath.charAt(0) === '/'\n ? aPath\n : normalize(aRoot.replace(/\\/+$/, '') + '/' + aPath);\n\n if (aRootUrl) {\n aRootUrl.path = joined;\n return urlGenerate(aRootUrl);\n }\n return joined;\n}\nexports.join = join;\n\nexports.isAbsolute = function (aPath) {\n return aPath.charAt(0) === '/' || urlRegexp.test(aPath);\n};\n\n/**\n * Make a path relative to a URL or another path.\n *\n * @param aRoot The root path or URL.\n * @param aPath The path or URL to be made relative to aRoot.\n */\nfunction relative(aRoot, aPath) {\n if (aRoot === \"\") {\n aRoot = \".\";\n }\n\n aRoot = aRoot.replace(/\\/$/, '');\n\n // It is possible for the path to be above the root. In this case, simply\n // checking whether the root is a prefix of the path won't work. Instead, we\n // need to remove components from the root one by one, until either we find\n // a prefix that fits, or we run out of components to remove.\n var level = 0;\n while (aPath.indexOf(aRoot + '/') !== 0) {\n var index = aRoot.lastIndexOf(\"/\");\n if (index < 0) {\n return aPath;\n }\n\n // If the only part of the root that is left is the scheme (i.e. http://,\n // file:///, etc.), one or more slashes (/), or simply nothing at all, we\n // have exhausted all components, so the path is not relative to the root.\n aRoot = aRoot.slice(0, index);\n if (aRoot.match(/^([^\\/]+:\\/)?\\/*$/)) {\n return aPath;\n }\n\n ++level;\n }\n\n // Make sure we add a \"../\" for each component we removed from the root.\n return Array(level + 1).join(\"../\") + aPath.substr(aRoot.length + 1);\n}\nexports.relative = relative;\n\nvar supportsNullProto = (function () {\n var obj = Object.create(null);\n return !('__proto__' in obj);\n}());\n\nfunction identity (s) {\n return s;\n}\n\n/**\n * Because behavior goes wacky when you set `__proto__` on objects, we\n * have to prefix all the strings in our set with an arbitrary character.\n *\n * See https://github.com/mozilla/source-map/pull/31 and\n * https://github.com/mozilla/source-map/issues/30\n *\n * @param String aStr\n */\nfunction toSetString(aStr) {\n if (isProtoString(aStr)) {\n return '$' + aStr;\n }\n\n return aStr;\n}\nexports.toSetString = supportsNullProto ? identity : toSetString;\n\nfunction fromSetString(aStr) {\n if (isProtoString(aStr)) {\n return aStr.slice(1);\n }\n\n return aStr;\n}\nexports.fromSetString = supportsNullProto ? identity : fromSetString;\n\nfunction isProtoString(s) {\n if (!s) {\n return false;\n }\n\n var length = s.length;\n\n if (length < 9 /* \"__proto__\".length */) {\n return false;\n }\n\n if (s.charCodeAt(length - 1) !== 95 /* '_' */ ||\n s.charCodeAt(length - 2) !== 95 /* '_' */ ||\n s.charCodeAt(length - 3) !== 111 /* 'o' */ ||\n s.charCodeAt(length - 4) !== 116 /* 't' */ ||\n s.charCodeAt(length - 5) !== 111 /* 'o' */ ||\n s.charCodeAt(length - 6) !== 114 /* 'r' */ ||\n s.charCodeAt(length - 7) !== 112 /* 'p' */ ||\n s.charCodeAt(length - 8) !== 95 /* '_' */ ||\n s.charCodeAt(length - 9) !== 95 /* '_' */) {\n return false;\n }\n\n for (var i = length - 10; i >= 0; i--) {\n if (s.charCodeAt(i) !== 36 /* '$' */) {\n return false;\n }\n }\n\n return true;\n}\n\n/**\n * Comparator between two mappings where the original positions are compared.\n *\n * Optionally pass in `true` as `onlyCompareGenerated` to consider two\n * mappings with the same original source/line/column, but different generated\n * line and column the same. Useful when searching for a mapping with a\n * stubbed out mapping.\n */\nfunction compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) {\n var cmp = strcmp(mappingA.source, mappingB.source);\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalLine - mappingB.originalLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalColumn - mappingB.originalColumn;\n if (cmp !== 0 || onlyCompareOriginal) {\n return cmp;\n }\n\n cmp = mappingA.generatedColumn - mappingB.generatedColumn;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.generatedLine - mappingB.generatedLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n return strcmp(mappingA.name, mappingB.name);\n}\nexports.compareByOriginalPositions = compareByOriginalPositions;\n\n/**\n * Comparator between two mappings with deflated source and name indices where\n * the generated positions are compared.\n *\n * Optionally pass in `true` as `onlyCompareGenerated` to consider two\n * mappings with the same generated line and column, but different\n * source/name/original line and column the same. Useful when searching for a\n * mapping with a stubbed out mapping.\n */\nfunction compareByGeneratedPositionsDeflated(mappingA, mappingB, onlyCompareGenerated) {\n var cmp = mappingA.generatedLine - mappingB.generatedLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.generatedColumn - mappingB.generatedColumn;\n if (cmp !== 0 || onlyCompareGenerated) {\n return cmp;\n }\n\n cmp = strcmp(mappingA.source, mappingB.source);\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalLine - mappingB.originalLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalColumn - mappingB.originalColumn;\n if (cmp !== 0) {\n return cmp;\n }\n\n return strcmp(mappingA.name, mappingB.name);\n}\nexports.compareByGeneratedPositionsDeflated = compareByGeneratedPositionsDeflated;\n\nfunction strcmp(aStr1, aStr2) {\n if (aStr1 === aStr2) {\n return 0;\n }\n\n if (aStr1 === null) {\n return 1; // aStr2 !== null\n }\n\n if (aStr2 === null) {\n return -1; // aStr1 !== null\n }\n\n if (aStr1 > aStr2) {\n return 1;\n }\n\n return -1;\n}\n\n/**\n * Comparator between two mappings with inflated source and name strings where\n * the generated positions are compared.\n */\nfunction compareByGeneratedPositionsInflated(mappingA, mappingB) {\n var cmp = mappingA.generatedLine - mappingB.generatedLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.generatedColumn - mappingB.generatedColumn;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = strcmp(mappingA.source, mappingB.source);\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalLine - mappingB.originalLine;\n if (cmp !== 0) {\n return cmp;\n }\n\n cmp = mappingA.originalColumn - mappingB.originalColumn;\n if (cmp !== 0) {\n return cmp;\n }\n\n return strcmp(mappingA.name, mappingB.name);\n}\nexports.compareByGeneratedPositionsInflated = compareByGeneratedPositionsInflated;\n\n/**\n * Strip any JSON XSSI avoidance prefix from the string (as documented\n * in the source maps specification), and then parse the string as\n * JSON.\n */\nfunction parseSourceMapInput(str) {\n return JSON.parse(str.replace(/^\\)]}'[^\\n]*\\n/, ''));\n}\nexports.parseSourceMapInput = parseSourceMapInput;\n\n/**\n * Compute the URL of a source given the the source root, the source's\n * URL, and the source map's URL.\n */\nfunction computeSourceURL(sourceRoot, sourceURL, sourceMapURL) {\n sourceURL = sourceURL || '';\n\n if (sourceRoot) {\n // This follows what Chrome does.\n if (sourceRoot[sourceRoot.length - 1] !== '/' && sourceURL[0] !== '/') {\n sourceRoot += '/';\n }\n // The spec says:\n // Line 4: An optional source root, useful for relocating source\n // files on a server or removing repeated values in the\n // \u201Csources\u201D entry. This value is prepended to the individual\n // entries in the \u201Csource\u201D field.\n sourceURL = sourceRoot + sourceURL;\n }\n\n // Historically, SourceMapConsumer did not take the sourceMapURL as\n // a parameter. This mode is still somewhat supported, which is why\n // this code block is conditional. However, it's preferable to pass\n // the source map URL to SourceMapConsumer, so that this function\n // can implement the source URL resolution algorithm as outlined in\n // the spec. This block is basically the equivalent of:\n // new URL(sourceURL, sourceMapURL).toString()\n // ... except it avoids using URL, which wasn't available in the\n // older releases of node still supported by this library.\n //\n // The spec says:\n // If the sources are not absolute URLs after prepending of the\n // \u201CsourceRoot\u201D, the sources are resolved relative to the\n // SourceMap (like resolving script src in a html document).\n if (sourceMapURL) {\n var parsed = urlParse(sourceMapURL);\n if (!parsed) {\n throw new Error(\"sourceMapURL could not be parsed\");\n }\n if (parsed.path) {\n // Strip the last path component, but keep the \"/\".\n var index = parsed.path.lastIndexOf('/');\n if (index >= 0) {\n parsed.path = parsed.path.substring(0, index + 1);\n }\n }\n sourceURL = join(urlGenerate(parsed), sourceURL);\n }\n\n return normalize(sourceURL);\n}\nexports.computeSourceURL = computeSourceURL;\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar util = require('./util');\nvar has = Object.prototype.hasOwnProperty;\nvar hasNativeMap = typeof Map !== \"undefined\";\n\n/**\n * A data structure which is a combination of an array and a set. Adding a new\n * member is O(1), testing for membership is O(1), and finding the index of an\n * element is O(1). Removing elements from the set is not supported. Only\n * strings are supported for membership.\n */\nfunction ArraySet() {\n this._array = [];\n this._set = hasNativeMap ? new Map() : Object.create(null);\n}\n\n/**\n * Static method for creating ArraySet instances from an existing array.\n */\nArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) {\n var set = new ArraySet();\n for (var i = 0, len = aArray.length; i < len; i++) {\n set.add(aArray[i], aAllowDuplicates);\n }\n return set;\n};\n\n/**\n * Return how many unique items are in this ArraySet. If duplicates have been\n * added, than those do not count towards the size.\n *\n * @returns Number\n */\nArraySet.prototype.size = function ArraySet_size() {\n return hasNativeMap ? this._set.size : Object.getOwnPropertyNames(this._set).length;\n};\n\n/**\n * Add the given string to this set.\n *\n * @param String aStr\n */\nArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) {\n var sStr = hasNativeMap ? aStr : util.toSetString(aStr);\n var isDuplicate = hasNativeMap ? this.has(aStr) : has.call(this._set, sStr);\n var idx = this._array.length;\n if (!isDuplicate || aAllowDuplicates) {\n this._array.push(aStr);\n }\n if (!isDuplicate) {\n if (hasNativeMap) {\n this._set.set(aStr, idx);\n } else {\n this._set[sStr] = idx;\n }\n }\n};\n\n/**\n * Is the given string a member of this set?\n *\n * @param String aStr\n */\nArraySet.prototype.has = function ArraySet_has(aStr) {\n if (hasNativeMap) {\n return this._set.has(aStr);\n } else {\n var sStr = util.toSetString(aStr);\n return has.call(this._set, sStr);\n }\n};\n\n/**\n * What is the index of the given string in the array?\n *\n * @param String aStr\n */\nArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) {\n if (hasNativeMap) {\n var idx = this._set.get(aStr);\n if (idx >= 0) {\n return idx;\n }\n } else {\n var sStr = util.toSetString(aStr);\n if (has.call(this._set, sStr)) {\n return this._set[sStr];\n }\n }\n\n throw new Error('\"' + aStr + '\" is not in the set.');\n};\n\n/**\n * What is the element at the given index?\n *\n * @param Number aIdx\n */\nArraySet.prototype.at = function ArraySet_at(aIdx) {\n if (aIdx >= 0 && aIdx < this._array.length) {\n return this._array[aIdx];\n }\n throw new Error('No element indexed by ' + aIdx);\n};\n\n/**\n * Returns the array representation of this set (which has the proper indices\n * indicated by indexOf). Note that this is a copy of the internal array used\n * for storing the members so that no one can mess with internal state.\n */\nArraySet.prototype.toArray = function ArraySet_toArray() {\n return this._array.slice();\n};\n\nexports.ArraySet = ArraySet;\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2014 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar util = require('./util');\n\n/**\n * Determine whether mappingB is after mappingA with respect to generated\n * position.\n */\nfunction generatedPositionAfter(mappingA, mappingB) {\n // Optimized for most common case\n var lineA = mappingA.generatedLine;\n var lineB = mappingB.generatedLine;\n var columnA = mappingA.generatedColumn;\n var columnB = mappingB.generatedColumn;\n return lineB > lineA || lineB == lineA && columnB >= columnA ||\n util.compareByGeneratedPositionsInflated(mappingA, mappingB) <= 0;\n}\n\n/**\n * A data structure to provide a sorted view of accumulated mappings in a\n * performance conscious manner. It trades a neglibable overhead in general\n * case for a large speedup in case of mappings being added in order.\n */\nfunction MappingList() {\n this._array = [];\n this._sorted = true;\n // Serves as infimum\n this._last = {generatedLine: -1, generatedColumn: 0};\n}\n\n/**\n * Iterate through internal items. This method takes the same arguments that\n * `Array.prototype.forEach` takes.\n *\n * NOTE: The order of the mappings is NOT guaranteed.\n */\nMappingList.prototype.unsortedForEach =\n function MappingList_forEach(aCallback, aThisArg) {\n this._array.forEach(aCallback, aThisArg);\n };\n\n/**\n * Add the given source mapping.\n *\n * @param Object aMapping\n */\nMappingList.prototype.add = function MappingList_add(aMapping) {\n if (generatedPositionAfter(this._last, aMapping)) {\n this._last = aMapping;\n this._array.push(aMapping);\n } else {\n this._sorted = false;\n this._array.push(aMapping);\n }\n};\n\n/**\n * Returns the flat, sorted array of mappings. The mappings are sorted by\n * generated position.\n *\n * WARNING: This method returns internal data without copying, for\n * performance. The return value must NOT be mutated, and should be treated as\n * an immutable borrow. If you want to take ownership, you must make your own\n * copy.\n */\nMappingList.prototype.toArray = function MappingList_toArray() {\n if (!this._sorted) {\n this._array.sort(util.compareByGeneratedPositionsInflated);\n this._sorted = true;\n }\n return this._array;\n};\n\nexports.MappingList = MappingList;\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar base64VLQ = require('./base64-vlq');\nvar util = require('./util');\nvar ArraySet = require('./array-set').ArraySet;\nvar MappingList = require('./mapping-list').MappingList;\n\n/**\n * An instance of the SourceMapGenerator represents a source map which is\n * being built incrementally. You may pass an object with the following\n * properties:\n *\n * - file: The filename of the generated source.\n * - sourceRoot: A root for all relative URLs in this source map.\n */\nfunction SourceMapGenerator(aArgs) {\n if (!aArgs) {\n aArgs = {};\n }\n this._file = util.getArg(aArgs, 'file', null);\n this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null);\n this._skipValidation = util.getArg(aArgs, 'skipValidation', false);\n this._sources = new ArraySet();\n this._names = new ArraySet();\n this._mappings = new MappingList();\n this._sourcesContents = null;\n}\n\nSourceMapGenerator.prototype._version = 3;\n\n/**\n * Creates a new SourceMapGenerator based on a SourceMapConsumer\n *\n * @param aSourceMapConsumer The SourceMap.\n */\nSourceMapGenerator.fromSourceMap =\n function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {\n var sourceRoot = aSourceMapConsumer.sourceRoot;\n var generator = new SourceMapGenerator({\n file: aSourceMapConsumer.file,\n sourceRoot: sourceRoot\n });\n aSourceMapConsumer.eachMapping(function (mapping) {\n var newMapping = {\n generated: {\n line: mapping.generatedLine,\n column: mapping.generatedColumn\n }\n };\n\n if (mapping.source != null) {\n newMapping.source = mapping.source;\n if (sourceRoot != null) {\n newMapping.source = util.relative(sourceRoot, newMapping.source);\n }\n\n newMapping.original = {\n line: mapping.originalLine,\n column: mapping.originalColumn\n };\n\n if (mapping.name != null) {\n newMapping.name = mapping.name;\n }\n }\n\n generator.addMapping(newMapping);\n });\n aSourceMapConsumer.sources.forEach(function (sourceFile) {\n var sourceRelative = sourceFile;\n if (sourceRoot !== null) {\n sourceRelative = util.relative(sourceRoot, sourceFile);\n }\n\n if (!generator._sources.has(sourceRelative)) {\n generator._sources.add(sourceRelative);\n }\n\n var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n if (content != null) {\n generator.setSourceContent(sourceFile, content);\n }\n });\n return generator;\n };\n\n/**\n * Add a single mapping from original source line and column to the generated\n * source's line and column for this source map being created. The mapping\n * object should have the following properties:\n *\n * - generated: An object with the generated line and column positions.\n * - original: An object with the original line and column positions.\n * - source: The original source file (relative to the sourceRoot).\n * - name: An optional original token name for this mapping.\n */\nSourceMapGenerator.prototype.addMapping =\n function SourceMapGenerator_addMapping(aArgs) {\n var generated = util.getArg(aArgs, 'generated');\n var original = util.getArg(aArgs, 'original', null);\n var source = util.getArg(aArgs, 'source', null);\n var name = util.getArg(aArgs, 'name', null);\n\n if (!this._skipValidation) {\n this._validateMapping(generated, original, source, name);\n }\n\n if (source != null) {\n source = String(source);\n if (!this._sources.has(source)) {\n this._sources.add(source);\n }\n }\n\n if (name != null) {\n name = String(name);\n if (!this._names.has(name)) {\n this._names.add(name);\n }\n }\n\n this._mappings.add({\n generatedLine: generated.line,\n generatedColumn: generated.column,\n originalLine: original != null && original.line,\n originalColumn: original != null && original.column,\n source: source,\n name: name\n });\n };\n\n/**\n * Set the source content for a source file.\n */\nSourceMapGenerator.prototype.setSourceContent =\n function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {\n var source = aSourceFile;\n if (this._sourceRoot != null) {\n source = util.relative(this._sourceRoot, source);\n }\n\n if (aSourceContent != null) {\n // Add the source content to the _sourcesContents map.\n // Create a new _sourcesContents map if the property is null.\n if (!this._sourcesContents) {\n this._sourcesContents = Object.create(null);\n }\n this._sourcesContents[util.toSetString(source)] = aSourceContent;\n } else if (this._sourcesContents) {\n // Remove the source file from the _sourcesContents map.\n // If the _sourcesContents map is empty, set the property to null.\n delete this._sourcesContents[util.toSetString(source)];\n if (Object.keys(this._sourcesContents).length === 0) {\n this._sourcesContents = null;\n }\n }\n };\n\n/**\n * Applies the mappings of a sub-source-map for a specific source file to the\n * source map being generated. Each mapping to the supplied source file is\n * rewritten using the supplied source map. Note: The resolution for the\n * resulting mappings is the minimium of this map and the supplied map.\n *\n * @param aSourceMapConsumer The source map to be applied.\n * @param aSourceFile Optional. The filename of the source file.\n * If omitted, SourceMapConsumer's file property will be used.\n * @param aSourceMapPath Optional. The dirname of the path to the source map\n * to be applied. If relative, it is relative to the SourceMapConsumer.\n * This parameter is needed when the two source maps aren't in the same\n * directory, and the source map to be applied contains relative source\n * paths. If so, those relative source paths need to be rewritten\n * relative to the SourceMapGenerator.\n */\nSourceMapGenerator.prototype.applySourceMap =\n function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {\n var sourceFile = aSourceFile;\n // If aSourceFile is omitted, we will use the file property of the SourceMap\n if (aSourceFile == null) {\n if (aSourceMapConsumer.file == null) {\n throw new Error(\n 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' +\n 'or the source map\\'s \"file\" property. Both were omitted.'\n );\n }\n sourceFile = aSourceMapConsumer.file;\n }\n var sourceRoot = this._sourceRoot;\n // Make \"sourceFile\" relative if an absolute Url is passed.\n if (sourceRoot != null) {\n sourceFile = util.relative(sourceRoot, sourceFile);\n }\n // Applying the SourceMap can add and remove items from the sources and\n // the names array.\n var newSources = new ArraySet();\n var newNames = new ArraySet();\n\n // Find mappings for the \"sourceFile\"\n this._mappings.unsortedForEach(function (mapping) {\n if (mapping.source === sourceFile && mapping.originalLine != null) {\n // Check if it can be mapped by the source map, then update the mapping.\n var original = aSourceMapConsumer.originalPositionFor({\n line: mapping.originalLine,\n column: mapping.originalColumn\n });\n if (original.source != null) {\n // Copy mapping\n mapping.source = original.source;\n if (aSourceMapPath != null) {\n mapping.source = util.join(aSourceMapPath, mapping.source)\n }\n if (sourceRoot != null) {\n mapping.source = util.relative(sourceRoot, mapping.source);\n }\n mapping.originalLine = original.line;\n mapping.originalColumn = original.column;\n if (original.name != null) {\n mapping.name = original.name;\n }\n }\n }\n\n var source = mapping.source;\n if (source != null && !newSources.has(source)) {\n newSources.add(source);\n }\n\n var name = mapping.name;\n if (name != null && !newNames.has(name)) {\n newNames.add(name);\n }\n\n }, this);\n this._sources = newSources;\n this._names = newNames;\n\n // Copy sourcesContents of applied map.\n aSourceMapConsumer.sources.forEach(function (sourceFile) {\n var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n if (content != null) {\n if (aSourceMapPath != null) {\n sourceFile = util.join(aSourceMapPath, sourceFile);\n }\n if (sourceRoot != null) {\n sourceFile = util.relative(sourceRoot, sourceFile);\n }\n this.setSourceContent(sourceFile, content);\n }\n }, this);\n };\n\n/**\n * A mapping can have one of the three levels of data:\n *\n * 1. Just the generated position.\n * 2. The Generated position, original position, and original source.\n * 3. Generated and original position, original source, as well as a name\n * token.\n *\n * To maintain consistency, we validate that any new mapping being added falls\n * in to one of these categories.\n */\nSourceMapGenerator.prototype._validateMapping =\n function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource,\n aName) {\n // When aOriginal is truthy but has empty values for .line and .column,\n // it is most likely a programmer error. In this case we throw a very\n // specific error message to try to guide them the right way.\n // For example: https://github.com/Polymer/polymer-bundler/pull/519\n if (aOriginal && typeof aOriginal.line !== 'number' && typeof aOriginal.column !== 'number') {\n throw new Error(\n 'original.line and original.column are not numbers -- you probably meant to omit ' +\n 'the original mapping entirely and only map the generated position. If so, pass ' +\n 'null for the original mapping instead of an object with empty or null values.'\n );\n }\n\n if (aGenerated && 'line' in aGenerated && 'column' in aGenerated\n && aGenerated.line > 0 && aGenerated.column >= 0\n && !aOriginal && !aSource && !aName) {\n // Case 1.\n return;\n }\n else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated\n && aOriginal && 'line' in aOriginal && 'column' in aOriginal\n && aGenerated.line > 0 && aGenerated.column >= 0\n && aOriginal.line > 0 && aOriginal.column >= 0\n && aSource) {\n // Cases 2 and 3.\n return;\n }\n else {\n throw new Error('Invalid mapping: ' + JSON.stringify({\n generated: aGenerated,\n source: aSource,\n original: aOriginal,\n name: aName\n }));\n }\n };\n\n/**\n * Serialize the accumulated mappings in to the stream of base 64 VLQs\n * specified by the source map format.\n */\nSourceMapGenerator.prototype._serializeMappings =\n function SourceMapGenerator_serializeMappings() {\n var previousGeneratedColumn = 0;\n var previousGeneratedLine = 1;\n var previousOriginalColumn = 0;\n var previousOriginalLine = 0;\n var previousName = 0;\n var previousSource = 0;\n var result = '';\n var next;\n var mapping;\n var nameIdx;\n var sourceIdx;\n\n var mappings = this._mappings.toArray();\n for (var i = 0, len = mappings.length; i < len; i++) {\n mapping = mappings[i];\n next = ''\n\n if (mapping.generatedLine !== previousGeneratedLine) {\n previousGeneratedColumn = 0;\n while (mapping.generatedLine !== previousGeneratedLine) {\n next += ';';\n previousGeneratedLine++;\n }\n }\n else {\n if (i > 0) {\n if (!util.compareByGeneratedPositionsInflated(mapping, mappings[i - 1])) {\n continue;\n }\n next += ',';\n }\n }\n\n next += base64VLQ.encode(mapping.generatedColumn\n - previousGeneratedColumn);\n previousGeneratedColumn = mapping.generatedColumn;\n\n if (mapping.source != null) {\n sourceIdx = this._sources.indexOf(mapping.source);\n next += base64VLQ.encode(sourceIdx - previousSource);\n previousSource = sourceIdx;\n\n // lines are stored 0-based in SourceMap spec version 3\n next += base64VLQ.encode(mapping.originalLine - 1\n - previousOriginalLine);\n previousOriginalLine = mapping.originalLine - 1;\n\n next += base64VLQ.encode(mapping.originalColumn\n - previousOriginalColumn);\n previousOriginalColumn = mapping.originalColumn;\n\n if (mapping.name != null) {\n nameIdx = this._names.indexOf(mapping.name);\n next += base64VLQ.encode(nameIdx - previousName);\n previousName = nameIdx;\n }\n }\n\n result += next;\n }\n\n return result;\n };\n\nSourceMapGenerator.prototype._generateSourcesContent =\n function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {\n return aSources.map(function (source) {\n if (!this._sourcesContents) {\n return null;\n }\n if (aSourceRoot != null) {\n source = util.relative(aSourceRoot, source);\n }\n var key = util.toSetString(source);\n return Object.prototype.hasOwnProperty.call(this._sourcesContents, key)\n ? this._sourcesContents[key]\n : null;\n }, this);\n };\n\n/**\n * Externalize the source map.\n */\nSourceMapGenerator.prototype.toJSON =\n function SourceMapGenerator_toJSON() {\n var map = {\n version: this._version,\n sources: this._sources.toArray(),\n names: this._names.toArray(),\n mappings: this._serializeMappings()\n };\n if (this._file != null) {\n map.file = this._file;\n }\n if (this._sourceRoot != null) {\n map.sourceRoot = this._sourceRoot;\n }\n if (this._sourcesContents) {\n map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot);\n }\n\n return map;\n };\n\n/**\n * Render the source map being generated to a string.\n */\nSourceMapGenerator.prototype.toString =\n function SourceMapGenerator_toString() {\n return JSON.stringify(this.toJSON());\n };\n\nexports.SourceMapGenerator = SourceMapGenerator;\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nexports.GREATEST_LOWER_BOUND = 1;\nexports.LEAST_UPPER_BOUND = 2;\n\n/**\n * Recursive implementation of binary search.\n *\n * @param aLow Indices here and lower do not contain the needle.\n * @param aHigh Indices here and higher do not contain the needle.\n * @param aNeedle The element being searched for.\n * @param aHaystack The non-empty array being searched.\n * @param aCompare Function which takes two elements and returns -1, 0, or 1.\n * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or\n * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the\n * closest element that is smaller than or greater than the one we are\n * searching for, respectively, if the exact element cannot be found.\n */\nfunction recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare, aBias) {\n // This function terminates when one of the following is true:\n //\n // 1. We find the exact element we are looking for.\n //\n // 2. We did not find the exact element, but we can return the index of\n // the next-closest element.\n //\n // 3. We did not find the exact element, and there is no next-closest\n // element than the one we are searching for, so we return -1.\n var mid = Math.floor((aHigh - aLow) / 2) + aLow;\n var cmp = aCompare(aNeedle, aHaystack[mid], true);\n if (cmp === 0) {\n // Found the element we are looking for.\n return mid;\n }\n else if (cmp > 0) {\n // Our needle is greater than aHaystack[mid].\n if (aHigh - mid > 1) {\n // The element is in the upper half.\n return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare, aBias);\n }\n\n // The exact needle element was not found in this haystack. Determine if\n // we are in termination case (3) or (2) and return the appropriate thing.\n if (aBias == exports.LEAST_UPPER_BOUND) {\n return aHigh < aHaystack.length ? aHigh : -1;\n } else {\n return mid;\n }\n }\n else {\n // Our needle is less than aHaystack[mid].\n if (mid - aLow > 1) {\n // The element is in the lower half.\n return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare, aBias);\n }\n\n // we are in termination case (3) or (2) and return the appropriate thing.\n if (aBias == exports.LEAST_UPPER_BOUND) {\n return mid;\n } else {\n return aLow < 0 ? -1 : aLow;\n }\n }\n}\n\n/**\n * This is an implementation of binary search which will always try and return\n * the index of the closest element if there is no exact hit. This is because\n * mappings between original and generated line/col pairs are single points,\n * and there is an implicit region between each of them, so a miss just means\n * that you aren't on the very start of a region.\n *\n * @param aNeedle The element you are looking for.\n * @param aHaystack The array that is being searched.\n * @param aCompare A function which takes the needle and an element in the\n * array and returns -1, 0, or 1 depending on whether the needle is less\n * than, equal to, or greater than the element, respectively.\n * @param aBias Either 'binarySearch.GREATEST_LOWER_BOUND' or\n * 'binarySearch.LEAST_UPPER_BOUND'. Specifies whether to return the\n * closest element that is smaller than or greater than the one we are\n * searching for, respectively, if the exact element cannot be found.\n * Defaults to 'binarySearch.GREATEST_LOWER_BOUND'.\n */\nexports.search = function search(aNeedle, aHaystack, aCompare, aBias) {\n if (aHaystack.length === 0) {\n return -1;\n }\n\n var index = recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack,\n aCompare, aBias || exports.GREATEST_LOWER_BOUND);\n if (index < 0) {\n return -1;\n }\n\n // We have found either the exact element, or the next-closest element than\n // the one we are searching for. However, there may be more than one such\n // element. Make sure we always return the smallest of these.\n while (index - 1 >= 0) {\n if (aCompare(aHaystack[index], aHaystack[index - 1], true) !== 0) {\n break;\n }\n --index;\n }\n\n return index;\n};\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\n// It turns out that some (most?) JavaScript engines don't self-host\n// `Array.prototype.sort`. This makes sense because C++ will likely remain\n// faster than JS when doing raw CPU-intensive sorting. However, when using a\n// custom comparator function, calling back and forth between the VM's C++ and\n// JIT'd JS is rather slow *and* loses JIT type information, resulting in\n// worse generated code for the comparator function than would be optimal. In\n// fact, when sorting with a comparator, these costs outweigh the benefits of\n// sorting in C++. By using our own JS-implemented Quick Sort (below), we get\n// a ~3500ms mean speed-up in `bench/bench.html`.\n\n/**\n * Swap the elements indexed by `x` and `y` in the array `ary`.\n *\n * @param {Array} ary\n * The array.\n * @param {Number} x\n * The index of the first item.\n * @param {Number} y\n * The index of the second item.\n */\nfunction swap(ary, x, y) {\n var temp = ary[x];\n ary[x] = ary[y];\n ary[y] = temp;\n}\n\n/**\n * Returns a random integer within the range `low .. high` inclusive.\n *\n * @param {Number} low\n * The lower bound on the range.\n * @param {Number} high\n * The upper bound on the range.\n */\nfunction randomIntInRange(low, high) {\n return Math.round(low + (Math.random() * (high - low)));\n}\n\n/**\n * The Quick Sort algorithm.\n *\n * @param {Array} ary\n * An array to sort.\n * @param {function} comparator\n * Function to use to compare two items.\n * @param {Number} p\n * Start index of the array\n * @param {Number} r\n * End index of the array\n */\nfunction doQuickSort(ary, comparator, p, r) {\n // If our lower bound is less than our upper bound, we (1) partition the\n // array into two pieces and (2) recurse on each half. If it is not, this is\n // the empty array and our base case.\n\n if (p < r) {\n // (1) Partitioning.\n //\n // The partitioning chooses a pivot between `p` and `r` and moves all\n // elements that are less than or equal to the pivot to the before it, and\n // all the elements that are greater than it after it. The effect is that\n // once partition is done, the pivot is in the exact place it will be when\n // the array is put in sorted order, and it will not need to be moved\n // again. This runs in O(n) time.\n\n // Always choose a random pivot so that an input array which is reverse\n // sorted does not cause O(n^2) running time.\n var pivotIndex = randomIntInRange(p, r);\n var i = p - 1;\n\n swap(ary, pivotIndex, r);\n var pivot = ary[r];\n\n // Immediately after `j` is incremented in this loop, the following hold\n // true:\n //\n // * Every element in `ary[p .. i]` is less than or equal to the pivot.\n //\n // * Every element in `ary[i+1 .. j-1]` is greater than the pivot.\n for (var j = p; j < r; j++) {\n if (comparator(ary[j], pivot) <= 0) {\n i += 1;\n swap(ary, i, j);\n }\n }\n\n swap(ary, i + 1, j);\n var q = i + 1;\n\n // (2) Recurse on each half.\n\n doQuickSort(ary, comparator, p, q - 1);\n doQuickSort(ary, comparator, q + 1, r);\n }\n}\n\n/**\n * Sort the given array in-place with the given comparator function.\n *\n * @param {Array} ary\n * An array to sort.\n * @param {function} comparator\n * Function to use to compare two items.\n */\nexports.quickSort = function (ary, comparator) {\n doQuickSort(ary, comparator, 0, ary.length - 1);\n};\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar util = require('./util');\nvar binarySearch = require('./binary-search');\nvar ArraySet = require('./array-set').ArraySet;\nvar base64VLQ = require('./base64-vlq');\nvar quickSort = require('./quick-sort').quickSort;\n\nfunction SourceMapConsumer(aSourceMap, aSourceMapURL) {\n var sourceMap = aSourceMap;\n if (typeof aSourceMap === 'string') {\n sourceMap = util.parseSourceMapInput(aSourceMap);\n }\n\n return sourceMap.sections != null\n ? new IndexedSourceMapConsumer(sourceMap, aSourceMapURL)\n : new BasicSourceMapConsumer(sourceMap, aSourceMapURL);\n}\n\nSourceMapConsumer.fromSourceMap = function(aSourceMap, aSourceMapURL) {\n return BasicSourceMapConsumer.fromSourceMap(aSourceMap, aSourceMapURL);\n}\n\n/**\n * The version of the source mapping spec that we are consuming.\n */\nSourceMapConsumer.prototype._version = 3;\n\n// `__generatedMappings` and `__originalMappings` are arrays that hold the\n// parsed mapping coordinates from the source map's \"mappings\" attribute. They\n// are lazily instantiated, accessed via the `_generatedMappings` and\n// `_originalMappings` getters respectively, and we only parse the mappings\n// and create these arrays once queried for a source location. We jump through\n// these hoops because there can be many thousands of mappings, and parsing\n// them is expensive, so we only want to do it if we must.\n//\n// Each object in the arrays is of the form:\n//\n// {\n// generatedLine: The line number in the generated code,\n// generatedColumn: The column number in the generated code,\n// source: The path to the original source file that generated this\n// chunk of code,\n// originalLine: The line number in the original source that\n// corresponds to this chunk of generated code,\n// originalColumn: The column number in the original source that\n// corresponds to this chunk of generated code,\n// name: The name of the original symbol which generated this chunk of\n// code.\n// }\n//\n// All properties except for `generatedLine` and `generatedColumn` can be\n// `null`.\n//\n// `_generatedMappings` is ordered by the generated positions.\n//\n// `_originalMappings` is ordered by the original positions.\n\nSourceMapConsumer.prototype.__generatedMappings = null;\nObject.defineProperty(SourceMapConsumer.prototype, '_generatedMappings', {\n configurable: true,\n enumerable: true,\n get: function () {\n if (!this.__generatedMappings) {\n this._parseMappings(this._mappings, this.sourceRoot);\n }\n\n return this.__generatedMappings;\n }\n});\n\nSourceMapConsumer.prototype.__originalMappings = null;\nObject.defineProperty(SourceMapConsumer.prototype, '_originalMappings', {\n configurable: true,\n enumerable: true,\n get: function () {\n if (!this.__originalMappings) {\n this._parseMappings(this._mappings, this.sourceRoot);\n }\n\n return this.__originalMappings;\n }\n});\n\nSourceMapConsumer.prototype._charIsMappingSeparator =\n function SourceMapConsumer_charIsMappingSeparator(aStr, index) {\n var c = aStr.charAt(index);\n return c === \";\" || c === \",\";\n };\n\n/**\n * Parse the mappings in a string in to a data structure which we can easily\n * query (the ordered arrays in the `this.__generatedMappings` and\n * `this.__originalMappings` properties).\n */\nSourceMapConsumer.prototype._parseMappings =\n function SourceMapConsumer_parseMappings(aStr, aSourceRoot) {\n throw new Error(\"Subclasses must implement _parseMappings\");\n };\n\nSourceMapConsumer.GENERATED_ORDER = 1;\nSourceMapConsumer.ORIGINAL_ORDER = 2;\n\nSourceMapConsumer.GREATEST_LOWER_BOUND = 1;\nSourceMapConsumer.LEAST_UPPER_BOUND = 2;\n\n/**\n * Iterate over each mapping between an original source/line/column and a\n * generated line/column in this source map.\n *\n * @param Function aCallback\n * The function that is called with each mapping.\n * @param Object aContext\n * Optional. If specified, this object will be the value of `this` every\n * time that `aCallback` is called.\n * @param aOrder\n * Either `SourceMapConsumer.GENERATED_ORDER` or\n * `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to\n * iterate over the mappings sorted by the generated file's line/column\n * order or the original's source/line/column order, respectively. Defaults to\n * `SourceMapConsumer.GENERATED_ORDER`.\n */\nSourceMapConsumer.prototype.eachMapping =\n function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) {\n var context = aContext || null;\n var order = aOrder || SourceMapConsumer.GENERATED_ORDER;\n\n var mappings;\n switch (order) {\n case SourceMapConsumer.GENERATED_ORDER:\n mappings = this._generatedMappings;\n break;\n case SourceMapConsumer.ORIGINAL_ORDER:\n mappings = this._originalMappings;\n break;\n default:\n throw new Error(\"Unknown order of iteration.\");\n }\n\n var sourceRoot = this.sourceRoot;\n mappings.map(function (mapping) {\n var source = mapping.source === null ? null : this._sources.at(mapping.source);\n source = util.computeSourceURL(sourceRoot, source, this._sourceMapURL);\n return {\n source: source,\n generatedLine: mapping.generatedLine,\n generatedColumn: mapping.generatedColumn,\n originalLine: mapping.originalLine,\n originalColumn: mapping.originalColumn,\n name: mapping.name === null ? null : this._names.at(mapping.name)\n };\n }, this).forEach(aCallback, context);\n };\n\n/**\n * Returns all generated line and column information for the original source,\n * line, and column provided. If no column is provided, returns all mappings\n * corresponding to a either the line we are searching for or the next\n * closest line that has any mappings. Otherwise, returns all mappings\n * corresponding to the given line and either the column we are searching for\n * or the next closest column that has any offsets.\n *\n * The only argument is an object with the following properties:\n *\n * - source: The filename of the original source.\n * - line: The line number in the original source. The line number is 1-based.\n * - column: Optional. the column number in the original source.\n * The column number is 0-based.\n *\n * and an array of objects is returned, each with the following properties:\n *\n * - line: The line number in the generated source, or null. The\n * line number is 1-based.\n * - column: The column number in the generated source, or null.\n * The column number is 0-based.\n */\nSourceMapConsumer.prototype.allGeneratedPositionsFor =\n function SourceMapConsumer_allGeneratedPositionsFor(aArgs) {\n var line = util.getArg(aArgs, 'line');\n\n // When there is no exact match, BasicSourceMapConsumer.prototype._findMapping\n // returns the index of the closest mapping less than the needle. By\n // setting needle.originalColumn to 0, we thus find the last mapping for\n // the given line, provided such a mapping exists.\n var needle = {\n source: util.getArg(aArgs, 'source'),\n originalLine: line,\n originalColumn: util.getArg(aArgs, 'column', 0)\n };\n\n needle.source = this._findSourceIndex(needle.source);\n if (needle.source < 0) {\n return [];\n }\n\n var mappings = [];\n\n var index = this._findMapping(needle,\n this._originalMappings,\n \"originalLine\",\n \"originalColumn\",\n util.compareByOriginalPositions,\n binarySearch.LEAST_UPPER_BOUND);\n if (index >= 0) {\n var mapping = this._originalMappings[index];\n\n if (aArgs.column === undefined) {\n var originalLine = mapping.originalLine;\n\n // Iterate until either we run out of mappings, or we run into\n // a mapping for a different line than the one we found. Since\n // mappings are sorted, this is guaranteed to find all mappings for\n // the line we found.\n while (mapping && mapping.originalLine === originalLine) {\n mappings.push({\n line: util.getArg(mapping, 'generatedLine', null),\n column: util.getArg(mapping, 'generatedColumn', null),\n lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null)\n });\n\n mapping = this._originalMappings[++index];\n }\n } else {\n var originalColumn = mapping.originalColumn;\n\n // Iterate until either we run out of mappings, or we run into\n // a mapping for a different line than the one we were searching for.\n // Since mappings are sorted, this is guaranteed to find all mappings for\n // the line we are searching for.\n while (mapping &&\n mapping.originalLine === line &&\n mapping.originalColumn == originalColumn) {\n mappings.push({\n line: util.getArg(mapping, 'generatedLine', null),\n column: util.getArg(mapping, 'generatedColumn', null),\n lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null)\n });\n\n mapping = this._originalMappings[++index];\n }\n }\n }\n\n return mappings;\n };\n\nexports.SourceMapConsumer = SourceMapConsumer;\n\n/**\n * A BasicSourceMapConsumer instance represents a parsed source map which we can\n * query for information about the original file positions by giving it a file\n * position in the generated source.\n *\n * The first parameter is the raw source map (either as a JSON string, or\n * already parsed to an object). According to the spec, source maps have the\n * following attributes:\n *\n * - version: Which version of the source map spec this map is following.\n * - sources: An array of URLs to the original source files.\n * - names: An array of identifiers which can be referrenced by individual mappings.\n * - sourceRoot: Optional. The URL root from which all sources are relative.\n * - sourcesContent: Optional. An array of contents of the original source files.\n * - mappings: A string of base64 VLQs which contain the actual mappings.\n * - file: Optional. The generated file this source map is associated with.\n *\n * Here is an example source map, taken from the source map spec[0]:\n *\n * {\n * version : 3,\n * file: \"out.js\",\n * sourceRoot : \"\",\n * sources: [\"foo.js\", \"bar.js\"],\n * names: [\"src\", \"maps\", \"are\", \"fun\"],\n * mappings: \"AA,AB;;ABCDE;\"\n * }\n *\n * The second parameter, if given, is a string whose value is the URL\n * at which the source map was found. This URL is used to compute the\n * sources array.\n *\n * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit?pli=1#\n */\nfunction BasicSourceMapConsumer(aSourceMap, aSourceMapURL) {\n var sourceMap = aSourceMap;\n if (typeof aSourceMap === 'string') {\n sourceMap = util.parseSourceMapInput(aSourceMap);\n }\n\n var version = util.getArg(sourceMap, 'version');\n var sources = util.getArg(sourceMap, 'sources');\n // Sass 3.3 leaves out the 'names' array, so we deviate from the spec (which\n // requires the array) to play nice here.\n var names = util.getArg(sourceMap, 'names', []);\n var sourceRoot = util.getArg(sourceMap, 'sourceRoot', null);\n var sourcesContent = util.getArg(sourceMap, 'sourcesContent', null);\n var mappings = util.getArg(sourceMap, 'mappings');\n var file = util.getArg(sourceMap, 'file', null);\n\n // Once again, Sass deviates from the spec and supplies the version as a\n // string rather than a number, so we use loose equality checking here.\n if (version != this._version) {\n throw new Error('Unsupported version: ' + version);\n }\n\n if (sourceRoot) {\n sourceRoot = util.normalize(sourceRoot);\n }\n\n sources = sources\n .map(String)\n // Some source maps produce relative source paths like \"./foo.js\" instead of\n // \"foo.js\". Normalize these first so that future comparisons will succeed.\n // See bugzil.la/1090768.\n .map(util.normalize)\n // Always ensure that absolute sources are internally stored relative to\n // the source root, if the source root is absolute. Not doing this would\n // be particularly problematic when the source root is a prefix of the\n // source (valid, but why??). See github issue #199 and bugzil.la/1188982.\n .map(function (source) {\n return sourceRoot && util.isAbsolute(sourceRoot) && util.isAbsolute(source)\n ? util.relative(sourceRoot, source)\n : source;\n });\n\n // Pass `true` below to allow duplicate names and sources. While source maps\n // are intended to be compressed and deduplicated, the TypeScript compiler\n // sometimes generates source maps with duplicates in them. See Github issue\n // #72 and bugzil.la/889492.\n this._names = ArraySet.fromArray(names.map(String), true);\n this._sources = ArraySet.fromArray(sources, true);\n\n this._absoluteSources = this._sources.toArray().map(function (s) {\n return util.computeSourceURL(sourceRoot, s, aSourceMapURL);\n });\n\n this.sourceRoot = sourceRoot;\n this.sourcesContent = sourcesContent;\n this._mappings = mappings;\n this._sourceMapURL = aSourceMapURL;\n this.file = file;\n}\n\nBasicSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype);\nBasicSourceMapConsumer.prototype.consumer = SourceMapConsumer;\n\n/**\n * Utility function to find the index of a source. Returns -1 if not\n * found.\n */\nBasicSourceMapConsumer.prototype._findSourceIndex = function(aSource) {\n var relativeSource = aSource;\n if (this.sourceRoot != null) {\n relativeSource = util.relative(this.sourceRoot, relativeSource);\n }\n\n if (this._sources.has(relativeSource)) {\n return this._sources.indexOf(relativeSource);\n }\n\n // Maybe aSource is an absolute URL as returned by |sources|. In\n // this case we can't simply undo the transform.\n var i;\n for (i = 0; i < this._absoluteSources.length; ++i) {\n if (this._absoluteSources[i] == aSource) {\n return i;\n }\n }\n\n return -1;\n};\n\n/**\n * Create a BasicSourceMapConsumer from a SourceMapGenerator.\n *\n * @param SourceMapGenerator aSourceMap\n * The source map that will be consumed.\n * @param String aSourceMapURL\n * The URL at which the source map can be found (optional)\n * @returns BasicSourceMapConsumer\n */\nBasicSourceMapConsumer.fromSourceMap =\n function SourceMapConsumer_fromSourceMap(aSourceMap, aSourceMapURL) {\n var smc = Object.create(BasicSourceMapConsumer.prototype);\n\n var names = smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true);\n var sources = smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true);\n smc.sourceRoot = aSourceMap._sourceRoot;\n smc.sourcesContent = aSourceMap._generateSourcesContent(smc._sources.toArray(),\n smc.sourceRoot);\n smc.file = aSourceMap._file;\n smc._sourceMapURL = aSourceMapURL;\n smc._absoluteSources = smc._sources.toArray().map(function (s) {\n return util.computeSourceURL(smc.sourceRoot, s, aSourceMapURL);\n });\n\n // Because we are modifying the entries (by converting string sources and\n // names to indices into the sources and names ArraySets), we have to make\n // a copy of the entry or else bad things happen. Shared mutable state\n // strikes again! See github issue #191.\n\n var generatedMappings = aSourceMap._mappings.toArray().slice();\n var destGeneratedMappings = smc.__generatedMappings = [];\n var destOriginalMappings = smc.__originalMappings = [];\n\n for (var i = 0, length = generatedMappings.length; i < length; i++) {\n var srcMapping = generatedMappings[i];\n var destMapping = new Mapping;\n destMapping.generatedLine = srcMapping.generatedLine;\n destMapping.generatedColumn = srcMapping.generatedColumn;\n\n if (srcMapping.source) {\n destMapping.source = sources.indexOf(srcMapping.source);\n destMapping.originalLine = srcMapping.originalLine;\n destMapping.originalColumn = srcMapping.originalColumn;\n\n if (srcMapping.name) {\n destMapping.name = names.indexOf(srcMapping.name);\n }\n\n destOriginalMappings.push(destMapping);\n }\n\n destGeneratedMappings.push(destMapping);\n }\n\n quickSort(smc.__originalMappings, util.compareByOriginalPositions);\n\n return smc;\n };\n\n/**\n * The version of the source mapping spec that we are consuming.\n */\nBasicSourceMapConsumer.prototype._version = 3;\n\n/**\n * The list of original sources.\n */\nObject.defineProperty(BasicSourceMapConsumer.prototype, 'sources', {\n get: function () {\n return this._absoluteSources.slice();\n }\n});\n\n/**\n * Provide the JIT with a nice shape / hidden class.\n */\nfunction Mapping() {\n this.generatedLine = 0;\n this.generatedColumn = 0;\n this.source = null;\n this.originalLine = null;\n this.originalColumn = null;\n this.name = null;\n}\n\n/**\n * Parse the mappings in a string in to a data structure which we can easily\n * query (the ordered arrays in the `this.__generatedMappings` and\n * `this.__originalMappings` properties).\n */\nBasicSourceMapConsumer.prototype._parseMappings =\n function SourceMapConsumer_parseMappings(aStr, aSourceRoot) {\n var generatedLine = 1;\n var previousGeneratedColumn = 0;\n var previousOriginalLine = 0;\n var previousOriginalColumn = 0;\n var previousSource = 0;\n var previousName = 0;\n var length = aStr.length;\n var index = 0;\n var cachedSegments = {};\n var temp = {};\n var originalMappings = [];\n var generatedMappings = [];\n var mapping, str, segment, end, value;\n\n while (index < length) {\n if (aStr.charAt(index) === ';') {\n generatedLine++;\n index++;\n previousGeneratedColumn = 0;\n }\n else if (aStr.charAt(index) === ',') {\n index++;\n }\n else {\n mapping = new Mapping();\n mapping.generatedLine = generatedLine;\n\n // Because each offset is encoded relative to the previous one,\n // many segments often have the same encoding. We can exploit this\n // fact by caching the parsed variable length fields of each segment,\n // allowing us to avoid a second parse if we encounter the same\n // segment again.\n for (end = index; end < length; end++) {\n if (this._charIsMappingSeparator(aStr, end)) {\n break;\n }\n }\n str = aStr.slice(index, end);\n\n segment = cachedSegments[str];\n if (segment) {\n index += str.length;\n } else {\n segment = [];\n while (index < end) {\n base64VLQ.decode(aStr, index, temp);\n value = temp.value;\n index = temp.rest;\n segment.push(value);\n }\n\n if (segment.length === 2) {\n throw new Error('Found a source, but no line and column');\n }\n\n if (segment.length === 3) {\n throw new Error('Found a source and line, but no column');\n }\n\n cachedSegments[str] = segment;\n }\n\n // Generated column.\n mapping.generatedColumn = previousGeneratedColumn + segment[0];\n previousGeneratedColumn = mapping.generatedColumn;\n\n if (segment.length > 1) {\n // Original source.\n mapping.source = previousSource + segment[1];\n previousSource += segment[1];\n\n // Original line.\n mapping.originalLine = previousOriginalLine + segment[2];\n previousOriginalLine = mapping.originalLine;\n // Lines are stored 0-based\n mapping.originalLine += 1;\n\n // Original column.\n mapping.originalColumn = previousOriginalColumn + segment[3];\n previousOriginalColumn = mapping.originalColumn;\n\n if (segment.length > 4) {\n // Original name.\n mapping.name = previousName + segment[4];\n previousName += segment[4];\n }\n }\n\n generatedMappings.push(mapping);\n if (typeof mapping.originalLine === 'number') {\n originalMappings.push(mapping);\n }\n }\n }\n\n quickSort(generatedMappings, util.compareByGeneratedPositionsDeflated);\n this.__generatedMappings = generatedMappings;\n\n quickSort(originalMappings, util.compareByOriginalPositions);\n this.__originalMappings = originalMappings;\n };\n\n/**\n * Find the mapping that best matches the hypothetical \"needle\" mapping that\n * we are searching for in the given \"haystack\" of mappings.\n */\nBasicSourceMapConsumer.prototype._findMapping =\n function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName,\n aColumnName, aComparator, aBias) {\n // To return the position we are searching for, we must first find the\n // mapping for the given position and then return the opposite position it\n // points to. Because the mappings are sorted, we can use binary search to\n // find the best mapping.\n\n if (aNeedle[aLineName] <= 0) {\n throw new TypeError('Line must be greater than or equal to 1, got '\n + aNeedle[aLineName]);\n }\n if (aNeedle[aColumnName] < 0) {\n throw new TypeError('Column must be greater than or equal to 0, got '\n + aNeedle[aColumnName]);\n }\n\n return binarySearch.search(aNeedle, aMappings, aComparator, aBias);\n };\n\n/**\n * Compute the last column for each generated mapping. The last column is\n * inclusive.\n */\nBasicSourceMapConsumer.prototype.computeColumnSpans =\n function SourceMapConsumer_computeColumnSpans() {\n for (var index = 0; index < this._generatedMappings.length; ++index) {\n var mapping = this._generatedMappings[index];\n\n // Mappings do not contain a field for the last generated columnt. We\n // can come up with an optimistic estimate, however, by assuming that\n // mappings are contiguous (i.e. given two consecutive mappings, the\n // first mapping ends where the second one starts).\n if (index + 1 < this._generatedMappings.length) {\n var nextMapping = this._generatedMappings[index + 1];\n\n if (mapping.generatedLine === nextMapping.generatedLine) {\n mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1;\n continue;\n }\n }\n\n // The last mapping for each line spans the entire line.\n mapping.lastGeneratedColumn = Infinity;\n }\n };\n\n/**\n * Returns the original source, line, and column information for the generated\n * source's line and column positions provided. The only argument is an object\n * with the following properties:\n *\n * - line: The line number in the generated source. The line number\n * is 1-based.\n * - column: The column number in the generated source. The column\n * number is 0-based.\n * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or\n * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the\n * closest element that is smaller than or greater than the one we are\n * searching for, respectively, if the exact element cannot be found.\n * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'.\n *\n * and an object is returned with the following properties:\n *\n * - source: The original source file, or null.\n * - line: The line number in the original source, or null. The\n * line number is 1-based.\n * - column: The column number in the original source, or null. The\n * column number is 0-based.\n * - name: The original identifier, or null.\n */\nBasicSourceMapConsumer.prototype.originalPositionFor =\n function SourceMapConsumer_originalPositionFor(aArgs) {\n var needle = {\n generatedLine: util.getArg(aArgs, 'line'),\n generatedColumn: util.getArg(aArgs, 'column')\n };\n\n var index = this._findMapping(\n needle,\n this._generatedMappings,\n \"generatedLine\",\n \"generatedColumn\",\n util.compareByGeneratedPositionsDeflated,\n util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND)\n );\n\n if (index >= 0) {\n var mapping = this._generatedMappings[index];\n\n if (mapping.generatedLine === needle.generatedLine) {\n var source = util.getArg(mapping, 'source', null);\n if (source !== null) {\n source = this._sources.at(source);\n source = util.computeSourceURL(this.sourceRoot, source, this._sourceMapURL);\n }\n var name = util.getArg(mapping, 'name', null);\n if (name !== null) {\n name = this._names.at(name);\n }\n return {\n source: source,\n line: util.getArg(mapping, 'originalLine', null),\n column: util.getArg(mapping, 'originalColumn', null),\n name: name\n };\n }\n }\n\n return {\n source: null,\n line: null,\n column: null,\n name: null\n };\n };\n\n/**\n * Return true if we have the source content for every source in the source\n * map, false otherwise.\n */\nBasicSourceMapConsumer.prototype.hasContentsOfAllSources =\n function BasicSourceMapConsumer_hasContentsOfAllSources() {\n if (!this.sourcesContent) {\n return false;\n }\n return this.sourcesContent.length >= this._sources.size() &&\n !this.sourcesContent.some(function (sc) { return sc == null; });\n };\n\n/**\n * Returns the original source content. The only argument is the url of the\n * original source file. Returns null if no original source content is\n * available.\n */\nBasicSourceMapConsumer.prototype.sourceContentFor =\n function SourceMapConsumer_sourceContentFor(aSource, nullOnMissing) {\n if (!this.sourcesContent) {\n return null;\n }\n\n var index = this._findSourceIndex(aSource);\n if (index >= 0) {\n return this.sourcesContent[index];\n }\n\n var relativeSource = aSource;\n if (this.sourceRoot != null) {\n relativeSource = util.relative(this.sourceRoot, relativeSource);\n }\n\n var url;\n if (this.sourceRoot != null\n && (url = util.urlParse(this.sourceRoot))) {\n // XXX: file:// URIs and absolute paths lead to unexpected behavior for\n // many users. We can help them out when they expect file:// URIs to\n // behave like it would if they were running a local HTTP server. See\n // https://bugzilla.mozilla.org/show_bug.cgi?id=885597.\n var fileUriAbsPath = relativeSource.replace(/^file:\\/\\//, \"\");\n if (url.scheme == \"file\"\n && this._sources.has(fileUriAbsPath)) {\n return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)]\n }\n\n if ((!url.path || url.path == \"/\")\n && this._sources.has(\"/\" + relativeSource)) {\n return this.sourcesContent[this._sources.indexOf(\"/\" + relativeSource)];\n }\n }\n\n // This function is used recursively from\n // IndexedSourceMapConsumer.prototype.sourceContentFor. In that case, we\n // don't want to throw if we can't find the source - we just want to\n // return null, so we provide a flag to exit gracefully.\n if (nullOnMissing) {\n return null;\n }\n else {\n throw new Error('\"' + relativeSource + '\" is not in the SourceMap.');\n }\n };\n\n/**\n * Returns the generated line and column information for the original source,\n * line, and column positions provided. The only argument is an object with\n * the following properties:\n *\n * - source: The filename of the original source.\n * - line: The line number in the original source. The line number\n * is 1-based.\n * - column: The column number in the original source. The column\n * number is 0-based.\n * - bias: Either 'SourceMapConsumer.GREATEST_LOWER_BOUND' or\n * 'SourceMapConsumer.LEAST_UPPER_BOUND'. Specifies whether to return the\n * closest element that is smaller than or greater than the one we are\n * searching for, respectively, if the exact element cannot be found.\n * Defaults to 'SourceMapConsumer.GREATEST_LOWER_BOUND'.\n *\n * and an object is returned with the following properties:\n *\n * - line: The line number in the generated source, or null. The\n * line number is 1-based.\n * - column: The column number in the generated source, or null.\n * The column number is 0-based.\n */\nBasicSourceMapConsumer.prototype.generatedPositionFor =\n function SourceMapConsumer_generatedPositionFor(aArgs) {\n var source = util.getArg(aArgs, 'source');\n source = this._findSourceIndex(source);\n if (source < 0) {\n return {\n line: null,\n column: null,\n lastColumn: null\n };\n }\n\n var needle = {\n source: source,\n originalLine: util.getArg(aArgs, 'line'),\n originalColumn: util.getArg(aArgs, 'column')\n };\n\n var index = this._findMapping(\n needle,\n this._originalMappings,\n \"originalLine\",\n \"originalColumn\",\n util.compareByOriginalPositions,\n util.getArg(aArgs, 'bias', SourceMapConsumer.GREATEST_LOWER_BOUND)\n );\n\n if (index >= 0) {\n var mapping = this._originalMappings[index];\n\n if (mapping.source === needle.source) {\n return {\n line: util.getArg(mapping, 'generatedLine', null),\n column: util.getArg(mapping, 'generatedColumn', null),\n lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null)\n };\n }\n }\n\n return {\n line: null,\n column: null,\n lastColumn: null\n };\n };\n\nexports.BasicSourceMapConsumer = BasicSourceMapConsumer;\n\n/**\n * An IndexedSourceMapConsumer instance represents a parsed source map which\n * we can query for information. It differs from BasicSourceMapConsumer in\n * that it takes \"indexed\" source maps (i.e. ones with a \"sections\" field) as\n * input.\n *\n * The first parameter is a raw source map (either as a JSON string, or already\n * parsed to an object). According to the spec for indexed source maps, they\n * have the following attributes:\n *\n * - version: Which version of the source map spec this map is following.\n * - file: Optional. The generated file this source map is associated with.\n * - sections: A list of section definitions.\n *\n * Each value under the \"sections\" field has two fields:\n * - offset: The offset into the original specified at which this section\n * begins to apply, defined as an object with a \"line\" and \"column\"\n * field.\n * - map: A source map definition. This source map could also be indexed,\n * but doesn't have to be.\n *\n * Instead of the \"map\" field, it's also possible to have a \"url\" field\n * specifying a URL to retrieve a source map from, but that's currently\n * unsupported.\n *\n * Here's an example source map, taken from the source map spec[0], but\n * modified to omit a section which uses the \"url\" field.\n *\n * {\n * version : 3,\n * file: \"app.js\",\n * sections: [{\n * offset: {line:100, column:10},\n * map: {\n * version : 3,\n * file: \"section.js\",\n * sources: [\"foo.js\", \"bar.js\"],\n * names: [\"src\", \"maps\", \"are\", \"fun\"],\n * mappings: \"AAAA,E;;ABCDE;\"\n * }\n * }],\n * }\n *\n * The second parameter, if given, is a string whose value is the URL\n * at which the source map was found. This URL is used to compute the\n * sources array.\n *\n * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit#heading=h.535es3xeprgt\n */\nfunction IndexedSourceMapConsumer(aSourceMap, aSourceMapURL) {\n var sourceMap = aSourceMap;\n if (typeof aSourceMap === 'string') {\n sourceMap = util.parseSourceMapInput(aSourceMap);\n }\n\n var version = util.getArg(sourceMap, 'version');\n var sections = util.getArg(sourceMap, 'sections');\n\n if (version != this._version) {\n throw new Error('Unsupported version: ' + version);\n }\n\n this._sources = new ArraySet();\n this._names = new ArraySet();\n\n var lastOffset = {\n line: -1,\n column: 0\n };\n this._sections = sections.map(function (s) {\n if (s.url) {\n // The url field will require support for asynchronicity.\n // See https://github.com/mozilla/source-map/issues/16\n throw new Error('Support for url field in sections not implemented.');\n }\n var offset = util.getArg(s, 'offset');\n var offsetLine = util.getArg(offset, 'line');\n var offsetColumn = util.getArg(offset, 'column');\n\n if (offsetLine < lastOffset.line ||\n (offsetLine === lastOffset.line && offsetColumn < lastOffset.column)) {\n throw new Error('Section offsets must be ordered and non-overlapping.');\n }\n lastOffset = offset;\n\n return {\n generatedOffset: {\n // The offset fields are 0-based, but we use 1-based indices when\n // encoding/decoding from VLQ.\n generatedLine: offsetLine + 1,\n generatedColumn: offsetColumn + 1\n },\n consumer: new SourceMapConsumer(util.getArg(s, 'map'), aSourceMapURL)\n }\n });\n}\n\nIndexedSourceMapConsumer.prototype = Object.create(SourceMapConsumer.prototype);\nIndexedSourceMapConsumer.prototype.constructor = SourceMapConsumer;\n\n/**\n * The version of the source mapping spec that we are consuming.\n */\nIndexedSourceMapConsumer.prototype._version = 3;\n\n/**\n * The list of original sources.\n */\nObject.defineProperty(IndexedSourceMapConsumer.prototype, 'sources', {\n get: function () {\n var sources = [];\n for (var i = 0; i < this._sections.length; i++) {\n for (var j = 0; j < this._sections[i].consumer.sources.length; j++) {\n sources.push(this._sections[i].consumer.sources[j]);\n }\n }\n return sources;\n }\n});\n\n/**\n * Returns the original source, line, and column information for the generated\n * source's line and column positions provided. The only argument is an object\n * with the following properties:\n *\n * - line: The line number in the generated source. The line number\n * is 1-based.\n * - column: The column number in the generated source. The column\n * number is 0-based.\n *\n * and an object is returned with the following properties:\n *\n * - source: The original source file, or null.\n * - line: The line number in the original source, or null. The\n * line number is 1-based.\n * - column: The column number in the original source, or null. The\n * column number is 0-based.\n * - name: The original identifier, or null.\n */\nIndexedSourceMapConsumer.prototype.originalPositionFor =\n function IndexedSourceMapConsumer_originalPositionFor(aArgs) {\n var needle = {\n generatedLine: util.getArg(aArgs, 'line'),\n generatedColumn: util.getArg(aArgs, 'column')\n };\n\n // Find the section containing the generated position we're trying to map\n // to an original position.\n var sectionIndex = binarySearch.search(needle, this._sections,\n function(needle, section) {\n var cmp = needle.generatedLine - section.generatedOffset.generatedLine;\n if (cmp) {\n return cmp;\n }\n\n return (needle.generatedColumn -\n section.generatedOffset.generatedColumn);\n });\n var section = this._sections[sectionIndex];\n\n if (!section) {\n return {\n source: null,\n line: null,\n column: null,\n name: null\n };\n }\n\n return section.consumer.originalPositionFor({\n line: needle.generatedLine -\n (section.generatedOffset.generatedLine - 1),\n column: needle.generatedColumn -\n (section.generatedOffset.generatedLine === needle.generatedLine\n ? section.generatedOffset.generatedColumn - 1\n : 0),\n bias: aArgs.bias\n });\n };\n\n/**\n * Return true if we have the source content for every source in the source\n * map, false otherwise.\n */\nIndexedSourceMapConsumer.prototype.hasContentsOfAllSources =\n function IndexedSourceMapConsumer_hasContentsOfAllSources() {\n return this._sections.every(function (s) {\n return s.consumer.hasContentsOfAllSources();\n });\n };\n\n/**\n * Returns the original source content. The only argument is the url of the\n * original source file. Returns null if no original source content is\n * available.\n */\nIndexedSourceMapConsumer.prototype.sourceContentFor =\n function IndexedSourceMapConsumer_sourceContentFor(aSource, nullOnMissing) {\n for (var i = 0; i < this._sections.length; i++) {\n var section = this._sections[i];\n\n var content = section.consumer.sourceContentFor(aSource, true);\n if (content) {\n return content;\n }\n }\n if (nullOnMissing) {\n return null;\n }\n else {\n throw new Error('\"' + aSource + '\" is not in the SourceMap.');\n }\n };\n\n/**\n * Returns the generated line and column information for the original source,\n * line, and column positions provided. The only argument is an object with\n * the following properties:\n *\n * - source: The filename of the original source.\n * - line: The line number in the original source. The line number\n * is 1-based.\n * - column: The column number in the original source. The column\n * number is 0-based.\n *\n * and an object is returned with the following properties:\n *\n * - line: The line number in the generated source, or null. The\n * line number is 1-based. \n * - column: The column number in the generated source, or null.\n * The column number is 0-based.\n */\nIndexedSourceMapConsumer.prototype.generatedPositionFor =\n function IndexedSourceMapConsumer_generatedPositionFor(aArgs) {\n for (var i = 0; i < this._sections.length; i++) {\n var section = this._sections[i];\n\n // Only consider this section if the requested source is in the list of\n // sources of the consumer.\n if (section.consumer._findSourceIndex(util.getArg(aArgs, 'source')) === -1) {\n continue;\n }\n var generatedPosition = section.consumer.generatedPositionFor(aArgs);\n if (generatedPosition) {\n var ret = {\n line: generatedPosition.line +\n (section.generatedOffset.generatedLine - 1),\n column: generatedPosition.column +\n (section.generatedOffset.generatedLine === generatedPosition.line\n ? section.generatedOffset.generatedColumn - 1\n : 0)\n };\n return ret;\n }\n }\n\n return {\n line: null,\n column: null\n };\n };\n\n/**\n * Parse the mappings in a string in to a data structure which we can easily\n * query (the ordered arrays in the `this.__generatedMappings` and\n * `this.__originalMappings` properties).\n */\nIndexedSourceMapConsumer.prototype._parseMappings =\n function IndexedSourceMapConsumer_parseMappings(aStr, aSourceRoot) {\n this.__generatedMappings = [];\n this.__originalMappings = [];\n for (var i = 0; i < this._sections.length; i++) {\n var section = this._sections[i];\n var sectionMappings = section.consumer._generatedMappings;\n for (var j = 0; j < sectionMappings.length; j++) {\n var mapping = sectionMappings[j];\n\n var source = section.consumer._sources.at(mapping.source);\n source = util.computeSourceURL(section.consumer.sourceRoot, source, this._sourceMapURL);\n this._sources.add(source);\n source = this._sources.indexOf(source);\n\n var name = null;\n if (mapping.name) {\n name = section.consumer._names.at(mapping.name);\n this._names.add(name);\n name = this._names.indexOf(name);\n }\n\n // The mappings coming from the consumer for the section have\n // generated positions relative to the start of the section, so we\n // need to offset them to be relative to the start of the concatenated\n // generated file.\n var adjustedMapping = {\n source: source,\n generatedLine: mapping.generatedLine +\n (section.generatedOffset.generatedLine - 1),\n generatedColumn: mapping.generatedColumn +\n (section.generatedOffset.generatedLine === mapping.generatedLine\n ? section.generatedOffset.generatedColumn - 1\n : 0),\n originalLine: mapping.originalLine,\n originalColumn: mapping.originalColumn,\n name: name\n };\n\n this.__generatedMappings.push(adjustedMapping);\n if (typeof adjustedMapping.originalLine === 'number') {\n this.__originalMappings.push(adjustedMapping);\n }\n }\n }\n\n quickSort(this.__generatedMappings, util.compareByGeneratedPositionsDeflated);\n quickSort(this.__originalMappings, util.compareByOriginalPositions);\n };\n\nexports.IndexedSourceMapConsumer = IndexedSourceMapConsumer;\n", "/* -*- Mode: js; js-indent-level: 2; -*- */\n/*\n * Copyright 2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\n\nvar SourceMapGenerator = require('./source-map-generator').SourceMapGenerator;\nvar util = require('./util');\n\n// Matches a Windows-style `\\r\\n` newline or a `\\n` newline used by all other\n// operating systems these days (capturing the result).\nvar REGEX_NEWLINE = /(\\r?\\n)/;\n\n// Newline character code for charCodeAt() comparisons\nvar NEWLINE_CODE = 10;\n\n// Private symbol for identifying `SourceNode`s when multiple versions of\n// the source-map library are loaded. This MUST NOT CHANGE across\n// versions!\nvar isSourceNode = \"$$$isSourceNode$$$\";\n\n/**\n * SourceNodes provide a way to abstract over interpolating/concatenating\n * snippets of generated JavaScript source code while maintaining the line and\n * column information associated with the original source code.\n *\n * @param aLine The original line number.\n * @param aColumn The original column number.\n * @param aSource The original source's filename.\n * @param aChunks Optional. An array of strings which are snippets of\n * generated JS, or other SourceNodes.\n * @param aName The original identifier.\n */\nfunction SourceNode(aLine, aColumn, aSource, aChunks, aName) {\n this.children = [];\n this.sourceContents = {};\n this.line = aLine == null ? null : aLine;\n this.column = aColumn == null ? null : aColumn;\n this.source = aSource == null ? null : aSource;\n this.name = aName == null ? null : aName;\n this[isSourceNode] = true;\n if (aChunks != null) this.add(aChunks);\n}\n\n/**\n * Creates a SourceNode from generated code and a SourceMapConsumer.\n *\n * @param aGeneratedCode The generated code\n * @param aSourceMapConsumer The SourceMap for the generated code\n * @param aRelativePath Optional. The path that relative sources in the\n * SourceMapConsumer should be relative to.\n */\nSourceNode.fromStringWithSourceMap =\n function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) {\n // The SourceNode we want to fill with the generated code\n // and the SourceMap\n var node = new SourceNode();\n\n // All even indices of this array are one line of the generated code,\n // while all odd indices are the newlines between two adjacent lines\n // (since `REGEX_NEWLINE` captures its match).\n // Processed fragments are accessed by calling `shiftNextLine`.\n var remainingLines = aGeneratedCode.split(REGEX_NEWLINE);\n var remainingLinesIndex = 0;\n var shiftNextLine = function() {\n var lineContents = getNextLine();\n // The last line of a file might not have a newline.\n var newLine = getNextLine() || \"\";\n return lineContents + newLine;\n\n function getNextLine() {\n return remainingLinesIndex < remainingLines.length ?\n remainingLines[remainingLinesIndex++] : undefined;\n }\n };\n\n // We need to remember the position of \"remainingLines\"\n var lastGeneratedLine = 1, lastGeneratedColumn = 0;\n\n // The generate SourceNodes we need a code range.\n // To extract it current and last mapping is used.\n // Here we store the last mapping.\n var lastMapping = null;\n\n aSourceMapConsumer.eachMapping(function (mapping) {\n if (lastMapping !== null) {\n // We add the code from \"lastMapping\" to \"mapping\":\n // First check if there is a new line in between.\n if (lastGeneratedLine < mapping.generatedLine) {\n // Associate first line with \"lastMapping\"\n addMappingWithCode(lastMapping, shiftNextLine());\n lastGeneratedLine++;\n lastGeneratedColumn = 0;\n // The remaining code is added without mapping\n } else {\n // There is no new line in between.\n // Associate the code between \"lastGeneratedColumn\" and\n // \"mapping.generatedColumn\" with \"lastMapping\"\n var nextLine = remainingLines[remainingLinesIndex] || '';\n var code = nextLine.substr(0, mapping.generatedColumn -\n lastGeneratedColumn);\n remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn -\n lastGeneratedColumn);\n lastGeneratedColumn = mapping.generatedColumn;\n addMappingWithCode(lastMapping, code);\n // No more remaining code, continue\n lastMapping = mapping;\n return;\n }\n }\n // We add the generated code until the first mapping\n // to the SourceNode without any mapping.\n // Each line is added as separate string.\n while (lastGeneratedLine < mapping.generatedLine) {\n node.add(shiftNextLine());\n lastGeneratedLine++;\n }\n if (lastGeneratedColumn < mapping.generatedColumn) {\n var nextLine = remainingLines[remainingLinesIndex] || '';\n node.add(nextLine.substr(0, mapping.generatedColumn));\n remainingLines[remainingLinesIndex] = nextLine.substr(mapping.generatedColumn);\n lastGeneratedColumn = mapping.generatedColumn;\n }\n lastMapping = mapping;\n }, this);\n // We have processed all mappings.\n if (remainingLinesIndex < remainingLines.length) {\n if (lastMapping) {\n // Associate the remaining code in the current line with \"lastMapping\"\n addMappingWithCode(lastMapping, shiftNextLine());\n }\n // and add the remaining lines without any mapping\n node.add(remainingLines.splice(remainingLinesIndex).join(\"\"));\n }\n\n // Copy sourcesContent into SourceNode\n aSourceMapConsumer.sources.forEach(function (sourceFile) {\n var content = aSourceMapConsumer.sourceContentFor(sourceFile);\n if (content != null) {\n if (aRelativePath != null) {\n sourceFile = util.join(aRelativePath, sourceFile);\n }\n node.setSourceContent(sourceFile, content);\n }\n });\n\n return node;\n\n function addMappingWithCode(mapping, code) {\n if (mapping === null || mapping.source === undefined) {\n node.add(code);\n } else {\n var source = aRelativePath\n ? util.join(aRelativePath, mapping.source)\n : mapping.source;\n node.add(new SourceNode(mapping.originalLine,\n mapping.originalColumn,\n source,\n code,\n mapping.name));\n }\n }\n };\n\n/**\n * Add a chunk of generated JS to this source node.\n *\n * @param aChunk A string snippet of generated JS code, another instance of\n * SourceNode, or an array where each member is one of those things.\n */\nSourceNode.prototype.add = function SourceNode_add(aChunk) {\n if (Array.isArray(aChunk)) {\n aChunk.forEach(function (chunk) {\n this.add(chunk);\n }, this);\n }\n else if (aChunk[isSourceNode] || typeof aChunk === \"string\") {\n if (aChunk) {\n this.children.push(aChunk);\n }\n }\n else {\n throw new TypeError(\n \"Expected a SourceNode, string, or an array of SourceNodes and strings. Got \" + aChunk\n );\n }\n return this;\n};\n\n/**\n * Add a chunk of generated JS to the beginning of this source node.\n *\n * @param aChunk A string snippet of generated JS code, another instance of\n * SourceNode, or an array where each member is one of those things.\n */\nSourceNode.prototype.prepend = function SourceNode_prepend(aChunk) {\n if (Array.isArray(aChunk)) {\n for (var i = aChunk.length-1; i >= 0; i--) {\n this.prepend(aChunk[i]);\n }\n }\n else if (aChunk[isSourceNode] || typeof aChunk === \"string\") {\n this.children.unshift(aChunk);\n }\n else {\n throw new TypeError(\n \"Expected a SourceNode, string, or an array of SourceNodes and strings. Got \" + aChunk\n );\n }\n return this;\n};\n\n/**\n * Walk over the tree of JS snippets in this node and its children. The\n * walking function is called once for each snippet of JS and is passed that\n * snippet and the its original associated source's line/column location.\n *\n * @param aFn The traversal function.\n */\nSourceNode.prototype.walk = function SourceNode_walk(aFn) {\n var chunk;\n for (var i = 0, len = this.children.length; i < len; i++) {\n chunk = this.children[i];\n if (chunk[isSourceNode]) {\n chunk.walk(aFn);\n }\n else {\n if (chunk !== '') {\n aFn(chunk, { source: this.source,\n line: this.line,\n column: this.column,\n name: this.name });\n }\n }\n }\n};\n\n/**\n * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between\n * each of `this.children`.\n *\n * @param aSep The separator.\n */\nSourceNode.prototype.join = function SourceNode_join(aSep) {\n var newChildren;\n var i;\n var len = this.children.length;\n if (len > 0) {\n newChildren = [];\n for (i = 0; i < len-1; i++) {\n newChildren.push(this.children[i]);\n newChildren.push(aSep);\n }\n newChildren.push(this.children[i]);\n this.children = newChildren;\n }\n return this;\n};\n\n/**\n * Call String.prototype.replace on the very right-most source snippet. Useful\n * for trimming whitespace from the end of a source node, etc.\n *\n * @param aPattern The pattern to replace.\n * @param aReplacement The thing to replace the pattern with.\n */\nSourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) {\n var lastChild = this.children[this.children.length - 1];\n if (lastChild[isSourceNode]) {\n lastChild.replaceRight(aPattern, aReplacement);\n }\n else if (typeof lastChild === 'string') {\n this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement);\n }\n else {\n this.children.push(''.replace(aPattern, aReplacement));\n }\n return this;\n};\n\n/**\n * Set the source content for a source file. This will be added to the SourceMapGenerator\n * in the sourcesContent field.\n *\n * @param aSourceFile The filename of the source file\n * @param aSourceContent The content of the source file\n */\nSourceNode.prototype.setSourceContent =\n function SourceNode_setSourceContent(aSourceFile, aSourceContent) {\n this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent;\n };\n\n/**\n * Walk over the tree of SourceNodes. The walking function is called for each\n * source file content and is passed the filename and source content.\n *\n * @param aFn The traversal function.\n */\nSourceNode.prototype.walkSourceContents =\n function SourceNode_walkSourceContents(aFn) {\n for (var i = 0, len = this.children.length; i < len; i++) {\n if (this.children[i][isSourceNode]) {\n this.children[i].walkSourceContents(aFn);\n }\n }\n\n var sources = Object.keys(this.sourceContents);\n for (var i = 0, len = sources.length; i < len; i++) {\n aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]);\n }\n };\n\n/**\n * Return the string representation of this source node. Walks over the tree\n * and concatenates all the various snippets together to one string.\n */\nSourceNode.prototype.toString = function SourceNode_toString() {\n var str = \"\";\n this.walk(function (chunk) {\n str += chunk;\n });\n return str;\n};\n\n/**\n * Returns the string representation of this source node along with a source\n * map.\n */\nSourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) {\n var generated = {\n code: \"\",\n line: 1,\n column: 0\n };\n var map = new SourceMapGenerator(aArgs);\n var sourceMappingActive = false;\n var lastOriginalSource = null;\n var lastOriginalLine = null;\n var lastOriginalColumn = null;\n var lastOriginalName = null;\n this.walk(function (chunk, original) {\n generated.code += chunk;\n if (original.source !== null\n && original.line !== null\n && original.column !== null) {\n if(lastOriginalSource !== original.source\n || lastOriginalLine !== original.line\n || lastOriginalColumn !== original.column\n || lastOriginalName !== original.name) {\n map.addMapping({\n source: original.source,\n original: {\n line: original.line,\n column: original.column\n },\n generated: {\n line: generated.line,\n column: generated.column\n },\n name: original.name\n });\n }\n lastOriginalSource = original.source;\n lastOriginalLine = original.line;\n lastOriginalColumn = original.column;\n lastOriginalName = original.name;\n sourceMappingActive = true;\n } else if (sourceMappingActive) {\n map.addMapping({\n generated: {\n line: generated.line,\n column: generated.column\n }\n });\n lastOriginalSource = null;\n sourceMappingActive = false;\n }\n for (var idx = 0, length = chunk.length; idx < length; idx++) {\n if (chunk.charCodeAt(idx) === NEWLINE_CODE) {\n generated.line++;\n generated.column = 0;\n // Mappings end at eol\n if (idx + 1 === length) {\n lastOriginalSource = null;\n sourceMappingActive = false;\n } else if (sourceMappingActive) {\n map.addMapping({\n source: original.source,\n original: {\n line: original.line,\n column: original.column\n },\n generated: {\n line: generated.line,\n column: generated.column\n },\n name: original.name\n });\n }\n } else {\n generated.column++;\n }\n }\n });\n this.walkSourceContents(function (sourceFile, sourceContent) {\n map.setSourceContent(sourceFile, sourceContent);\n });\n\n return { code: generated.code, map: map };\n};\n\nexports.SourceNode = SourceNode;\n", "/*\n * Copyright 2009-2011 Mozilla Foundation and contributors\n * Licensed under the New BSD license. See LICENSE.txt or:\n * http://opensource.org/licenses/BSD-3-Clause\n */\nexports.SourceMapGenerator = require('./lib/source-map-generator').SourceMapGenerator;\nexports.SourceMapConsumer = require('./lib/source-map-consumer').SourceMapConsumer;\nexports.SourceNode = require('./lib/source-node').SourceNode;\n", "/* global define, require */\nimport { isArray } from '../utils';\n\nlet SourceNode;\n\ntry {\n /* istanbul ignore next */\n if (typeof define !== 'function' || !define.amd) {\n // We don't support this in AMD environments. For these environments, we assume that\n // they are running on the browser and thus have no need for the source-map library.\n let SourceMap = require('source-map');\n SourceNode = SourceMap.SourceNode;\n }\n} catch (err) {\n /* NOP */\n}\n\n/* istanbul ignore if: tested but not covered in istanbul due to dist build */\nif (!SourceNode) {\n SourceNode = function(line, column, srcFile, chunks) {\n this.src = '';\n if (chunks) {\n this.add(chunks);\n }\n };\n /* istanbul ignore next */\n SourceNode.prototype = {\n add: function(chunks) {\n if (isArray(chunks)) {\n chunks = chunks.join('');\n }\n this.src += chunks;\n },\n prepend: function(chunks) {\n if (isArray(chunks)) {\n chunks = chunks.join('');\n }\n this.src = chunks + this.src;\n },\n toStringWithSourceMap: function() {\n return { code: this.toString() };\n },\n toString: function() {\n return this.src;\n }\n };\n}\n\nfunction castChunk(chunk, codeGen, loc) {\n if (isArray(chunk)) {\n let ret = [];\n\n for (let i = 0, len = chunk.length; i < len; i++) {\n ret.push(codeGen.wrap(chunk[i], loc));\n }\n return ret;\n } else if (typeof chunk === 'boolean' || typeof chunk === 'number') {\n // Handle primitives that the SourceNode will throw up on\n return chunk + '';\n }\n return chunk;\n}\n\nfunction CodeGen(srcFile) {\n this.srcFile = srcFile;\n this.source = [];\n}\n\nCodeGen.prototype = {\n isEmpty() {\n return !this.source.length;\n },\n prepend: function(source, loc) {\n this.source.unshift(this.wrap(source, loc));\n },\n push: function(source, loc) {\n this.source.push(this.wrap(source, loc));\n },\n\n merge: function() {\n let source = this.empty();\n this.each(function(line) {\n source.add([' ', line, '\\n']);\n });\n return source;\n },\n\n each: function(iter) {\n for (let i = 0, len = this.source.length; i < len; i++) {\n iter(this.source[i]);\n }\n },\n\n empty: function() {\n let loc = this.currentLocation || { start: {} };\n return new SourceNode(loc.start.line, loc.start.column, this.srcFile);\n },\n wrap: function(chunk, loc = this.currentLocation || { start: {} }) {\n if (chunk instanceof SourceNode) {\n return chunk;\n }\n\n chunk = castChunk(chunk, this, loc);\n\n return new SourceNode(\n loc.start.line,\n loc.start.column,\n this.srcFile,\n chunk\n );\n },\n\n functionCall: function(fn, type, params) {\n params = this.generateList(params);\n return this.wrap([fn, type ? '.' + type + '(' : '(', params, ')']);\n },\n\n quotedString: function(str) {\n return (\n '\"' +\n (str + '')\n .replace(/\\\\/g, '\\\\\\\\')\n .replace(/\"/g, '\\\\\"')\n .replace(/\\n/g, '\\\\n')\n .replace(/\\r/g, '\\\\r')\n .replace(/\\u2028/g, '\\\\u2028') // Per Ecma-262 7.3 + 7.8.4\n .replace(/\\u2029/g, '\\\\u2029') +\n '\"'\n );\n },\n\n objectLiteral: function(obj) {\n let pairs = [];\n\n Object.keys(obj).forEach(key => {\n let value = castChunk(obj[key], this);\n if (value !== 'undefined') {\n pairs.push([this.quotedString(key), ':', value]);\n }\n });\n\n let ret = this.generateList(pairs);\n ret.prepend('{');\n ret.add('}');\n return ret;\n },\n\n generateList: function(entries) {\n let ret = this.empty();\n\n for (let i = 0, len = entries.length; i < len; i++) {\n if (i) {\n ret.add(',');\n }\n\n ret.add(castChunk(entries[i], this));\n }\n\n return ret;\n },\n\n generateArray: function(entries) {\n let ret = this.generateList(entries);\n ret.prepend('[');\n ret.add(']');\n\n return ret;\n }\n};\n\nexport default CodeGen;\n", "import { COMPILER_REVISION, REVISION_CHANGES } from '../base';\nimport Exception from '../exception';\nimport { isArray } from '../utils';\nimport CodeGen from './code-gen';\n\nfunction Literal(value) {\n this.value = value;\n}\n\nfunction JavaScriptCompiler() {}\n\nJavaScriptCompiler.prototype = {\n // PUBLIC API: You can override these methods in a subclass to provide\n // alternative compiled forms for name lookup and buffering semantics\n nameLookup: function(parent, name /*, type */) {\n return this.internalNameLookup(parent, name);\n },\n depthedLookup: function(name) {\n return [\n this.aliasable('container.lookup'),\n '(depths, ',\n JSON.stringify(name),\n ')'\n ];\n },\n\n compilerInfo: function() {\n const revision = COMPILER_REVISION,\n versions = REVISION_CHANGES[revision];\n return [revision, versions];\n },\n\n appendToBuffer: function(source, location, explicit) {\n // Force a source as this simplifies the merge logic.\n if (!isArray(source)) {\n source = [source];\n }\n source = this.source.wrap(source, location);\n\n if (this.environment.isSimple) {\n return ['return ', source, ';'];\n } else if (explicit) {\n // This is a case where the buffer operation occurs as a child of another\n // construct, generally braces. We have to explicitly output these buffer\n // operations to ensure that the emitted code goes in the correct location.\n return ['buffer += ', source, ';'];\n } else {\n source.appendToBuffer = true;\n return source;\n }\n },\n\n initializeBuffer: function() {\n return this.quotedString('');\n },\n // END PUBLIC API\n internalNameLookup: function(parent, name) {\n this.lookupPropertyFunctionIsUsed = true;\n return ['lookupProperty(', parent, ',', JSON.stringify(name), ')'];\n },\n\n lookupPropertyFunctionIsUsed: false,\n\n compile: function(environment, options, context, asObject) {\n this.environment = environment;\n this.options = options;\n this.stringParams = this.options.stringParams;\n this.trackIds = this.options.trackIds;\n this.precompile = !asObject;\n\n this.name = this.environment.name;\n this.isChild = !!context;\n this.context = context || {\n decorators: [],\n programs: [],\n environments: []\n };\n\n this.preamble();\n\n this.stackSlot = 0;\n this.stackVars = [];\n this.aliases = {};\n this.registers = { list: [] };\n this.hashes = [];\n this.compileStack = [];\n this.inlineStack = [];\n this.blockParams = [];\n\n this.compileChildren(environment, options);\n\n this.useDepths =\n this.useDepths ||\n environment.useDepths ||\n environment.useDecorators ||\n this.options.compat;\n this.useBlockParams = this.useBlockParams || environment.useBlockParams;\n\n let opcodes = environment.opcodes,\n opcode,\n firstLoc,\n i,\n l;\n\n for (i = 0, l = opcodes.length; i < l; i++) {\n opcode = opcodes[i];\n\n this.source.currentLocation = opcode.loc;\n firstLoc = firstLoc || opcode.loc;\n this[opcode.opcode].apply(this, opcode.args);\n }\n\n // Flush any trailing content that might be pending.\n this.source.currentLocation = firstLoc;\n this.pushSource('');\n\n /* istanbul ignore next */\n if (this.stackSlot || this.inlineStack.length || this.compileStack.length) {\n throw new Exception('Compile completed with content left on stack');\n }\n\n if (!this.decorators.isEmpty()) {\n this.useDecorators = true;\n\n this.decorators.prepend([\n 'var decorators = container.decorators, ',\n this.lookupPropertyFunctionVarDeclaration(),\n ';\\n'\n ]);\n this.decorators.push('return fn;');\n\n if (asObject) {\n this.decorators = Function.apply(this, [\n 'fn',\n 'props',\n 'container',\n 'depth0',\n 'data',\n 'blockParams',\n 'depths',\n this.decorators.merge()\n ]);\n } else {\n this.decorators.prepend(\n 'function(fn, props, container, depth0, data, blockParams, depths) {\\n'\n );\n this.decorators.push('}\\n');\n this.decorators = this.decorators.merge();\n }\n } else {\n this.decorators = undefined;\n }\n\n let fn = this.createFunctionContext(asObject);\n if (!this.isChild) {\n let ret = {\n compiler: this.compilerInfo(),\n main: fn\n };\n\n if (this.decorators) {\n ret.main_d = this.decorators; // eslint-disable-line camelcase\n ret.useDecorators = true;\n }\n\n let { programs, decorators } = this.context;\n for (i = 0, l = programs.length; i < l; i++) {\n ret[i] = programs[i];\n if (decorators[i]) {\n ret[i + '_d'] = decorators[i];\n ret.useDecorators = true;\n }\n }\n\n if (this.environment.usePartial) {\n ret.usePartial = true;\n }\n if (this.options.data) {\n ret.useData = true;\n }\n if (this.useDepths) {\n ret.useDepths = true;\n }\n if (this.useBlockParams) {\n ret.useBlockParams = true;\n }\n if (this.options.compat) {\n ret.compat = true;\n }\n\n if (!asObject) {\n ret.compiler = JSON.stringify(ret.compiler);\n\n this.source.currentLocation = { start: { line: 1, column: 0 } };\n ret = this.objectLiteral(ret);\n\n if (options.srcName) {\n ret = ret.toStringWithSourceMap({ file: options.destName });\n ret.map = ret.map && ret.map.toString();\n } else {\n ret = ret.toString();\n }\n } else {\n ret.compilerOptions = this.options;\n }\n\n return ret;\n } else {\n return fn;\n }\n },\n\n preamble: function() {\n // track the last context pushed into place to allow skipping the\n // getContext opcode when it would be a noop\n this.lastContext = 0;\n this.source = new CodeGen(this.options.srcName);\n this.decorators = new CodeGen(this.options.srcName);\n },\n\n createFunctionContext: function(asObject) {\n let varDeclarations = '';\n\n let locals = this.stackVars.concat(this.registers.list);\n if (locals.length > 0) {\n varDeclarations += ', ' + locals.join(', ');\n }\n\n // Generate minimizer alias mappings\n //\n // When using true SourceNodes, this will update all references to the given alias\n // as the source nodes are reused in situ. For the non-source node compilation mode,\n // aliases will not be used, but this case is already being run on the client and\n // we aren't concern about minimizing the template size.\n let aliasCount = 0;\n Object.keys(this.aliases).forEach(alias => {\n let node = this.aliases[alias];\n if (node.children && node.referenceCount > 1) {\n varDeclarations += ', alias' + ++aliasCount + '=' + alias;\n node.children[0] = 'alias' + aliasCount;\n }\n });\n\n if (this.lookupPropertyFunctionIsUsed) {\n varDeclarations += ', ' + this.lookupPropertyFunctionVarDeclaration();\n }\n\n let params = ['container', 'depth0', 'helpers', 'partials', 'data'];\n\n if (this.useBlockParams || this.useDepths) {\n params.push('blockParams');\n }\n if (this.useDepths) {\n params.push('depths');\n }\n\n // Perform a second pass over the output to merge content when possible\n let source = this.mergeSource(varDeclarations);\n\n if (asObject) {\n params.push(source);\n\n return Function.apply(this, params);\n } else {\n return this.source.wrap([\n 'function(',\n params.join(','),\n ') {\\n ',\n source,\n '}'\n ]);\n }\n },\n mergeSource: function(varDeclarations) {\n let isSimple = this.environment.isSimple,\n appendOnly = !this.forceBuffer,\n appendFirst,\n sourceSeen,\n bufferStart,\n bufferEnd;\n this.source.each(line => {\n if (line.appendToBuffer) {\n if (bufferStart) {\n line.prepend(' + ');\n } else {\n bufferStart = line;\n }\n bufferEnd = line;\n } else {\n if (bufferStart) {\n if (!sourceSeen) {\n appendFirst = true;\n } else {\n bufferStart.prepend('buffer += ');\n }\n bufferEnd.add(';');\n bufferStart = bufferEnd = undefined;\n }\n\n sourceSeen = true;\n if (!isSimple) {\n appendOnly = false;\n }\n }\n });\n\n if (appendOnly) {\n if (bufferStart) {\n bufferStart.prepend('return ');\n bufferEnd.add(';');\n } else if (!sourceSeen) {\n this.source.push('return \"\";');\n }\n } else {\n varDeclarations +=\n ', buffer = ' + (appendFirst ? '' : this.initializeBuffer());\n\n if (bufferStart) {\n bufferStart.prepend('return buffer + ');\n bufferEnd.add(';');\n } else {\n this.source.push('return buffer;');\n }\n }\n\n if (varDeclarations) {\n this.source.prepend(\n 'var ' + varDeclarations.substring(2) + (appendFirst ? '' : ';\\n')\n );\n }\n\n return this.source.merge();\n },\n\n lookupPropertyFunctionVarDeclaration: function() {\n return `\n lookupProperty = container.lookupProperty || function(parent, propertyName) {\n if (Object.prototype.hasOwnProperty.call(parent, propertyName)) {\n return parent[propertyName];\n }\n return undefined\n }\n `.trim();\n },\n\n // [blockValue]\n //\n // On stack, before: hash, inverse, program, value\n // On stack, after: return value of blockHelperMissing\n //\n // The purpose of this opcode is to take a block of the form\n // `{{#this.foo}}...{{/this.foo}}`, resolve the value of `foo`, and\n // replace it on the stack with the result of properly\n // invoking blockHelperMissing.\n blockValue: function(name) {\n let blockHelperMissing = this.aliasable(\n 'container.hooks.blockHelperMissing'\n ),\n params = [this.contextName(0)];\n this.setupHelperArgs(name, 0, params);\n\n let blockName = this.popStack();\n params.splice(1, 0, blockName);\n\n this.push(this.source.functionCall(blockHelperMissing, 'call', params));\n },\n\n // [ambiguousBlockValue]\n //\n // On stack, before: hash, inverse, program, value\n // Compiler value, before: lastHelper=value of last found helper, if any\n // On stack, after, if no lastHelper: same as [blockValue]\n // On stack, after, if lastHelper: value\n ambiguousBlockValue: function() {\n // We're being a bit cheeky and reusing the options value from the prior exec\n let blockHelperMissing = this.aliasable(\n 'container.hooks.blockHelperMissing'\n ),\n params = [this.contextName(0)];\n this.setupHelperArgs('', 0, params, true);\n\n this.flushInline();\n\n let current = this.topStack();\n params.splice(1, 0, current);\n\n this.pushSource([\n 'if (!',\n this.lastHelper,\n ') { ',\n current,\n ' = ',\n this.source.functionCall(blockHelperMissing, 'call', params),\n '}'\n ]);\n },\n\n // [appendContent]\n //\n // On stack, before: ...\n // On stack, after: ...\n //\n // Appends the string value of `content` to the current buffer\n appendContent: function(content) {\n if (this.pendingContent) {\n content = this.pendingContent + content;\n } else {\n this.pendingLocation = this.source.currentLocation;\n }\n\n this.pendingContent = content;\n },\n\n // [append]\n //\n // On stack, before: value, ...\n // On stack, after: ...\n //\n // Coerces `value` to a String and appends it to the current buffer.\n //\n // If `value` is truthy, or 0, it is coerced into a string and appended\n // Otherwise, the empty string is appended\n append: function() {\n if (this.isInline()) {\n this.replaceStack(current => [' != null ? ', current, ' : \"\"']);\n\n this.pushSource(this.appendToBuffer(this.popStack()));\n } else {\n let local = this.popStack();\n this.pushSource([\n 'if (',\n local,\n ' != null) { ',\n this.appendToBuffer(local, undefined, true),\n ' }'\n ]);\n if (this.environment.isSimple) {\n this.pushSource([\n 'else { ',\n this.appendToBuffer(\"''\", undefined, true),\n ' }'\n ]);\n }\n }\n },\n\n // [appendEscaped]\n //\n // On stack, before: value, ...\n // On stack, after: ...\n //\n // Escape `value` and append it to the buffer\n appendEscaped: function() {\n this.pushSource(\n this.appendToBuffer([\n this.aliasable('container.escapeExpression'),\n '(',\n this.popStack(),\n ')'\n ])\n );\n },\n\n // [getContext]\n //\n // On stack, before: ...\n // On stack, after: ...\n // Compiler value, after: lastContext=depth\n //\n // Set the value of the `lastContext` compiler value to the depth\n getContext: function(depth) {\n this.lastContext = depth;\n },\n\n // [pushContext]\n //\n // On stack, before: ...\n // On stack, after: currentContext, ...\n //\n // Pushes the value of the current context onto the stack.\n pushContext: function() {\n this.pushStackLiteral(this.contextName(this.lastContext));\n },\n\n // [lookupOnContext]\n //\n // On stack, before: ...\n // On stack, after: currentContext[name], ...\n //\n // Looks up the value of `name` on the current context and pushes\n // it onto the stack.\n lookupOnContext: function(parts, falsy, strict, scoped) {\n let i = 0;\n\n if (!scoped && this.options.compat && !this.lastContext) {\n // The depthed query is expected to handle the undefined logic for the root level that\n // is implemented below, so we evaluate that directly in compat mode\n this.push(this.depthedLookup(parts[i++]));\n } else {\n this.pushContext();\n }\n\n this.resolvePath('context', parts, i, falsy, strict);\n },\n\n // [lookupBlockParam]\n //\n // On stack, before: ...\n // On stack, after: blockParam[name], ...\n //\n // Looks up the value of `parts` on the given block param and pushes\n // it onto the stack.\n lookupBlockParam: function(blockParamId, parts) {\n this.useBlockParams = true;\n\n this.push(['blockParams[', blockParamId[0], '][', blockParamId[1], ']']);\n this.resolvePath('context', parts, 1);\n },\n\n // [lookupData]\n //\n // On stack, before: ...\n // On stack, after: data, ...\n //\n // Push the data lookup operator\n lookupData: function(depth, parts, strict) {\n if (!depth) {\n this.pushStackLiteral('data');\n } else {\n this.pushStackLiteral('container.data(data, ' + depth + ')');\n }\n\n this.resolvePath('data', parts, 0, true, strict);\n },\n\n resolvePath: function(type, parts, startPartIndex, falsy, strict) {\n if (this.options.strict || this.options.assumeObjects) {\n this.push(\n strictLookup(\n this.options.strict && strict,\n this,\n parts,\n startPartIndex,\n type\n )\n );\n return;\n }\n\n let len = parts.length;\n for (let i = startPartIndex; i < len; i++) {\n /* eslint-disable no-loop-func */\n this.replaceStack(current => {\n let lookup = this.nameLookup(current, parts[i], type);\n // We want to ensure that zero and false are handled properly if the context (falsy flag)\n // needs to have the special handling for these values.\n if (!falsy) {\n return [' != null ? ', lookup, ' : ', current];\n } else {\n // Otherwise we can use generic falsy handling\n return [' && ', lookup];\n }\n });\n /* eslint-enable no-loop-func */\n }\n },\n\n // [resolvePossibleLambda]\n //\n // On stack, before: value, ...\n // On stack, after: resolved value, ...\n //\n // If the `value` is a lambda, replace it on the stack by\n // the return value of the lambda\n resolvePossibleLambda: function() {\n this.push([\n this.aliasable('container.lambda'),\n '(',\n this.popStack(),\n ', ',\n this.contextName(0),\n ')'\n ]);\n },\n\n // [pushStringParam]\n //\n // On stack, before: ...\n // On stack, after: string, currentContext, ...\n //\n // This opcode is designed for use in string mode, which\n // provides the string value of a parameter along with its\n // depth rather than resolving it immediately.\n pushStringParam: function(string, type) {\n this.pushContext();\n this.pushString(type);\n\n // If it's a subexpression, the string result\n // will be pushed after this opcode.\n if (type !== 'SubExpression') {\n if (typeof string === 'string') {\n this.pushString(string);\n } else {\n this.pushStackLiteral(string);\n }\n }\n },\n\n emptyHash: function(omitEmpty) {\n if (this.trackIds) {\n this.push('{}'); // hashIds\n }\n if (this.stringParams) {\n this.push('{}'); // hashContexts\n this.push('{}'); // hashTypes\n }\n this.pushStackLiteral(omitEmpty ? 'undefined' : '{}');\n },\n pushHash: function() {\n if (this.hash) {\n this.hashes.push(this.hash);\n }\n this.hash = { values: {}, types: [], contexts: [], ids: [] };\n },\n popHash: function() {\n let hash = this.hash;\n this.hash = this.hashes.pop();\n\n if (this.trackIds) {\n this.push(this.objectLiteral(hash.ids));\n }\n if (this.stringParams) {\n this.push(this.objectLiteral(hash.contexts));\n this.push(this.objectLiteral(hash.types));\n }\n\n this.push(this.objectLiteral(hash.values));\n },\n\n // [pushString]\n //\n // On stack, before: ...\n // On stack, after: quotedString(string), ...\n //\n // Push a quoted version of `string` onto the stack\n pushString: function(string) {\n this.pushStackLiteral(this.quotedString(string));\n },\n\n // [pushLiteral]\n //\n // On stack, before: ...\n // On stack, after: value, ...\n //\n // Pushes a value onto the stack. This operation prevents\n // the compiler from creating a temporary variable to hold\n // it.\n pushLiteral: function(value) {\n this.pushStackLiteral(value);\n },\n\n // [pushProgram]\n //\n // On stack, before: ...\n // On stack, after: program(guid), ...\n //\n // Push a program expression onto the stack. This takes\n // a compile-time guid and converts it into a runtime-accessible\n // expression.\n pushProgram: function(guid) {\n if (guid != null) {\n this.pushStackLiteral(this.programExpression(guid));\n } else {\n this.pushStackLiteral(null);\n }\n },\n\n // [registerDecorator]\n //\n // On stack, before: hash, program, params..., ...\n // On stack, after: ...\n //\n // Pops off the decorator's parameters, invokes the decorator,\n // and inserts the decorator into the decorators list.\n registerDecorator(paramSize, name) {\n let foundDecorator = this.nameLookup('decorators', name, 'decorator'),\n options = this.setupHelperArgs(name, paramSize);\n\n // Store the resolved decorator in a variable and verify it is a function before\n // calling it. Without this, unregistered decorators can cause an unhandled TypeError\n // (calling undefined), which crashes the process — enabling Denial of Service.\n this.decorators.push(['var decorator = ', foundDecorator, ';']);\n this.decorators.push([\n 'if (typeof decorator !== \"function\") { throw new Error(',\n this.quotedString('Missing decorator: \"' + name + '\"'),\n '); }'\n ]);\n this.decorators.push([\n 'fn = ',\n this.decorators.functionCall('decorator', '', [\n 'fn',\n 'props',\n 'container',\n options\n ]),\n ' || fn;'\n ]);\n },\n\n // [invokeHelper]\n //\n // On stack, before: hash, inverse, program, params..., ...\n // On stack, after: result of helper invocation\n //\n // Pops off the helper's parameters, invokes the helper,\n // and pushes the helper's return value onto the stack.\n //\n // If the helper is not found, `helperMissing` is called.\n invokeHelper: function(paramSize, name, isSimple) {\n let nonHelper = this.popStack(),\n helper = this.setupHelper(paramSize, name);\n\n let possibleFunctionCalls = [];\n\n if (isSimple) {\n // direct call to helper\n possibleFunctionCalls.push(helper.name);\n }\n // call a function from the input object\n possibleFunctionCalls.push(nonHelper);\n if (!this.options.strict) {\n possibleFunctionCalls.push(\n this.aliasable('container.hooks.helperMissing')\n );\n }\n\n let functionLookupCode = [\n '(',\n this.itemsSeparatedBy(possibleFunctionCalls, '||'),\n ')'\n ];\n let functionCall = this.source.functionCall(\n functionLookupCode,\n 'call',\n helper.callParams\n );\n this.push(functionCall);\n },\n\n itemsSeparatedBy: function(items, separator) {\n let result = [];\n result.push(items[0]);\n for (let i = 1; i < items.length; i++) {\n result.push(separator, items[i]);\n }\n return result;\n },\n // [invokeKnownHelper]\n //\n // On stack, before: hash, inverse, program, params..., ...\n // On stack, after: result of helper invocation\n //\n // This operation is used when the helper is known to exist,\n // so a `helperMissing` fallback is not required.\n invokeKnownHelper: function(paramSize, name) {\n let helper = this.setupHelper(paramSize, name);\n this.push(this.source.functionCall(helper.name, 'call', helper.callParams));\n },\n\n // [invokeAmbiguous]\n //\n // On stack, before: hash, inverse, program, params..., ...\n // On stack, after: result of disambiguation\n //\n // This operation is used when an expression like `{{foo}}`\n // is provided, but we don't know at compile-time whether it\n // is a helper or a path.\n //\n // This operation emits more code than the other options,\n // and can be avoided by passing the `knownHelpers` and\n // `knownHelpersOnly` flags at compile-time.\n invokeAmbiguous: function(name, helperCall) {\n this.useRegister('helper');\n\n let nonHelper = this.popStack();\n\n this.emptyHash();\n let helper = this.setupHelper(0, name, helperCall);\n\n let helperName = (this.lastHelper = this.nameLookup(\n 'helpers',\n name,\n 'helper'\n ));\n\n let lookup = ['(', '(helper = ', helperName, ' || ', nonHelper, ')'];\n if (!this.options.strict) {\n lookup[0] = '(helper = ';\n lookup.push(\n ' != null ? helper : ',\n this.aliasable('container.hooks.helperMissing')\n );\n }\n\n this.push([\n '(',\n lookup,\n helper.paramsInit ? ['),(', helper.paramsInit] : [],\n '),',\n '(typeof helper === ',\n this.aliasable('\"function\"'),\n ' ? ',\n this.source.functionCall('helper', 'call', helper.callParams),\n ' : helper))'\n ]);\n },\n\n // [invokePartial]\n //\n // On stack, before: context, ...\n // On stack after: result of partial invocation\n //\n // This operation pops off a context, invokes a partial with that context,\n // and pushes the result of the invocation back.\n invokePartial: function(isDynamic, name, indent) {\n let params = [],\n options = this.setupParams(name, 1, params);\n\n if (isDynamic) {\n name = this.popStack();\n delete options.name;\n }\n\n if (indent) {\n options.indent = JSON.stringify(indent);\n }\n options.helpers = 'helpers';\n options.partials = 'partials';\n options.decorators = 'container.decorators';\n\n if (!isDynamic) {\n params.unshift(this.nameLookup('partials', name, 'partial'));\n } else {\n params.unshift(name);\n }\n\n if (this.options.compat) {\n options.depths = 'depths';\n }\n options = this.objectLiteral(options);\n params.push(options);\n\n this.push(this.source.functionCall('container.invokePartial', '', params));\n },\n\n // [assignToHash]\n //\n // On stack, before: value, ..., hash, ...\n // On stack, after: ..., hash, ...\n //\n // Pops a value off the stack and assigns it to the current hash\n assignToHash: function(key) {\n let value = this.popStack(),\n context,\n type,\n id;\n\n if (this.trackIds) {\n id = this.popStack();\n }\n if (this.stringParams) {\n type = this.popStack();\n context = this.popStack();\n }\n\n let hash = this.hash;\n if (context) {\n hash.contexts[key] = context;\n }\n if (type) {\n hash.types[key] = type;\n }\n if (id) {\n hash.ids[key] = id;\n }\n hash.values[key] = value;\n },\n\n pushId: function(type, name, child) {\n if (type === 'BlockParam') {\n this.pushStackLiteral(\n 'blockParams[' +\n name[0] +\n '].path[' +\n name[1] +\n ']' +\n (child ? ' + ' + JSON.stringify('.' + child) : '')\n );\n } else if (type === 'PathExpression') {\n this.pushString(name);\n } else if (type === 'SubExpression') {\n this.pushStackLiteral('true');\n } else {\n this.pushStackLiteral('null');\n }\n },\n\n // HELPERS\n\n compiler: JavaScriptCompiler,\n\n compileChildren: function(environment, options) {\n let children = environment.children,\n child,\n compiler;\n\n for (let i = 0, l = children.length; i < l; i++) {\n child = children[i];\n compiler = new this.compiler(); // eslint-disable-line new-cap\n\n let existing = this.matchExistingProgram(child);\n\n if (existing == null) {\n // Placeholder to prevent name conflicts for nested children\n let index = this.context.programs.push('') - 1;\n child.index = index;\n child.name = 'program' + index;\n this.context.programs[index] = compiler.compile(\n child,\n options,\n this.context,\n !this.precompile\n );\n this.context.decorators[index] = compiler.decorators;\n this.context.environments[index] = child;\n\n this.useDepths = this.useDepths || compiler.useDepths;\n this.useBlockParams = this.useBlockParams || compiler.useBlockParams;\n child.useDepths = this.useDepths;\n child.useBlockParams = this.useBlockParams;\n } else {\n child.index = existing.index;\n child.name = 'program' + existing.index;\n\n this.useDepths = this.useDepths || existing.useDepths;\n this.useBlockParams = this.useBlockParams || existing.useBlockParams;\n }\n }\n },\n matchExistingProgram: function(child) {\n for (let i = 0, len = this.context.environments.length; i < len; i++) {\n let environment = this.context.environments[i];\n if (environment && environment.equals(child)) {\n return environment;\n }\n }\n },\n\n programExpression: function(guid) {\n let child = this.environment.children[guid],\n programParams = [child.index, 'data', child.blockParams];\n\n if (this.useBlockParams || this.useDepths) {\n programParams.push('blockParams');\n }\n if (this.useDepths) {\n programParams.push('depths');\n }\n\n return 'container.program(' + programParams.join(', ') + ')';\n },\n\n useRegister: function(name) {\n if (!this.registers[name]) {\n this.registers[name] = true;\n this.registers.list.push(name);\n }\n },\n\n push: function(expr) {\n if (!(expr instanceof Literal)) {\n expr = this.source.wrap(expr);\n }\n\n this.inlineStack.push(expr);\n return expr;\n },\n\n pushStackLiteral: function(item) {\n this.push(new Literal(item));\n },\n\n pushSource: function(source) {\n if (this.pendingContent) {\n this.source.push(\n this.appendToBuffer(\n this.source.quotedString(this.pendingContent),\n this.pendingLocation\n )\n );\n this.pendingContent = undefined;\n }\n\n if (source) {\n this.source.push(source);\n }\n },\n\n replaceStack: function(callback) {\n let prefix = ['('],\n stack,\n createdStack,\n usedLiteral;\n\n /* istanbul ignore next */\n if (!this.isInline()) {\n throw new Exception('replaceStack on non-inline');\n }\n\n // We want to merge the inline statement into the replacement statement via ','\n let top = this.popStack(true);\n\n if (top instanceof Literal) {\n // Literals do not need to be inlined\n stack = [top.value];\n prefix = ['(', stack];\n usedLiteral = true;\n } else {\n // Get or create the current stack name for use by the inline\n createdStack = true;\n let name = this.incrStack();\n\n prefix = ['((', this.push(name), ' = ', top, ')'];\n stack = this.topStack();\n }\n\n let item = callback.call(this, stack);\n\n if (!usedLiteral) {\n this.popStack();\n }\n if (createdStack) {\n this.stackSlot--;\n }\n this.push(prefix.concat(item, ')'));\n },\n\n incrStack: function() {\n this.stackSlot++;\n if (this.stackSlot > this.stackVars.length) {\n this.stackVars.push('stack' + this.stackSlot);\n }\n return this.topStackName();\n },\n topStackName: function() {\n return 'stack' + this.stackSlot;\n },\n flushInline: function() {\n let inlineStack = this.inlineStack;\n this.inlineStack = [];\n for (let i = 0, len = inlineStack.length; i < len; i++) {\n let entry = inlineStack[i];\n /* istanbul ignore if */\n if (entry instanceof Literal) {\n this.compileStack.push(entry);\n } else {\n let stack = this.incrStack();\n this.pushSource([stack, ' = ', entry, ';']);\n this.compileStack.push(stack);\n }\n }\n },\n isInline: function() {\n return this.inlineStack.length;\n },\n\n popStack: function(wrapped) {\n let inline = this.isInline(),\n item = (inline ? this.inlineStack : this.compileStack).pop();\n\n if (!wrapped && item instanceof Literal) {\n return item.value;\n } else {\n if (!inline) {\n /* istanbul ignore next */\n if (!this.stackSlot) {\n throw new Exception('Invalid stack pop');\n }\n this.stackSlot--;\n }\n return item;\n }\n },\n\n topStack: function() {\n let stack = this.isInline() ? this.inlineStack : this.compileStack,\n item = stack[stack.length - 1];\n\n /* istanbul ignore if */\n if (item instanceof Literal) {\n return item.value;\n } else {\n return item;\n }\n },\n\n contextName: function(context) {\n if (this.useDepths && context) {\n return 'depths[' + context + ']';\n } else {\n return 'depth' + context;\n }\n },\n\n quotedString: function(str) {\n return this.source.quotedString(str);\n },\n\n objectLiteral: function(obj) {\n return this.source.objectLiteral(obj);\n },\n\n aliasable: function(name) {\n let ret = this.aliases[name];\n if (ret) {\n ret.referenceCount++;\n return ret;\n }\n\n ret = this.aliases[name] = this.source.wrap(name);\n ret.aliasable = true;\n ret.referenceCount = 1;\n\n return ret;\n },\n\n setupHelper: function(paramSize, name, blockHelper) {\n let params = [],\n paramsInit = this.setupHelperArgs(name, paramSize, params, blockHelper);\n let foundHelper = this.nameLookup('helpers', name, 'helper'),\n callContext = this.aliasable(\n `${this.contextName(0)} != null ? ${this.contextName(\n 0\n )} : (container.nullContext || {})`\n );\n\n return {\n params: params,\n paramsInit: paramsInit,\n name: foundHelper,\n callParams: [callContext].concat(params)\n };\n },\n\n setupParams: function(helper, paramSize, params) {\n let options = {},\n contexts = [],\n types = [],\n ids = [],\n objectArgs = !params,\n param;\n\n if (objectArgs) {\n params = [];\n }\n\n options.name = this.quotedString(helper);\n options.hash = this.popStack();\n\n if (this.trackIds) {\n options.hashIds = this.popStack();\n }\n if (this.stringParams) {\n options.hashTypes = this.popStack();\n options.hashContexts = this.popStack();\n }\n\n let inverse = this.popStack(),\n program = this.popStack();\n\n // Avoid setting fn and inverse if neither are set. This allows\n // helpers to do a check for `if (options.fn)`\n if (program || inverse) {\n options.fn = program || 'container.noop';\n options.inverse = inverse || 'container.noop';\n }\n\n // The parameters go on to the stack in order (making sure that they are evaluated in order)\n // so we need to pop them off the stack in reverse order\n let i = paramSize;\n while (i--) {\n param = this.popStack();\n params[i] = param;\n\n if (this.trackIds) {\n ids[i] = this.popStack();\n }\n if (this.stringParams) {\n types[i] = this.popStack();\n contexts[i] = this.popStack();\n }\n }\n\n if (objectArgs) {\n options.args = this.source.generateArray(params);\n }\n\n if (this.trackIds) {\n options.ids = this.source.generateArray(ids);\n }\n if (this.stringParams) {\n options.types = this.source.generateArray(types);\n options.contexts = this.source.generateArray(contexts);\n }\n\n if (this.options.data) {\n options.data = 'data';\n }\n if (this.useBlockParams) {\n options.blockParams = 'blockParams';\n }\n return options;\n },\n\n setupHelperArgs: function(helper, paramSize, params, useRegister) {\n let options = this.setupParams(helper, paramSize, params);\n options.loc = JSON.stringify(this.source.currentLocation);\n options = this.objectLiteral(options);\n if (useRegister) {\n this.useRegister('options');\n params.push('options');\n return ['options=', options];\n } else if (params) {\n params.push(options);\n return '';\n } else {\n return options;\n }\n }\n};\n\n(function() {\n const reservedWords = (\n 'break else new var' +\n ' case finally return void' +\n ' catch for switch while' +\n ' continue function this with' +\n ' default if throw' +\n ' delete in try' +\n ' do instanceof typeof' +\n ' abstract enum int short' +\n ' boolean export interface static' +\n ' byte extends long super' +\n ' char final native synchronized' +\n ' class float package throws' +\n ' const goto private transient' +\n ' debugger implements protected volatile' +\n ' double import public let yield await' +\n ' null true false'\n ).split(' ');\n\n const compilerWords = (JavaScriptCompiler.RESERVED_WORDS = {});\n\n for (let i = 0, l = reservedWords.length; i < l; i++) {\n compilerWords[reservedWords[i]] = true;\n }\n})();\n\n/**\n * @deprecated May be removed in the next major version\n */\nJavaScriptCompiler.isValidJavaScriptVariableName = function(name) {\n return (\n !JavaScriptCompiler.RESERVED_WORDS[name] &&\n /^[a-zA-Z_$][0-9a-zA-Z_$]*$/.test(name)\n );\n};\n\nfunction strictLookup(requireTerminal, compiler, parts, startPartIndex, type) {\n let stack = compiler.popStack(),\n len = parts.length;\n if (requireTerminal) {\n len--;\n }\n\n for (let i = startPartIndex; i < len; i++) {\n stack = compiler.nameLookup(stack, parts[i], type);\n }\n\n if (requireTerminal) {\n return [\n compiler.aliasable('container.strict'),\n '(',\n stack,\n ', ',\n compiler.quotedString(parts[len]),\n ', ',\n JSON.stringify(compiler.source.currentLocation),\n ' )'\n ];\n } else {\n return stack;\n }\n}\n\nexport default JavaScriptCompiler;\n", "import runtime from './handlebars.runtime';\n\n// Compiler imports\nimport AST from './handlebars/compiler/ast';\nimport {\n parser as Parser,\n parse,\n parseWithoutProcessing\n} from './handlebars/compiler/base';\nimport { Compiler, compile, precompile } from './handlebars/compiler/compiler';\nimport JavaScriptCompiler from './handlebars/compiler/javascript-compiler';\nimport Visitor from './handlebars/compiler/visitor';\n\nimport noConflict from './handlebars/no-conflict';\n\nlet _create = runtime.create;\nfunction create() {\n let hb = _create();\n\n hb.compile = function(input, options) {\n return compile(input, options, hb);\n };\n hb.precompile = function(input, options) {\n return precompile(input, options, hb);\n };\n\n hb.AST = AST;\n hb.Compiler = Compiler;\n hb.JavaScriptCompiler = JavaScriptCompiler;\n hb.Parser = Parser;\n hb.parse = parse;\n hb.parseWithoutProcessing = parseWithoutProcessing;\n\n return hb;\n}\n\nlet inst = create();\ninst.create = create;\n\nnoConflict(inst);\n\ninst.Visitor = Visitor;\n\ninst['default'] = inst;\n\nexport default inst;\n", "/* eslint-disable new-cap */\nimport Visitor from './visitor';\n\nexport function print(ast) {\n return new PrintVisitor().accept(ast);\n}\n\nexport function PrintVisitor() {\n this.padding = 0;\n}\n\nPrintVisitor.prototype = new Visitor();\n\nPrintVisitor.prototype.pad = function(string) {\n let out = '';\n\n for (let i = 0, l = this.padding; i < l; i++) {\n out += ' ';\n }\n\n out += string + '\\n';\n return out;\n};\n\nPrintVisitor.prototype.Program = function(program) {\n let out = '',\n body = program.body,\n i,\n l;\n\n if (program.blockParams) {\n let blockParams = 'BLOCK PARAMS: [';\n for (i = 0, l = program.blockParams.length; i < l; i++) {\n blockParams += ' ' + program.blockParams[i];\n }\n blockParams += ' ]';\n out += this.pad(blockParams);\n }\n\n for (i = 0, l = body.length; i < l; i++) {\n out += this.accept(body[i]);\n }\n\n this.padding--;\n\n return out;\n};\n\nPrintVisitor.prototype.MustacheStatement = function(mustache) {\n return this.pad('{{ ' + this.SubExpression(mustache) + ' }}');\n};\nPrintVisitor.prototype.Decorator = function(mustache) {\n return this.pad('{{ DIRECTIVE ' + this.SubExpression(mustache) + ' }}');\n};\n\nPrintVisitor.prototype.BlockStatement = PrintVisitor.prototype.DecoratorBlock = function(\n block\n) {\n let out = '';\n\n out += this.pad(\n (block.type === 'DecoratorBlock' ? 'DIRECTIVE ' : '') + 'BLOCK:'\n );\n this.padding++;\n out += this.pad(this.SubExpression(block));\n if (block.program) {\n out += this.pad('PROGRAM:');\n this.padding++;\n out += this.accept(block.program);\n this.padding--;\n }\n if (block.inverse) {\n if (block.program) {\n this.padding++;\n }\n out += this.pad('{{^}}');\n this.padding++;\n out += this.accept(block.inverse);\n this.padding--;\n if (block.program) {\n this.padding--;\n }\n }\n this.padding--;\n\n return out;\n};\n\nPrintVisitor.prototype.PartialStatement = function(partial) {\n let content = 'PARTIAL:' + partial.name.original;\n if (partial.params[0]) {\n content += ' ' + this.accept(partial.params[0]);\n }\n if (partial.hash) {\n content += ' ' + this.accept(partial.hash);\n }\n return this.pad('{{> ' + content + ' }}');\n};\nPrintVisitor.prototype.PartialBlockStatement = function(partial) {\n let content = 'PARTIAL BLOCK:' + partial.name.original;\n if (partial.params[0]) {\n content += ' ' + this.accept(partial.params[0]);\n }\n if (partial.hash) {\n content += ' ' + this.accept(partial.hash);\n }\n\n content += ' ' + this.pad('PROGRAM:');\n this.padding++;\n content += this.accept(partial.program);\n this.padding--;\n\n return this.pad('{{> ' + content + ' }}');\n};\n\nPrintVisitor.prototype.ContentStatement = function(content) {\n return this.pad(\"CONTENT[ '\" + content.value + \"' ]\");\n};\n\nPrintVisitor.prototype.CommentStatement = function(comment) {\n return this.pad(\"{{! '\" + comment.value + \"' }}\");\n};\n\nPrintVisitor.prototype.SubExpression = function(sexpr) {\n let params = sexpr.params,\n paramStrings = [],\n hash;\n\n for (let i = 0, l = params.length; i < l; i++) {\n paramStrings.push(this.accept(params[i]));\n }\n\n params = '[' + paramStrings.join(', ') + ']';\n\n hash = sexpr.hash ? ' ' + this.accept(sexpr.hash) : '';\n\n return this.accept(sexpr.path) + ' ' + params + hash;\n};\n\nPrintVisitor.prototype.PathExpression = function(id) {\n let path = id.parts.join('/');\n return (id.data ? '@' : '') + 'PATH:' + path;\n};\n\nPrintVisitor.prototype.StringLiteral = function(string) {\n return '\"' + string.value + '\"';\n};\n\nPrintVisitor.prototype.NumberLiteral = function(number) {\n return 'NUMBER{' + number.value + '}';\n};\n\nPrintVisitor.prototype.BooleanLiteral = function(bool) {\n return 'BOOLEAN{' + bool.value + '}';\n};\n\nPrintVisitor.prototype.UndefinedLiteral = function() {\n return 'UNDEFINED';\n};\n\nPrintVisitor.prototype.NullLiteral = function() {\n return 'NULL';\n};\n\nPrintVisitor.prototype.Hash = function(hash) {\n let pairs = hash.pairs,\n joinedPairs = [];\n\n for (let i = 0, l = pairs.length; i < l; i++) {\n joinedPairs.push(this.accept(pairs[i]));\n }\n\n return 'HASH{' + joinedPairs.join(', ') + '}';\n};\nPrintVisitor.prototype.HashPair = function(pair) {\n return pair.key + '=' + this.accept(pair.value);\n};\n/* eslint-enable new-cap */\n", "// USAGE:\n// var handlebars = require('handlebars');\n/* eslint-env node */\n/* eslint-disable no-var */\n\n// var local = handlebars.create();\n\nvar handlebars = require('../dist/cjs/handlebars')['default'];\n\nvar printer = require('../dist/cjs/handlebars/compiler/printer');\nhandlebars.PrintVisitor = printer.PrintVisitor;\nhandlebars.print = printer.print;\n\nmodule.exports = handlebars;\n\n// Publish a Node.js require() handler for .handlebars and .hbs files\nfunction extension(module, filename) {\n var fs = require('fs');\n var templateString = fs.readFileSync(filename, 'utf8');\n module.exports = handlebars.compile(templateString);\n}\n/* istanbul ignore else */\nif (typeof require !== 'undefined' && require.extensions) {\n require.extensions['.handlebars'] = extension;\n require.extensions['.hbs'] = extension;\n}\n", null, null, "'use strict'\n\nconst NullObject = function NullObject () { }\nNullObject.prototype = Object.create(null)\n\n/**\n * RegExp to match *( \";\" parameter ) in RFC 7231 sec 3.1.1.1\n *\n * parameter = token \"=\" ( token / quoted-string )\n * token = 1*tchar\n * tchar = \"!\" / \"#\" / \"$\" / \"%\" / \"&\" / \"'\" / \"*\"\n * / \"+\" / \"-\" / \".\" / \"^\" / \"_\" / \"`\" / \"|\" / \"~\"\n * / DIGIT / ALPHA\n * ; any VCHAR, except delimiters\n * quoted-string = DQUOTE *( qdtext / quoted-pair ) DQUOTE\n * qdtext = HTAB / SP / %x21 / %x23-5B / %x5D-7E / obs-text\n * obs-text = %x80-FF\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n */\nconst paramRE = /; *([!#$%&'*+.^\\w`|~-]+)=(\"(?:[\\v\\u0020\\u0021\\u0023-\\u005b\\u005d-\\u007e\\u0080-\\u00ff]|\\\\[\\v\\u0020-\\u00ff])*\"|[!#$%&'*+.^\\w`|~-]+) */gu\n\n/**\n * RegExp to match quoted-pair in RFC 7230 sec 3.2.6\n *\n * quoted-pair = \"\\\" ( HTAB / SP / VCHAR / obs-text )\n * obs-text = %x80-FF\n */\nconst quotedPairRE = /\\\\([\\v\\u0020-\\u00ff])/gu\n\n/**\n * RegExp to match type in RFC 7231 sec 3.1.1.1\n *\n * media-type = type \"/\" subtype\n * type = token\n * subtype = token\n */\nconst mediaTypeRE = /^[!#$%&'*+.^\\w|~-]+\\/[!#$%&'*+.^\\w|~-]+$/u\n\n// default ContentType to prevent repeated object creation\nconst defaultContentType = { type: '', parameters: new NullObject() }\nObject.freeze(defaultContentType.parameters)\nObject.freeze(defaultContentType)\n\n/**\n * Parse media type to object.\n *\n * @param {string|object} header\n * @return {Object}\n * @public\n */\n\nfunction parse (header) {\n if (typeof header !== 'string') {\n throw new TypeError('argument header is required and must be a string')\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n throw new TypeError('invalid media type')\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n throw new TypeError('invalid parameter format')\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n throw new TypeError('invalid parameter format')\n }\n\n return result\n}\n\nfunction safeParse (header) {\n if (typeof header !== 'string') {\n return defaultContentType\n }\n\n let index = header.indexOf(';')\n const type = index !== -1\n ? header.slice(0, index).trim()\n : header.trim()\n\n if (mediaTypeRE.test(type) === false) {\n return defaultContentType\n }\n\n const result = {\n type: type.toLowerCase(),\n parameters: new NullObject()\n }\n\n // parse parameters\n if (index === -1) {\n return result\n }\n\n let key\n let match\n let value\n\n paramRE.lastIndex = index\n\n while ((match = paramRE.exec(header))) {\n if (match.index !== index) {\n return defaultContentType\n }\n\n index += match[0].length\n key = match[1].toLowerCase()\n value = match[2]\n\n if (value[0] === '\"') {\n // remove quotes and escapes\n value = value\n .slice(1, value.length - 1)\n\n quotedPairRE.test(value) && (value = value.replace(quotedPairRE, '$1'))\n }\n\n result.parameters[key] = value\n }\n\n if (index !== header.length) {\n return defaultContentType\n }\n\n return result\n}\n\nmodule.exports.default = { parse, safeParse }\nmodule.exports.parse = parse\nmodule.exports.safeParse = safeParse\nmodule.exports.defaultContentType = defaultContentType\n", "export const state = {\n warningEmitted: false,\n};\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !state.warningEmitted) {\n if (process.env.AWS_SDK_JS_NODE_VERSION_SUPPORT_WARNING_DISABLED === \"true\") {\n state.warningEmitted = true;\n return;\n }\n const userMajorVersion = parseInt(version.substring(1, version.indexOf(\".\")));\n const vv = 22;\n if (userMajorVersion < vv) {\n state.warningEmitted = true;\n process.emitWarning(`NodeVersionSupportWarning: The AWS SDK for JavaScript (v3)\nversions published after the first week of January 2027\nwill require node >=${vv}. You are running node ${version}.\n\nTo continue receiving updates to AWS services, bug fixes,\nand security updates please upgrade to node >=${vv}.\n\nMore information can be found at: https://a.co/c895JFp`);\n }\n }\n};\n", "export const longPollMiddleware = () => (next, context) => async (args) => {\n context.__retryLongPoll = true;\n return next(args);\n};\nexport const longPollMiddlewareOptions = {\n name: \"longPollMiddleware\",\n tags: [\"RETRY\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLongPollPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(longPollMiddleware(), longPollMiddlewareOptions);\n },\n});\n", "export function setCredentialFeature(credentials, feature, value) {\n if (!credentials.$source) {\n credentials.$source = {};\n }\n credentials.$source[feature] = value;\n return credentials;\n}\n", "import { Readable } from \"node:stream\";\nexport const isStreamingPayload = (request) => request?.body instanceof Readable ||\n (typeof ReadableStream !== \"undefined\" && request?.body instanceof ReadableStream);\n", "const getAllAliases = (name, aliases) => {\n const _aliases = [];\n if (name) {\n _aliases.push(name);\n }\n if (aliases) {\n for (const alias of aliases) {\n _aliases.push(alias);\n }\n }\n return _aliases;\n};\nconst getMiddlewareNameWithAliases = (name, aliases) => {\n return `${name || \"anonymous\"}${aliases && aliases.length > 0 ? ` (a.k.a. ${aliases.join(\",\")})` : \"\"}`;\n};\nexport const constructStack = () => {\n let absoluteEntries = [];\n let relativeEntries = [];\n let identifyOnResolve = false;\n const entriesNameSet = new Set();\n const sort = (entries) => entries.sort((a, b) => stepWeights[b.step] - stepWeights[a.step] ||\n priorityWeights[b.priority || \"normal\"] - priorityWeights[a.priority || \"normal\"]);\n const removeByName = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const aliases = getAllAliases(entry.name, entry.aliases);\n if (aliases.includes(toRemove)) {\n isRemoved = true;\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const removeByReference = (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n if (entry.middleware === toRemove) {\n isRemoved = true;\n for (const alias of getAllAliases(entry.name, entry.aliases)) {\n entriesNameSet.delete(alias);\n }\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n };\n const cloneTo = (toStack) => {\n absoluteEntries.forEach((entry) => {\n toStack.add(entry.middleware, { ...entry });\n });\n relativeEntries.forEach((entry) => {\n toStack.addRelativeTo(entry.middleware, { ...entry });\n });\n toStack.identifyOnResolve?.(stack.identifyOnResolve());\n return toStack;\n };\n const expandRelativeMiddlewareList = (from) => {\n const expandedMiddlewareList = [];\n from.before.forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n expandedMiddlewareList.push(from);\n from.after.reverse().forEach((entry) => {\n if (entry.before.length === 0 && entry.after.length === 0) {\n expandedMiddlewareList.push(entry);\n }\n else {\n expandedMiddlewareList.push(...expandRelativeMiddlewareList(entry));\n }\n });\n return expandedMiddlewareList;\n };\n const getMiddlewareList = (debug = false) => {\n const normalizedAbsoluteEntries = [];\n const normalizedRelativeEntries = [];\n const normalizedEntriesNameMap = {};\n absoluteEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedAbsoluteEntries.push(normalizedEntry);\n });\n relativeEntries.forEach((entry) => {\n const normalizedEntry = {\n ...entry,\n before: [],\n after: [],\n };\n for (const alias of getAllAliases(normalizedEntry.name, normalizedEntry.aliases)) {\n normalizedEntriesNameMap[alias] = normalizedEntry;\n }\n normalizedRelativeEntries.push(normalizedEntry);\n });\n normalizedRelativeEntries.forEach((entry) => {\n if (entry.toMiddleware) {\n const toMiddleware = normalizedEntriesNameMap[entry.toMiddleware];\n if (toMiddleware === undefined) {\n if (debug) {\n return;\n }\n throw new Error(`${entry.toMiddleware} is not found when adding ` +\n `${getMiddlewareNameWithAliases(entry.name, entry.aliases)} ` +\n `middleware ${entry.relation} ${entry.toMiddleware}`);\n }\n if (entry.relation === \"after\") {\n toMiddleware.after.push(entry);\n }\n if (entry.relation === \"before\") {\n toMiddleware.before.push(entry);\n }\n }\n });\n const mainChain = sort(normalizedAbsoluteEntries)\n .map(expandRelativeMiddlewareList)\n .reduce((wholeList, expandedMiddlewareList) => {\n wholeList.push(...expandedMiddlewareList);\n return wholeList;\n }, []);\n return mainChain;\n };\n const stack = {\n add: (middleware, options = {}) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n step: \"initialize\",\n priority: \"normal\",\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = absoluteEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = absoluteEntries[toOverrideIndex];\n if (toOverride.step !== entry.step || entry.priority !== toOverride.priority) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware with ` +\n `${toOverride.priority} priority in ${toOverride.step} step cannot ` +\n `be overridden by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware with ` +\n `${entry.priority} priority in ${entry.step} step.`);\n }\n absoluteEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n absoluteEntries.push(entry);\n },\n addRelativeTo: (middleware, options) => {\n const { name, override, aliases: _aliases } = options;\n const entry = {\n middleware,\n ...options,\n };\n const aliases = getAllAliases(name, _aliases);\n if (aliases.length > 0) {\n if (aliases.some((alias) => entriesNameSet.has(alias))) {\n if (!override)\n throw new Error(`Duplicate middleware name '${getMiddlewareNameWithAliases(name, _aliases)}'`);\n for (const alias of aliases) {\n const toOverrideIndex = relativeEntries.findIndex((entry) => entry.name === alias || entry.aliases?.some((a) => a === alias));\n if (toOverrideIndex === -1) {\n continue;\n }\n const toOverride = relativeEntries[toOverrideIndex];\n if (toOverride.toMiddleware !== entry.toMiddleware || toOverride.relation !== entry.relation) {\n throw new Error(`\"${getMiddlewareNameWithAliases(toOverride.name, toOverride.aliases)}\" middleware ` +\n `${toOverride.relation} \"${toOverride.toMiddleware}\" middleware cannot be overridden ` +\n `by \"${getMiddlewareNameWithAliases(name, _aliases)}\" middleware ${entry.relation} ` +\n `\"${entry.toMiddleware}\" middleware.`);\n }\n relativeEntries.splice(toOverrideIndex, 1);\n }\n }\n for (const alias of aliases) {\n entriesNameSet.add(alias);\n }\n }\n relativeEntries.push(entry);\n },\n clone: () => cloneTo(constructStack()),\n use: (plugin) => {\n plugin.applyToStack(stack);\n },\n remove: (toRemove) => {\n if (typeof toRemove === \"string\")\n return removeByName(toRemove);\n else\n return removeByReference(toRemove);\n },\n removeByTag: (toRemove) => {\n let isRemoved = false;\n const filterCb = (entry) => {\n const { tags, name, aliases: _aliases } = entry;\n if (tags && tags.includes(toRemove)) {\n const aliases = getAllAliases(name, _aliases);\n for (const alias of aliases) {\n entriesNameSet.delete(alias);\n }\n isRemoved = true;\n return false;\n }\n return true;\n };\n absoluteEntries = absoluteEntries.filter(filterCb);\n relativeEntries = relativeEntries.filter(filterCb);\n return isRemoved;\n },\n concat: (from) => {\n const cloned = cloneTo(constructStack());\n cloned.use(from);\n cloned.identifyOnResolve(identifyOnResolve || cloned.identifyOnResolve() || (from.identifyOnResolve?.() ?? false));\n return cloned;\n },\n applyToStack: cloneTo,\n identify: () => {\n return getMiddlewareList(true).map((mw) => {\n const step = mw.step ??\n mw.relation +\n \" \" +\n mw.toMiddleware;\n return getMiddlewareNameWithAliases(mw.name, mw.aliases) + \" - \" + step;\n });\n },\n identifyOnResolve(toggle) {\n if (typeof toggle === \"boolean\")\n identifyOnResolve = toggle;\n return identifyOnResolve;\n },\n resolve: (handler, context) => {\n for (const middleware of getMiddlewareList()\n .map((entry) => entry.middleware)\n .reverse()) {\n handler = middleware(handler, context);\n }\n if (identifyOnResolve) {\n console.log(stack.identify());\n }\n return handler;\n },\n };\n return stack;\n};\nconst stepWeights = {\n initialize: 5,\n serialize: 4,\n build: 3,\n finalizeRequest: 2,\n deserialize: 1,\n};\nconst priorityWeights = {\n high: 3,\n normal: 2,\n low: 1,\n};\n", "'use strict';\n\nexports.HttpAuthLocation = void 0;\n(function (HttpAuthLocation) {\n HttpAuthLocation[\"HEADER\"] = \"header\";\n HttpAuthLocation[\"QUERY\"] = \"query\";\n})(exports.HttpAuthLocation || (exports.HttpAuthLocation = {}));\n\nexports.HttpApiKeyAuthLocation = void 0;\n(function (HttpApiKeyAuthLocation) {\n HttpApiKeyAuthLocation[\"HEADER\"] = \"header\";\n HttpApiKeyAuthLocation[\"QUERY\"] = \"query\";\n})(exports.HttpApiKeyAuthLocation || (exports.HttpApiKeyAuthLocation = {}));\n\nexports.EndpointURLScheme = void 0;\n(function (EndpointURLScheme) {\n EndpointURLScheme[\"HTTP\"] = \"http\";\n EndpointURLScheme[\"HTTPS\"] = \"https\";\n})(exports.EndpointURLScheme || (exports.EndpointURLScheme = {}));\n\nexports.AlgorithmId = void 0;\n(function (AlgorithmId) {\n AlgorithmId[\"MD5\"] = \"md5\";\n AlgorithmId[\"CRC32\"] = \"crc32\";\n AlgorithmId[\"CRC32C\"] = \"crc32c\";\n AlgorithmId[\"SHA1\"] = \"sha1\";\n AlgorithmId[\"SHA256\"] = \"sha256\";\n})(exports.AlgorithmId || (exports.AlgorithmId = {}));\nconst getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n if (runtimeConfig.sha256 !== undefined) {\n checksumAlgorithms.push({\n algorithmId: () => exports.AlgorithmId.SHA256,\n checksumConstructor: () => runtimeConfig.sha256,\n });\n }\n if (runtimeConfig.md5 != undefined) {\n checksumAlgorithms.push({\n algorithmId: () => exports.AlgorithmId.MD5,\n checksumConstructor: () => runtimeConfig.md5,\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nconst resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n runtimeConfig[checksumAlgorithm.algorithmId()] = checksumAlgorithm.checksumConstructor();\n });\n return runtimeConfig;\n};\n\nconst getDefaultClientConfiguration = (runtimeConfig) => {\n return getChecksumConfiguration(runtimeConfig);\n};\nconst resolveDefaultRuntimeConfig = (config) => {\n return resolveChecksumRuntimeConfig(config);\n};\n\nexports.FieldPosition = void 0;\n(function (FieldPosition) {\n FieldPosition[FieldPosition[\"HEADER\"] = 0] = \"HEADER\";\n FieldPosition[FieldPosition[\"TRAILER\"] = 1] = \"TRAILER\";\n})(exports.FieldPosition || (exports.FieldPosition = {}));\n\nconst SMITHY_CONTEXT_KEY = \"__smithy_context\";\n\nexports.IniSectionType = void 0;\n(function (IniSectionType) {\n IniSectionType[\"PROFILE\"] = \"profile\";\n IniSectionType[\"SSO_SESSION\"] = \"sso-session\";\n IniSectionType[\"SERVICES\"] = \"services\";\n})(exports.IniSectionType || (exports.IniSectionType = {}));\n\nexports.RequestHandlerProtocol = void 0;\n(function (RequestHandlerProtocol) {\n RequestHandlerProtocol[\"HTTP_0_9\"] = \"http/0.9\";\n RequestHandlerProtocol[\"HTTP_1_0\"] = \"http/1.0\";\n RequestHandlerProtocol[\"TDS_8_0\"] = \"tds/8.0\";\n})(exports.RequestHandlerProtocol || (exports.RequestHandlerProtocol = {}));\n\nexports.SMITHY_CONTEXT_KEY = SMITHY_CONTEXT_KEY;\nexports.getDefaultClientConfiguration = getDefaultClientConfiguration;\nexports.resolveDefaultRuntimeConfig = resolveDefaultRuntimeConfig;\n", "import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n", "export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n", "export const invalidFunction = (message) => () => {\n throw new Error(message);\n};\n", "export const invalidProvider = (message) => () => Promise.reject(message);\n", "export const getCircularReplacer = () => {\n const seen = new WeakSet();\n return (key, value) => {\n if (typeof value === \"object\" && value !== null) {\n if (seen.has(value)) {\n return \"[Circular]\";\n }\n seen.add(value);\n }\n return value;\n };\n};\n", "export const sleep = (seconds) => {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n};\n", "import { getCircularReplacer } from \"./circularReplacer\";\nexport const waiterServiceDefaults = {\n minDelay: 2,\n maxDelay: 120,\n};\nexport var WaiterState;\n(function (WaiterState) {\n WaiterState[\"ABORTED\"] = \"ABORTED\";\n WaiterState[\"FAILURE\"] = \"FAILURE\";\n WaiterState[\"SUCCESS\"] = \"SUCCESS\";\n WaiterState[\"RETRY\"] = \"RETRY\";\n WaiterState[\"TIMEOUT\"] = \"TIMEOUT\";\n})(WaiterState || (WaiterState = {}));\nexport const checkExceptions = (result) => {\n if (result.state === WaiterState.ABORTED) {\n const abortError = new Error(`${JSON.stringify({\n ...result,\n reason: \"Request was aborted\",\n }, getCircularReplacer())}`);\n abortError.name = \"AbortError\";\n throw abortError;\n }\n else if (result.state === WaiterState.TIMEOUT) {\n const timeoutError = new Error(`${JSON.stringify({\n ...result,\n reason: \"Waiter has timed out\",\n }, getCircularReplacer())}`);\n timeoutError.name = \"TimeoutError\";\n throw timeoutError;\n }\n else if (result.state !== WaiterState.SUCCESS) {\n throw new Error(`${JSON.stringify(result, getCircularReplacer())}`);\n }\n return result;\n};\n", "import { getCircularReplacer } from \"./circularReplacer\";\nimport { sleep } from \"./utils/sleep\";\nimport { WaiterState } from \"./waiter\";\nexport const runPolling = async ({ minDelay, maxDelay, maxWaitTime, abortController, client, abortSignal }, input, acceptorChecks) => {\n const observedResponses = {};\n const [minDelayMs, maxDelayMs] = [minDelay * 1000, maxDelay * 1000];\n let currentAttempt = 0;\n const waitUntil = Date.now() + maxWaitTime * 1000;\n const warn403Time = Date.now() + 60_000;\n let didWarn403 = false;\n while (true) {\n if (currentAttempt > 0) {\n const delayMs = exponentialBackoffWithJitter(minDelayMs, maxDelayMs, currentAttempt, waitUntil);\n if (abortController?.signal?.aborted || abortSignal?.aborted) {\n const message = \"AbortController signal aborted.\";\n observedResponses[message] |= 0;\n observedResponses[message] += 1;\n return { state: WaiterState.ABORTED, observedResponses };\n }\n if (Date.now() + delayMs > waitUntil) {\n return { state: WaiterState.TIMEOUT, observedResponses };\n }\n await sleep(delayMs / 1_000);\n }\n const { state, reason } = await acceptorChecks(client, input);\n if (reason) {\n const message = createMessageFromResponse(reason);\n observedResponses[message] |= 0;\n observedResponses[message] += 1;\n }\n if (state !== WaiterState.RETRY) {\n return { state, reason, final: reason, observedResponses };\n }\n currentAttempt += 1;\n if (!didWarn403 && Date.now() >= warn403Time) {\n checkWarn403(observedResponses, client);\n didWarn403 = true;\n }\n }\n};\nconst checkWarn403 = (observedResponses = {}, client) => {\n const orderedErrors = Object.keys(observedResponses);\n let maxCount = 0;\n let count403 = 0;\n for (const response of orderedErrors) {\n const n = observedResponses[response] | 0;\n maxCount = Math.max(n, maxCount);\n if (response.startsWith(\"403:\")) {\n count403 += n;\n }\n }\n const clientLogger = client?.config?.logger;\n const warningLogger = typeof clientLogger?.warn === \"function\" && !clientLogger.constructor?.name?.includes?.(\"NoOpLogger\")\n ? clientLogger\n : console;\n if (count403 >= 3 || orderedErrors[orderedErrors.length - 1]?.startsWith(\"403:\")) {\n warningLogger.warn(`@smithy/util-waiter WARN - 403 status code encountered during waiter polling.`);\n }\n};\nconst createMessageFromResponse = (reason) => {\n const status = reason?.$response?.statusCode ?? reason?.$metadata?.httpStatusCode;\n if (reason?.$responseBodyText) {\n return `${status ? status + \": \" : \"\"}Deserialization error for body: ${reason.$responseBodyText}`;\n }\n if (status) {\n if (reason?.$response || reason?.message) {\n return `${status ?? \"Unknown\"}: ${reason?.message}`;\n }\n return `${status}: OK`;\n }\n return String(reason?.message ?? JSON.stringify(reason, getCircularReplacer()) ?? \"Unknown\");\n};\nconst exponentialBackoffWithJitter = (minDelayMs, maxDelayMs, attempt, waitUntil) => {\n const attemptCountCeiling = Math.log(maxDelayMs / minDelayMs) / Math.log(2) + 1;\n if (attempt > attemptCountCeiling) {\n return maxDelayMs;\n }\n const delay = minDelayMs * 2 ** (attempt - 1);\n const capped = Math.min(delay, maxDelayMs);\n const waitFor = randomInRange(minDelayMs, capped);\n if (Date.now() + waitFor > waitUntil) {\n const timeRemaining = waitUntil - Date.now();\n return Math.max(0, timeRemaining - 500);\n }\n return waitFor;\n};\nconst randomInRange = (min, max) => min + Math.random() * (max - min);\n", "export const validateWaiterOptions = (options) => {\n if (options.maxWaitTime <= 0) {\n throw new Error(`WaiterConfiguration.maxWaitTime must be greater than 0`);\n }\n else if (options.minDelay <= 0) {\n throw new Error(`WaiterConfiguration.minDelay must be greater than 0`);\n }\n else if (options.maxDelay <= 0) {\n throw new Error(`WaiterConfiguration.maxDelay must be greater than 0`);\n }\n else if (options.maxWaitTime <= options.minDelay) {\n throw new Error(`WaiterConfiguration.maxWaitTime [${options.maxWaitTime}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter`);\n }\n else if (options.maxDelay < options.minDelay) {\n throw new Error(`WaiterConfiguration.maxDelay [${options.maxDelay}] must be greater than WaiterConfiguration.minDelay [${options.minDelay}] for this waiter`);\n }\n};\n", "import { runPolling } from \"./poller\";\nimport { validateWaiterOptions } from \"./utils/validate\";\nimport { WaiterState, waiterServiceDefaults } from \"./waiter\";\nconst abortTimeout = (abortSignal) => {\n let onAbort;\n const promise = new Promise((resolve) => {\n onAbort = () => resolve({ state: WaiterState.ABORTED });\n if (typeof abortSignal.addEventListener === \"function\") {\n abortSignal.addEventListener(\"abort\", onAbort);\n }\n else {\n abortSignal.onabort = onAbort;\n }\n });\n return {\n clearListener() {\n if (typeof abortSignal.removeEventListener === \"function\") {\n abortSignal.removeEventListener(\"abort\", onAbort);\n }\n },\n aborted: promise,\n };\n};\nexport const createWaiter = async (options, input, acceptorChecks) => {\n const params = {\n ...waiterServiceDefaults,\n ...options,\n };\n validateWaiterOptions(params);\n const exitConditions = [runPolling(params, input, acceptorChecks)];\n const finalize = [];\n if (options.abortSignal) {\n const { aborted, clearListener } = abortTimeout(options.abortSignal);\n finalize.push(clearListener);\n exitConditions.push(aborted);\n }\n if (options.abortController?.signal) {\n const { aborted, clearListener } = abortTimeout(options.abortController.signal);\n finalize.push(clearListener);\n exitConditions.push(aborted);\n }\n return Promise.race(exitConditions).then((result) => {\n for (const fn of finalize) {\n fn();\n }\n return result;\n });\n};\n", "import { constructStack } from \"../middleware-stack/MiddlewareStack\";\nexport class Client {\n config;\n middlewareStack = constructStack();\n initConfig;\n handlers;\n constructor(config) {\n this.config = config;\n const { protocol, protocolSettings } = config;\n if (protocolSettings) {\n if (typeof protocol === \"function\") {\n config.protocol = new protocol(protocolSettings);\n }\n }\n }\n send(command, optionsOrCb, cb) {\n const options = typeof optionsOrCb !== \"function\" ? optionsOrCb : undefined;\n const callback = typeof optionsOrCb === \"function\" ? optionsOrCb : cb;\n const useHandlerCache = options === undefined && this.config.cacheMiddleware === true;\n let handler;\n if (useHandlerCache) {\n if (!this.handlers) {\n this.handlers = new WeakMap();\n }\n const handlers = this.handlers;\n if (handlers.has(command.constructor)) {\n handler = handlers.get(command.constructor);\n }\n else {\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n handlers.set(command.constructor, handler);\n }\n }\n else {\n delete this.handlers;\n handler = command.resolveMiddleware(this.middlewareStack, this.config, options);\n }\n if (callback) {\n handler(command)\n .then((result) => callback(null, result.output), (err) => callback(err))\n .catch(() => { });\n }\n else {\n return handler(command).then((result) => result.output);\n }\n }\n destroy() {\n this.config?.requestHandler?.destroy?.();\n delete this.handlers;\n }\n}\n", "export const deref = (schemaRef) => {\n if (typeof schemaRef === \"function\") {\n return schemaRef();\n }\n return schemaRef;\n};\n", "export const isArrayBuffer = (arg) => (typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer) ||\n Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\";\n", "import { isArrayBuffer } from \"../is-array-buffer/is-array-buffer\";\nexport const fromArrayBuffer = (input, offset = 0, length = input.byteLength - offset) => {\n if (!isArrayBuffer(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return Buffer.from(input, offset, length);\n};\nexport const fromString = (input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? Buffer.from(input, encoding) : Buffer.from(input);\n};\n", "import { fromString } from \"../util-buffer-from/buffer-from\";\nconst BASE64_REGEX = /^[A-Za-z0-9+/]*={0,2}$/;\nexport const fromBase64 = (input) => {\n if ((input.length * 3) % 4 !== 0) {\n throw new TypeError(`Incorrect padding on base64 string.`);\n }\n if (!BASE64_REGEX.exec(input)) {\n throw new TypeError(`Invalid base64 string.`);\n }\n const buffer = fromString(input, \"base64\");\n return new Uint8Array(buffer.buffer, buffer.byteOffset, buffer.byteLength);\n};\n", "import { fromString } from \"../util-buffer-from/buffer-from\";\nexport const fromUtf8 = (input) => {\n const buf = fromString(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n};\n", "import { fromArrayBuffer } from \"../util-buffer-from/buffer-from\";\nimport { fromUtf8 } from \"../util-utf8/fromUtf8\";\nexport const toBase64 = (_input) => {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"base64\");\n};\n", "export function bindUint8ArrayBlobAdapter(toUtf8, fromUtf8, toBase64, fromBase64) {\n return class Uint8ArrayBlobAdapter extends Uint8Array {\n static fromString(source, encoding = \"utf-8\") {\n if (typeof source === \"string\") {\n if (encoding === \"base64\") {\n return Uint8ArrayBlobAdapter.mutate(fromBase64(source));\n }\n return Uint8ArrayBlobAdapter.mutate(fromUtf8(source));\n }\n throw new Error(`Unsupported conversion from ${typeof source} to Uint8ArrayBlobAdapter.`);\n }\n static mutate(source) {\n Object.setPrototypeOf(source, Uint8ArrayBlobAdapter.prototype);\n return source;\n }\n transformToString(encoding = \"utf-8\") {\n if (encoding === \"base64\") {\n return toBase64(this);\n }\n return toUtf8(this);\n }\n };\n}\n", "import { fromArrayBuffer } from \"../util-buffer-from/buffer-from\";\nexport const toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return fromArrayBuffer(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n};\n", "const decimalToHex = Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, \"0\"));\nexport function bindV4(getRandomValues) {\n if (typeof crypto !== \"undefined\" && typeof crypto.randomUUID === \"function\") {\n return () => crypto.randomUUID();\n }\n return () => {\n const rnds = new Uint8Array(16);\n getRandomValues(rnds);\n rnds[6] = (rnds[6] & 0x0f) | 0x40;\n rnds[8] = (rnds[8] & 0x3f) | 0x80;\n return (decimalToHex[rnds[0]] +\n decimalToHex[rnds[1]] +\n decimalToHex[rnds[2]] +\n decimalToHex[rnds[3]] +\n \"-\" +\n decimalToHex[rnds[4]] +\n decimalToHex[rnds[5]] +\n \"-\" +\n decimalToHex[rnds[6]] +\n decimalToHex[rnds[7]] +\n \"-\" +\n decimalToHex[rnds[8]] +\n decimalToHex[rnds[9]] +\n \"-\" +\n decimalToHex[rnds[10]] +\n decimalToHex[rnds[11]] +\n decimalToHex[rnds[12]] +\n decimalToHex[rnds[13]] +\n decimalToHex[rnds[14]] +\n decimalToHex[rnds[15]]);\n };\n}\n", "export const copyDocumentWithTransform = (source, schemaRef, transform = (_) => _) => source;\n", "export const parseBoolean = (value) => {\n switch (value) {\n case \"true\":\n return true;\n case \"false\":\n return false;\n default:\n throw new Error(`Unable to parse boolean value \"${value}\"`);\n }\n};\nexport const expectBoolean = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"number\") {\n if (value === 0 || value === 1) {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (value === 0) {\n return false;\n }\n if (value === 1) {\n return true;\n }\n }\n if (typeof value === \"string\") {\n const lower = value.toLowerCase();\n if (lower === \"false\" || lower === \"true\") {\n logger.warn(stackTraceWarning(`Expected boolean, got ${typeof value}: ${value}`));\n }\n if (lower === \"false\") {\n return false;\n }\n if (lower === \"true\") {\n return true;\n }\n }\n if (typeof value === \"boolean\") {\n return value;\n }\n throw new TypeError(`Expected boolean, got ${typeof value}: ${value}`);\n};\nexport const expectNumber = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n const parsed = parseFloat(value);\n if (!Number.isNaN(parsed)) {\n if (String(parsed) !== String(value)) {\n logger.warn(stackTraceWarning(`Expected number but observed string: ${value}`));\n }\n return parsed;\n }\n }\n if (typeof value === \"number\") {\n return value;\n }\n throw new TypeError(`Expected number, got ${typeof value}: ${value}`);\n};\nconst MAX_FLOAT = Math.ceil(2 ** 127 * (2 - 2 ** -23));\nexport const expectFloat32 = (value) => {\n const expected = expectNumber(value);\n if (expected !== undefined && !Number.isNaN(expected) && expected !== Infinity && expected !== -Infinity) {\n if (Math.abs(expected) > MAX_FLOAT) {\n throw new TypeError(`Expected 32-bit float, got ${value}`);\n }\n }\n return expected;\n};\nexport const expectLong = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (Number.isInteger(value) && !Number.isNaN(value)) {\n return value;\n }\n throw new TypeError(`Expected integer, got ${typeof value}: ${value}`);\n};\nexport const expectInt = expectLong;\nexport const expectInt32 = (value) => expectSizedInt(value, 32);\nexport const expectShort = (value) => expectSizedInt(value, 16);\nexport const expectByte = (value) => expectSizedInt(value, 8);\nconst expectSizedInt = (value, size) => {\n const expected = expectLong(value);\n if (expected !== undefined && castInt(expected, size) !== expected) {\n throw new TypeError(`Expected ${size}-bit integer, got ${value}`);\n }\n return expected;\n};\nconst castInt = (value, size) => {\n switch (size) {\n case 32:\n return Int32Array.of(value)[0];\n case 16:\n return Int16Array.of(value)[0];\n case 8:\n return Int8Array.of(value)[0];\n }\n};\nexport const expectNonNull = (value, location) => {\n if (value === null || value === undefined) {\n if (location) {\n throw new TypeError(`Expected a non-null value for ${location}`);\n }\n throw new TypeError(\"Expected a non-null value\");\n }\n return value;\n};\nexport const expectObject = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"object\" && !Array.isArray(value)) {\n return value;\n }\n const receivedType = Array.isArray(value) ? \"array\" : typeof value;\n throw new TypeError(`Expected object, got ${receivedType}: ${value}`);\n};\nexport const expectString = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value === \"string\") {\n return value;\n }\n if ([\"boolean\", \"number\", \"bigint\"].includes(typeof value)) {\n logger.warn(stackTraceWarning(`Expected string, got ${typeof value}: ${value}`));\n return String(value);\n }\n throw new TypeError(`Expected string, got ${typeof value}: ${value}`);\n};\nexport const expectUnion = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n const asObject = expectObject(value);\n const setKeys = [];\n for (const k in asObject) {\n if (asObject[k] != null) {\n setKeys.push(k);\n }\n }\n if (setKeys.length === 0) {\n throw new TypeError(`Unions must have exactly one non-null member. None were found.`);\n }\n if (setKeys.length > 1) {\n throw new TypeError(`Unions must have exactly one non-null member. Keys ${setKeys} were not null.`);\n }\n return asObject;\n};\nexport const strictParseDouble = (value) => {\n if (typeof value == \"string\") {\n return expectNumber(parseNumber(value));\n }\n return expectNumber(value);\n};\nexport const strictParseFloat = strictParseDouble;\nexport const strictParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return expectFloat32(parseNumber(value));\n }\n return expectFloat32(value);\n};\nconst NUMBER_REGEX = /(-?(?:0|[1-9]\\d*)(?:\\.\\d+)?(?:[eE][+-]?\\d+)?)|(-?Infinity)|(NaN)/g;\nconst parseNumber = (value) => {\n const matches = value.match(NUMBER_REGEX);\n if (matches === null || matches[0].length !== value.length) {\n throw new TypeError(`Expected real number, got implicit NaN`);\n }\n return parseFloat(value);\n};\nexport const limitedParseDouble = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectNumber(value);\n};\nexport const handleFloat = limitedParseDouble;\nexport const limitedParseFloat = limitedParseDouble;\nexport const limitedParseFloat32 = (value) => {\n if (typeof value == \"string\") {\n return parseFloatString(value);\n }\n return expectFloat32(value);\n};\nconst parseFloatString = (value) => {\n switch (value) {\n case \"NaN\":\n return NaN;\n case \"Infinity\":\n return Infinity;\n case \"-Infinity\":\n return -Infinity;\n default:\n throw new Error(`Unable to parse float value: ${value}`);\n }\n};\nexport const strictParseLong = (value) => {\n if (typeof value === \"string\") {\n return expectLong(parseNumber(value));\n }\n return expectLong(value);\n};\nexport const strictParseInt = strictParseLong;\nexport const strictParseInt32 = (value) => {\n if (typeof value === \"string\") {\n return expectInt32(parseNumber(value));\n }\n return expectInt32(value);\n};\nexport const strictParseShort = (value) => {\n if (typeof value === \"string\") {\n return expectShort(parseNumber(value));\n }\n return expectShort(value);\n};\nexport const strictParseByte = (value) => {\n if (typeof value === \"string\") {\n return expectByte(parseNumber(value));\n }\n return expectByte(value);\n};\nconst stackTraceWarning = (message) => {\n return String(new TypeError(message).stack || message)\n .split(\"\\n\")\n .slice(0, 5)\n .filter((s) => !s.includes(\"stackTraceWarning\"))\n .join(\"\\n\");\n};\nexport const logger = {\n warn: console.warn,\n};\n", "import { strictParseByte, strictParseDouble, strictParseFloat32, strictParseShort } from \"./parse-utils\";\nconst DAYS = [\"Sun\", \"Mon\", \"Tue\", \"Wed\", \"Thu\", \"Fri\", \"Sat\"];\nconst MONTHS = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport function dateToUtcString(date) {\n const year = date.getUTCFullYear();\n const month = date.getUTCMonth();\n const dayOfWeek = date.getUTCDay();\n const dayOfMonthInt = date.getUTCDate();\n const hoursInt = date.getUTCHours();\n const minutesInt = date.getUTCMinutes();\n const secondsInt = date.getUTCSeconds();\n const dayOfMonthString = dayOfMonthInt < 10 ? `0${dayOfMonthInt}` : `${dayOfMonthInt}`;\n const hoursString = hoursInt < 10 ? `0${hoursInt}` : `${hoursInt}`;\n const minutesString = minutesInt < 10 ? `0${minutesInt}` : `${minutesInt}`;\n const secondsString = secondsInt < 10 ? `0${secondsInt}` : `${secondsInt}`;\n return `${DAYS[dayOfWeek]}, ${dayOfMonthString} ${MONTHS[month]} ${year} ${hoursString}:${minutesString}:${secondsString} GMT`;\n}\nconst RFC3339 = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?[zZ]$/);\nexport const parseRfc3339DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n return buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n};\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d{2})-(\\d{2})[tT](\\d{2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))?(([-+]\\d{2}\\:\\d{2})|[zZ])$/);\nexport const parseRfc3339DateTimeWithOffset = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-3339 date-times must be expressed as strings\");\n }\n const match = RFC3339_WITH_OFFSET.exec(value);\n if (!match) {\n throw new TypeError(\"Invalid RFC-3339 date-time value\");\n }\n const [_, yearStr, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, offsetStr] = match;\n const year = strictParseShort(stripLeadingZeroes(yearStr));\n const month = parseDateValue(monthStr, \"month\", 1, 12);\n const day = parseDateValue(dayStr, \"day\", 1, 31);\n const date = buildDate(year, month, day, { hours, minutes, seconds, fractionalMilliseconds });\n if (offsetStr.toUpperCase() != \"Z\") {\n date.setTime(date.getTime() - parseOffsetToMilliseconds(offsetStr));\n }\n return date;\n};\nconst IMF_FIXDATE = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\\d{2}) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\\d{4}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst RFC_850_DATE = new RegExp(/^(?:Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\\d{2})-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? GMT$/);\nconst ASC_TIME = new RegExp(/^(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( [1-9]|\\d{2}) (\\d{1,2}):(\\d{2}):(\\d{2})(?:\\.(\\d+))? (\\d{4})$/);\nexport const parseRfc7231DateTime = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC-7231 date-times must be expressed as strings\");\n }\n let match = IMF_FIXDATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n match = RFC_850_DATE.exec(value);\n if (match) {\n const [_, dayStr, monthStr, yearStr, hours, minutes, seconds, fractionalMilliseconds] = match;\n return adjustRfc850Year(buildDate(parseTwoDigitYear(yearStr), parseMonthByShortName(monthStr), parseDateValue(dayStr, \"day\", 1, 31), {\n hours,\n minutes,\n seconds,\n fractionalMilliseconds,\n }));\n }\n match = ASC_TIME.exec(value);\n if (match) {\n const [_, monthStr, dayStr, hours, minutes, seconds, fractionalMilliseconds, yearStr] = match;\n return buildDate(strictParseShort(stripLeadingZeroes(yearStr)), parseMonthByShortName(monthStr), parseDateValue(dayStr.trimLeft(), \"day\", 1, 31), { hours, minutes, seconds, fractionalMilliseconds });\n }\n throw new TypeError(\"Invalid RFC-7231 date-time value\");\n};\nexport const parseEpochTimestamp = (value) => {\n if (value === null || value === undefined) {\n return undefined;\n }\n let valueAsDouble;\n if (typeof value === \"number\") {\n valueAsDouble = value;\n }\n else if (typeof value === \"string\") {\n valueAsDouble = strictParseDouble(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n valueAsDouble = value.value;\n }\n else {\n throw new TypeError(\"Epoch timestamps must be expressed as floating point numbers or their string representation\");\n }\n if (Number.isNaN(valueAsDouble) || valueAsDouble === Infinity || valueAsDouble === -Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid, non-Infinite, non-NaN numerics\");\n }\n return new Date(Math.round(valueAsDouble * 1000));\n};\nconst buildDate = (year, month, day, time) => {\n const adjustedMonth = month - 1;\n validateDayOfMonth(year, adjustedMonth, day);\n return new Date(Date.UTC(year, adjustedMonth, day, parseDateValue(time.hours, \"hour\", 0, 23), parseDateValue(time.minutes, \"minute\", 0, 59), parseDateValue(time.seconds, \"seconds\", 0, 60), parseMilliseconds(time.fractionalMilliseconds)));\n};\nconst parseTwoDigitYear = (value) => {\n const thisYear = new Date().getUTCFullYear();\n const valueInThisCentury = Math.floor(thisYear / 100) * 100 + strictParseShort(stripLeadingZeroes(value));\n if (valueInThisCentury < thisYear) {\n return valueInThisCentury + 100;\n }\n return valueInThisCentury;\n};\nconst FIFTY_YEARS_IN_MILLIS = 50 * 365 * 24 * 60 * 60 * 1000;\nconst adjustRfc850Year = (input) => {\n if (input.getTime() - new Date().getTime() > FIFTY_YEARS_IN_MILLIS) {\n return new Date(Date.UTC(input.getUTCFullYear() - 100, input.getUTCMonth(), input.getUTCDate(), input.getUTCHours(), input.getUTCMinutes(), input.getUTCSeconds(), input.getUTCMilliseconds()));\n }\n return input;\n};\nconst parseMonthByShortName = (value) => {\n const monthIdx = MONTHS.indexOf(value);\n if (monthIdx < 0) {\n throw new TypeError(`Invalid month: ${value}`);\n }\n return monthIdx + 1;\n};\nconst DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nconst validateDayOfMonth = (year, month, day) => {\n let maxDays = DAYS_IN_MONTH[month];\n if (month === 1 && isLeapYear(year)) {\n maxDays = 29;\n }\n if (day > maxDays) {\n throw new TypeError(`Invalid day for ${MONTHS[month]} in ${year}: ${day}`);\n }\n};\nconst isLeapYear = (year) => {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n};\nconst parseDateValue = (value, type, lower, upper) => {\n const dateVal = strictParseByte(stripLeadingZeroes(value));\n if (dateVal < lower || dateVal > upper) {\n throw new TypeError(`${type} must be between ${lower} and ${upper}, inclusive`);\n }\n return dateVal;\n};\nconst parseMilliseconds = (value) => {\n if (value === null || value === undefined) {\n return 0;\n }\n return strictParseFloat32(\"0.\" + value) * 1000;\n};\nconst parseOffsetToMilliseconds = (value) => {\n const directionStr = value[0];\n let direction = 1;\n if (directionStr == \"+\") {\n direction = 1;\n }\n else if (directionStr == \"-\") {\n direction = -1;\n }\n else {\n throw new TypeError(`Offset direction, ${directionStr}, must be \"+\" or \"-\"`);\n }\n const hour = Number(value.substring(1, 3));\n const minute = Number(value.substring(4, 6));\n return direction * (hour * 60 + minute) * 60 * 1000;\n};\nconst stripLeadingZeroes = (value) => {\n let idx = 0;\n while (idx < value.length - 1 && value.charAt(idx) === \"0\") {\n idx++;\n }\n if (idx === 0) {\n return value;\n }\n return value.slice(idx);\n};\n", "export const LazyJsonString = function LazyJsonString(val) {\n const str = Object.assign(new String(val), {\n deserializeJSON() {\n return JSON.parse(String(val));\n },\n toString() {\n return String(val);\n },\n toJSON() {\n return String(val);\n },\n });\n return str;\n};\nLazyJsonString.from = (object) => {\n if (object && typeof object === \"object\" && (object instanceof LazyJsonString || \"deserializeJSON\" in object)) {\n return object;\n }\n else if (typeof object === \"string\" || Object.getPrototypeOf(object) === String.prototype) {\n return LazyJsonString(String(object));\n }\n return LazyJsonString(JSON.stringify(object));\n};\nLazyJsonString.fromObject = LazyJsonString.from;\n", "export function quoteHeader(part) {\n if (part.includes(\",\") || part.includes('\"')) {\n part = `\"${part.replace(/\"/g, '\\\\\"')}\"`;\n }\n return part;\n}\n", "const ddd = `(?:Mon|Tue|Wed|Thu|Fri|Sat|Sun)(?:[ne|u?r]?s?day)?`;\nconst mmm = `(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)`;\nconst time = `(\\\\d?\\\\d):(\\\\d{2}):(\\\\d{2})(?:\\\\.(\\\\d+))?`;\nconst date = `(\\\\d?\\\\d)`;\nconst year = `(\\\\d{4})`;\nconst RFC3339_WITH_OFFSET = new RegExp(/^(\\d{4})-(\\d\\d)-(\\d\\d)[tT](\\d\\d):(\\d\\d):(\\d\\d)(\\.(\\d+))?(([-+]\\d\\d:\\d\\d)|[zZ])$/);\nconst IMF_FIXDATE = new RegExp(`^${ddd}, ${date} ${mmm} ${year} ${time} GMT$`);\nconst RFC_850_DATE = new RegExp(`^${ddd}, ${date}-${mmm}-(\\\\d\\\\d) ${time} GMT$`);\nconst ASC_TIME = new RegExp(`^${ddd} ${mmm} ( [1-9]|\\\\d\\\\d) ${time} ${year}$`);\nconst months = [\"Jan\", \"Feb\", \"Mar\", \"Apr\", \"May\", \"Jun\", \"Jul\", \"Aug\", \"Sep\", \"Oct\", \"Nov\", \"Dec\"];\nexport const _parseEpochTimestamp = (value) => {\n if (value == null) {\n return void 0;\n }\n let num = NaN;\n if (typeof value === \"number\") {\n num = value;\n }\n else if (typeof value === \"string\") {\n if (!/^-?\\d*\\.?\\d+$/.test(value)) {\n throw new TypeError(`parseEpochTimestamp - numeric string invalid.`);\n }\n num = Number.parseFloat(value);\n }\n else if (typeof value === \"object\" && value.tag === 1) {\n num = value.value;\n }\n if (isNaN(num) || Math.abs(num) === Infinity) {\n throw new TypeError(\"Epoch timestamps must be valid finite numbers.\");\n }\n return new Date(Math.round(num * 1000));\n};\nexport const _parseRfc3339DateTimeWithOffset = (value) => {\n if (value == null) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC3339 timestamps must be strings\");\n }\n const matches = RFC3339_WITH_OFFSET.exec(value);\n if (!matches) {\n throw new TypeError(`Invalid RFC3339 timestamp format ${value}`);\n }\n const [, yearStr, monthStr, dayStr, hours, minutes, seconds, , ms, offsetStr] = matches;\n range(monthStr, 1, 12);\n range(dayStr, 1, 31);\n range(hours, 0, 23);\n range(minutes, 0, 59);\n range(seconds, 0, 60);\n const date = new Date(Date.UTC(Number(yearStr), Number(monthStr) - 1, Number(dayStr), Number(hours), Number(minutes), Number(seconds), Number(ms) ? Math.round(parseFloat(`0.${ms}`) * 1000) : 0));\n date.setUTCFullYear(Number(yearStr));\n if (offsetStr.toUpperCase() != \"Z\") {\n const [, sign, offsetH, offsetM] = /([+-])(\\d\\d):(\\d\\d)/.exec(offsetStr) || [void 0, \"+\", 0, 0];\n const scalar = sign === \"-\" ? 1 : -1;\n date.setTime(date.getTime() + scalar * (Number(offsetH) * 60 * 60 * 1000 + Number(offsetM) * 60 * 1000));\n }\n return date;\n};\nexport const _parseRfc7231DateTime = (value) => {\n if (value == null) {\n return void 0;\n }\n if (typeof value !== \"string\") {\n throw new TypeError(\"RFC7231 timestamps must be strings.\");\n }\n let day;\n let month;\n let year;\n let hour;\n let minute;\n let second;\n let fraction;\n let matches;\n if ((matches = IMF_FIXDATE.exec(value))) {\n [, day, month, year, hour, minute, second, fraction] = matches;\n }\n else if ((matches = RFC_850_DATE.exec(value))) {\n [, day, month, year, hour, minute, second, fraction] = matches;\n year = (Number(year) + 1900).toString();\n }\n else if ((matches = ASC_TIME.exec(value))) {\n [, month, day, hour, minute, second, fraction, year] = matches;\n }\n if (year && second) {\n const timestamp = Date.UTC(Number(year), months.indexOf(month), Number(day), Number(hour), Number(minute), Number(second), fraction ? Math.round(parseFloat(`0.${fraction}`) * 1000) : 0);\n range(day, 1, 31);\n range(hour, 0, 23);\n range(minute, 0, 59);\n range(second, 0, 60);\n const date = new Date(timestamp);\n date.setUTCFullYear(Number(year));\n return date;\n }\n throw new TypeError(`Invalid RFC7231 date-time value ${value}.`);\n};\nfunction range(v, min, max) {\n const _v = Number(v);\n if (_v < min || _v > max) {\n throw new Error(`Value ${_v} out of range [${min}, ${max}]`);\n }\n}\n", "export function splitEvery(value, delimiter, numDelimiters) {\n if (numDelimiters <= 0 || !Number.isInteger(numDelimiters)) {\n throw new Error(\"Invalid number of delimiters (\" + numDelimiters + \") for splitEvery.\");\n }\n const segments = value.split(delimiter);\n if (numDelimiters === 1) {\n return segments;\n }\n const compoundSegments = [];\n let currentSegment = \"\";\n for (let i = 0; i < segments.length; i++) {\n if (currentSegment === \"\") {\n currentSegment = segments[i];\n }\n else {\n currentSegment += delimiter + segments[i];\n }\n if ((i + 1) % numDelimiters === 0) {\n compoundSegments.push(currentSegment);\n currentSegment = \"\";\n }\n }\n if (currentSegment !== \"\") {\n compoundSegments.push(currentSegment);\n }\n return compoundSegments;\n}\n", "export const splitHeader = (value) => {\n const z = value.length;\n const values = [];\n let withinQuotes = false;\n let prevChar = undefined;\n let anchor = 0;\n for (let i = 0; i < z; ++i) {\n const char = value[i];\n switch (char) {\n case `\"`:\n if (prevChar !== \"\\\\\") {\n withinQuotes = !withinQuotes;\n }\n break;\n case \",\":\n if (!withinQuotes) {\n values.push(value.slice(anchor, i));\n anchor = i + 1;\n }\n break;\n default:\n }\n prevChar = char;\n }\n values.push(value.slice(anchor));\n return values.map((v) => {\n v = v.trim();\n const z = v.length;\n if (z < 2) {\n return v;\n }\n if (v[0] === `\"` && v[z - 1] === `\"`) {\n v = v.slice(1, z - 1);\n }\n return v.replace(/\\\\\"/g, '\"');\n });\n};\n", "const format = /^-?\\d*(\\.\\d+)?$/;\nexport class NumericValue {\n string;\n type;\n constructor(string, type) {\n this.string = string;\n this.type = type;\n if (!format.test(string)) {\n throw new Error(`@smithy/core/serde - NumericValue must only contain [0-9], at most one decimal point \".\", and an optional negation prefix \"-\".`);\n }\n }\n toString() {\n return this.string;\n }\n static [Symbol.hasInstance](object) {\n if (!object || typeof object !== \"object\") {\n return false;\n }\n const _nv = object;\n return NumericValue.prototype.isPrototypeOf(object) || (_nv.type === \"bigDecimal\" && format.test(_nv.string));\n }\n}\nexport function nv(input) {\n return new NumericValue(String(input), \"bigDecimal\");\n}\n", "const SHORT_TO_HEX = {};\nconst HEX_TO_SHORT = {};\nfor (let i = 0; i < 256; i++) {\n let encodedByte = i.toString(16).toLowerCase();\n if (encodedByte.length === 1) {\n encodedByte = `0${encodedByte}`;\n }\n SHORT_TO_HEX[i] = encodedByte;\n HEX_TO_SHORT[encodedByte] = i;\n}\nexport function fromHex(encoded) {\n if (encoded.length % 2 !== 0) {\n throw new Error(\"Hex encoded strings must have an even number length\");\n }\n const out = new Uint8Array(encoded.length / 2);\n for (let i = 0; i < encoded.length; i += 2) {\n const encodedByte = encoded.slice(i, i + 2).toLowerCase();\n if (encodedByte in HEX_TO_SHORT) {\n out[i / 2] = HEX_TO_SHORT[encodedByte];\n }\n else {\n throw new Error(`Cannot decode unrecognized sequence ${encodedByte} as hexadecimal`);\n }\n }\n return out;\n}\nexport function toHex(bytes) {\n let out = \"\";\n for (let i = 0; i < bytes.byteLength; i++) {\n out += SHORT_TO_HEX[bytes[i]];\n }\n return out;\n}\n", "import { ReadStream, fstatSync, lstatSync } from \"node:fs\";\nexport const calculateBodyLength = (body) => {\n if (!body) {\n return 0;\n }\n if (typeof body === \"string\") {\n return Buffer.byteLength(body);\n }\n else if (typeof body.byteLength === \"number\") {\n return body.byteLength;\n }\n else if (typeof body.size === \"number\") {\n return body.size;\n }\n else if (typeof body.start === \"number\" && typeof body.end === \"number\") {\n return body.end + 1 - body.start;\n }\n else if (body instanceof ReadStream) {\n if (body.path != null) {\n return lstatSync(body.path).size;\n }\n else if (typeof body.fd === \"number\") {\n return fstatSync(body.fd).size;\n }\n }\n throw new Error(`Body Length computation failed for ${body}`);\n};\n", "import { fromUtf8 } from \"./fromUtf8\";\nexport const toUint8Array = (data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n};\n", "import { HttpResponse } from \"@smithy/core/protocols\";\nexport const deserializerMiddleware = (options, deserializer) => (next, context) => async (args) => {\n const { response } = await next(args);\n try {\n const parsed = await deserializer(response, options);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n enumerable: false,\n writable: false,\n configurable: false,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n try {\n error.message += \"\\n \" + hint;\n }\n catch (e) {\n if (!context.logger || context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(hint);\n }\n else {\n context.logger?.warn?.(hint);\n }\n }\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n try {\n if (HttpResponse.isInstance(response)) {\n const { headers = {} } = response;\n const headerEntries = Object.entries(headers);\n error.$metadata = {\n httpStatusCode: response.statusCode,\n requestId: findHeader(/^x-[\\w-]+-request-?id$/, headerEntries),\n extendedRequestId: findHeader(/^x-[\\w-]+-id-2$/, headerEntries),\n cfId: findHeader(/^x-[\\w-]+-cf-id$/, headerEntries),\n };\n }\n }\n catch (e) {\n }\n }\n throw error;\n }\n};\nconst findHeader = (pattern, headers) => {\n return (headers.find(([k]) => {\n return k.match(pattern);\n }) || [void 0, void 1])[1];\n};\n", "export class ProviderError extends Error {\n name = \"ProviderError\";\n tryNextLink;\n constructor(message, options = true) {\n let logger;\n let tryNextLink = true;\n if (typeof options === \"boolean\") {\n logger = undefined;\n tryNextLink = options;\n }\n else if (options != null && typeof options === \"object\") {\n logger = options.logger;\n tryNextLink = options.tryNextLink ?? true;\n }\n super(message);\n this.tryNextLink = tryNextLink;\n Object.setPrototypeOf(this, ProviderError.prototype);\n logger?.debug?.(`@smithy/property-provider ${tryNextLink ? \"->\" : \"(!)\"} ${message}`);\n }\n static from(error, options = true) {\n return Object.assign(new this(error.message, options), error);\n }\n}\n", "import { ProviderError } from \"./ProviderError\";\nexport class CredentialsProviderError extends ProviderError {\n name = \"CredentialsProviderError\";\n constructor(message, options = true) {\n super(message, options);\n Object.setPrototypeOf(this, CredentialsProviderError.prototype);\n }\n}\n", "import { ProviderError } from \"./ProviderError\";\nexport class TokenProviderError extends ProviderError {\n name = \"TokenProviderError\";\n constructor(message, options = true) {\n super(message, options);\n Object.setPrototypeOf(this, TokenProviderError.prototype);\n }\n}\n", "import { ProviderError } from \"./ProviderError\";\nexport const chain = (...providers) => async () => {\n if (providers.length === 0) {\n throw new ProviderError(\"No providers in chain\");\n }\n let lastProviderError;\n for (const provider of providers) {\n try {\n const credentials = await provider();\n return credentials;\n }\n catch (err) {\n lastProviderError = err;\n if (err?.tryNextLink) {\n continue;\n }\n throw err;\n }\n }\n throw lastProviderError;\n};\n", "export const fromValue = (staticValue) => () => Promise.resolve(staticValue);\n", "export const memoize = (provider, isExpired, requiresRefresh) => {\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async () => {\n if (!pending) {\n pending = provider();\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider();\n }\n if (isConstant) {\n return resolved;\n }\n if (requiresRefresh && !requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider();\n return resolved;\n }\n return resolved;\n };\n};\n", "export const booleanSelector = (obj, key, type) => {\n if (!(key in obj))\n return undefined;\n if (obj[key] === \"true\")\n return true;\n if (obj[key] === \"false\")\n return false;\n throw new Error(`Cannot load ${type} \"${key}\". Expected \"true\" or \"false\", got ${obj[key]}.`);\n};\n", "export const numberSelector = (obj, key, type) => {\n if (!(key in obj))\n return undefined;\n const numberValue = parseInt(obj[key], 10);\n if (Number.isNaN(numberValue)) {\n throw new TypeError(`Cannot load ${type} '${key}'. Expected number, got '${obj[key]}'.`);\n }\n return numberValue;\n};\n", "export var SelectorType;\n(function (SelectorType) {\n SelectorType[\"ENV\"] = \"env\";\n SelectorType[\"CONFIG\"] = \"shared config entry\";\n})(SelectorType || (SelectorType = {}));\n", "import { homedir } from \"node:os\";\nimport { sep } from \"node:path\";\nconst homeDirCache = {};\nconst getHomeDirCacheKey = () => {\n if (process && process.geteuid) {\n return `${process.geteuid()}`;\n }\n return \"DEFAULT\";\n};\nexport const getHomeDir = () => {\n const { HOME, USERPROFILE, HOMEPATH, HOMEDRIVE = `C:${sep}` } = process.env;\n if (HOME)\n return HOME;\n if (USERPROFILE)\n return USERPROFILE;\n if (HOMEPATH)\n return `${HOMEDRIVE}${HOMEPATH}`;\n const homeDirCacheKey = getHomeDirCacheKey();\n if (!homeDirCache[homeDirCacheKey])\n homeDirCache[homeDirCacheKey] = homedir();\n return homeDirCache[homeDirCacheKey];\n};\n", "export const ENV_PROFILE = \"AWS_PROFILE\";\nexport const DEFAULT_PROFILE = \"default\";\nexport const getProfileName = (init) => init.profile || process.env[ENV_PROFILE] || DEFAULT_PROFILE;\n", "import { createHash } from \"node:crypto\";\nimport { join } from \"node:path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const getSSOTokenFilepath = (id) => {\n const hasher = createHash(\"sha1\");\n const cacheName = hasher.update(id).digest(\"hex\");\n return join(getHomeDir(), \".aws\", \"sso\", \"cache\", `${cacheName}.json`);\n};\n", "import { readFile } from \"node:fs/promises\";\nimport { getSSOTokenFilepath } from \"./getSSOTokenFilepath\";\nexport const tokenIntercept = {};\nexport const getSSOTokenFromFile = async (id) => {\n if (tokenIntercept[id]) {\n return tokenIntercept[id];\n }\n const ssoTokenFilepath = getSSOTokenFilepath(id);\n const ssoTokenText = await readFile(ssoTokenFilepath, \"utf8\");\n return JSON.parse(ssoTokenText);\n};\n", "export const CONFIG_PREFIX_SEPARATOR = \".\";\n", "import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nexport const getConfigData = (data) => Object.entries(data)\n .filter(([key]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n if (indexOfSeparator === -1) {\n return false;\n }\n return Object.values(IniSectionType).includes(key.substring(0, indexOfSeparator));\n})\n .reduce((acc, [key, value]) => {\n const indexOfSeparator = key.indexOf(CONFIG_PREFIX_SEPARATOR);\n const updatedKey = key.substring(0, indexOfSeparator) === IniSectionType.PROFILE ? key.substring(indexOfSeparator + 1) : key;\n acc[updatedKey] = value;\n return acc;\n}, {\n ...(data.default && { default: data.default }),\n});\n", "import { join } from \"node:path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CONFIG_PATH = \"AWS_CONFIG_FILE\";\nexport const getConfigFilepath = () => process.env[ENV_CONFIG_PATH] || join(getHomeDir(), \".aws\", \"config\");\n", "import { join } from \"node:path\";\nimport { getHomeDir } from \"./getHomeDir\";\nexport const ENV_CREDENTIALS_PATH = \"AWS_SHARED_CREDENTIALS_FILE\";\nexport const getCredentialsFilepath = () => process.env[ENV_CREDENTIALS_PATH] || join(getHomeDir(), \".aws\", \"credentials\");\n", "import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nconst prefixKeyRegex = /^([\\w-]+)\\s([\"'])?([\\w-@\\+\\.%:/]+)\\2$/;\nconst profileNameBlockList = [\"__proto__\", \"profile __proto__\"];\nexport const parseIni = (iniData) => {\n const map = {};\n let currentSection;\n let currentSubSection;\n for (const iniLine of iniData.split(/\\r?\\n/)) {\n const trimmedLine = iniLine.split(/(^|\\s)[;#]/)[0].trim();\n const isSection = trimmedLine[0] === \"[\" && trimmedLine[trimmedLine.length - 1] === \"]\";\n if (isSection) {\n currentSection = undefined;\n currentSubSection = undefined;\n const sectionName = trimmedLine.substring(1, trimmedLine.length - 1);\n const matches = prefixKeyRegex.exec(sectionName);\n if (matches) {\n const [, prefix, , name] = matches;\n if (Object.values(IniSectionType).includes(prefix)) {\n currentSection = [prefix, name].join(CONFIG_PREFIX_SEPARATOR);\n }\n }\n else {\n currentSection = sectionName;\n }\n if (profileNameBlockList.includes(sectionName)) {\n throw new Error(`Found invalid profile name \"${sectionName}\"`);\n }\n }\n else if (currentSection) {\n const indexOfEqualsSign = trimmedLine.indexOf(\"=\");\n if (![0, -1].includes(indexOfEqualsSign)) {\n const [name, value] = [\n trimmedLine.substring(0, indexOfEqualsSign).trim(),\n trimmedLine.substring(indexOfEqualsSign + 1).trim(),\n ];\n if (value === \"\") {\n currentSubSection = name;\n }\n else {\n if (currentSubSection && iniLine.trimStart() === iniLine) {\n currentSubSection = undefined;\n }\n map[currentSection] = map[currentSection] || {};\n const key = currentSubSection ? [currentSubSection, name].join(CONFIG_PREFIX_SEPARATOR) : name;\n map[currentSection][key] = value;\n }\n }\n }\n }\n return map;\n};\n", "import { readFile as fsReadFile } from \"node:fs/promises\";\nexport const filePromises = {};\nexport const fileIntercept = {};\nexport const readFile = (path, options) => {\n if (fileIntercept[path] !== undefined) {\n return fileIntercept[path];\n }\n if (!filePromises[path] || options?.ignoreCache) {\n filePromises[path] = fsReadFile(path, \"utf8\");\n }\n return filePromises[path];\n};\n", "import { join } from \"node:path\";\nimport { getConfigData } from \"./getConfigData\";\nimport { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getCredentialsFilepath } from \"./getCredentialsFilepath\";\nimport { getHomeDir } from \"./getHomeDir\";\nimport { parseIni } from \"./parseIni\";\nimport { readFile } from \"./readFile\";\nconst swallowError = () => ({});\nexport { CONFIG_PREFIX_SEPARATOR } from \"./constants\";\nexport const loadSharedConfigFiles = async (init = {}) => {\n const { filepath = getCredentialsFilepath(), configFilepath = getConfigFilepath() } = init;\n const homeDir = getHomeDir();\n const relativeHomeDirPrefix = \"~/\";\n let resolvedFilepath = filepath;\n if (filepath.startsWith(relativeHomeDirPrefix)) {\n resolvedFilepath = join(homeDir, filepath.slice(2));\n }\n let resolvedConfigFilepath = configFilepath;\n if (configFilepath.startsWith(relativeHomeDirPrefix)) {\n resolvedConfigFilepath = join(homeDir, configFilepath.slice(2));\n }\n const parsedFiles = await Promise.all([\n readFile(resolvedConfigFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .then(getConfigData)\n .catch(swallowError),\n readFile(resolvedFilepath, {\n ignoreCache: init.ignoreCache,\n })\n .then(parseIni)\n .catch(swallowError),\n ]);\n return {\n configFile: parsedFiles[0],\n credentialsFile: parsedFiles[1],\n };\n};\n", "import { IniSectionType } from \"@smithy/types\";\nimport { CONFIG_PREFIX_SEPARATOR } from \"./loadSharedConfigFiles\";\nexport const getSsoSessionData = (data) => Object.entries(data)\n .filter(([key]) => key.startsWith(IniSectionType.SSO_SESSION + CONFIG_PREFIX_SEPARATOR))\n .reduce((acc, [key, value]) => ({ ...acc, [key.substring(key.indexOf(CONFIG_PREFIX_SEPARATOR) + 1)]: value }), {});\n", "import { getConfigFilepath } from \"./getConfigFilepath\";\nimport { getSsoSessionData } from \"./getSsoSessionData\";\nimport { parseIni } from \"./parseIni\";\nimport { readFile } from \"./readFile\";\nconst swallowError = () => ({});\nexport const loadSsoSessionData = async (init = {}) => readFile(init.configFilepath ?? getConfigFilepath())\n .then(parseIni)\n .then(getSsoSessionData)\n .catch(swallowError);\n", "export const mergeConfigFiles = (...files) => {\n const merged = {};\n for (const file of files) {\n for (const [key, values] of Object.entries(file)) {\n if (merged[key] !== undefined) {\n Object.assign(merged[key], values);\n }\n else {\n merged[key] = values;\n }\n }\n }\n return merged;\n};\n", "import { loadSharedConfigFiles } from \"./loadSharedConfigFiles\";\nimport { mergeConfigFiles } from \"./mergeConfigFiles\";\nexport const parseKnownFiles = async (init) => {\n const parsedFiles = await loadSharedConfigFiles(init);\n return mergeConfigFiles(parsedFiles.configFile, parsedFiles.credentialsFile);\n};\n", "import { tokenIntercept } from \"./getSSOTokenFromFile\";\nimport { fileIntercept } from \"./readFile\";\nexport const externalDataInterceptor = {\n getFileRecord() {\n return fileIntercept;\n },\n interceptFile(path, contents) {\n fileIntercept[path] = Promise.resolve(contents);\n },\n getTokenRecord() {\n return tokenIntercept;\n },\n interceptToken(id, contents) {\n tokenIntercept[id] = contents;\n },\n};\n", "export function getSelectorName(functionString) {\n try {\n const constants = new Set(Array.from(functionString.match(/([A-Z_]){3,}/g) ?? []));\n constants.delete(\"CONFIG\");\n constants.delete(\"CONFIG_PREFIX_SEPARATOR\");\n constants.delete(\"ENV\");\n return [...constants].join(\", \");\n }\n catch (e) {\n return functionString;\n }\n}\n", "import { CredentialsProviderError } from \"../property-provider/CredentialsProviderError\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromEnv = (envVarSelector, options) => async () => {\n try {\n const config = envVarSelector(process.env, options);\n if (config === undefined) {\n throw new Error();\n }\n return config;\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || `Not found in ENV: ${getSelectorName(envVarSelector.toString())}`, { logger: options?.logger });\n }\n};\n", "import { CredentialsProviderError } from \"../property-provider/CredentialsProviderError\";\nimport { getProfileName } from \"../shared-ini-file-loader/getProfileName\";\nimport { loadSharedConfigFiles } from \"../shared-ini-file-loader/loadSharedConfigFiles\";\nimport { getSelectorName } from \"./getSelectorName\";\nexport const fromSharedConfigFiles = (configSelector, { preferredFile = \"config\", ...init } = {}) => async () => {\n const profile = getProfileName(init);\n const { configFile, credentialsFile } = await loadSharedConfigFiles(init);\n const profileFromCredentials = credentialsFile[profile] || {};\n const profileFromConfig = configFile[profile] || {};\n const mergedProfile = preferredFile === \"config\"\n ? { ...profileFromCredentials, ...profileFromConfig }\n : { ...profileFromConfig, ...profileFromCredentials };\n try {\n const cfgFile = preferredFile === \"config\" ? configFile : credentialsFile;\n const configValue = configSelector(mergedProfile, cfgFile);\n if (configValue === undefined) {\n throw new Error();\n }\n return configValue;\n }\n catch (e) {\n throw new CredentialsProviderError(e.message || `Not found in config files w/ profile [${profile}]: ${getSelectorName(configSelector.toString())}`, { logger: init.logger });\n }\n};\n", "import { fromValue } from \"../property-provider/fromValue\";\nconst isFunction = (func) => typeof func === \"function\";\nexport const fromStatic = (defaultValue) => isFunction(defaultValue) ? async () => await defaultValue() : fromValue(defaultValue);\n", "import { chain } from \"../property-provider/chain\";\nimport { memoize } from \"../property-provider/memoize\";\nimport { fromEnv } from \"./fromEnv\";\nimport { fromSharedConfigFiles } from \"./fromSharedConfigFiles\";\nimport { fromStatic } from \"./fromStatic\";\nexport const loadConfig = ({ environmentVariableSelector, configFileSelector, default: defaultValue }, configuration = {}) => {\n const { signingName, logger } = configuration;\n const envOptions = { signingName, logger };\n return memoize(chain(fromEnv(environmentVariableSelector, envOptions), fromSharedConfigFiles(configFileSelector, configuration), fromStatic(defaultValue)));\n};\n", "import { booleanSelector } from \"../../util-config-provider/booleanSelector\";\nimport { SelectorType } from \"../../util-config-provider/types\";\nexport const ENV_USE_DUALSTACK_ENDPOINT = \"AWS_USE_DUALSTACK_ENDPOINT\";\nexport const CONFIG_USE_DUALSTACK_ENDPOINT = \"use_dualstack_endpoint\";\nexport const DEFAULT_USE_DUALSTACK_ENDPOINT = false;\nexport const NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\nexport const nodeDualstackConfigSelectors = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_DUALSTACK_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_DUALSTACK_ENDPOINT, SelectorType.CONFIG),\n default: undefined,\n};\n", "import { booleanSelector } from \"../../util-config-provider/booleanSelector\";\nimport { SelectorType } from \"../../util-config-provider/types\";\nexport const ENV_USE_FIPS_ENDPOINT = \"AWS_USE_FIPS_ENDPOINT\";\nexport const CONFIG_USE_FIPS_ENDPOINT = \"use_fips_endpoint\";\nexport const DEFAULT_USE_FIPS_ENDPOINT = false;\nexport const NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: false,\n};\nexport const nodeFipsConfigSelectors = {\n environmentVariableSelector: (env) => booleanSelector(env, ENV_USE_FIPS_ENDPOINT, SelectorType.ENV),\n configFileSelector: (profile) => booleanSelector(profile, CONFIG_USE_FIPS_ENDPOINT, SelectorType.CONFIG),\n default: undefined,\n};\n", "import { normalizeProvider } from \"@smithy/core/client\";\nexport const resolveCustomEndpointsConfig = (input) => {\n const { tls, endpoint, urlParser, useDualstackEndpoint } = input;\n return Object.assign(input, {\n tls: tls ?? true,\n endpoint: normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint),\n isCustomEndpoint: true,\n useDualstackEndpoint: normalizeProvider(useDualstackEndpoint ?? false),\n });\n};\n", "export const getEndpointFromRegion = async (input) => {\n const { tls = true } = input;\n const region = await input.region();\n const dnsHostRegex = new RegExp(/^([a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9-]{0,61}[a-zA-Z0-9])$/);\n if (!dnsHostRegex.test(region)) {\n throw new Error(\"Invalid region in client config\");\n }\n const useDualstackEndpoint = await input.useDualstackEndpoint();\n const useFipsEndpoint = await input.useFipsEndpoint();\n const { hostname } = (await input.regionInfoProvider(region, { useDualstackEndpoint, useFipsEndpoint })) ?? {};\n if (!hostname) {\n throw new Error(\"Cannot resolve hostname from client config\");\n }\n return input.urlParser(`${tls ? \"https:\" : \"http:\"}//${hostname}`);\n};\n", "import { normalizeProvider } from \"@smithy/core/client\";\nimport { getEndpointFromRegion } from \"./utils/getEndpointFromRegion\";\nexport const resolveEndpointsConfig = (input) => {\n const useDualstackEndpoint = normalizeProvider(input.useDualstackEndpoint ?? false);\n const { endpoint, useFipsEndpoint, urlParser, tls } = input;\n return Object.assign(input, {\n tls: tls ?? true,\n endpoint: endpoint\n ? normalizeProvider(typeof endpoint === \"string\" ? urlParser(endpoint) : endpoint)\n : () => getEndpointFromRegion({ ...input, useDualstackEndpoint, useFipsEndpoint }),\n isCustomEndpoint: !!endpoint,\n useDualstackEndpoint,\n });\n};\n", "export const REGION_ENV_NAME = \"AWS_REGION\";\nexport const REGION_INI_NAME = \"region\";\nexport const NODE_REGION_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[REGION_ENV_NAME],\n configFileSelector: (profile) => profile[REGION_INI_NAME],\n default: () => {\n throw new Error(\"Region is missing\");\n },\n};\nexport const NODE_REGION_CONFIG_FILE_OPTIONS = {\n preferredFile: \"credentials\",\n};\n", "import { isValidHostLabel } from \"@smithy/core/endpoints\";\nconst validRegions = new Set();\nexport const checkRegion = (region, check = isValidHostLabel) => {\n if (!validRegions.has(region) && !check(region)) {\n if (region === \"*\") {\n console.warn(`@smithy/config-resolver WARN - Please use the caller region instead of \"*\". See \"sigv4a\" in https://github.com/aws/aws-sdk-js-v3/blob/main/supplemental-docs/CLIENTS.md.`);\n }\n else {\n throw new Error(`Region not accepted: region=\"${region}\" is not a valid hostname component.`);\n }\n }\n else {\n validRegions.add(region);\n }\n};\n", "export const isFipsRegion = (region) => typeof region === \"string\" && (region.startsWith(\"fips-\") || region.endsWith(\"-fips\"));\n", "import { isFipsRegion } from \"./isFipsRegion\";\nexport const getRealRegion = (region) => isFipsRegion(region)\n ? [\"fips-aws-global\", \"aws-fips\"].includes(region)\n ? \"us-east-1\"\n : region.replace(/fips-(dkr-|prod-)?|-fips/, \"\")\n : region;\n", "import { checkRegion } from \"./checkRegion\";\nimport { getRealRegion } from \"./getRealRegion\";\nimport { isFipsRegion } from \"./isFipsRegion\";\nexport const resolveRegionConfig = (input) => {\n const { region, useFipsEndpoint } = input;\n if (!region) {\n throw new Error(\"Region is missing\");\n }\n return Object.assign(input, {\n region: async () => {\n const providedRegion = typeof region === \"function\" ? await region() : region;\n const realRegion = getRealRegion(providedRegion);\n checkRegion(realRegion);\n return realRegion;\n },\n useFipsEndpoint: async () => {\n const providedRegion = typeof region === \"string\" ? region : await region();\n if (isFipsRegion(providedRegion)) {\n return true;\n }\n return typeof useFipsEndpoint !== \"function\" ? Promise.resolve(!!useFipsEndpoint) : useFipsEndpoint();\n },\n });\n};\n", "export const getHostnameFromVariants = (variants = [], { useFipsEndpoint, useDualstackEndpoint }) => variants.find(({ tags }) => useFipsEndpoint === tags.includes(\"fips\") && useDualstackEndpoint === tags.includes(\"dualstack\"))?.hostname;\n", "export const getResolvedHostname = (resolvedRegion, { regionHostname, partitionHostname }) => regionHostname\n ? regionHostname\n : partitionHostname\n ? partitionHostname.replace(\"{region}\", resolvedRegion)\n : undefined;\n", "export const getResolvedPartition = (region, { partitionHash }) => Object.keys(partitionHash || {}).find((key) => partitionHash[key].regions.includes(region)) ?? \"aws\";\n", "export const getResolvedSigningRegion = (hostname, { signingRegion, regionRegex, useFipsEndpoint }) => {\n if (signingRegion) {\n return signingRegion;\n }\n else if (useFipsEndpoint) {\n const regionRegexJs = regionRegex.replace(\"\\\\\\\\\", \"\\\\\").replace(/^\\^/g, \"\\\\.\").replace(/\\$$/g, \"\\\\.\");\n const regionRegexmatchArray = hostname.match(regionRegexJs);\n if (regionRegexmatchArray) {\n return regionRegexmatchArray[0].slice(1, -1);\n }\n }\n};\n", "import { getHostnameFromVariants } from \"./getHostnameFromVariants\";\nimport { getResolvedHostname } from \"./getResolvedHostname\";\nimport { getResolvedPartition } from \"./getResolvedPartition\";\nimport { getResolvedSigningRegion } from \"./getResolvedSigningRegion\";\nexport const getRegionInfo = (region, { useFipsEndpoint = false, useDualstackEndpoint = false, signingService, regionHash, partitionHash, }) => {\n const partition = getResolvedPartition(region, { partitionHash });\n const resolvedRegion = region in regionHash ? region : partitionHash[partition]?.endpoint ?? region;\n const hostnameOptions = { useFipsEndpoint, useDualstackEndpoint };\n const regionHostname = getHostnameFromVariants(regionHash[resolvedRegion]?.variants, hostnameOptions);\n const partitionHostname = getHostnameFromVariants(partitionHash[partition]?.variants, hostnameOptions);\n const hostname = getResolvedHostname(resolvedRegion, { regionHostname, partitionHostname });\n if (hostname === undefined) {\n throw new Error(`Endpoint resolution failed for: ${{ resolvedRegion, useFipsEndpoint, useDualstackEndpoint }}`);\n }\n const signingRegion = getResolvedSigningRegion(hostname, {\n signingRegion: regionHash[resolvedRegion]?.signingRegion,\n regionRegex: partitionHash[partition].regionRegex,\n useFipsEndpoint,\n });\n return {\n partition,\n signingService,\n hostname,\n ...(signingRegion && { signingRegion }),\n ...(regionHash[resolvedRegion]?.signingService && {\n signingService: regionHash[resolvedRegion].signingService,\n }),\n };\n};\n", "export const AWS_EXECUTION_ENV = \"AWS_EXECUTION_ENV\";\nexport const AWS_REGION_ENV = \"AWS_REGION\";\nexport const AWS_DEFAULT_REGION_ENV = \"AWS_DEFAULT_REGION\";\nexport const ENV_IMDS_DISABLED = \"AWS_EC2_METADATA_DISABLED\";\nexport const DEFAULTS_MODE_OPTIONS = [\"in-region\", \"cross-region\", \"mobile\", \"standard\", \"legacy\"];\nexport const IMDS_REGION_PATH = \"/latest/meta-data/placement/region\";\n", "const AWS_DEFAULTS_MODE_ENV = \"AWS_DEFAULTS_MODE\";\nconst AWS_DEFAULTS_MODE_CONFIG = \"defaults_mode\";\nexport const NODE_DEFAULTS_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n return env[AWS_DEFAULTS_MODE_ENV];\n },\n configFileSelector: (profile) => {\n return profile[AWS_DEFAULTS_MODE_CONFIG];\n },\n default: \"legacy\",\n};\n", "import { NODE_REGION_CONFIG_OPTIONS } from \"../config-resolver/regionConfig/config\";\nimport { loadConfig } from \"../node-config-provider/configLoader\";\nimport { memoize } from \"../property-provider/memoize\";\nimport { AWS_DEFAULT_REGION_ENV, AWS_EXECUTION_ENV, AWS_REGION_ENV, DEFAULTS_MODE_OPTIONS, ENV_IMDS_DISABLED, IMDS_REGION_PATH, } from \"./constants\";\nimport { NODE_DEFAULTS_MODE_CONFIG_OPTIONS } from \"./defaultsModeConfig\";\nexport const resolveDefaultsModeConfig = ({ region = loadConfig(NODE_REGION_CONFIG_OPTIONS), defaultsMode = loadConfig(NODE_DEFAULTS_MODE_CONFIG_OPTIONS), } = {}) => memoize(async () => {\n const mode = typeof defaultsMode === \"function\" ? await defaultsMode() : defaultsMode;\n switch (mode?.toLowerCase()) {\n case \"auto\":\n return resolveNodeDefaultsModeAuto(region);\n case \"in-region\":\n case \"cross-region\":\n case \"mobile\":\n case \"standard\":\n case \"legacy\":\n return Promise.resolve(mode?.toLocaleLowerCase());\n case undefined:\n return Promise.resolve(\"legacy\");\n default:\n throw new Error(`Invalid parameter for \"defaultsMode\", expect ${DEFAULTS_MODE_OPTIONS.join(\", \")}, got ${mode}`);\n }\n});\nconst resolveNodeDefaultsModeAuto = async (clientRegion) => {\n if (clientRegion) {\n const resolvedRegion = typeof clientRegion === \"function\" ? await clientRegion() : clientRegion;\n const inferredRegion = await inferPhysicalRegion();\n if (!inferredRegion) {\n return \"standard\";\n }\n if (resolvedRegion === inferredRegion) {\n return \"in-region\";\n }\n else {\n return \"cross-region\";\n }\n }\n return \"standard\";\n};\nconst inferPhysicalRegion = async () => {\n if (process.env[AWS_EXECUTION_ENV] && (process.env[AWS_REGION_ENV] || process.env[AWS_DEFAULT_REGION_ENV])) {\n return process.env[AWS_REGION_ENV] ?? process.env[AWS_DEFAULT_REGION_ENV];\n }\n if (!process.env[ENV_IMDS_DISABLED]) {\n try {\n const endpoint = await getImdsEndpoint();\n return (await imdsHttpGet({ hostname: endpoint.hostname, path: IMDS_REGION_PATH })).toString();\n }\n catch (e) {\n }\n }\n};\nconst getImdsEndpoint = async () => {\n const envEndpoint = process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT;\n if (envEndpoint) {\n const url = new URL(envEndpoint);\n return { hostname: url.hostname, path: url.pathname };\n }\n const envMode = process.env.AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE;\n if (envMode === \"IPv6\") {\n return { hostname: \"fd00:ec2::254\", path: \"/\" };\n }\n return { hostname: \"169.254.169.254\", path: \"/\" };\n};\nconst imdsHttpGet = async ({ hostname, path }) => {\n const { request } = await import(\"node:http\");\n return new Promise((resolve, reject) => {\n const req = request({\n method: \"GET\",\n hostname: hostname.replace(/^\\[(.+)]$/, \"$1\"),\n path,\n timeout: 1000,\n signal: AbortSignal.timeout(1000),\n });\n req.on(\"error\", (err) => {\n reject(err);\n req.destroy();\n });\n req.on(\"timeout\", () => {\n reject(new Error(\"TimeoutError from instance metadata service\"));\n req.destroy();\n });\n req.on(\"response\", (res) => {\n const { statusCode = 400 } = res;\n if (statusCode < 200 || 300 <= statusCode) {\n reject(Object.assign(new Error(\"Error response received from instance metadata service\"), { statusCode }));\n req.destroy();\n return;\n }\n const chunks = [];\n res.on(\"data\", (chunk) => chunks.push(chunk));\n res.on(\"end\", () => {\n resolve(Buffer.concat(chunks));\n req.destroy();\n });\n });\n req.end();\n });\n};\n", "export { ProviderError } from \"./property-provider/ProviderError\";\nexport { CredentialsProviderError } from \"./property-provider/CredentialsProviderError\";\nexport { TokenProviderError } from \"./property-provider/TokenProviderError\";\nexport { chain } from \"./property-provider/chain\";\nexport { fromValue } from \"./property-provider/fromValue\";\nexport { memoize } from \"./property-provider/memoize\";\nexport { booleanSelector } from \"./util-config-provider/booleanSelector\";\nexport { numberSelector } from \"./util-config-provider/numberSelector\";\nexport { SelectorType } from \"./util-config-provider/types\";\nexport { getHomeDir } from \"./shared-ini-file-loader/getHomeDir\";\nexport { ENV_PROFILE, DEFAULT_PROFILE, getProfileName } from \"./shared-ini-file-loader/getProfileName\";\nexport { getSSOTokenFilepath } from \"./shared-ini-file-loader/getSSOTokenFilepath\";\nexport { getSSOTokenFromFile } from \"./shared-ini-file-loader/getSSOTokenFromFile\";\nexport { CONFIG_PREFIX_SEPARATOR } from \"./shared-ini-file-loader/constants\";\nexport { loadSharedConfigFiles } from \"./shared-ini-file-loader/loadSharedConfigFiles\";\nexport { loadSsoSessionData } from \"./shared-ini-file-loader/loadSsoSessionData\";\nexport { parseKnownFiles } from \"./shared-ini-file-loader/parseKnownFiles\";\nexport { externalDataInterceptor } from \"./shared-ini-file-loader/externalDataInterceptor\";\nexport { readFile } from \"./shared-ini-file-loader/readFile\";\nexport { loadConfig } from \"./node-config-provider/configLoader\";\nexport { fromStatic } from \"./node-config-provider/fromStatic\";\nexport { ENV_USE_DUALSTACK_ENDPOINT, CONFIG_USE_DUALSTACK_ENDPOINT, DEFAULT_USE_DUALSTACK_ENDPOINT, NODE_USE_DUALSTACK_ENDPOINT_CONFIG_OPTIONS, nodeDualstackConfigSelectors, } from \"./config-resolver/endpointsConfig/NodeUseDualstackEndpointConfigOptions\";\nexport { ENV_USE_FIPS_ENDPOINT, CONFIG_USE_FIPS_ENDPOINT, DEFAULT_USE_FIPS_ENDPOINT, NODE_USE_FIPS_ENDPOINT_CONFIG_OPTIONS, nodeFipsConfigSelectors, } from \"./config-resolver/endpointsConfig/NodeUseFipsEndpointConfigOptions\";\nexport { resolveCustomEndpointsConfig, } from \"./config-resolver/endpointsConfig/resolveCustomEndpointsConfig\";\nexport { resolveEndpointsConfig, } from \"./config-resolver/endpointsConfig/resolveEndpointsConfig\";\nexport { REGION_ENV_NAME, REGION_INI_NAME, NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS, } from \"./config-resolver/regionConfig/config\";\nexport { resolveRegionConfig, } from \"./config-resolver/regionConfig/resolveRegionConfig\";\nexport { getRegionInfo } from \"./config-resolver/regionInfo/getRegionInfo\";\nexport { resolveDefaultsModeConfig, } from \"./defaults-mode/resolveDefaultsModeConfig\";\n", "import { CONFIG_PREFIX_SEPARATOR } from \"@smithy/core/config\";\nconst ENV_ENDPOINT_URL = \"AWS_ENDPOINT_URL\";\nconst CONFIG_ENDPOINT_URL = \"endpoint_url\";\nexport const getEndpointUrlConfig = (serviceId) => ({\n environmentVariableSelector: (env) => {\n const serviceSuffixParts = serviceId.split(\" \").map((w) => w.toUpperCase());\n const serviceEndpointUrl = env[[ENV_ENDPOINT_URL, ...serviceSuffixParts].join(\"_\")];\n if (serviceEndpointUrl)\n return serviceEndpointUrl;\n const endpointUrl = env[ENV_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n configFileSelector: (profile, config) => {\n if (config && profile.services) {\n const servicesSection = config[[\"services\", profile.services].join(CONFIG_PREFIX_SEPARATOR)];\n if (servicesSection) {\n const servicePrefixParts = serviceId.split(\" \").map((w) => w.toLowerCase());\n const endpointUrl = servicesSection[[servicePrefixParts.join(\"_\"), CONFIG_ENDPOINT_URL].join(CONFIG_PREFIX_SEPARATOR)];\n if (endpointUrl)\n return endpointUrl;\n }\n }\n const endpointUrl = profile[CONFIG_ENDPOINT_URL];\n if (endpointUrl)\n return endpointUrl;\n return undefined;\n },\n default: undefined,\n});\n", "import { loadConfig } from \"@smithy/core/config\";\nimport { getEndpointUrlConfig } from \"./getEndpointUrlConfig\";\nexport const getEndpointFromConfig = async (serviceId) => loadConfig(getEndpointUrlConfig(serviceId ?? \"\"))();\n", "export const resolveParamsForS3 = async (endpointParams) => {\n const bucket = endpointParams?.Bucket || \"\";\n if (typeof endpointParams.Bucket === \"string\") {\n endpointParams.Bucket = bucket.replace(/#/g, encodeURIComponent(\"#\")).replace(/\\?/g, encodeURIComponent(\"?\"));\n }\n if (isArnBucketName(bucket)) {\n if (endpointParams.ForcePathStyle === true) {\n throw new Error(\"Path-style addressing cannot be used with ARN buckets\");\n }\n }\n else if (!isDnsCompatibleBucketName(bucket) ||\n (bucket.indexOf(\".\") !== -1 && !String(endpointParams.Endpoint).startsWith(\"http:\")) ||\n bucket.toLowerCase() !== bucket ||\n bucket.length < 3) {\n endpointParams.ForcePathStyle = true;\n }\n if (endpointParams.DisableMultiRegionAccessPoints) {\n endpointParams.disableMultiRegionAccessPoints = true;\n endpointParams.DisableMRAP = true;\n }\n return endpointParams;\n};\nconst DOMAIN_PATTERN = /^[a-z0-9][a-z0-9\\.\\-]{1,61}[a-z0-9]$/;\nconst IP_ADDRESS_PATTERN = /(\\d+\\.){3}\\d+/;\nconst DOTS_PATTERN = /\\.\\./;\nexport const DOT_PATTERN = /\\./;\nexport const S3_HOSTNAME_PATTERN = /^(.+\\.)?s3(-fips)?(\\.dualstack)?[.-]([a-z0-9-]+)\\./;\nexport const isDnsCompatibleBucketName = (bucketName) => DOMAIN_PATTERN.test(bucketName) && !IP_ADDRESS_PATTERN.test(bucketName) && !DOTS_PATTERN.test(bucketName);\nexport const isArnBucketName = (bucketName) => {\n const [arn, partition, service, , , bucket] = bucketName.split(\":\");\n const isArn = arn === \"arn\" && bucketName.split(\":\").length >= 6;\n const isValidArn = Boolean(isArn && partition && service && bucket);\n if (isArn && !isValidArn) {\n throw new Error(`Invalid ARN: ${bucketName} was an invalid ARN.`);\n }\n return isValidArn;\n};\n", "export * from \"./s3\";\n", "export const createConfigValueProvider = (configKey, canonicalEndpointParamKey, config, isClientContextParam = false) => {\n const configProvider = async () => {\n let configValue;\n if (isClientContextParam) {\n const clientContextParams = config.clientContextParams;\n const nestedValue = clientContextParams?.[configKey];\n configValue = nestedValue ?? config[configKey] ?? config[canonicalEndpointParamKey];\n }\n else {\n configValue = config[configKey] ?? config[canonicalEndpointParamKey];\n }\n if (typeof configValue === \"function\") {\n return configValue();\n }\n return configValue;\n };\n if (configKey === \"credentialScope\" || canonicalEndpointParamKey === \"CredentialScope\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.credentialScope ?? credentials?.CredentialScope;\n return configValue;\n };\n }\n if (configKey === \"accountId\" || canonicalEndpointParamKey === \"AccountId\") {\n return async () => {\n const credentials = typeof config.credentials === \"function\" ? await config.credentials() : config.credentials;\n const configValue = credentials?.accountId ?? credentials?.AccountId;\n return configValue;\n };\n }\n if (configKey === \"endpoint\" || canonicalEndpointParamKey === \"endpoint\") {\n return async () => {\n if (config.isCustomEndpoint === false) {\n return undefined;\n }\n const endpoint = await configProvider();\n if (endpoint && typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n return endpoint.url.href;\n }\n if (\"hostname\" in endpoint) {\n const { protocol, hostname, port, path } = endpoint;\n return `${protocol}//${hostname}${port ? \":\" + port : \"\"}${path}`;\n }\n }\n return endpoint;\n };\n }\n return configProvider;\n};\n", "import { parseUrl } from \"@smithy/core/protocols\";\nexport const toEndpointV1 = (endpoint) => {\n if (typeof endpoint === \"object\") {\n if (\"url\" in endpoint) {\n const v1Endpoint = parseUrl(endpoint.url);\n if (endpoint.headers) {\n v1Endpoint.headers = {};\n for (const name in endpoint.headers) {\n v1Endpoint.headers[name.toLowerCase()] = endpoint.headers[name].join(\", \");\n }\n }\n return v1Endpoint;\n }\n return endpoint;\n }\n return parseUrl(endpoint);\n};\n", "export { toEndpointV1 } from \"../../toEndpointV1\";\n", "import { resolveParamsForS3 } from \"../service-customizations\";\nimport { createConfigValueProvider } from \"./createConfigValueProvider\";\nimport { toEndpointV1 } from \"./toEndpointV1\";\nexport function bindGetEndpointFromInstructions(getEndpointFromConfig) {\n return async (commandInput, instructionsSupplier, clientConfig, context) => {\n if (!clientConfig.isCustomEndpoint) {\n let endpointFromConfig;\n if (clientConfig.serviceConfiguredEndpoint) {\n endpointFromConfig = await clientConfig.serviceConfiguredEndpoint();\n }\n else {\n endpointFromConfig = await getEndpointFromConfig(clientConfig.serviceId);\n }\n if (endpointFromConfig) {\n clientConfig.endpoint = () => Promise.resolve(toEndpointV1(endpointFromConfig));\n clientConfig.isCustomEndpoint = true;\n }\n }\n const endpointParams = await resolveParams(commandInput, instructionsSupplier, clientConfig);\n if (typeof clientConfig.endpointProvider !== \"function\") {\n throw new Error(\"config.endpointProvider is not set.\");\n }\n const endpoint = clientConfig.endpointProvider(endpointParams, context);\n if (clientConfig.isCustomEndpoint && clientConfig.endpoint) {\n const customEndpoint = await clientConfig.endpoint();\n if (customEndpoint?.headers) {\n endpoint.headers ??= {};\n for (const [name, value] of Object.entries(customEndpoint.headers)) {\n endpoint.headers[name] = Array.isArray(value) ? value : [value];\n }\n }\n }\n return endpoint;\n };\n}\nexport const resolveParams = async (commandInput, instructionsSupplier, clientConfig) => {\n const endpointParams = {};\n const instructions = instructionsSupplier?.getEndpointParameterInstructions?.() || {};\n for (const [name, instruction] of Object.entries(instructions)) {\n switch (instruction.type) {\n case \"staticContextParams\":\n endpointParams[name] = instruction.value;\n break;\n case \"contextParams\":\n endpointParams[name] = commandInput[instruction.name];\n break;\n case \"clientContextParams\":\n case \"builtInParams\":\n endpointParams[name] = await createConfigValueProvider(instruction.name, name, clientConfig, instruction.type !== \"builtInParams\")();\n break;\n case \"operationContextParams\":\n endpointParams[name] = instruction.get(commandInput);\n break;\n default:\n throw new Error(\"Unrecognized endpoint parameter instruction: \" + JSON.stringify(instruction));\n }\n }\n if (Object.keys(instructions).length === 0) {\n Object.assign(endpointParams, clientConfig);\n }\n if (String(clientConfig.serviceId).toLowerCase() === \"s3\") {\n await resolveParamsForS3(endpointParams);\n }\n return endpointParams;\n};\n", "import { getSmithyContext } from \"@smithy/core/client\";\nimport { bindGetEndpointFromInstructions } from \"./adaptors/getEndpointFromInstructions\";\nfunction setFeature(context, feature, value) {\n if (!context.__smithy_context) {\n context.__smithy_context = { features: {} };\n }\n else if (!context.__smithy_context.features) {\n context.__smithy_context.features = {};\n }\n context.__smithy_context.features[feature] = value;\n}\nexport function bindEndpointMiddleware(getEndpointFromConfig) {\n const getEndpointFromInstructions = bindGetEndpointFromInstructions(getEndpointFromConfig);\n return ({ config, instructions, }) => {\n return (next, context) => async (args) => {\n if (config.isCustomEndpoint) {\n setFeature(context, \"ENDPOINT_OVERRIDE\", \"N\");\n }\n const endpoint = await getEndpointFromInstructions(args.input, {\n getEndpointParameterInstructions() {\n return instructions;\n },\n }, { ...config }, context);\n context.endpointV2 = endpoint;\n context.authSchemes = endpoint.properties?.authSchemes;\n const authScheme = context.authSchemes?.[0];\n if (authScheme) {\n context[\"signing_region\"] = authScheme.signingRegion;\n context[\"signing_service\"] = authScheme.signingName;\n const smithyContext = getSmithyContext(context);\n const httpAuthOption = smithyContext?.selectedHttpAuthScheme?.httpAuthOption;\n if (httpAuthOption) {\n httpAuthOption.signingProperties = Object.assign(httpAuthOption.signingProperties || {}, {\n signing_region: authScheme.signingRegion,\n signingRegion: authScheme.signingRegion,\n signing_service: authScheme.signingName,\n signingName: authScheme.signingName,\n signingRegionSet: authScheme.signingRegionSet,\n }, authScheme.properties);\n }\n }\n return next({\n ...args,\n });\n };\n };\n}\n", "import { bindEndpointMiddleware } from \"./endpointMiddleware\";\nconst serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport const endpointMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"ENDPOINT_PARAMETERS\", \"ENDPOINT_V2\", \"ENDPOINT\"],\n name: \"endpointV2Middleware\",\n override: true,\n relation: \"before\",\n toMiddleware: serializerMiddlewareOption.name,\n};\nexport function bindGetEndpointPlugin(getEndpointFromConfig) {\n const endpointMiddleware = bindEndpointMiddleware(getEndpointFromConfig);\n return (config, instructions) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(endpointMiddleware({\n config,\n instructions,\n }), endpointMiddlewareOptions);\n },\n });\n}\n", "import { normalizeProvider } from \"@smithy/core/client\";\nimport { toEndpointV1 } from \"./adaptors/toEndpointV1\";\nexport function bindResolveEndpointConfig(getEndpointFromConfig) {\n return (input) => {\n const tls = input.tls ?? true;\n const { endpoint, useDualstackEndpoint, useFipsEndpoint } = input;\n const customEndpointProvider = endpoint != null ? async () => toEndpointV1(await normalizeProvider(endpoint)()) : undefined;\n const isCustomEndpoint = !!endpoint;\n const resolvedConfig = Object.assign(input, {\n endpoint: customEndpointProvider,\n tls,\n isCustomEndpoint,\n useDualstackEndpoint: normalizeProvider(useDualstackEndpoint ?? false),\n useFipsEndpoint: normalizeProvider(useFipsEndpoint ?? false),\n });\n let configuredEndpointPromise = undefined;\n resolvedConfig.serviceConfiguredEndpoint = async () => {\n if (input.serviceId && !configuredEndpointPromise) {\n configuredEndpointPromise = getEndpointFromConfig(input.serviceId);\n }\n return configuredEndpointPromise;\n };\n return resolvedConfig;\n };\n}\n", "export class BinaryDecisionDiagram {\n nodes;\n root;\n conditions;\n results;\n constructor(bdd, root, conditions, results) {\n this.nodes = bdd;\n this.root = root;\n this.conditions = conditions;\n this.results = results;\n }\n static from(bdd, root, conditions, results) {\n return new BinaryDecisionDiagram(bdd, root, conditions, results);\n }\n}\n", "export class EndpointCache {\n capacity;\n data = new Map();\n parameters = [];\n constructor({ size, params }) {\n this.capacity = size ?? 50;\n if (params) {\n this.parameters = params;\n }\n }\n get(endpointParams, resolver) {\n const key = this.hash(endpointParams);\n if (key === false) {\n return resolver();\n }\n if (!this.data.has(key)) {\n if (this.data.size > this.capacity + 10) {\n const keys = this.data.keys();\n let i = 0;\n while (true) {\n const { value, done } = keys.next();\n this.data.delete(value);\n if (done || ++i > 10) {\n break;\n }\n }\n }\n this.data.set(key, resolver());\n }\n return this.data.get(key);\n }\n size() {\n return this.data.size;\n }\n hash(endpointParams) {\n let buffer = \"\";\n const { parameters } = this;\n if (parameters.length === 0) {\n return false;\n }\n for (const param of parameters) {\n const val = String(endpointParams[param] ?? \"\");\n if (val.includes(\"|;\")) {\n return false;\n }\n buffer += val + \"|;\";\n }\n return buffer;\n }\n}\n", "export class EndpointError extends Error {\n constructor(message) {\n super(message);\n this.name = \"EndpointError\";\n }\n}\n", "export {};\n", "export {};\n", "export {};\n", "export {};\n", "export {};\n", "export {};\n", "export * from \"./EndpointError\";\nexport * from \"./EndpointFunctions\";\nexport * from \"./EndpointRuleObject\";\nexport * from \"./ErrorRuleObject\";\nexport * from \"./RuleSetObject\";\nexport * from \"./TreeRuleObject\";\nexport * from \"./shared\";\n", "export const debugId = \"endpoints\";\n", "export function toDebugString(input) {\n if (typeof input !== \"object\" || input == null) {\n return input;\n }\n if (\"ref\" in input) {\n return `$${toDebugString(input.ref)}`;\n }\n if (\"fn\" in input) {\n return `${input.fn}(${(input.argv || []).map(toDebugString).join(\", \")})`;\n }\n return JSON.stringify(input, null, 2);\n}\n", "export * from \"./debugId\";\nexport * from \"./toDebugString\";\n", "export const customEndpointFunctions = {};\n", "export const booleanEquals = (value1, value2) => value1 === value2;\n", "export function coalesce(...args) {\n for (const arg of args) {\n if (arg != null) {\n return arg;\n }\n }\n return undefined;\n}\n", "import { EndpointError } from \"../types\";\nexport const getAttrPathList = (path) => {\n const parts = path.split(\".\");\n const pathList = [];\n for (const part of parts) {\n const squareBracketIndex = part.indexOf(\"[\");\n if (squareBracketIndex !== -1) {\n if (part.indexOf(\"]\") !== part.length - 1) {\n throw new EndpointError(`Path: '${path}' does not end with ']'`);\n }\n const arrayIndex = part.slice(squareBracketIndex + 1, -1);\n if (Number.isNaN(parseInt(arrayIndex))) {\n throw new EndpointError(`Invalid array index: '${arrayIndex}' in path: '${path}'`);\n }\n if (squareBracketIndex !== 0) {\n pathList.push(part.slice(0, squareBracketIndex));\n }\n pathList.push(arrayIndex);\n }\n else {\n pathList.push(part);\n }\n }\n return pathList;\n};\n", "import { EndpointError } from \"../types\";\nimport { getAttrPathList } from \"./getAttrPathList\";\nexport const getAttr = (value, path) => getAttrPathList(path).reduce((acc, index) => {\n if (typeof acc !== \"object\") {\n throw new EndpointError(`Index '${index}' in '${path}' not found in '${JSON.stringify(value)}'`);\n }\n else if (Array.isArray(acc)) {\n const i = parseInt(index);\n return acc[i < 0 ? acc.length + i : i];\n }\n return acc[index];\n}, value);\n", "export const isSet = (value) => value != null;\n", "const VALID_HOST_LABEL_REGEX = new RegExp(`^(?!.*-$)(?!-)[a-zA-Z0-9-]{1,63}$`);\nexport const isValidHostLabel = (value, allowSubDomains = false) => {\n if (!allowSubDomains) {\n return VALID_HOST_LABEL_REGEX.test(value);\n }\n const labels = value.split(\".\");\n for (const label of labels) {\n if (!isValidHostLabel(label)) {\n return false;\n }\n }\n return true;\n};\n", "export function ite(condition, trueValue, falseValue) {\n return condition ? trueValue : falseValue;\n}\n", "export const not = (value) => !value;\n", "const IP_V4_REGEX = new RegExp(`^(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)(?:\\\\.(?:25[0-5]|2[0-4]\\\\d|1\\\\d\\\\d|[1-9]\\\\d|\\\\d)){3}$`);\nexport const isIpAddress = (value) => IP_V4_REGEX.test(value) || (value.startsWith(\"[\") && value.endsWith(\"]\"));\n", "import { EndpointURLScheme } from \"@smithy/types\";\nimport { isIpAddress } from \"./isIpAddress\";\nconst DEFAULT_PORTS = {\n [EndpointURLScheme.HTTP]: 80,\n [EndpointURLScheme.HTTPS]: 443,\n};\nexport const parseURL = (value) => {\n const whatwgURL = (() => {\n try {\n if (value instanceof URL) {\n return value;\n }\n if (typeof value === \"object\" && \"hostname\" in value) {\n const { hostname, port, protocol = \"\", path = \"\", query = {} } = value;\n const url = new URL(`${protocol}//${hostname}${port ? `:${port}` : \"\"}${path}`);\n url.search = Object.entries(query)\n .map(([k, v]) => `${k}=${v}`)\n .join(\"&\");\n return url;\n }\n return new URL(value);\n }\n catch (error) {\n return null;\n }\n })();\n if (!whatwgURL) {\n console.error(`Unable to parse ${JSON.stringify(value)} as a whatwg URL.`);\n return null;\n }\n const urlString = whatwgURL.href;\n const { host, hostname, pathname, protocol, search } = whatwgURL;\n if (search) {\n return null;\n }\n const scheme = protocol.slice(0, -1);\n if (!Object.values(EndpointURLScheme).includes(scheme)) {\n return null;\n }\n const isIp = isIpAddress(hostname);\n const inputContainsDefaultPort = urlString.includes(`${host}:${DEFAULT_PORTS[scheme]}`) ||\n (typeof value === \"string\" && value.includes(`${host}:${DEFAULT_PORTS[scheme]}`));\n const authority = `${host}${inputContainsDefaultPort ? `:${DEFAULT_PORTS[scheme]}` : ``}`;\n return {\n scheme,\n authority,\n path: pathname,\n normalizedPath: pathname.endsWith(\"/\") ? pathname : `${pathname}/`,\n isIp,\n };\n};\n", "export function split(value, delimiter, limit) {\n if (limit === 1) {\n return [value];\n }\n if (value === \"\") {\n return [\"\"];\n }\n const parts = value.split(delimiter);\n if (limit === 0) {\n return parts;\n }\n return parts.slice(0, limit - 1).concat(parts.slice(1).join(delimiter));\n}\n", "export const stringEquals = (value1, value2) => value1 === value2;\n", "export const substring = (input, start, stop, reverse) => {\n if (input == null || start >= stop || input.length < stop || /[^\\u0000-\\u007f]/.test(input)) {\n return null;\n }\n if (!reverse) {\n return input.substring(start, stop);\n }\n return input.substring(input.length - stop, input.length - start);\n};\n", "export const uriEncode = (value) => encodeURIComponent(value).replace(/[!*'()]/g, (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`);\n", "export * from \"./booleanEquals\";\nexport * from \"./coalesce\";\nexport * from \"./getAttr\";\nexport * from \"./isSet\";\nexport * from \"./isValidHostLabel\";\nexport * from \"./ite\";\nexport * from \"./not\";\nexport * from \"./parseURL\";\nexport * from \"./split\";\nexport * from \"./stringEquals\";\nexport * from \"./substring\";\nexport * from \"./uriEncode\";\n", "import { booleanEquals, coalesce, getAttr, isSet, isValidHostLabel, ite, not, parseURL, split, stringEquals, substring, uriEncode, } from \"../lib\";\nexport const endpointFunctions = {\n booleanEquals,\n coalesce,\n getAttr,\n isSet,\n isValidHostLabel,\n ite,\n not,\n parseURL,\n split,\n stringEquals,\n substring,\n uriEncode,\n};\n", "import { getAttr } from \"../lib\";\nexport const evaluateTemplate = (template, options) => {\n const evaluatedTemplateArr = [];\n const { referenceRecord, endpointParams } = options;\n let currentIndex = 0;\n while (currentIndex < template.length) {\n const openingBraceIndex = template.indexOf(\"{\", currentIndex);\n if (openingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(currentIndex));\n break;\n }\n evaluatedTemplateArr.push(template.slice(currentIndex, openingBraceIndex));\n const closingBraceIndex = template.indexOf(\"}\", openingBraceIndex);\n if (closingBraceIndex === -1) {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex));\n break;\n }\n if (template[openingBraceIndex + 1] === \"{\" && template[closingBraceIndex + 1] === \"}\") {\n evaluatedTemplateArr.push(template.slice(openingBraceIndex + 1, closingBraceIndex));\n currentIndex = closingBraceIndex + 2;\n }\n const parameterName = template.substring(openingBraceIndex + 1, closingBraceIndex);\n if (parameterName.includes(\"#\")) {\n const [refName, attrName] = parameterName.split(\"#\");\n evaluatedTemplateArr.push(getAttr((referenceRecord[refName] ?? endpointParams[refName]), attrName));\n }\n else {\n evaluatedTemplateArr.push((referenceRecord[parameterName] ?? endpointParams[parameterName]));\n }\n currentIndex = closingBraceIndex + 1;\n }\n return evaluatedTemplateArr.join(\"\");\n};\n", "export const getReferenceValue = ({ ref }, options) => {\n return options.referenceRecord[ref] ?? options.endpointParams[ref];\n};\n", "import { EndpointError, } from \"../types\";\nimport { customEndpointFunctions } from \"./customEndpointFunctions\";\nimport { endpointFunctions } from \"./endpointFunctions\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nimport { getReferenceValue } from \"./getReferenceValue\";\nexport const evaluateExpression = (obj, keyName, options) => {\n if (typeof obj === \"string\") {\n return evaluateTemplate(obj, options);\n }\n else if (obj[\"fn\"]) {\n return group.callFunction(obj, options);\n }\n else if (obj[\"ref\"]) {\n return getReferenceValue(obj, options);\n }\n throw new EndpointError(`'${keyName}': ${String(obj)} is not a string, function or reference.`);\n};\nexport const callFunction = ({ fn, argv }, options) => {\n const evaluatedArgs = Array(argv.length);\n for (let i = 0; i < evaluatedArgs.length; ++i) {\n const arg = argv[i];\n if (typeof arg === \"boolean\" || typeof arg === \"number\") {\n evaluatedArgs[i] = arg;\n }\n else {\n evaluatedArgs[i] = group.evaluateExpression(arg, \"arg\", options);\n }\n }\n const namespaceSeparatorIndex = fn.indexOf(\".\");\n if (namespaceSeparatorIndex !== -1) {\n const namespaceFunctions = customEndpointFunctions[fn.slice(0, namespaceSeparatorIndex)];\n const customFunction = namespaceFunctions?.[fn.slice(namespaceSeparatorIndex + 1)];\n if (typeof customFunction === \"function\") {\n return customFunction(...evaluatedArgs);\n }\n }\n const callable = endpointFunctions[fn];\n if (typeof callable === \"function\") {\n return callable(...evaluatedArgs);\n }\n throw new Error(`function ${fn} not loaded in endpointFunctions.`);\n};\nexport const group = {\n evaluateExpression,\n callFunction,\n};\n", "export { callFunction } from \"./evaluateExpression\";\n", "import { debugId, toDebugString } from \"../debug\";\nimport { EndpointError } from \"../types\";\nimport { callFunction } from \"./callFunction\";\nexport const evaluateCondition = (condition, options) => {\n const { assign } = condition;\n if (assign && assign in options.referenceRecord) {\n throw new EndpointError(`'${assign}' is already defined in Reference Record.`);\n }\n const value = callFunction(condition, options);\n options.logger?.debug?.(`${debugId} evaluateCondition: ${toDebugString(condition)} = ${toDebugString(value)}`);\n const result = value === \"\" ? true : !!value;\n if (assign != null) {\n return { result, toAssign: { name: assign, value } };\n }\n return { result };\n};\n", "import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointHeaders = (headers, options) => Object.entries(headers ?? {}).reduce((acc, [headerKey, headerVal]) => {\n acc[headerKey] = headerVal.map((headerValEntry) => {\n const processedExpr = evaluateExpression(headerValEntry, \"Header value entry\", options);\n if (typeof processedExpr !== \"string\") {\n throw new EndpointError(`Header '${headerKey}' value '${processedExpr}' is not a string`);\n }\n return processedExpr;\n });\n return acc;\n}, {});\n", "import { EndpointError } from \"../types\";\nimport { evaluateTemplate } from \"./evaluateTemplate\";\nexport const getEndpointProperties = (properties, options) => Object.entries(properties).reduce((acc, [propertyKey, propertyVal]) => {\n acc[propertyKey] = group.getEndpointProperty(propertyVal, options);\n return acc;\n}, {});\nexport const getEndpointProperty = (property, options) => {\n if (Array.isArray(property)) {\n return property.map((propertyEntry) => getEndpointProperty(propertyEntry, options));\n }\n switch (typeof property) {\n case \"string\":\n return evaluateTemplate(property, options);\n case \"object\":\n if (property === null) {\n throw new EndpointError(`Unexpected endpoint property: ${property}`);\n }\n return group.getEndpointProperties(property, options);\n case \"boolean\":\n return property;\n default:\n throw new EndpointError(`Unexpected endpoint property type: ${typeof property}`);\n }\n};\nexport const group = {\n getEndpointProperty,\n getEndpointProperties,\n};\n", "import { EndpointError } from \"../types\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const getEndpointUrl = (endpointUrl, options) => {\n const expression = evaluateExpression(endpointUrl, \"Endpoint URL\", options);\n if (typeof expression === \"string\") {\n try {\n return new URL(expression);\n }\n catch (error) {\n console.error(`Failed to construct URL with ${expression}`, error);\n throw error;\n }\n }\n throw new EndpointError(`Endpoint URL must be a string, got ${typeof expression}`);\n};\n", "import { EndpointError } from \"./types\";\nimport { evaluateCondition } from \"./utils/evaluateCondition\";\nimport { evaluateExpression } from \"./utils/evaluateExpression\";\nimport { getEndpointHeaders } from \"./utils/getEndpointHeaders\";\nimport { getEndpointProperties } from \"./utils/getEndpointProperties\";\nimport { getEndpointUrl } from \"./utils/getEndpointUrl\";\nconst RESULT = 100_000_000;\nexport const decideEndpoint = (bdd, options) => {\n const { nodes, root, results, conditions } = bdd;\n let ref = root;\n const referenceRecord = {};\n const closure = {\n referenceRecord,\n endpointParams: options.endpointParams,\n logger: options.logger,\n };\n while (ref !== 1 && ref !== -1 && ref < RESULT) {\n const node_i = 3 * (Math.abs(ref) - 1);\n const [condition_i, highRef, lowRef] = [nodes[node_i], nodes[node_i + 1], nodes[node_i + 2]];\n const [fn, argv, assign] = conditions[condition_i];\n const evaluation = evaluateCondition({ fn, assign, argv }, closure);\n if (evaluation.toAssign) {\n const { name, value } = evaluation.toAssign;\n referenceRecord[name] = value;\n }\n ref = ref >= 0 === evaluation.result ? highRef : lowRef;\n }\n if (ref >= RESULT) {\n const result = results[ref - RESULT];\n if (result[0] === -1) {\n const [, errorExpression] = result;\n throw new EndpointError(evaluateExpression(errorExpression, \"Error\", closure));\n }\n const [url, properties, headers] = result;\n return {\n url: getEndpointUrl(url, closure),\n properties: getEndpointProperties(properties, closure),\n headers: getEndpointHeaders(headers ?? {}, closure),\n };\n }\n throw new EndpointError(`No matching endpoint.`);\n};\n", "import { debugId, toDebugString } from \"../debug\";\nimport { evaluateCondition } from \"./evaluateCondition\";\nexport const evaluateConditions = (conditions = [], options) => {\n const conditionsReferenceRecord = {};\n const conditionOptions = {\n ...options,\n referenceRecord: { ...options.referenceRecord },\n };\n let didAssign = false;\n for (const condition of conditions) {\n const { result, toAssign } = evaluateCondition(condition, conditionOptions);\n if (!result) {\n return { result };\n }\n if (toAssign) {\n didAssign = true;\n conditionsReferenceRecord[toAssign.name] = toAssign.value;\n conditionOptions.referenceRecord[toAssign.name] = toAssign.value;\n options.logger?.debug?.(`${debugId} assign: ${toAssign.name} := ${toDebugString(toAssign.value)}`);\n }\n }\n if (didAssign) {\n return { result: true, referenceRecord: conditionsReferenceRecord };\n }\n return { result: true };\n};\n", "import { debugId, toDebugString } from \"../debug\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { getEndpointHeaders } from \"./getEndpointHeaders\";\nimport { getEndpointProperties } from \"./getEndpointProperties\";\nimport { getEndpointUrl } from \"./getEndpointUrl\";\nexport const evaluateEndpointRule = (endpointRule, options) => {\n const { conditions, endpoint } = endpointRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const endpointRuleOptions = referenceRecord\n ? {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }\n : options;\n const { url, properties, headers } = endpoint;\n options.logger?.debug?.(`${debugId} Resolving endpoint from template: ${toDebugString(endpoint)}`);\n const endpointToReturn = { url: getEndpointUrl(url, endpointRuleOptions) };\n if (headers != null) {\n endpointToReturn.headers = getEndpointHeaders(headers, endpointRuleOptions);\n }\n if (properties != null) {\n endpointToReturn.properties = getEndpointProperties(properties, endpointRuleOptions);\n }\n return endpointToReturn;\n};\n", "import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateExpression } from \"./evaluateExpression\";\nexport const evaluateErrorRule = (errorRule, options) => {\n const { conditions, error } = errorRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const errorRuleOptions = referenceRecord\n ? {\n ...options,\n referenceRecord: { ...options.referenceRecord, ...referenceRecord },\n }\n : options;\n throw new EndpointError(evaluateExpression(error, \"Error\", errorRuleOptions));\n};\n", "import { EndpointError } from \"../types\";\nimport { evaluateConditions } from \"./evaluateConditions\";\nimport { evaluateEndpointRule } from \"./evaluateEndpointRule\";\nimport { evaluateErrorRule } from \"./evaluateErrorRule\";\nexport const evaluateRules = (rules, options) => {\n for (const rule of rules) {\n if (rule.type === \"endpoint\") {\n const endpointOrUndefined = evaluateEndpointRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else if (rule.type === \"error\") {\n evaluateErrorRule(rule, options);\n }\n else if (rule.type === \"tree\") {\n const endpointOrUndefined = group.evaluateTreeRule(rule, options);\n if (endpointOrUndefined) {\n return endpointOrUndefined;\n }\n }\n else {\n throw new EndpointError(`Unknown endpoint rule: ${rule}`);\n }\n }\n throw new EndpointError(`Rules evaluation failed`);\n};\nexport const evaluateTreeRule = (treeRule, options) => {\n const { conditions, rules } = treeRule;\n const { result, referenceRecord } = evaluateConditions(conditions, options);\n if (!result) {\n return;\n }\n const treeRuleOptions = referenceRecord\n ? { ...options, referenceRecord: { ...options.referenceRecord, ...referenceRecord } }\n : options;\n return group.evaluateRules(rules, treeRuleOptions);\n};\nexport const group = {\n evaluateRules,\n evaluateTreeRule,\n};\n", "export * from \"./customEndpointFunctions\";\nexport * from \"./evaluateRules\";\n", "import { debugId, toDebugString } from \"./debug\";\nimport { EndpointError } from \"./types\";\nimport { evaluateRules } from \"./utils\";\nexport const resolveEndpoint = (ruleSetObject, options) => {\n const { endpointParams, logger } = options;\n const { parameters, rules } = ruleSetObject;\n options.logger?.debug?.(`${debugId} Initial EndpointParams: ${toDebugString(endpointParams)}`);\n for (const paramKey in parameters) {\n const parameter = parameters[paramKey];\n const endpointParam = endpointParams[paramKey];\n if (endpointParam == null && parameter.default != null) {\n endpointParams[paramKey] = parameter.default;\n continue;\n }\n if (parameter.required && endpointParam == null) {\n throw new EndpointError(`Missing required parameter: '${paramKey}'`);\n }\n }\n const endpoint = evaluateRules(rules, { endpointParams, logger, referenceRecord: {} });\n options.logger?.debug?.(`${debugId} Resolved endpoint: ${toDebugString(endpoint)}`);\n return endpoint;\n};\n", "export const resolveEndpointRequiredConfig = (input) => {\n const { endpoint } = input;\n if (endpoint === undefined) {\n input.endpoint = async () => {\n throw new Error(\"@smithy/middleware-endpoint: (default endpointRuleSet) endpoint is not set - you must configure an endpoint.\");\n };\n }\n return input;\n};\n", "import { getEndpointFromConfig } from \"./middleware-endpoint/adaptors/getEndpointFromConfig\";\nimport { bindGetEndpointFromInstructions } from \"./middleware-endpoint/adaptors/getEndpointFromInstructions\";\nimport { bindEndpointMiddleware } from \"./middleware-endpoint/endpointMiddleware\";\nimport { bindGetEndpointPlugin } from \"./middleware-endpoint/getEndpointPlugin\";\nimport { bindResolveEndpointConfig } from \"./middleware-endpoint/resolveEndpointConfig\";\nexport * from \"./toEndpointV1\";\nexport { BinaryDecisionDiagram } from \"./util-endpoints/bdd/BinaryDecisionDiagram\";\nexport { EndpointCache } from \"./util-endpoints/cache/EndpointCache\";\nexport { decideEndpoint } from \"./util-endpoints/decideEndpoint\";\nexport { isIpAddress } from \"./util-endpoints/lib/isIpAddress\";\nexport { isValidHostLabel } from \"./util-endpoints/lib/isValidHostLabel\";\nexport { customEndpointFunctions } from \"./util-endpoints/utils/customEndpointFunctions\";\nexport { resolveEndpoint } from \"./util-endpoints/resolveEndpoint\";\nexport * from \"./util-endpoints/types\";\nexport const getEndpointFromInstructions = bindGetEndpointFromInstructions(getEndpointFromConfig);\nexport const resolveEndpointConfig = bindResolveEndpointConfig(getEndpointFromConfig);\nexport const endpointMiddleware = bindEndpointMiddleware(getEndpointFromConfig);\nexport const getEndpointPlugin = bindGetEndpointPlugin(getEndpointFromConfig);\nexport { resolveParams, } from \"./middleware-endpoint/adaptors/getEndpointFromInstructions\";\nexport { toEndpointV1 as middlewareEndpointToEndpointV1 } from \"./middleware-endpoint/adaptors/toEndpointV1\";\nexport { endpointMiddlewareOptions } from \"./middleware-endpoint/getEndpointPlugin\";\nexport { resolveEndpointRequiredConfig } from \"./middleware-endpoint/resolveEndpointRequiredConfig\";\n", "import { toEndpointV1 } from \"@smithy/core/endpoints\";\nexport const serializerMiddleware = (options, serializer) => (next, context) => async (args) => {\n const endpointConfig = options;\n const endpoint = context.endpointV2\n ? async () => toEndpointV1(context.endpointV2)\n : endpointConfig.endpoint;\n if (!endpoint) {\n throw new Error(\"No valid endpoint provider available.\");\n }\n const request = await serializer(args.input, { ...options, endpoint });\n return next({\n ...args,\n request,\n });\n};\n", "import { deserializerMiddleware } from \"./deserializerMiddleware\";\nimport { serializerMiddleware } from \"./serializerMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSerdePlugin(config, serializer, deserializer) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(deserializerMiddleware(config, deserializer), deserializerMiddlewareOption);\n commandStack.add(serializerMiddleware(config, serializer), serializerMiddlewareOption);\n },\n };\n}\n", "import { createHash, createHmac } from \"node:crypto\";\nimport { fromArrayBuffer, fromString } from \"../util-buffer-from/buffer-from\";\nimport { toUint8Array } from \"../util-utf8/toUint8Array\";\nexport class Hash {\n algorithmIdentifier;\n secret;\n hash;\n constructor(algorithmIdentifier, secret) {\n this.algorithmIdentifier = algorithmIdentifier;\n this.secret = secret;\n this.reset();\n }\n update(toHash, encoding) {\n this.hash.update(toUint8Array(castSourceData(toHash, encoding)));\n }\n digest() {\n return Promise.resolve(this.hash.digest());\n }\n reset() {\n this.hash = this.secret\n ? createHmac(this.algorithmIdentifier, castSourceData(this.secret))\n : createHash(this.algorithmIdentifier);\n }\n}\nfunction castSourceData(toCast, encoding) {\n if (Buffer.isBuffer(toCast)) {\n return toCast;\n }\n if (typeof toCast === \"string\") {\n return fromString(toCast, encoding);\n }\n if (ArrayBuffer.isView(toCast)) {\n return fromArrayBuffer(toCast.buffer, toCast.byteOffset, toCast.byteLength);\n }\n return fromArrayBuffer(toCast);\n}\n", "import { Duplex } from \"node:stream\";\nimport { toBase64 } from \"../../util-base64/toBase64\";\nexport class ChecksumStream extends Duplex {\n expectedChecksum;\n checksumSourceLocation;\n checksum;\n source;\n base64Encoder;\n pendingCallback = null;\n constructor({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) {\n super();\n if (typeof source.pipe === \"function\") {\n this.source = source;\n }\n else {\n throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n }\n this.base64Encoder = base64Encoder ?? toBase64;\n this.expectedChecksum = expectedChecksum;\n this.checksum = checksum;\n this.checksumSourceLocation = checksumSourceLocation;\n this.source.pipe(this);\n }\n _read(size) {\n if (this.pendingCallback) {\n const callback = this.pendingCallback;\n this.pendingCallback = null;\n callback();\n }\n }\n _write(chunk, encoding, callback) {\n try {\n this.checksum.update(chunk);\n const canPushMore = this.push(chunk);\n if (!canPushMore) {\n this.pendingCallback = callback;\n return;\n }\n }\n catch (e) {\n return callback(e);\n }\n return callback();\n }\n async _final(callback) {\n try {\n const digest = await this.checksum.digest();\n const received = this.base64Encoder(digest);\n if (this.expectedChecksum !== received) {\n return callback(new Error(`Checksum mismatch: expected \"${this.expectedChecksum}\" but received \"${received}\"` +\n ` in response header \"${this.checksumSourceLocation}\".`));\n }\n }\n catch (e) {\n return callback(e);\n }\n this.push(null);\n return callback();\n }\n}\n", "export const isReadableStream = (stream) => typeof ReadableStream === \"function\" &&\n (stream?.constructor?.name === ReadableStream.name || stream instanceof ReadableStream);\nexport const isBlob = (blob) => {\n return typeof Blob === \"function\" && (blob?.constructor?.name === Blob.name || blob instanceof Blob);\n};\n", "export const fromUtf8 = (input) => new TextEncoder().encode(input);\n", "const chars = `ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/`;\nexport const alphabetByEncoding = Object.entries(chars).reduce((acc, [i, c]) => {\n acc[c] = Number(i);\n return acc;\n}, {});\nexport const alphabetByValue = chars.split(\"\");\nexport const bitsPerLetter = 6;\nexport const bitsPerByte = 8;\nexport const maxLetterValue = 0b111111;\n", "import { fromUtf8 } from \"../util-utf8/fromUtf8.browser\";\nimport { alphabetByValue, bitsPerByte, bitsPerLetter, maxLetterValue } from \"./constants-for-browser\";\nexport function toBase64(_input) {\n let input;\n if (typeof _input === \"string\") {\n input = fromUtf8(_input);\n }\n else {\n input = _input;\n }\n const isArrayLike = typeof input === \"object\" && typeof input.length === \"number\";\n const isUint8Array = typeof input === \"object\" &&\n typeof input.byteOffset === \"number\" &&\n typeof input.byteLength === \"number\";\n if (!isArrayLike && !isUint8Array) {\n throw new Error(\"@smithy/util-base64: toBase64 encoder function only accepts string | Uint8Array.\");\n }\n let str = \"\";\n for (let i = 0; i < input.length; i += 3) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = Math.min(i + 3, input.length); j < limit; j++) {\n bits |= input[j] << ((limit - j - 1) * bitsPerByte);\n bitLength += bitsPerByte;\n }\n const bitClusterCount = Math.ceil(bitLength / bitsPerLetter);\n bits <<= bitClusterCount * bitsPerLetter - bitLength;\n for (let k = 1; k <= bitClusterCount; k++) {\n const offset = (bitClusterCount - k) * bitsPerLetter;\n str += alphabetByValue[(bits & (maxLetterValue << offset)) >> offset];\n }\n str += \"==\".slice(0, 4 - bitClusterCount);\n }\n return str;\n}\n", "const ReadableStreamRef = typeof ReadableStream === \"function\" ? ReadableStream : function () { };\nexport class ChecksumStream extends ReadableStreamRef {\n}\n", "import { toBase64 } from \"../../util-base64/toBase64.browser\";\nimport { isReadableStream } from \"../stream-type-check\";\nimport { ChecksumStream } from \"./ChecksumStream.browser\";\nexport const createChecksumStream = ({ expectedChecksum, checksum, source, checksumSourceLocation, base64Encoder, }) => {\n if (!isReadableStream(source)) {\n throw new Error(`@smithy/util-stream: unsupported source type ${source?.constructor?.name ?? source} in ChecksumStream.`);\n }\n const encoder = base64Encoder ?? toBase64;\n if (typeof TransformStream !== \"function\") {\n throw new Error(\"@smithy/util-stream: unable to instantiate ChecksumStream because API unavailable: ReadableStream/TransformStream.\");\n }\n const transform = new TransformStream({\n start() { },\n async transform(chunk, controller) {\n checksum.update(chunk);\n controller.enqueue(chunk);\n },\n async flush(controller) {\n const digest = await checksum.digest();\n const received = encoder(digest);\n if (expectedChecksum !== received) {\n const error = new Error(`Checksum mismatch: expected \"${expectedChecksum}\" but received \"${received}\"` +\n ` in response header \"${checksumSourceLocation}\".`);\n controller.error(error);\n }\n else {\n controller.terminate();\n }\n },\n });\n source.pipeThrough(transform);\n const readable = transform.readable;\n Object.setPrototypeOf(readable, ChecksumStream.prototype);\n return readable;\n};\n", "import { isReadableStream } from \"../stream-type-check\";\nimport { ChecksumStream } from \"./ChecksumStream\";\nimport { createChecksumStream as createChecksumStreamWeb, } from \"./createChecksumStream.browser\";\nexport function createChecksumStream(init) {\n if (typeof ReadableStream === \"function\" && isReadableStream(init.source)) {\n return createChecksumStreamWeb(init);\n }\n return new ChecksumStream(init);\n}\n", "export class ByteArrayCollector {\n allocByteArray;\n byteLength = 0;\n byteArrays = [];\n constructor(allocByteArray) {\n this.allocByteArray = allocByteArray;\n }\n push(byteArray) {\n this.byteArrays.push(byteArray);\n this.byteLength += byteArray.byteLength;\n }\n flush() {\n if (this.byteArrays.length === 1) {\n const bytes = this.byteArrays[0];\n this.reset();\n return bytes;\n }\n const aggregation = this.allocByteArray(this.byteLength);\n let cursor = 0;\n for (let i = 0; i < this.byteArrays.length; ++i) {\n const bytes = this.byteArrays[i];\n aggregation.set(bytes, cursor);\n cursor += bytes.byteLength;\n }\n this.reset();\n return aggregation;\n }\n reset() {\n this.byteArrays = [];\n this.byteLength = 0;\n }\n}\n", "import { ByteArrayCollector } from \"./ByteArrayCollector\";\nexport function createBufferedReadableStream(upstream, size, logger) {\n const reader = upstream.getReader();\n let streamBufferingLoggedWarning = false;\n let bytesSeen = 0;\n const buffers = [\"\", new ByteArrayCollector((size) => new Uint8Array(size))];\n let mode = -1;\n const pull = async (controller) => {\n const { value, done } = await reader.read();\n const chunk = value;\n if (done) {\n if (mode !== -1) {\n const remainder = flush(buffers, mode);\n if (sizeOf(remainder) > 0) {\n controller.enqueue(remainder);\n }\n }\n controller.close();\n }\n else {\n const chunkMode = modeOf(chunk, false);\n if (mode !== chunkMode) {\n if (mode >= 0) {\n controller.enqueue(flush(buffers, mode));\n }\n mode = chunkMode;\n }\n if (mode === -1) {\n controller.enqueue(chunk);\n return;\n }\n const chunkSize = sizeOf(chunk);\n bytesSeen += chunkSize;\n const bufferSize = sizeOf(buffers[mode]);\n if (chunkSize >= size && bufferSize === 0) {\n controller.enqueue(chunk);\n }\n else {\n const newSize = merge(buffers, mode, chunk);\n if (!streamBufferingLoggedWarning && bytesSeen > size * 2) {\n streamBufferingLoggedWarning = true;\n logger?.warn(`@smithy/util-stream - stream chunk size ${chunkSize} is below threshold of ${size}, automatically buffering.`);\n }\n if (newSize >= size) {\n controller.enqueue(flush(buffers, mode));\n }\n else {\n await pull(controller);\n }\n }\n }\n };\n return new ReadableStream({\n pull,\n });\n}\nexport const createBufferedReadable = createBufferedReadableStream;\nexport function merge(buffers, mode, chunk) {\n switch (mode) {\n case 0:\n buffers[0] += chunk;\n return sizeOf(buffers[0]);\n case 1:\n case 2:\n buffers[mode].push(chunk);\n return sizeOf(buffers[mode]);\n }\n}\nexport function flush(buffers, mode) {\n switch (mode) {\n case 0:\n const s = buffers[0];\n buffers[0] = \"\";\n return s;\n case 1:\n case 2:\n return buffers[mode].flush();\n }\n throw new Error(`@smithy/util-stream - invalid index ${mode} given to flush()`);\n}\nexport function sizeOf(chunk) {\n return chunk?.byteLength ?? chunk?.length ?? 0;\n}\nexport function modeOf(chunk, allowBuffer = true) {\n if (allowBuffer && typeof Buffer !== \"undefined\" && chunk instanceof Buffer) {\n return 2;\n }\n if (chunk instanceof Uint8Array) {\n return 1;\n }\n if (typeof chunk === \"string\") {\n return 0;\n }\n return -1;\n}\n", "import { Readable } from \"node:stream\";\nimport { ByteArrayCollector } from \"./ByteArrayCollector\";\nimport { createBufferedReadableStream, flush, merge, modeOf, sizeOf, } from \"./createBufferedReadable.browser\";\nimport { isReadableStream } from \"./stream-type-check\";\nexport function createBufferedReadable(upstream, size, logger) {\n if (isReadableStream(upstream)) {\n return createBufferedReadableStream(upstream, size, logger);\n }\n const downstream = new Readable({ read() { } });\n let streamBufferingLoggedWarning = false;\n let bytesSeen = 0;\n const buffers = [\n \"\",\n new ByteArrayCollector((size) => new Uint8Array(size)),\n new ByteArrayCollector((size) => Buffer.from(new Uint8Array(size))),\n ];\n let mode = -1;\n upstream.on(\"data\", (chunk) => {\n const chunkMode = modeOf(chunk, true);\n if (mode !== chunkMode) {\n if (mode >= 0) {\n downstream.push(flush(buffers, mode));\n }\n mode = chunkMode;\n }\n if (mode === -1) {\n downstream.push(chunk);\n return;\n }\n const chunkSize = sizeOf(chunk);\n bytesSeen += chunkSize;\n const bufferSize = sizeOf(buffers[mode]);\n if (chunkSize >= size && bufferSize === 0) {\n downstream.push(chunk);\n }\n else {\n const newSize = merge(buffers, mode, chunk);\n if (!streamBufferingLoggedWarning && bytesSeen > size * 2) {\n streamBufferingLoggedWarning = true;\n logger?.warn(`@smithy/util-stream - stream chunk size ${chunkSize} is below threshold of ${size}, automatically buffering.`);\n }\n if (newSize >= size) {\n downstream.push(flush(buffers, mode));\n }\n }\n });\n upstream.on(\"end\", () => {\n if (mode !== -1) {\n const remainder = flush(buffers, mode);\n if (sizeOf(remainder) > 0) {\n downstream.push(remainder);\n }\n }\n downstream.push(null);\n });\n return downstream;\n}\n", "export const getAwsChunkedEncodingStream = (readableStream, options) => {\n const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n const checksumRequired = base64Encoder !== undefined &&\n bodyLengthChecker !== undefined &&\n checksumAlgorithmFn !== undefined &&\n checksumLocationName !== undefined &&\n streamHasher !== undefined;\n const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readableStream) : undefined;\n const reader = readableStream.getReader();\n return new ReadableStream({\n async pull(controller) {\n const { value, done } = await reader.read();\n if (done) {\n controller.enqueue(`0\\r\\n`);\n if (checksumRequired) {\n const checksum = base64Encoder(await digest);\n controller.enqueue(`${checksumLocationName}:${checksum}\\r\\n`);\n controller.enqueue(`\\r\\n`);\n }\n controller.close();\n }\n else {\n controller.enqueue(`${(bodyLengthChecker(value) || 0).toString(16)}\\r\\n${value}\\r\\n`);\n }\n },\n });\n};\n", "import { Readable } from \"node:stream\";\nimport { getAwsChunkedEncodingStream as getAwsChunkedEncodingStreamBrowser } from \"./getAwsChunkedEncodingStream.browser\";\nimport { isReadableStream } from \"./stream-type-check\";\nexport function getAwsChunkedEncodingStream(stream, options) {\n const readable = stream;\n const readableStream = stream;\n if (isReadableStream(readableStream)) {\n return getAwsChunkedEncodingStreamBrowser(readableStream, options);\n }\n const { base64Encoder, bodyLengthChecker, checksumAlgorithmFn, checksumLocationName, streamHasher } = options;\n const checksumRequired = base64Encoder !== undefined &&\n checksumAlgorithmFn !== undefined &&\n checksumLocationName !== undefined &&\n streamHasher !== undefined;\n const digest = checksumRequired ? streamHasher(checksumAlgorithmFn, readable) : undefined;\n const awsChunkedEncodingStream = new Readable({\n read: () => { },\n });\n readable.on(\"data\", (data) => {\n const length = bodyLengthChecker(data) || 0;\n if (length === 0) {\n return;\n }\n awsChunkedEncodingStream.push(`${length.toString(16)}\\r\\n`);\n awsChunkedEncodingStream.push(data);\n awsChunkedEncodingStream.push(\"\\r\\n\");\n });\n readable.on(\"end\", async () => {\n awsChunkedEncodingStream.push(`0\\r\\n`);\n if (checksumRequired) {\n const checksum = base64Encoder(await digest);\n awsChunkedEncodingStream.push(`${checksumLocationName}:${checksum}\\r\\n`);\n awsChunkedEncodingStream.push(`\\r\\n`);\n }\n awsChunkedEncodingStream.push(null);\n });\n return awsChunkedEncodingStream;\n}\n", "export async function headStream(stream, bytes) {\n let byteLengthCounter = 0;\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n byteLengthCounter += value?.byteLength ?? 0;\n }\n if (byteLengthCounter >= bytes) {\n break;\n }\n isDone = done;\n }\n reader.releaseLock();\n const collected = new Uint8Array(Math.min(bytes, byteLengthCounter));\n let offset = 0;\n for (const chunk of chunks) {\n if (chunk.byteLength > collected.byteLength - offset) {\n collected.set(chunk.subarray(0, collected.byteLength - offset), offset);\n break;\n }\n else {\n collected.set(chunk, offset);\n }\n offset += chunk.length;\n }\n return collected;\n}\n", "import { Writable } from \"node:stream\";\nimport { headStream as headWebStream } from \"./headStream.browser\";\nimport { isReadableStream } from \"./stream-type-check\";\nexport const headStream = (stream, bytes) => {\n if (isReadableStream(stream)) {\n return headWebStream(stream, bytes);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n collector.limit = bytes;\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.buffers));\n resolve(bytes);\n });\n });\n};\nclass Collector extends Writable {\n buffers = [];\n limit = Infinity;\n bytesBuffered = 0;\n _write(chunk, encoding, callback) {\n this.buffers.push(chunk);\n this.bytesBuffered += chunk.byteLength ?? 0;\n if (this.bytesBuffered >= this.limit) {\n const excess = this.bytesBuffered - this.limit;\n const tailBuffer = this.buffers[this.buffers.length - 1];\n this.buffers[this.buffers.length - 1] = tailBuffer.subarray(0, tailBuffer.byteLength - excess);\n this.emit(\"finish\");\n }\n callback();\n }\n}\n", "export const toUtf8 = (input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return new TextDecoder(\"utf-8\").decode(input);\n};\n", "import { alphabetByEncoding, bitsPerByte, bitsPerLetter } from \"./constants-for-browser\";\nexport const fromBase64 = (input) => {\n let totalByteLength = (input.length / 4) * 3;\n if (input.slice(-2) === \"==\") {\n totalByteLength -= 2;\n }\n else if (input.slice(-1) === \"=\") {\n totalByteLength--;\n }\n const out = new ArrayBuffer(totalByteLength);\n const dataView = new DataView(out);\n for (let i = 0; i < input.length; i += 4) {\n let bits = 0;\n let bitLength = 0;\n for (let j = i, limit = i + 3; j <= limit; j++) {\n if (input[j] !== \"=\") {\n if (!(input[j] in alphabetByEncoding)) {\n throw new TypeError(`Invalid character ${input[j]} in base64 string.`);\n }\n bits |= alphabetByEncoding[input[j]] << ((limit - j) * bitsPerLetter);\n bitLength += bitsPerLetter;\n }\n else {\n bits >>= bitsPerLetter;\n }\n }\n const chunkOffset = (i / 4) * 3;\n bits >>= bitLength % bitsPerByte;\n const byteLength = Math.floor(bitLength / bitsPerByte);\n for (let k = 0; k < byteLength; k++) {\n const offset = (byteLength - k - 1) * bitsPerByte;\n dataView.setUint8(chunkOffset + k, (bits & (255 << offset)) >> offset);\n }\n }\n return new Uint8Array(out);\n};\n", "import { fromBase64 } from \"../util-base64/fromBase64.browser\";\nexport const streamCollector = async (stream) => {\n if ((typeof Blob === \"function\" && stream instanceof Blob) || stream.constructor?.name === \"Blob\") {\n if (Blob.prototype.arrayBuffer !== undefined) {\n return new Uint8Array(await stream.arrayBuffer());\n }\n return collectBlob(stream);\n }\n return collectStream(stream);\n};\nasync function collectBlob(blob) {\n const base64 = await readToBase64(blob);\n const arrayBuffer = fromBase64(base64);\n return new Uint8Array(arrayBuffer);\n}\nasync function collectStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nfunction readToBase64(blob) {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.onloadend = () => {\n if (reader.readyState !== 2) {\n return reject(new Error(\"Reader aborted too early\"));\n }\n const result = (reader.result ?? \"\");\n const commaIndex = result.indexOf(\",\");\n const dataOffset = commaIndex > -1 ? commaIndex + 1 : result.length;\n resolve(result.substring(dataOffset));\n };\n reader.onabort = () => reject(new Error(\"Read aborted\"));\n reader.onerror = () => reject(reader.error);\n reader.readAsDataURL(blob);\n });\n}\n", "import { toBase64 } from \"../util-base64/toBase64.browser\";\nimport { toHex } from \"../util-hex-encoding/hex-encoding\";\nimport { toUtf8 } from \"../util-utf8/toUtf8.browser\";\nimport { streamCollector } from \"./stream-collector.browser\";\nimport { isReadableStream } from \"./stream-type-check\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!isBlobInstance(stream) && !isReadableStream(stream)) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Blob or ReadableStream, got ${name}`);\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n const blobToWebStream = (blob) => {\n if (typeof blob.stream !== \"function\") {\n throw new Error(\"Cannot transform payload Blob to web stream. Please make sure the Blob.stream() is polyfilled.\\n\" +\n \"If you are using React Native, this API is not yet supported, see: https://react-native.canny.io/feature-requests/p/fetch-streaming-body\");\n }\n return blob.stream();\n };\n return Object.assign(stream, {\n transformToByteArray: transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === \"base64\") {\n return toBase64(buf);\n }\n else if (encoding === \"hex\") {\n return toHex(buf);\n }\n else if (encoding === undefined || encoding === \"utf8\" || encoding === \"utf-8\") {\n return toUtf8(buf);\n }\n else if (typeof TextDecoder === \"function\") {\n return new TextDecoder(encoding).decode(buf);\n }\n else {\n throw new Error(\"TextDecoder is not available, please make sure polyfill is provided.\");\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n if (isBlobInstance(stream)) {\n return blobToWebStream(stream);\n }\n else if (isReadableStream(stream)) {\n return stream;\n }\n else {\n throw new Error(`Cannot transform payload to web stream, got ${stream}`);\n }\n },\n });\n};\nconst isBlobInstance = (stream) => typeof Blob === \"function\" && stream instanceof Blob;\n", "import { Writable } from \"node:stream\";\nclass Collector extends Writable {\n bufferedBytes = [];\n _write(chunk, encoding, callback) {\n this.bufferedBytes.push(chunk);\n callback();\n }\n}\nconst isReadableStreamInstance = (stream) => typeof ReadableStream === \"function\" && stream instanceof ReadableStream;\nasync function collectReadableStream(stream) {\n const chunks = [];\n const reader = stream.getReader();\n let isDone = false;\n let length = 0;\n while (!isDone) {\n const { done, value } = await reader.read();\n if (value) {\n chunks.push(value);\n length += value.length;\n }\n isDone = done;\n }\n const collected = new Uint8Array(length);\n let offset = 0;\n for (const chunk of chunks) {\n collected.set(chunk, offset);\n offset += chunk.length;\n }\n return collected;\n}\nexport const streamCollector = (stream) => {\n if (isReadableStreamInstance(stream)) {\n return collectReadableStream(stream);\n }\n return new Promise((resolve, reject) => {\n const collector = new Collector();\n stream.pipe(collector);\n stream.on(\"error\", (err) => {\n collector.end();\n reject(err);\n });\n collector.on(\"error\", reject);\n collector.on(\"finish\", function () {\n const bytes = new Uint8Array(Buffer.concat(this.bufferedBytes));\n resolve(bytes);\n });\n });\n};\n", "import { Readable } from \"node:stream\";\nimport { fromArrayBuffer } from \"../util-buffer-from/buffer-from\";\nimport { sdkStreamMixin as sdkStreamMixinReadableStream } from \"./sdk-stream-mixin.browser\";\nimport { streamCollector } from \"./stream-collector\";\nconst ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED = \"The stream has already been transformed.\";\nexport const sdkStreamMixin = (stream) => {\n if (!(stream instanceof Readable)) {\n try {\n return sdkStreamMixinReadableStream(stream);\n }\n catch (e) {\n const name = stream?.__proto__?.constructor?.name || stream;\n throw new Error(`Unexpected stream implementation, expect Stream.Readable instance, got ${name}`);\n }\n }\n let transformed = false;\n const transformToByteArray = async () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n transformed = true;\n return await streamCollector(stream);\n };\n return Object.assign(stream, {\n transformToByteArray,\n transformToString: async (encoding) => {\n const buf = await transformToByteArray();\n if (encoding === undefined || Buffer.isEncoding(encoding)) {\n return fromArrayBuffer(buf.buffer, buf.byteOffset, buf.byteLength).toString(encoding);\n }\n else {\n const decoder = new TextDecoder(encoding);\n return decoder.decode(buf);\n }\n },\n transformToWebStream: () => {\n if (transformed) {\n throw new Error(ERR_MSG_STREAM_HAS_BEEN_TRANSFORMED);\n }\n if (stream.readableFlowing !== null) {\n throw new Error(\"The stream has been consumed by other callbacks.\");\n }\n if (typeof Readable.toWeb !== \"function\") {\n throw new Error(\"Readable.toWeb() is not supported. Please ensure a polyfill is available.\");\n }\n transformed = true;\n return Readable.toWeb(stream);\n },\n });\n};\n", "export async function splitStream(stream) {\n if (typeof stream.stream === \"function\") {\n stream = stream.stream();\n }\n const readableStream = stream;\n return readableStream.tee();\n}\n", "import { PassThrough } from \"node:stream\";\nimport { splitStream as splitWebStream } from \"./splitStream.browser\";\nimport { isBlob, isReadableStream } from \"./stream-type-check\";\nexport async function splitStream(stream) {\n if (isReadableStream(stream) || isBlob(stream)) {\n return splitWebStream(stream);\n }\n const stream1 = new PassThrough();\n const stream2 = new PassThrough();\n stream.pipe(stream1);\n stream.pipe(stream2);\n return [stream1, stream2];\n}\n", "import { getRandomValues } from \"node:crypto\";\nimport { fromBase64 } from \"./util-base64/fromBase64\";\nimport { toBase64 } from \"./util-base64/toBase64\";\nimport { bindUint8ArrayBlobAdapter } from \"./util-stream/blob/Uint8ArrayBlobAdapter\";\nimport { fromUtf8 } from \"./util-utf8/fromUtf8\";\nimport { toUtf8 } from \"./util-utf8/toUtf8\";\nimport { bindV4 } from \"./uuid/v4\";\nexport { copyDocumentWithTransform } from \"./copyDocumentWithTransform\";\nexport { dateToUtcString, parseRfc3339DateTime, parseRfc3339DateTimeWithOffset, parseRfc7231DateTime, parseEpochTimestamp, } from \"./date-utils\";\nexport { LazyJsonString } from \"./lazy-json\";\nexport { logger, parseBoolean, expectBoolean, expectNumber, expectFloat32, expectInt, expectInt32, expectShort, expectByte, expectNonNull, expectObject, expectString, expectUnion, expectLong, strictParseDouble, strictParseFloat, strictParseFloat32, strictParseLong, strictParseInt, strictParseInt32, strictParseShort, strictParseByte, limitedParseDouble, handleFloat, limitedParseFloat, limitedParseFloat32, } from \"./parse-utils\";\nexport { quoteHeader } from \"./quote-header\";\nexport { _parseEpochTimestamp, _parseRfc3339DateTimeWithOffset, _parseRfc7231DateTime, } from \"./schema-serde-lib/schema-date-utils\";\nexport { splitEvery } from \"./split-every\";\nexport { splitHeader } from \"./split-header\";\nexport { NumericValue, nv } from \"./value/NumericValue\";\nexport { fromHex, toHex } from \"./util-hex-encoding/hex-encoding\";\nexport { toBase64, fromBase64 };\nexport { calculateBodyLength } from \"./util-body-length/calculateBodyLength\";\nexport { toUint8Array } from \"./util-utf8/toUint8Array\";\nexport { toUtf8, fromUtf8 };\nexport { fromArrayBuffer, fromString } from \"./util-buffer-from/buffer-from\";\nexport { isArrayBuffer } from \"./is-array-buffer/is-array-buffer\";\nexport { deserializerMiddleware } from \"./middleware-serde/deserializerMiddleware\";\nexport { deserializerMiddlewareOption, serializerMiddlewareOption, getSerdePlugin, } from \"./middleware-serde/serdePlugin\";\nexport { serializerMiddleware } from \"./middleware-serde/serializerMiddleware\";\nexport { Hash } from \"./hash-node/hash-node\";\nexport class Uint8ArrayBlobAdapter extends bindUint8ArrayBlobAdapter(toUtf8, fromUtf8, toBase64, fromBase64) {\n}\nexport { ChecksumStream } from \"./util-stream/checksum/ChecksumStream\";\nexport { createChecksumStream } from \"./util-stream/checksum/createChecksumStream\";\nexport { createBufferedReadable } from \"./util-stream/createBufferedReadable\";\nexport { getAwsChunkedEncodingStream } from \"./util-stream/getAwsChunkedEncodingStream\";\nexport { headStream } from \"./util-stream/headStream\";\nexport { sdkStreamMixin } from \"./util-stream/sdk-stream-mixin\";\nexport { splitStream } from \"./util-stream/splitStream\";\nexport { isReadableStream, isBlob } from \"./util-stream/stream-type-check\";\nconst _getRandomValues = getRandomValues;\nexport const v4 = bindV4(_getRandomValues);\nexport const generateIdempotencyToken = v4;\n", "import { Uint8ArrayBlobAdapter } from \"@smithy/core/serde\";\nexport const collectBody = async (streamBody = new Uint8Array(), context) => {\n if (streamBody instanceof Uint8Array) {\n return Uint8ArrayBlobAdapter.mutate(streamBody);\n }\n if (!streamBody) {\n return Uint8ArrayBlobAdapter.mutate(new Uint8Array());\n }\n const fromContext = context.streamCollector(streamBody);\n return Uint8ArrayBlobAdapter.mutate(await fromContext);\n};\n", "export function extendedEncodeURIComponent(str) {\n return encodeURIComponent(str).replace(/[!'()*]/g, function (c) {\n return \"%\" + c.charCodeAt(0).toString(16).toUpperCase();\n });\n}\n", "export class SerdeContext {\n serdeContext;\n setSerdeContext(serdeContext) {\n this.serdeContext = serdeContext;\n }\n}\n", "export class HttpRequest {\n method;\n protocol;\n hostname;\n port;\n path;\n query;\n headers;\n username;\n password;\n fragment;\n body;\n constructor(options) {\n this.method = options.method || \"GET\";\n this.hostname = options.hostname || \"localhost\";\n this.port = options.port;\n this.query = options.query || {};\n this.headers = options.headers || {};\n this.body = options.body;\n this.protocol = options.protocol\n ? options.protocol.slice(-1) !== \":\"\n ? `${options.protocol}:`\n : options.protocol\n : \"https:\";\n this.path = options.path ? (options.path.charAt(0) !== \"/\" ? `/${options.path}` : options.path) : \"/\";\n this.username = options.username;\n this.password = options.password;\n this.fragment = options.fragment;\n }\n static clone(request) {\n const cloned = new HttpRequest({\n ...request,\n headers: { ...request.headers },\n });\n if (cloned.query) {\n cloned.query = cloneQuery(cloned.query);\n }\n return cloned;\n }\n static isInstance(request) {\n if (!request) {\n return false;\n }\n const req = request;\n return (\"method\" in req &&\n \"protocol\" in req &&\n \"hostname\" in req &&\n \"path\" in req &&\n typeof req[\"query\"] === \"object\" &&\n typeof req[\"headers\"] === \"object\");\n }\n clone() {\n return HttpRequest.clone(this);\n }\n}\nfunction cloneQuery(query) {\n return Object.keys(query).reduce((carry, paramName) => {\n const param = query[paramName];\n return {\n ...carry,\n [paramName]: Array.isArray(param) ? [...param] : param,\n };\n }, {});\n}\n", "export class HttpResponse {\n statusCode;\n reason;\n headers;\n body;\n constructor(options) {\n this.statusCode = options.statusCode;\n this.reason = options.reason;\n this.headers = options.headers || {};\n this.body = options.body;\n }\n static isInstance(response) {\n if (!response)\n return false;\n const resp = response;\n return typeof resp.statusCode === \"number\" && typeof resp.headers === \"object\";\n }\n}\n", "/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n function next() {\n while (env.stack.length) {\n var rec = env.stack.pop();\n try {\n var result = rec.dispose && rec.dispose.call(rec.value);\n if (rec.async) return Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n catch (e) {\n fail(e);\n }\n }\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n", "var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n isArrayBuffer: () => isArrayBuffer\n});\nmodule.exports = __toCommonJS(src_exports);\nvar isArrayBuffer = /* @__PURE__ */ __name((arg) => typeof ArrayBuffer === \"function\" && arg instanceof ArrayBuffer || Object.prototype.toString.call(arg) === \"[object ArrayBuffer]\", \"isArrayBuffer\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n isArrayBuffer\n});\n\n", "var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromArrayBuffer: () => fromArrayBuffer,\n fromString: () => fromString\n});\nmodule.exports = __toCommonJS(src_exports);\nvar import_is_array_buffer = require(\"@smithy/is-array-buffer\");\nvar import_buffer = require(\"buffer\");\nvar fromArrayBuffer = /* @__PURE__ */ __name((input, offset = 0, length = input.byteLength - offset) => {\n if (!(0, import_is_array_buffer.isArrayBuffer)(input)) {\n throw new TypeError(`The \"input\" argument must be ArrayBuffer. Received type ${typeof input} (${input})`);\n }\n return import_buffer.Buffer.from(input, offset, length);\n}, \"fromArrayBuffer\");\nvar fromString = /* @__PURE__ */ __name((input, encoding) => {\n if (typeof input !== \"string\") {\n throw new TypeError(`The \"input\" argument must be of type string. Received type ${typeof input} (${input})`);\n }\n return encoding ? import_buffer.Buffer.from(input, encoding) : import_buffer.Buffer.from(input);\n}, \"fromString\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromArrayBuffer,\n fromString\n});\n\n", "var __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __name = (target, value) => __defProp(target, \"name\", { value, configurable: true });\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\n\n// src/index.ts\nvar src_exports = {};\n__export(src_exports, {\n fromUtf8: () => fromUtf8,\n toUint8Array: () => toUint8Array,\n toUtf8: () => toUtf8\n});\nmodule.exports = __toCommonJS(src_exports);\n\n// src/fromUtf8.ts\nvar import_util_buffer_from = require(\"@smithy/util-buffer-from\");\nvar fromUtf8 = /* @__PURE__ */ __name((input) => {\n const buf = (0, import_util_buffer_from.fromString)(input, \"utf8\");\n return new Uint8Array(buf.buffer, buf.byteOffset, buf.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n}, \"fromUtf8\");\n\n// src/toUint8Array.ts\nvar toUint8Array = /* @__PURE__ */ __name((data) => {\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(data.buffer, data.byteOffset, data.byteLength / Uint8Array.BYTES_PER_ELEMENT);\n }\n return new Uint8Array(data);\n}, \"toUint8Array\");\n\n// src/toUtf8.ts\n\nvar toUtf8 = /* @__PURE__ */ __name((input) => {\n if (typeof input === \"string\") {\n return input;\n }\n if (typeof input !== \"object\" || typeof input.byteOffset !== \"number\" || typeof input.byteLength !== \"number\") {\n throw new Error(\"@smithy/util-utf8: toUtf8 encoder function only accepts string | Uint8Array.\");\n }\n return (0, import_util_buffer_from.fromArrayBuffer)(input.buffer, input.byteOffset, input.byteLength).toString(\"utf8\");\n}, \"toUtf8\");\n// Annotate the CommonJS export names for ESM import in node:\n\n0 && (module.exports = {\n fromUtf8,\n toUint8Array,\n toUtf8\n});\n\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\nimport { fromUtf8 as fromUtf8Browser } from \"@smithy/util-utf8\";\n\n// Quick polyfill\nconst fromUtf8 =\n typeof Buffer !== \"undefined\" && Buffer.from\n ? (input: string) => Buffer.from(input, \"utf8\")\n : fromUtf8Browser;\n\nexport function convertToBuffer(data: SourceData): Uint8Array {\n // Already a Uint8, do nothing\n if (data instanceof Uint8Array) return data;\n\n if (typeof data === \"string\") {\n return fromUtf8(data);\n }\n\n if (ArrayBuffer.isView(data)) {\n return new Uint8Array(\n data.buffer,\n data.byteOffset,\n data.byteLength / Uint8Array.BYTES_PER_ELEMENT\n );\n }\n\n return new Uint8Array(data);\n}\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData } from \"@aws-sdk/types\";\n\nexport function isEmptyData(data: SourceData): boolean {\n if (typeof data === \"string\") {\n return data.length === 0;\n }\n\n return data.byteLength === 0;\n}\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nexport function numToUint8(num: number) {\n return new Uint8Array([\n (num & 0xff000000) >> 24,\n (num & 0x00ff0000) >> 16,\n (num & 0x0000ff00) >> 8,\n num & 0x000000ff,\n ]);\n}\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\n// IE 11 does not support Array.from, so we do it manually\nexport function uint32ArrayFrom(a_lookUpTable: Array): Uint32Array {\n if (!Uint32Array.from) {\n const return_array = new Uint32Array(a_lookUpTable.length)\n let a_index = 0\n while (a_index < a_lookUpTable.length) {\n return_array[a_index] = a_lookUpTable[a_index]\n a_index += 1\n }\n return return_array\n }\n return Uint32Array.from(a_lookUpTable)\n}\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nexport { convertToBuffer } from \"./convertToBuffer\";\nexport { isEmptyData } from \"./isEmptyData\";\nexport { numToUint8 } from \"./numToUint8\";\nexport {uint32ArrayFrom} from './uint32ArrayFrom';\n", "// Copyright Amazon.com Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { SourceData, Checksum } from \"@aws-sdk/types\";\nimport { convertToBuffer, isEmptyData, numToUint8 } from \"@aws-crypto/util\";\nimport { Crc32 } from \"./index\";\n\nexport class AwsCrc32 implements Checksum {\n private crc32 = new Crc32();\n\n update(toHash: SourceData) {\n if (isEmptyData(toHash)) return;\n\n this.crc32.update(convertToBuffer(toHash));\n }\n\n async digest(): Promise {\n return numToUint8(this.crc32.digest());\n }\n\n reset(): void {\n this.crc32 = new Crc32();\n }\n}\n", "import {uint32ArrayFrom} from \"@aws-crypto/util\";\n\nexport function crc32(data: Uint8Array): number {\n return new Crc32().update(data).digest();\n}\n\nexport class Crc32 {\n private checksum = 0xffffffff;\n\n update(data: Uint8Array): this {\n for (const byte of data) {\n this.checksum =\n (this.checksum >>> 8) ^ lookupTable[(this.checksum ^ byte) & 0xff];\n }\n\n return this;\n }\n\n digest(): number {\n return (this.checksum ^ 0xffffffff) >>> 0;\n }\n}\n\n// prettier-ignore\nconst a_lookUpTable = [\n 0x00000000, 0x77073096, 0xEE0E612C, 0x990951BA,\n 0x076DC419, 0x706AF48F, 0xE963A535, 0x9E6495A3,\n 0x0EDB8832, 0x79DCB8A4, 0xE0D5E91E, 0x97D2D988,\n 0x09B64C2B, 0x7EB17CBD, 0xE7B82D07, 0x90BF1D91,\n 0x1DB71064, 0x6AB020F2, 0xF3B97148, 0x84BE41DE,\n 0x1ADAD47D, 0x6DDDE4EB, 0xF4D4B551, 0x83D385C7,\n 0x136C9856, 0x646BA8C0, 0xFD62F97A, 0x8A65C9EC,\n 0x14015C4F, 0x63066CD9, 0xFA0F3D63, 0x8D080DF5,\n 0x3B6E20C8, 0x4C69105E, 0xD56041E4, 0xA2677172,\n 0x3C03E4D1, 0x4B04D447, 0xD20D85FD, 0xA50AB56B,\n 0x35B5A8FA, 0x42B2986C, 0xDBBBC9D6, 0xACBCF940,\n 0x32D86CE3, 0x45DF5C75, 0xDCD60DCF, 0xABD13D59,\n 0x26D930AC, 0x51DE003A, 0xC8D75180, 0xBFD06116,\n 0x21B4F4B5, 0x56B3C423, 0xCFBA9599, 0xB8BDA50F,\n 0x2802B89E, 0x5F058808, 0xC60CD9B2, 0xB10BE924,\n 0x2F6F7C87, 0x58684C11, 0xC1611DAB, 0xB6662D3D,\n 0x76DC4190, 0x01DB7106, 0x98D220BC, 0xEFD5102A,\n 0x71B18589, 0x06B6B51F, 0x9FBFE4A5, 0xE8B8D433,\n 0x7807C9A2, 0x0F00F934, 0x9609A88E, 0xE10E9818,\n 0x7F6A0DBB, 0x086D3D2D, 0x91646C97, 0xE6635C01,\n 0x6B6B51F4, 0x1C6C6162, 0x856530D8, 0xF262004E,\n 0x6C0695ED, 0x1B01A57B, 0x8208F4C1, 0xF50FC457,\n 0x65B0D9C6, 0x12B7E950, 0x8BBEB8EA, 0xFCB9887C,\n 0x62DD1DDF, 0x15DA2D49, 0x8CD37CF3, 0xFBD44C65,\n 0x4DB26158, 0x3AB551CE, 0xA3BC0074, 0xD4BB30E2,\n 0x4ADFA541, 0x3DD895D7, 0xA4D1C46D, 0xD3D6F4FB,\n 0x4369E96A, 0x346ED9FC, 0xAD678846, 0xDA60B8D0,\n 0x44042D73, 0x33031DE5, 0xAA0A4C5F, 0xDD0D7CC9,\n 0x5005713C, 0x270241AA, 0xBE0B1010, 0xC90C2086,\n 0x5768B525, 0x206F85B3, 0xB966D409, 0xCE61E49F,\n 0x5EDEF90E, 0x29D9C998, 0xB0D09822, 0xC7D7A8B4,\n 0x59B33D17, 0x2EB40D81, 0xB7BD5C3B, 0xC0BA6CAD,\n 0xEDB88320, 0x9ABFB3B6, 0x03B6E20C, 0x74B1D29A,\n 0xEAD54739, 0x9DD277AF, 0x04DB2615, 0x73DC1683,\n 0xE3630B12, 0x94643B84, 0x0D6D6A3E, 0x7A6A5AA8,\n 0xE40ECF0B, 0x9309FF9D, 0x0A00AE27, 0x7D079EB1,\n 0xF00F9344, 0x8708A3D2, 0x1E01F268, 0x6906C2FE,\n 0xF762575D, 0x806567CB, 0x196C3671, 0x6E6B06E7,\n 0xFED41B76, 0x89D32BE0, 0x10DA7A5A, 0x67DD4ACC,\n 0xF9B9DF6F, 0x8EBEEFF9, 0x17B7BE43, 0x60B08ED5,\n 0xD6D6A3E8, 0xA1D1937E, 0x38D8C2C4, 0x4FDFF252,\n 0xD1BB67F1, 0xA6BC5767, 0x3FB506DD, 0x48B2364B,\n 0xD80D2BDA, 0xAF0A1B4C, 0x36034AF6, 0x41047A60,\n 0xDF60EFC3, 0xA867DF55, 0x316E8EEF, 0x4669BE79,\n 0xCB61B38C, 0xBC66831A, 0x256FD2A0, 0x5268E236,\n 0xCC0C7795, 0xBB0B4703, 0x220216B9, 0x5505262F,\n 0xC5BA3BBE, 0xB2BD0B28, 0x2BB45A92, 0x5CB36A04,\n 0xC2D7FFA7, 0xB5D0CF31, 0x2CD99E8B, 0x5BDEAE1D,\n 0x9B64C2B0, 0xEC63F226, 0x756AA39C, 0x026D930A,\n 0x9C0906A9, 0xEB0E363F, 0x72076785, 0x05005713,\n 0x95BF4A82, 0xE2B87A14, 0x7BB12BAE, 0x0CB61B38,\n 0x92D28E9B, 0xE5D5BE0D, 0x7CDCEFB7, 0x0BDBDF21,\n 0x86D3D2D4, 0xF1D4E242, 0x68DDB3F8, 0x1FDA836E,\n 0x81BE16CD, 0xF6B9265B, 0x6FB077E1, 0x18B74777,\n 0x88085AE6, 0xFF0F6A70, 0x66063BCA, 0x11010B5C,\n 0x8F659EFF, 0xF862AE69, 0x616BFFD3, 0x166CCF45,\n 0xA00AE278, 0xD70DD2EE, 0x4E048354, 0x3903B3C2,\n 0xA7672661, 0xD06016F7, 0x4969474D, 0x3E6E77DB,\n 0xAED16A4A, 0xD9D65ADC, 0x40DF0B66, 0x37D83BF0,\n 0xA9BCAE53, 0xDEBB9EC5, 0x47B2CF7F, 0x30B5FFE9,\n 0xBDBDF21C, 0xCABAC28A, 0x53B39330, 0x24B4A3A6,\n 0xBAD03605, 0xCDD70693, 0x54DE5729, 0x23D967BF,\n 0xB3667A2E, 0xC4614AB8, 0x5D681B02, 0x2A6F2B94,\n 0xB40BBE37, 0xC30C8EA1, 0x5A05DF1B, 0x2D02EF8D,\n];\nconst lookupTable: Uint32Array = uint32ArrayFrom(a_lookUpTable)\nexport { AwsCrc32 } from \"./aws_crc32\";\n", "import { toHex } from \"@smithy/core/serde\";\nexport class Int64 {\n bytes;\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9_223_372_036_854_775_807 || number < -9_223_372_036_854_775_808) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new Int64(bytes);\n }\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 0b10000000;\n if (negative) {\n negate(bytes);\n }\n return parseInt(toHex(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n}\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 0xff;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n", "import { fromHex, toHex } from \"@smithy/core/serde\";\nimport { Int64 } from \"./Int64\";\nexport class HeaderMarshaller {\n toUtf8;\n fromUtf8;\n constructor(toUtf8, fromUtf8) {\n this.toUtf8 = toUtf8;\n this.fromUtf8 = fromUtf8;\n }\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = this.fromUtf8(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 : 1]);\n case \"byte\":\n return Uint8Array.from([2, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = this.fromUtf8(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9;\n uuidBytes.set(fromHex(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n parse(headers) {\n const out = {};\n let position = 0;\n while (position < headers.byteLength) {\n const nameLength = headers.getUint8(position++);\n const name = this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, nameLength));\n position += nameLength;\n switch (headers.getUint8(position++)) {\n case 0:\n out[name] = {\n type: BOOLEAN_TAG,\n value: true,\n };\n break;\n case 1:\n out[name] = {\n type: BOOLEAN_TAG,\n value: false,\n };\n break;\n case 2:\n out[name] = {\n type: BYTE_TAG,\n value: headers.getInt8(position++),\n };\n break;\n case 3:\n out[name] = {\n type: SHORT_TAG,\n value: headers.getInt16(position, false),\n };\n position += 2;\n break;\n case 4:\n out[name] = {\n type: INT_TAG,\n value: headers.getInt32(position, false),\n };\n position += 4;\n break;\n case 5:\n out[name] = {\n type: LONG_TAG,\n value: new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)),\n };\n position += 8;\n break;\n case 6:\n const binaryLength = headers.getUint16(position, false);\n position += 2;\n out[name] = {\n type: BINARY_TAG,\n value: new Uint8Array(headers.buffer, headers.byteOffset + position, binaryLength),\n };\n position += binaryLength;\n break;\n case 7:\n const stringLength = headers.getUint16(position, false);\n position += 2;\n out[name] = {\n type: STRING_TAG,\n value: this.toUtf8(new Uint8Array(headers.buffer, headers.byteOffset + position, stringLength)),\n };\n position += stringLength;\n break;\n case 8:\n out[name] = {\n type: TIMESTAMP_TAG,\n value: new Date(new Int64(new Uint8Array(headers.buffer, headers.byteOffset + position, 8)).valueOf()),\n };\n position += 8;\n break;\n case 9:\n const uuidBytes = new Uint8Array(headers.buffer, headers.byteOffset + position, 16);\n position += 16;\n out[name] = {\n type: UUID_TAG,\n value: `${toHex(uuidBytes.subarray(0, 4))}-${toHex(uuidBytes.subarray(4, 6))}-${toHex(uuidBytes.subarray(6, 8))}-${toHex(uuidBytes.subarray(8, 10))}-${toHex(uuidBytes.subarray(10))}`,\n };\n break;\n default:\n throw new Error(`Unrecognized header type tag`);\n }\n }\n return out;\n }\n}\nvar HEADER_VALUE_TYPE;\n(function (HEADER_VALUE_TYPE) {\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolTrue\"] = 0] = \"boolTrue\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolFalse\"] = 1] = \"boolFalse\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byte\"] = 2] = \"byte\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"short\"] = 3] = \"short\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"integer\"] = 4] = \"integer\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"long\"] = 5] = \"long\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byteArray\"] = 6] = \"byteArray\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"string\"] = 7] = \"string\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"timestamp\"] = 8] = \"timestamp\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"uuid\"] = 9] = \"uuid\";\n})(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));\nconst BOOLEAN_TAG = \"boolean\";\nconst BYTE_TAG = \"byte\";\nconst SHORT_TAG = \"short\";\nconst INT_TAG = \"integer\";\nconst LONG_TAG = \"long\";\nconst BINARY_TAG = \"binary\";\nconst STRING_TAG = \"string\";\nconst TIMESTAMP_TAG = \"timestamp\";\nconst UUID_TAG = \"uuid\";\nconst UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\n", "import { Crc32 } from \"@aws-crypto/crc32\";\nconst PRELUDE_MEMBER_LENGTH = 4;\nconst PRELUDE_LENGTH = PRELUDE_MEMBER_LENGTH * 2;\nconst CHECKSUM_LENGTH = 4;\nconst MINIMUM_MESSAGE_LENGTH = PRELUDE_LENGTH + CHECKSUM_LENGTH * 2;\nexport function splitMessage({ byteLength, byteOffset, buffer }) {\n if (byteLength < MINIMUM_MESSAGE_LENGTH) {\n throw new Error(\"Provided message too short to accommodate event stream message overhead\");\n }\n const view = new DataView(buffer, byteOffset, byteLength);\n const messageLength = view.getUint32(0, false);\n if (byteLength !== messageLength) {\n throw new Error(\"Reported message length does not match received message length\");\n }\n const headerLength = view.getUint32(PRELUDE_MEMBER_LENGTH, false);\n const expectedPreludeChecksum = view.getUint32(PRELUDE_LENGTH, false);\n const expectedMessageChecksum = view.getUint32(byteLength - CHECKSUM_LENGTH, false);\n const checksummer = new Crc32().update(new Uint8Array(buffer, byteOffset, PRELUDE_LENGTH));\n if (expectedPreludeChecksum !== checksummer.digest()) {\n throw new Error(`The prelude checksum specified in the message (${expectedPreludeChecksum}) does not match the calculated CRC32 checksum (${checksummer.digest()})`);\n }\n checksummer.update(new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH, byteLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH)));\n if (expectedMessageChecksum !== checksummer.digest()) {\n throw new Error(`The message checksum (${checksummer.digest()}) did not match the expected value of ${expectedMessageChecksum}`);\n }\n return {\n headers: new DataView(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH, headerLength),\n body: new Uint8Array(buffer, byteOffset + PRELUDE_LENGTH + CHECKSUM_LENGTH + headerLength, messageLength - headerLength - (PRELUDE_LENGTH + CHECKSUM_LENGTH + CHECKSUM_LENGTH)),\n };\n}\n", "import { Crc32 } from \"@aws-crypto/crc32\";\nimport { HeaderMarshaller } from \"./HeaderMarshaller\";\nimport { splitMessage } from \"./splitMessage\";\nexport class EventStreamCodec {\n headerMarshaller;\n messageBuffer;\n isEndOfStream;\n constructor(toUtf8, fromUtf8) {\n this.headerMarshaller = new HeaderMarshaller(toUtf8, fromUtf8);\n this.messageBuffer = [];\n this.isEndOfStream = false;\n }\n feed(message) {\n this.messageBuffer.push(this.decode(message));\n }\n endOfStream() {\n this.isEndOfStream = true;\n }\n getMessage() {\n const message = this.messageBuffer.pop();\n const isEndOfStream = this.isEndOfStream;\n return {\n getMessage() {\n return message;\n },\n isEndOfStream() {\n return isEndOfStream;\n },\n };\n }\n getAvailableMessages() {\n const messages = this.messageBuffer;\n this.messageBuffer = [];\n const isEndOfStream = this.isEndOfStream;\n return {\n getMessages() {\n return messages;\n },\n isEndOfStream() {\n return isEndOfStream;\n },\n };\n }\n encode({ headers: rawHeaders, body }) {\n const headers = this.headerMarshaller.format(rawHeaders);\n const length = headers.byteLength + body.byteLength + 16;\n const out = new Uint8Array(length);\n const view = new DataView(out.buffer, out.byteOffset, out.byteLength);\n const checksum = new Crc32();\n view.setUint32(0, length, false);\n view.setUint32(4, headers.byteLength, false);\n view.setUint32(8, checksum.update(out.subarray(0, 8)).digest(), false);\n out.set(headers, 12);\n out.set(body, headers.byteLength + 12);\n view.setUint32(length - 4, checksum.update(out.subarray(8, length - 4)).digest(), false);\n return out;\n }\n decode(message) {\n const { headers, body } = splitMessage(message);\n return { headers: this.headerMarshaller.parse(headers), body };\n }\n formatHeaders(rawHeaders) {\n return this.headerMarshaller.format(rawHeaders);\n }\n}\n", "export class MessageDecoderStream {\n options;\n constructor(options) {\n this.options = options;\n }\n [Symbol.asyncIterator]() {\n return this.asyncIterator();\n }\n async *asyncIterator() {\n for await (const bytes of this.options.inputStream) {\n const decoded = this.options.decoder.decode(bytes);\n yield decoded;\n }\n }\n}\n", "export class MessageEncoderStream {\n options;\n constructor(options) {\n this.options = options;\n }\n [Symbol.asyncIterator]() {\n return this.asyncIterator();\n }\n async *asyncIterator() {\n for await (const msg of this.options.messageStream) {\n const encoded = this.options.encoder.encode(msg);\n yield encoded;\n }\n if (this.options.includeEndFrame) {\n yield new Uint8Array(0);\n }\n }\n}\n", "export class SmithyMessageDecoderStream {\n options;\n constructor(options) {\n this.options = options;\n }\n [Symbol.asyncIterator]() {\n return this.asyncIterator();\n }\n async *asyncIterator() {\n for await (const message of this.options.messageStream) {\n const deserialized = await this.options.deserializer(message);\n if (deserialized === undefined)\n continue;\n yield deserialized;\n }\n }\n}\n", "export class SmithyMessageEncoderStream {\n options;\n constructor(options) {\n this.options = options;\n }\n [Symbol.asyncIterator]() {\n return this.asyncIterator();\n }\n async *asyncIterator() {\n for await (const chunk of this.options.inputStream) {\n const payloadBuf = this.options.serializer(chunk);\n yield payloadBuf;\n }\n }\n}\n", "export function getChunkedStream(source) {\n let currentMessageTotalLength = 0;\n let currentMessagePendingLength = 0;\n let currentMessage = null;\n let messageLengthBuffer = null;\n const allocateMessage = (size) => {\n if (typeof size !== \"number\") {\n throw new Error(\"Attempted to allocate an event message where size was not a number: \" + size);\n }\n currentMessageTotalLength = size;\n currentMessagePendingLength = 4;\n currentMessage = new Uint8Array(size);\n const currentMessageView = new DataView(currentMessage.buffer);\n currentMessageView.setUint32(0, size, false);\n };\n const iterator = async function* () {\n const sourceIterator = source[Symbol.asyncIterator]();\n while (true) {\n const { value, done } = await sourceIterator.next();\n if (done) {\n if (!currentMessageTotalLength) {\n return;\n }\n else if (currentMessageTotalLength === currentMessagePendingLength) {\n yield currentMessage;\n }\n else {\n throw new Error(\"Truncated event message received.\");\n }\n return;\n }\n const chunkLength = value.length;\n let currentOffset = 0;\n while (currentOffset < chunkLength) {\n if (!currentMessage) {\n const bytesRemaining = chunkLength - currentOffset;\n if (!messageLengthBuffer) {\n messageLengthBuffer = new Uint8Array(4);\n }\n const numBytesForTotal = Math.min(4 - currentMessagePendingLength, bytesRemaining);\n messageLengthBuffer.set(value.slice(currentOffset, currentOffset + numBytesForTotal), currentMessagePendingLength);\n currentMessagePendingLength += numBytesForTotal;\n currentOffset += numBytesForTotal;\n if (currentMessagePendingLength < 4) {\n break;\n }\n allocateMessage(new DataView(messageLengthBuffer.buffer).getUint32(0, false));\n messageLengthBuffer = null;\n }\n const numBytesToWrite = Math.min(currentMessageTotalLength - currentMessagePendingLength, chunkLength - currentOffset);\n currentMessage.set(value.slice(currentOffset, currentOffset + numBytesToWrite), currentMessagePendingLength);\n currentMessagePendingLength += numBytesToWrite;\n currentOffset += numBytesToWrite;\n if (currentMessageTotalLength && currentMessageTotalLength === currentMessagePendingLength) {\n yield currentMessage;\n currentMessage = null;\n currentMessageTotalLength = 0;\n currentMessagePendingLength = 0;\n }\n }\n }\n };\n return {\n [Symbol.asyncIterator]: iterator,\n };\n}\n", "export function getUnmarshalledStream(source, options) {\n const messageUnmarshaller = getMessageUnmarshaller(options.deserializer, options.toUtf8);\n return {\n [Symbol.asyncIterator]: async function* () {\n for await (const chunk of source) {\n const message = options.eventStreamCodec.decode(chunk);\n const type = await messageUnmarshaller(message);\n if (type === undefined)\n continue;\n yield type;\n }\n },\n };\n}\nexport function getMessageUnmarshaller(deserializer, toUtf8) {\n return async function (message) {\n const { value: messageType } = message.headers[\":message-type\"];\n if (messageType === \"error\") {\n const unmodeledError = new Error(message.headers[\":error-message\"].value || \"UnknownError\");\n unmodeledError.name = message.headers[\":error-code\"].value;\n throw unmodeledError;\n }\n else if (messageType === \"exception\") {\n const code = message.headers[\":exception-type\"].value;\n const exception = { [code]: message };\n const deserializedException = await deserializer(exception);\n if (deserializedException.$unknown) {\n const error = new Error(toUtf8(message.body));\n error.name = code;\n throw error;\n }\n throw deserializedException[code];\n }\n else if (messageType === \"event\") {\n const event = {\n [message.headers[\":event-type\"].value]: message,\n };\n const deserialized = await deserializer(event);\n if (deserialized.$unknown)\n return;\n return deserialized;\n }\n else {\n throw Error(`Unrecognizable event type: ${message.headers[\":event-type\"].value}`);\n }\n };\n}\n", "import { EventStreamCodec } from \"../eventstream-codec/EventStreamCodec\";\nimport { MessageDecoderStream } from \"../eventstream-codec/MessageDecoderStream\";\nimport { MessageEncoderStream } from \"../eventstream-codec/MessageEncoderStream\";\nimport { SmithyMessageDecoderStream } from \"../eventstream-codec/SmithyMessageDecoderStream\";\nimport { SmithyMessageEncoderStream } from \"../eventstream-codec/SmithyMessageEncoderStream\";\nimport { getChunkedStream } from \"./getChunkedStream\";\nimport { getMessageUnmarshaller } from \"./getUnmarshalledStream\";\nexport class EventStreamMarshaller {\n eventStreamCodec;\n utfEncoder;\n constructor({ utf8Encoder, utf8Decoder }) {\n this.eventStreamCodec = new EventStreamCodec(utf8Encoder, utf8Decoder);\n this.utfEncoder = utf8Encoder;\n }\n deserialize(body, deserializer) {\n const inputStream = getChunkedStream(body);\n return new SmithyMessageDecoderStream({\n messageStream: new MessageDecoderStream({ inputStream, decoder: this.eventStreamCodec }),\n deserializer: getMessageUnmarshaller(deserializer, this.utfEncoder),\n });\n }\n serialize(inputStream, serializer) {\n return new MessageEncoderStream({\n messageStream: new SmithyMessageEncoderStream({ inputStream, serializer }),\n encoder: this.eventStreamCodec,\n includeEndFrame: true,\n });\n }\n}\nexport const eventStreamSerdeProvider = (options) => new EventStreamMarshaller(options);\n", "import { Readable } from \"node:stream\";\nimport { EventStreamMarshaller as UniversalEventStreamMarshaller } from \"../eventstream-serde-universal/EventStreamMarshaller\";\nexport class EventStreamMarshaller {\n universalMarshaller;\n constructor({ utf8Encoder, utf8Decoder }) {\n this.universalMarshaller = new UniversalEventStreamMarshaller({\n utf8Decoder,\n utf8Encoder,\n });\n }\n deserialize(body, deserializer) {\n const bodyIterable = typeof body[Symbol.asyncIterator] === \"function\" ? body : readableToIterable(body);\n return this.universalMarshaller.deserialize(bodyIterable, deserializer);\n }\n serialize(input, serializer) {\n return Readable.from(this.universalMarshaller.serialize(input, serializer));\n }\n}\nexport const eventStreamSerdeProvider = (options) => new EventStreamMarshaller(options);\nexport async function* readableToIterable(readStream) {\n let streamEnded = false;\n let generationEnded = false;\n const records = new Array();\n readStream.on(\"error\", (err) => {\n if (!streamEnded) {\n streamEnded = true;\n }\n if (err) {\n throw err;\n }\n });\n readStream.on(\"data\", (data) => {\n records.push(data);\n });\n readStream.on(\"end\", () => {\n streamEnded = true;\n });\n while (!generationEnded) {\n const value = await new Promise((resolve) => setTimeout(() => resolve(records.shift()), 0));\n if (value) {\n yield value;\n }\n generationEnded = streamEnded && records.length === 0;\n }\n}\n", "export const readableStreamToIterable = (readableStream) => ({\n [Symbol.asyncIterator]: async function* () {\n const reader = readableStream.getReader();\n try {\n while (true) {\n const { done, value } = await reader.read();\n if (done)\n return;\n yield value;\n }\n }\n finally {\n reader.releaseLock();\n }\n },\n});\nexport const iterableToReadableStream = (asyncIterable) => {\n const iterator = asyncIterable[Symbol.asyncIterator]();\n return new ReadableStream({\n async pull(controller) {\n const { done, value } = await iterator.next();\n if (done) {\n return controller.close();\n }\n controller.enqueue(value);\n },\n });\n};\n", "export const resolveEventStreamSerdeConfig = (input) => Object.assign(input, {\n eventStreamMarshaller: input.eventStreamSerdeProvider(input),\n});\n", "import { fromUtf8, toUtf8 } from \"@smithy/core/serde\";\nexport class EventStreamSerde {\n marshaller;\n serializer;\n deserializer;\n serdeContext;\n defaultContentType;\n constructor({ marshaller, serializer, deserializer, serdeContext, defaultContentType, }) {\n this.marshaller = marshaller;\n this.serializer = serializer;\n this.deserializer = deserializer;\n this.serdeContext = serdeContext;\n this.defaultContentType = defaultContentType;\n }\n async serializeEventStream({ eventStream, requestSchema, initialRequest, }) {\n const marshaller = this.marshaller;\n const eventStreamMember = requestSchema.getEventStreamMember();\n const unionSchema = requestSchema.getMemberSchema(eventStreamMember);\n const serializer = this.serializer;\n const defaultContentType = this.defaultContentType;\n const initialRequestMarker = Symbol(\"initialRequestMarker\");\n const eventStreamIterable = {\n async *[Symbol.asyncIterator]() {\n if (initialRequest) {\n const headers = {\n \":event-type\": { type: \"string\", value: \"initial-request\" },\n \":message-type\": { type: \"string\", value: \"event\" },\n \":content-type\": { type: \"string\", value: defaultContentType },\n };\n serializer.write(requestSchema, initialRequest);\n const body = serializer.flush();\n yield {\n [initialRequestMarker]: true,\n headers,\n body,\n };\n }\n for await (const page of eventStream) {\n yield page;\n }\n },\n };\n return marshaller.serialize(eventStreamIterable, (event) => {\n if (event[initialRequestMarker]) {\n return {\n headers: event.headers,\n body: event.body,\n };\n }\n let unionMember = \"\";\n for (const key in event) {\n if (key !== \"__type\") {\n unionMember = key;\n break;\n }\n }\n const { additionalHeaders, body, eventType, explicitPayloadContentType } = this.writeEventBody(unionMember, unionSchema, event);\n const headers = {\n \":event-type\": { type: \"string\", value: eventType },\n \":message-type\": { type: \"string\", value: \"event\" },\n \":content-type\": { type: \"string\", value: explicitPayloadContentType ?? defaultContentType },\n ...additionalHeaders,\n };\n return {\n headers,\n body,\n };\n });\n }\n async deserializeEventStream({ response, responseSchema, initialResponseContainer, }) {\n const marshaller = this.marshaller;\n const eventStreamMember = responseSchema.getEventStreamMember();\n const unionSchema = responseSchema.getMemberSchema(eventStreamMember);\n const memberSchemas = unionSchema.getMemberSchemas();\n const initialResponseMarker = Symbol(\"initialResponseMarker\");\n const asyncIterable = marshaller.deserialize(response.body, async (event) => {\n let unionMember = \"\";\n for (const key in event) {\n if (key !== \"__type\") {\n unionMember = key;\n break;\n }\n }\n const body = event[unionMember].body;\n if (unionMember === \"initial-response\") {\n const dataObject = await this.deserializer.read(responseSchema, body);\n delete dataObject[eventStreamMember];\n return {\n [initialResponseMarker]: true,\n ...dataObject,\n };\n }\n else if (unionMember in memberSchemas) {\n const eventStreamSchema = memberSchemas[unionMember];\n if (eventStreamSchema.isStructSchema()) {\n const out = {};\n let hasBindings = false;\n for (const [name, member] of eventStreamSchema.structIterator()) {\n const { eventHeader, eventPayload } = member.getMergedTraits();\n hasBindings = hasBindings || Boolean(eventHeader || eventPayload);\n if (eventPayload) {\n if (member.isBlobSchema()) {\n out[name] = body;\n }\n else if (member.isStringSchema()) {\n out[name] = (this.serdeContext?.utf8Encoder ?? toUtf8)(body);\n }\n else if (member.isStructSchema()) {\n out[name] = await this.deserializer.read(member, body);\n }\n }\n else if (eventHeader) {\n const value = event[unionMember].headers[name]?.value;\n if (value != null) {\n if (member.isNumericSchema()) {\n if (value && typeof value === \"object\" && \"bytes\" in value) {\n out[name] = BigInt(value.toString());\n }\n else {\n out[name] = Number(value);\n }\n }\n else {\n out[name] = value;\n }\n }\n }\n }\n if (hasBindings) {\n return {\n [unionMember]: out,\n };\n }\n if (body.byteLength === 0) {\n return {\n [unionMember]: {},\n };\n }\n }\n return {\n [unionMember]: await this.deserializer.read(eventStreamSchema, body),\n };\n }\n else {\n return {\n $unknown: event,\n };\n }\n });\n const asyncIterator = asyncIterable[Symbol.asyncIterator]();\n const firstEvent = await asyncIterator.next();\n if (firstEvent.done) {\n return asyncIterable;\n }\n if (firstEvent.value?.[initialResponseMarker]) {\n if (!responseSchema) {\n throw new Error(\"@smithy::core/protocols - initial-response event encountered in event stream but no response schema given.\");\n }\n for (const key in firstEvent.value) {\n initialResponseContainer[key] = firstEvent.value[key];\n }\n }\n return {\n async *[Symbol.asyncIterator]() {\n if (!firstEvent?.value?.[initialResponseMarker]) {\n yield firstEvent.value;\n }\n while (true) {\n const { done, value } = await asyncIterator.next();\n if (done) {\n break;\n }\n yield value;\n }\n },\n };\n }\n writeEventBody(unionMember, unionSchema, event) {\n const serializer = this.serializer;\n let eventType = unionMember;\n let explicitPayloadMember = null;\n let explicitPayloadContentType;\n const isKnownSchema = (() => {\n const struct = unionSchema.getSchema();\n return struct[4].includes(unionMember);\n })();\n const additionalHeaders = {};\n if (!isKnownSchema) {\n const [type, value] = event[unionMember];\n eventType = type;\n serializer.write(15, value);\n }\n else {\n const eventSchema = unionSchema.getMemberSchema(unionMember);\n if (eventSchema.isStructSchema()) {\n for (const [memberName, memberSchema] of eventSchema.structIterator()) {\n const { eventHeader, eventPayload } = memberSchema.getMergedTraits();\n if (eventPayload) {\n explicitPayloadMember = memberName;\n }\n else if (eventHeader) {\n const value = event[unionMember][memberName];\n let type = \"binary\";\n if (memberSchema.isNumericSchema()) {\n if ((-2) ** 31 <= value && value <= 2 ** 31 - 1) {\n type = \"integer\";\n }\n else {\n type = \"long\";\n }\n }\n else if (memberSchema.isTimestampSchema()) {\n type = \"timestamp\";\n }\n else if (memberSchema.isStringSchema()) {\n type = \"string\";\n }\n else if (memberSchema.isBooleanSchema()) {\n type = \"boolean\";\n }\n if (value != null) {\n additionalHeaders[memberName] = {\n type,\n value,\n };\n delete event[unionMember][memberName];\n }\n }\n }\n if (explicitPayloadMember !== null) {\n const payloadSchema = eventSchema.getMemberSchema(explicitPayloadMember);\n if (payloadSchema.isBlobSchema()) {\n explicitPayloadContentType = \"application/octet-stream\";\n }\n else if (payloadSchema.isStringSchema()) {\n explicitPayloadContentType = \"text/plain\";\n }\n serializer.write(payloadSchema, event[unionMember][explicitPayloadMember]);\n }\n else {\n serializer.write(eventSchema, event[unionMember]);\n }\n }\n else if (eventSchema.isUnitSchema()) {\n serializer.write(eventSchema, {});\n }\n else {\n throw new Error(\"@smithy/core/event-streams - non-struct member not supported in event stream union.\");\n }\n }\n const messageSerialization = serializer.flush() ?? new Uint8Array();\n const body = typeof messageSerialization === \"string\"\n ? (this.serdeContext?.utf8Decoder ?? fromUtf8)(messageSerialization)\n : messageSerialization;\n return {\n body,\n eventType,\n explicitPayloadContentType,\n additionalHeaders,\n };\n }\n}\n", "export { EventStreamCodec } from \"./eventstream-codec/EventStreamCodec\";\nexport { HeaderMarshaller } from \"./eventstream-codec/HeaderMarshaller\";\nexport { Int64 } from \"./eventstream-codec/Int64\";\nexport { MessageDecoderStream } from \"./eventstream-codec/MessageDecoderStream\";\nexport { MessageEncoderStream } from \"./eventstream-codec/MessageEncoderStream\";\nexport { SmithyMessageDecoderStream } from \"./eventstream-codec/SmithyMessageDecoderStream\";\nexport { SmithyMessageEncoderStream } from \"./eventstream-codec/SmithyMessageEncoderStream\";\nexport { EventStreamMarshaller, eventStreamSerdeProvider } from \"./eventstream-serde/EventStreamMarshaller\";\nexport { readableStreamToIterable, iterableToReadableStream } from \"./eventstream-serde/utils\";\nexport { EventStreamMarshaller as UniversalEventStreamMarshaller, eventStreamSerdeProvider as universalEventStreamSerdeProvider, } from \"./eventstream-serde-universal/EventStreamMarshaller\";\nexport { getChunkedStream } from \"./eventstream-serde-universal/getChunkedStream\";\nexport { getUnmarshalledStream, getMessageUnmarshaller } from \"./eventstream-serde-universal/getUnmarshalledStream\";\nexport { resolveEventStreamSerdeConfig } from \"./eventstream-serde-config-resolver/EventStreamSerdeConfig\";\nexport { EventStreamSerde } from \"./EventStreamSerde\";\n", "import { NormalizedSchema, TypeRegistry, translateTraits } from \"@smithy/core/schema\";\nimport { SerdeContext } from \"./SerdeContext\";\nimport { HttpRequest } from \"./protocol-http/httpRequest\";\nimport { HttpResponse } from \"./protocol-http/httpResponse\";\nexport class HttpProtocol extends SerdeContext {\n options;\n compositeErrorRegistry;\n constructor(options) {\n super();\n this.options = options;\n this.compositeErrorRegistry = TypeRegistry.for(options.defaultNamespace);\n for (const etr of options.errorTypeRegistries ?? []) {\n this.compositeErrorRegistry.copyFrom(etr);\n }\n }\n getRequestType() {\n return HttpRequest;\n }\n getResponseType() {\n return HttpResponse;\n }\n setSerdeContext(serdeContext) {\n this.serdeContext = serdeContext;\n this.serializer.setSerdeContext(serdeContext);\n this.deserializer.setSerdeContext(serdeContext);\n if (this.getPayloadCodec()) {\n this.getPayloadCodec().setSerdeContext(serdeContext);\n }\n }\n updateServiceEndpoint(request, endpoint) {\n if (\"url\" in endpoint) {\n request.protocol = endpoint.url.protocol;\n request.hostname = endpoint.url.hostname;\n request.port = endpoint.url.port ? Number(endpoint.url.port) : undefined;\n request.path = endpoint.url.pathname;\n request.fragment = endpoint.url.hash || void 0;\n request.username = endpoint.url.username || void 0;\n request.password = endpoint.url.password || void 0;\n if (!request.query) {\n request.query = {};\n }\n for (const [k, v] of endpoint.url.searchParams.entries()) {\n request.query[k] = v;\n }\n if (endpoint.headers) {\n for (const name in endpoint.headers) {\n request.headers[name] = endpoint.headers[name].join(\", \");\n }\n }\n return request;\n }\n else {\n request.protocol = endpoint.protocol;\n request.hostname = endpoint.hostname;\n request.port = endpoint.port ? Number(endpoint.port) : undefined;\n request.path = endpoint.path;\n request.query = {\n ...endpoint.query,\n };\n if (endpoint.headers) {\n for (const name in endpoint.headers) {\n request.headers[name] = endpoint.headers[name];\n }\n }\n return request;\n }\n }\n setHostPrefix(request, operationSchema, input) {\n if (this.serdeContext?.disableHostPrefix) {\n return;\n }\n const inputNs = NormalizedSchema.of(operationSchema.input);\n const opTraits = translateTraits(operationSchema.traits ?? {});\n if (opTraits.endpoint) {\n let hostPrefix = opTraits.endpoint?.[0];\n if (typeof hostPrefix === \"string\") {\n for (const [name, member] of inputNs.structIterator()) {\n if (!member.getMergedTraits().hostLabel) {\n continue;\n }\n const replacement = input[name];\n if (typeof replacement !== \"string\") {\n throw new Error(`@smithy/core/schema - ${name} in input must be a string as hostLabel.`);\n }\n hostPrefix = hostPrefix.replace(`{${name}}`, replacement);\n }\n request.hostname = hostPrefix + request.hostname;\n }\n }\n }\n deserializeMetadata(output) {\n return {\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n };\n }\n async serializeEventStream({ eventStream, requestSchema, initialRequest, }) {\n const eventStreamSerde = await this.loadEventStreamCapability();\n return eventStreamSerde.serializeEventStream({\n eventStream,\n requestSchema,\n initialRequest,\n });\n }\n async deserializeEventStream({ response, responseSchema, initialResponseContainer, }) {\n const eventStreamSerde = await this.loadEventStreamCapability();\n return eventStreamSerde.deserializeEventStream({\n response,\n responseSchema,\n initialResponseContainer,\n });\n }\n async loadEventStreamCapability() {\n const { EventStreamSerde } = await import(\"@smithy/core/event-streams\");\n return new EventStreamSerde({\n marshaller: this.getEventStreamMarshaller(),\n serializer: this.serializer,\n deserializer: this.deserializer,\n serdeContext: this.serdeContext,\n defaultContentType: this.getDefaultContentType(),\n });\n }\n getDefaultContentType() {\n throw new Error(`@smithy/core/protocols - ${this.constructor.name} getDefaultContentType() implementation missing.`);\n }\n async deserializeHttpMessage(schema, context, response, arg4, arg5) {\n void schema;\n void context;\n void response;\n void arg4;\n void arg5;\n return [];\n }\n getEventStreamMarshaller() {\n const context = this.serdeContext;\n if (!context.eventStreamMarshaller) {\n throw new Error(\"@smithy/core - HttpProtocol: eventStreamMarshaller missing in serdeContext.\");\n }\n return context.eventStreamMarshaller;\n }\n}\n", "import { NormalizedSchema, translateTraits } from \"@smithy/core/schema\";\nimport { sdkStreamMixin, splitEvery, splitHeader } from \"@smithy/core/serde\";\nimport { HttpProtocol } from \"./HttpProtocol\";\nimport { collectBody } from \"./collect-stream-body\";\nimport { extendedEncodeURIComponent } from \"./extended-encode-uri-component\";\nimport { HttpRequest } from \"./protocol-http/httpRequest\";\nexport class HttpBindingProtocol extends HttpProtocol {\n async serializeRequest(operationSchema, _input, context) {\n const input = _input && typeof _input === \"object\" ? _input : {};\n const serializer = this.serializer;\n const query = {};\n const headers = {};\n const endpoint = await context.endpoint();\n const ns = NormalizedSchema.of(operationSchema?.input);\n const payloadMemberNames = [];\n const payloadMemberSchemas = [];\n let hasNonHttpBindingMember = false;\n let payload;\n const request = new HttpRequest({\n protocol: \"\",\n hostname: \"\",\n port: undefined,\n path: \"\",\n fragment: undefined,\n query: query,\n headers: headers,\n body: undefined,\n });\n if (endpoint) {\n this.updateServiceEndpoint(request, endpoint);\n this.setHostPrefix(request, operationSchema, input);\n const opTraits = translateTraits(operationSchema.traits);\n if (opTraits.http) {\n request.method = opTraits.http[0];\n const [path, search] = opTraits.http[1].split(\"?\");\n if (request.path == \"/\") {\n request.path = path;\n }\n else {\n request.path += path;\n }\n const traitSearchParams = new URLSearchParams(search ?? \"\");\n for (const [key, value] of traitSearchParams) {\n query[key] = value;\n }\n }\n }\n for (const [memberName, memberNs] of ns.structIterator()) {\n const memberTraits = memberNs.getMergedTraits() ?? {};\n const inputMemberValue = input[memberName];\n if (inputMemberValue == null && !memberNs.isIdempotencyToken()) {\n if (memberTraits.httpLabel) {\n if (request.path.includes(`{${memberName}+}`) || request.path.includes(`{${memberName}}`)) {\n throw new Error(`No value provided for input HTTP label: ${memberName}.`);\n }\n }\n continue;\n }\n if (memberTraits.httpPayload) {\n const isStreaming = memberNs.isStreaming();\n if (isStreaming) {\n const isEventStream = memberNs.isStructSchema();\n if (isEventStream) {\n if (input[memberName]) {\n payload = await this.serializeEventStream({\n eventStream: input[memberName],\n requestSchema: ns,\n });\n }\n }\n else {\n payload = inputMemberValue;\n }\n }\n else {\n serializer.write(memberNs, inputMemberValue);\n payload = serializer.flush();\n }\n }\n else if (memberTraits.httpLabel) {\n serializer.write(memberNs, inputMemberValue);\n const replacement = serializer.flush();\n if (request.path.includes(`{${memberName}+}`)) {\n request.path = request.path.replace(`{${memberName}+}`, replacement.split(\"/\").map(extendedEncodeURIComponent).join(\"/\"));\n }\n else if (request.path.includes(`{${memberName}}`)) {\n request.path = request.path.replace(`{${memberName}}`, extendedEncodeURIComponent(replacement));\n }\n }\n else if (memberTraits.httpHeader) {\n serializer.write(memberNs, inputMemberValue);\n headers[memberTraits.httpHeader.toLowerCase()] = String(serializer.flush());\n }\n else if (typeof memberTraits.httpPrefixHeaders === \"string\") {\n for (const key in inputMemberValue) {\n const val = inputMemberValue[key];\n const amalgam = memberTraits.httpPrefixHeaders + key;\n serializer.write([memberNs.getValueSchema(), { httpHeader: amalgam }], val);\n headers[amalgam.toLowerCase()] = serializer.flush();\n }\n }\n else if (memberTraits.httpQuery || memberTraits.httpQueryParams) {\n this.serializeQuery(memberNs, inputMemberValue, query);\n }\n else {\n hasNonHttpBindingMember = true;\n payloadMemberNames.push(memberName);\n payloadMemberSchemas.push(memberNs);\n }\n }\n if (hasNonHttpBindingMember && input) {\n const [namespace, name] = (ns.getName(true) ?? \"#Unknown\").split(\"#\");\n const requiredMembers = ns.getSchema()[6];\n const payloadSchema = [\n 3,\n namespace,\n name,\n ns.getMergedTraits(),\n payloadMemberNames,\n payloadMemberSchemas,\n undefined,\n ];\n if (requiredMembers) {\n payloadSchema[6] = requiredMembers;\n }\n else {\n payloadSchema.pop();\n }\n serializer.write(payloadSchema, input);\n payload = serializer.flush();\n }\n request.headers = headers;\n request.query = query;\n request.body = payload;\n return request;\n }\n serializeQuery(ns, data, query) {\n const serializer = this.serializer;\n const traits = ns.getMergedTraits();\n if (traits.httpQueryParams) {\n for (const key in data) {\n if (!(key in query)) {\n const val = data[key];\n const valueSchema = ns.getValueSchema();\n Object.assign(valueSchema.getMergedTraits(), {\n ...traits,\n httpQuery: key,\n httpQueryParams: undefined,\n });\n this.serializeQuery(valueSchema, val, query);\n }\n }\n return;\n }\n if (ns.isListSchema()) {\n const sparse = !!ns.getMergedTraits().sparse;\n const buffer = [];\n for (const item of data) {\n serializer.write([ns.getValueSchema(), traits], item);\n const serializable = serializer.flush();\n if (sparse || serializable !== undefined) {\n buffer.push(serializable);\n }\n }\n query[traits.httpQuery] = buffer;\n }\n else {\n serializer.write([ns, traits], data);\n query[traits.httpQuery] = serializer.flush();\n }\n }\n async deserializeResponse(operationSchema, context, response) {\n const deserializer = this.deserializer;\n const ns = NormalizedSchema.of(operationSchema.output);\n const dataObject = {};\n if (response.statusCode >= 300) {\n const bytes = await collectBody(response.body, context);\n if (bytes.byteLength > 0) {\n Object.assign(dataObject, await deserializer.read(15, bytes));\n }\n await this.handleError(operationSchema, context, response, dataObject, this.deserializeMetadata(response));\n throw new Error(\"@smithy/core/protocols - HTTP Protocol error handler failed to throw.\");\n }\n for (const header in response.headers) {\n const value = response.headers[header];\n delete response.headers[header];\n response.headers[header.toLowerCase()] = value;\n }\n const nonHttpBindingMembers = await this.deserializeHttpMessage(ns, context, response, dataObject);\n if (nonHttpBindingMembers.length) {\n const bytes = await collectBody(response.body, context);\n if (bytes.byteLength > 0) {\n const dataFromBody = await deserializer.read(ns, bytes);\n for (const member of nonHttpBindingMembers) {\n if (dataFromBody[member] != null) {\n dataObject[member] = dataFromBody[member];\n }\n }\n }\n }\n else if (nonHttpBindingMembers.discardResponseBody) {\n await collectBody(response.body, context);\n }\n dataObject.$metadata = this.deserializeMetadata(response);\n return dataObject;\n }\n async deserializeHttpMessage(schema, context, response, arg4, arg5) {\n let dataObject;\n if (arg4 instanceof Set) {\n dataObject = arg5;\n }\n else {\n dataObject = arg4;\n }\n let discardResponseBody = true;\n const deserializer = this.deserializer;\n const ns = NormalizedSchema.of(schema);\n const nonHttpBindingMembers = [];\n for (const [memberName, memberSchema] of ns.structIterator()) {\n const memberTraits = memberSchema.getMemberTraits();\n if (memberTraits.httpPayload) {\n discardResponseBody = false;\n const isStreaming = memberSchema.isStreaming();\n if (isStreaming) {\n const isEventStream = memberSchema.isStructSchema();\n if (isEventStream) {\n dataObject[memberName] = await this.deserializeEventStream({\n response,\n responseSchema: ns,\n });\n }\n else {\n dataObject[memberName] = sdkStreamMixin(response.body);\n }\n }\n else if (response.body) {\n const bytes = await collectBody(response.body, context);\n if (bytes.byteLength > 0) {\n dataObject[memberName] = await deserializer.read(memberSchema, bytes);\n }\n }\n }\n else if (memberTraits.httpHeader) {\n const key = String(memberTraits.httpHeader).toLowerCase();\n const value = response.headers[key];\n if (null != value) {\n if (memberSchema.isListSchema()) {\n const headerListValueSchema = memberSchema.getValueSchema();\n headerListValueSchema.getMergedTraits().httpHeader = key;\n let sections;\n if (headerListValueSchema.isTimestampSchema() &&\n headerListValueSchema.getSchema() === 4) {\n sections = splitEvery(value, \",\", 2);\n }\n else {\n sections = splitHeader(value);\n }\n const list = [];\n for (const section of sections) {\n list.push(await deserializer.read(headerListValueSchema, section.trim()));\n }\n dataObject[memberName] = list;\n }\n else {\n dataObject[memberName] = await deserializer.read(memberSchema, value);\n }\n }\n }\n else if (memberTraits.httpPrefixHeaders !== undefined) {\n dataObject[memberName] = {};\n for (const header in response.headers) {\n if (header.startsWith(memberTraits.httpPrefixHeaders)) {\n const value = response.headers[header];\n const valueSchema = memberSchema.getValueSchema();\n valueSchema.getMergedTraits().httpHeader = header;\n dataObject[memberName][header.slice(memberTraits.httpPrefixHeaders.length)] = await deserializer.read(valueSchema, value);\n }\n }\n }\n else if (memberTraits.httpResponseCode) {\n dataObject[memberName] = response.statusCode;\n }\n else {\n nonHttpBindingMembers.push(memberName);\n }\n }\n nonHttpBindingMembers.discardResponseBody = discardResponseBody;\n return nonHttpBindingMembers;\n }\n}\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nimport { HttpProtocol } from \"./HttpProtocol\";\nimport { collectBody } from \"./collect-stream-body\";\nimport { HttpRequest } from \"./protocol-http/httpRequest\";\nexport class RpcProtocol extends HttpProtocol {\n async serializeRequest(operationSchema, _input, context) {\n const serializer = this.serializer;\n const query = {};\n const headers = {};\n const endpoint = await context.endpoint();\n const ns = NormalizedSchema.of(operationSchema?.input);\n const schema = ns.getSchema();\n let payload;\n const input = _input && typeof _input === \"object\" ? _input : {};\n const request = new HttpRequest({\n protocol: \"\",\n hostname: \"\",\n port: undefined,\n path: \"/\",\n fragment: undefined,\n query: query,\n headers: headers,\n body: undefined,\n });\n if (endpoint) {\n this.updateServiceEndpoint(request, endpoint);\n this.setHostPrefix(request, operationSchema, input);\n }\n if (input) {\n const eventStreamMember = ns.getEventStreamMember();\n if (eventStreamMember) {\n if (input[eventStreamMember]) {\n const initialRequest = {};\n for (const [memberName, memberSchema] of ns.structIterator()) {\n if (memberName !== eventStreamMember && input[memberName]) {\n serializer.write(memberSchema, input[memberName]);\n initialRequest[memberName] = serializer.flush();\n }\n }\n payload = await this.serializeEventStream({\n eventStream: input[eventStreamMember],\n requestSchema: ns,\n initialRequest,\n });\n }\n }\n else {\n serializer.write(schema, input);\n payload = serializer.flush();\n }\n }\n request.headers = Object.assign(request.headers, headers);\n request.query = query;\n request.body = payload;\n request.method = \"POST\";\n return request;\n }\n async deserializeResponse(operationSchema, context, response) {\n const deserializer = this.deserializer;\n const ns = NormalizedSchema.of(operationSchema.output);\n const dataObject = {};\n if (response.statusCode >= 300) {\n const bytes = await collectBody(response.body, context);\n if (bytes.byteLength > 0) {\n Object.assign(dataObject, await deserializer.read(15, bytes));\n }\n await this.handleError(operationSchema, context, response, dataObject, this.deserializeMetadata(response));\n throw new Error(\"@smithy/core/protocols - RPC Protocol error handler failed to throw.\");\n }\n for (const header in response.headers) {\n const value = response.headers[header];\n delete response.headers[header];\n response.headers[header.toLowerCase()] = value;\n }\n const eventStreamMember = ns.getEventStreamMember();\n if (eventStreamMember) {\n dataObject[eventStreamMember] = await this.deserializeEventStream({\n response,\n responseSchema: ns,\n initialResponseContainer: dataObject,\n });\n }\n else {\n const bytes = await collectBody(response.body, context);\n if (bytes.byteLength > 0) {\n Object.assign(dataObject, await deserializer.read(ns, bytes));\n }\n }\n dataObject.$metadata = this.deserializeMetadata(response);\n return dataObject;\n }\n}\n", "import { extendedEncodeURIComponent } from \"./extended-encode-uri-component\";\nexport const resolvedPath = (resolvedPath, input, memberName, labelValueProvider, uriLabel, isGreedyLabel) => {\n if (input != null && input[memberName] !== undefined) {\n const labelValue = labelValueProvider();\n if (labelValue == null || labelValue.length <= 0) {\n throw new Error(\"Empty value provided for input HTTP label: \" + memberName + \".\");\n }\n resolvedPath = resolvedPath.replace(uriLabel, isGreedyLabel\n ? labelValue\n .split(\"/\")\n .map((segment) => extendedEncodeURIComponent(segment))\n .join(\"/\")\n : extendedEncodeURIComponent(labelValue));\n }\n else {\n throw new Error(\"No value provided for input HTTP label: \" + memberName + \".\");\n }\n return resolvedPath;\n};\n", "import { HttpRequest } from \"./protocol-http/httpRequest\";\nimport { resolvedPath } from \"./resolve-path\";\nexport function requestBuilder(input, context) {\n return new RequestBuilder(input, context);\n}\nexport class RequestBuilder {\n input;\n context;\n query = {};\n method = \"\";\n headers = {};\n path = \"\";\n body = null;\n hostname = \"\";\n resolvePathStack = [];\n constructor(input, context) {\n this.input = input;\n this.context = context;\n }\n async build() {\n const { hostname, protocol = \"https\", port, path: basePath } = await this.context.endpoint();\n this.path = basePath;\n for (const resolvePath of this.resolvePathStack) {\n resolvePath(this.path);\n }\n return new HttpRequest({\n protocol,\n hostname: this.hostname || hostname,\n port,\n method: this.method,\n path: this.path,\n query: this.query,\n body: this.body,\n headers: this.headers,\n });\n }\n hn(hostname) {\n this.hostname = hostname;\n return this;\n }\n bp(uriLabel) {\n this.resolvePathStack.push((basePath) => {\n this.path = `${basePath?.endsWith(\"/\") ? basePath.slice(0, -1) : basePath || \"\"}` + uriLabel;\n });\n return this;\n }\n p(memberName, labelValueProvider, uriLabel, isGreedyLabel) {\n this.resolvePathStack.push((path) => {\n this.path = resolvedPath(path, this.input, memberName, labelValueProvider, uriLabel, isGreedyLabel);\n });\n return this;\n }\n h(headers) {\n this.headers = headers;\n return this;\n }\n q(query) {\n this.query = query;\n return this;\n }\n b(body) {\n this.body = body;\n return this;\n }\n m(method) {\n this.method = method;\n return this;\n }\n}\n", "export function determineTimestampFormat(ns, settings) {\n if (settings.timestampFormat.useTrait) {\n if (ns.isTimestampSchema() &&\n (ns.getSchema() === 5 ||\n ns.getSchema() === 6 ||\n ns.getSchema() === 7)) {\n return ns.getSchema();\n }\n }\n const { httpLabel, httpPrefixHeaders, httpHeader, httpQuery } = ns.getMergedTraits();\n const bindingFormat = settings.httpBindings\n ? typeof httpPrefixHeaders === \"string\" || Boolean(httpHeader)\n ? 6\n : Boolean(httpQuery) || Boolean(httpLabel)\n ? 5\n : undefined\n : undefined;\n return bindingFormat ?? settings.timestampFormat.default;\n}\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nimport { LazyJsonString, NumericValue, _parseEpochTimestamp, _parseRfc3339DateTimeWithOffset, _parseRfc7231DateTime, fromBase64, splitHeader, toUtf8, } from \"@smithy/core/serde\";\nimport { SerdeContext } from \"../SerdeContext\";\nimport { determineTimestampFormat } from \"./determineTimestampFormat\";\nexport class FromStringShapeDeserializer extends SerdeContext {\n settings;\n constructor(settings) {\n super();\n this.settings = settings;\n }\n read(_schema, data) {\n const ns = NormalizedSchema.of(_schema);\n if (ns.isListSchema()) {\n return splitHeader(data).map((item) => this.read(ns.getValueSchema(), item));\n }\n if (ns.isBlobSchema()) {\n return (this.serdeContext?.base64Decoder ?? fromBase64)(data);\n }\n if (ns.isTimestampSchema()) {\n const format = determineTimestampFormat(ns, this.settings);\n switch (format) {\n case 5:\n return _parseRfc3339DateTimeWithOffset(data);\n case 6:\n return _parseRfc7231DateTime(data);\n case 7:\n return _parseEpochTimestamp(data);\n default:\n console.warn(\"Missing timestamp format, parsing value with Date constructor:\", data);\n return new Date(data);\n }\n }\n if (ns.isStringSchema()) {\n const mediaType = ns.getMergedTraits().mediaType;\n let intermediateValue = data;\n if (mediaType) {\n if (ns.getMergedTraits().httpHeader) {\n intermediateValue = this.base64ToUtf8(intermediateValue);\n }\n const isJson = mediaType === \"application/json\" || mediaType.endsWith(\"+json\");\n if (isJson) {\n intermediateValue = LazyJsonString.from(intermediateValue);\n }\n return intermediateValue;\n }\n }\n if (ns.isNumericSchema()) {\n return Number(data);\n }\n if (ns.isBigIntegerSchema()) {\n return BigInt(data);\n }\n if (ns.isBigDecimalSchema()) {\n return new NumericValue(data, \"bigDecimal\");\n }\n if (ns.isBooleanSchema()) {\n return String(data).toLowerCase() === \"true\";\n }\n return data;\n }\n base64ToUtf8(base64String) {\n return (this.serdeContext?.utf8Encoder ?? toUtf8)((this.serdeContext?.base64Decoder ?? fromBase64)(base64String));\n }\n}\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nimport { fromUtf8, toUtf8 } from \"@smithy/core/serde\";\nimport { SerdeContext } from \"../SerdeContext\";\nimport { FromStringShapeDeserializer } from \"./FromStringShapeDeserializer\";\nexport class HttpInterceptingShapeDeserializer extends SerdeContext {\n codecDeserializer;\n stringDeserializer;\n constructor(codecDeserializer, codecSettings) {\n super();\n this.codecDeserializer = codecDeserializer;\n this.stringDeserializer = new FromStringShapeDeserializer(codecSettings);\n }\n setSerdeContext(serdeContext) {\n this.stringDeserializer.setSerdeContext(serdeContext);\n this.codecDeserializer.setSerdeContext(serdeContext);\n this.serdeContext = serdeContext;\n }\n read(schema, data) {\n const ns = NormalizedSchema.of(schema);\n const traits = ns.getMergedTraits();\n const toString = this.serdeContext?.utf8Encoder ?? toUtf8;\n if (traits.httpHeader || traits.httpResponseCode) {\n return this.stringDeserializer.read(ns, toString(data));\n }\n if (traits.httpPayload) {\n if (ns.isBlobSchema()) {\n const toBytes = this.serdeContext?.utf8Decoder ?? fromUtf8;\n if (typeof data === \"string\") {\n return toBytes(data);\n }\n return data;\n }\n else if (ns.isStringSchema()) {\n if (\"byteLength\" in data) {\n return toString(data);\n }\n return data;\n }\n }\n return this.codecDeserializer.read(ns, data);\n }\n}\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nimport { LazyJsonString, dateToUtcString, generateIdempotencyToken, quoteHeader, toBase64 } from \"@smithy/core/serde\";\nimport { SerdeContext } from \"../SerdeContext\";\nimport { determineTimestampFormat } from \"./determineTimestampFormat\";\nexport class ToStringShapeSerializer extends SerdeContext {\n settings;\n stringBuffer = \"\";\n constructor(settings) {\n super();\n this.settings = settings;\n }\n write(schema, value) {\n const ns = NormalizedSchema.of(schema);\n switch (typeof value) {\n case \"object\":\n if (value === null) {\n this.stringBuffer = \"null\";\n return;\n }\n if (ns.isTimestampSchema()) {\n if (!(value instanceof Date)) {\n throw new Error(`@smithy/core/protocols - received non-Date value ${value} when schema expected Date in ${ns.getName(true)}`);\n }\n const format = determineTimestampFormat(ns, this.settings);\n switch (format) {\n case 5:\n this.stringBuffer = value.toISOString().replace(\".000Z\", \"Z\");\n break;\n case 6:\n this.stringBuffer = dateToUtcString(value);\n break;\n case 7:\n this.stringBuffer = String(value.getTime() / 1000);\n break;\n default:\n console.warn(\"Missing timestamp format, using epoch seconds\", value);\n this.stringBuffer = String(value.getTime() / 1000);\n }\n return;\n }\n if (ns.isBlobSchema() && \"byteLength\" in value) {\n this.stringBuffer = (this.serdeContext?.base64Encoder ?? toBase64)(value);\n return;\n }\n if (ns.isListSchema() && Array.isArray(value)) {\n let buffer = \"\";\n for (const item of value) {\n this.write([ns.getValueSchema(), ns.getMergedTraits()], item);\n const headerItem = this.flush();\n const serialized = ns.getValueSchema().isTimestampSchema() ? headerItem : quoteHeader(headerItem);\n if (buffer !== \"\") {\n buffer += \", \";\n }\n buffer += serialized;\n }\n this.stringBuffer = buffer;\n return;\n }\n this.stringBuffer = JSON.stringify(value, null, 2);\n break;\n case \"string\":\n const mediaType = ns.getMergedTraits().mediaType;\n let intermediateValue = value;\n if (mediaType) {\n const isJson = mediaType === \"application/json\" || mediaType.endsWith(\"+json\");\n if (isJson) {\n intermediateValue = LazyJsonString.from(intermediateValue);\n }\n if (ns.getMergedTraits().httpHeader) {\n this.stringBuffer = (this.serdeContext?.base64Encoder ?? toBase64)(intermediateValue.toString());\n return;\n }\n }\n this.stringBuffer = value;\n break;\n default:\n if (ns.isIdempotencyToken()) {\n this.stringBuffer = generateIdempotencyToken();\n }\n else {\n this.stringBuffer = String(value);\n }\n }\n }\n flush() {\n const buffer = this.stringBuffer;\n this.stringBuffer = \"\";\n return buffer;\n }\n}\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nimport { ToStringShapeSerializer } from \"./ToStringShapeSerializer\";\nexport class HttpInterceptingShapeSerializer {\n codecSerializer;\n stringSerializer;\n buffer;\n constructor(codecSerializer, codecSettings, stringSerializer = new ToStringShapeSerializer(codecSettings)) {\n this.codecSerializer = codecSerializer;\n this.stringSerializer = stringSerializer;\n }\n setSerdeContext(serdeContext) {\n this.codecSerializer.setSerdeContext(serdeContext);\n this.stringSerializer.setSerdeContext(serdeContext);\n }\n write(schema, value) {\n const ns = NormalizedSchema.of(schema);\n const traits = ns.getMergedTraits();\n if (traits.httpHeader || traits.httpLabel || traits.httpQuery) {\n this.stringSerializer.write(ns, value);\n this.buffer = this.stringSerializer.flush();\n return;\n }\n return this.codecSerializer.write(ns, value);\n }\n flush() {\n if (this.buffer !== undefined) {\n const buffer = this.buffer;\n this.buffer = undefined;\n return buffer;\n }\n return this.codecSerializer.flush();\n }\n}\n", "import { FieldPosition } from \"@smithy/types\";\nexport class Field {\n name;\n kind;\n values;\n constructor({ name, kind = FieldPosition.HEADER, values = [] }) {\n this.name = name;\n this.kind = kind;\n this.values = values;\n }\n add(value) {\n this.values.push(value);\n }\n set(values) {\n this.values = values;\n }\n remove(value) {\n this.values = this.values.filter((v) => v !== value);\n }\n toString() {\n return this.values.map((v) => (v.includes(\",\") || v.includes(\" \") ? `\"${v}\"` : v)).join(\", \");\n }\n get() {\n return this.values;\n }\n}\n", "export class Fields {\n entries = {};\n encoding;\n constructor({ fields = [], encoding = \"utf-8\" }) {\n fields.forEach(this.setField.bind(this));\n this.encoding = encoding;\n }\n setField(field) {\n this.entries[field.name.toLowerCase()] = field;\n }\n getField(name) {\n return this.entries[name.toLowerCase()];\n }\n removeField(name) {\n delete this.entries[name.toLowerCase()];\n }\n getByType(kind) {\n return Object.values(this.entries).filter((field) => field.kind === kind);\n }\n}\n", "export function isValidHostname(hostname) {\n const hostPattern = /^[a-z0-9][a-z0-9\\.\\-]*[a-z0-9]$/;\n return hostPattern.test(hostname);\n}\n", "export const getHttpHandlerExtensionConfiguration = (runtimeConfig) => {\n return {\n setHttpHandler(handler) {\n runtimeConfig.httpHandler = handler;\n },\n httpHandler() {\n return runtimeConfig.httpHandler;\n },\n updateHttpClientConfig(key, value) {\n runtimeConfig.httpHandler?.updateHttpClientConfig(key, value);\n },\n httpHandlerConfigs() {\n return runtimeConfig.httpHandler.httpHandlerConfigs();\n },\n };\n};\nexport const resolveHttpHandlerRuntimeConfig = (httpHandlerExtensionConfiguration) => {\n return {\n httpHandler: httpHandlerExtensionConfiguration.httpHandler(),\n };\n};\n", "import { HttpRequest } from \"../protocol-http/httpRequest\";\nconst CONTENT_LENGTH_HEADER = \"content-length\";\nexport function contentLengthMiddleware(bodyLengthChecker) {\n return (next) => async (args) => {\n const request = args.request;\n if (HttpRequest.isInstance(request)) {\n const { body, headers } = request;\n if (body &&\n Object.keys(headers)\n .map((str) => str.toLowerCase())\n .indexOf(CONTENT_LENGTH_HEADER) === -1) {\n try {\n const length = bodyLengthChecker(body);\n request.headers = {\n ...request.headers,\n [CONTENT_LENGTH_HEADER]: String(length),\n };\n }\n catch (error) {\n }\n }\n }\n return next({\n ...args,\n request,\n });\n };\n}\nexport const contentLengthMiddlewareOptions = {\n step: \"build\",\n tags: [\"SET_CONTENT_LENGTH\", \"CONTENT_LENGTH\"],\n name: \"contentLengthMiddleware\",\n override: true,\n};\nexport const getContentLengthPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(contentLengthMiddleware(options.bodyLengthChecker), contentLengthMiddlewareOptions);\n },\n});\n", "export const escapeUri = (uri) => encodeURIComponent(uri).replace(/[!'()*]/g, hexEncode);\nconst hexEncode = (c) => `%${c.charCodeAt(0).toString(16).toUpperCase()}`;\n", "import { escapeUri } from \"./escape-uri\";\nexport const escapeUriPath = (uri) => uri.split(\"/\").map(escapeUri).join(\"/\");\n", "import { escapeUri } from \"../util-uri-escape/escape-uri\";\nexport function buildQueryString(query) {\n const parts = [];\n for (let key of Object.keys(query).sort()) {\n const value = query[key];\n key = escapeUri(key);\n if (Array.isArray(value)) {\n for (let i = 0, iLen = value.length; i < iLen; i++) {\n parts.push(`${key}=${escapeUri(value[i])}`);\n }\n }\n else {\n let qsEntry = key;\n if (value || typeof value === \"string\") {\n qsEntry += `=${escapeUri(value)}`;\n }\n parts.push(qsEntry);\n }\n }\n return parts.join(\"&\");\n}\n", "export function parseQueryString(querystring) {\n const query = {};\n querystring = querystring.replace(/^\\?/, \"\");\n if (querystring) {\n for (const pair of querystring.split(\"&\")) {\n let [key, value = null] = pair.split(\"=\");\n key = decodeURIComponent(key);\n if (value) {\n value = decodeURIComponent(value);\n }\n if (!(key in query)) {\n query[key] = value;\n }\n else if (Array.isArray(query[key])) {\n query[key].push(value);\n }\n else {\n query[key] = [query[key], value];\n }\n }\n }\n return query;\n}\n", "import { parseQueryString } from \"../querystring-parser/parseQueryString\";\nexport const parseUrl = (url) => {\n if (typeof url === \"string\") {\n return parseUrl(new URL(url));\n }\n const { hostname, pathname, port, protocol, search } = url;\n let query;\n if (search) {\n query = parseQueryString(search);\n }\n return {\n hostname,\n port: port ? parseInt(port) : undefined,\n protocol,\n path: pathname,\n query,\n };\n};\n", "export * from \"./collect-stream-body\";\nexport * from \"./extended-encode-uri-component\";\nexport * from \"./HttpBindingProtocol\";\nexport * from \"./HttpProtocol\";\nexport * from \"./RpcProtocol\";\nexport * from \"./requestBuilder\";\nexport * from \"./resolve-path\";\nexport * from \"./serde/FromStringShapeDeserializer\";\nexport * from \"./serde/HttpInterceptingShapeDeserializer\";\nexport * from \"./serde/HttpInterceptingShapeSerializer\";\nexport * from \"./serde/ToStringShapeSerializer\";\nexport * from \"./serde/determineTimestampFormat\";\nexport * from \"./SerdeContext\";\nexport { Field } from \"./protocol-http/Field\";\nexport { Fields } from \"./protocol-http/Fields\";\nexport { HttpRequest } from \"./protocol-http/httpRequest\";\nexport { HttpResponse } from \"./protocol-http/httpResponse\";\nexport { isValidHostname } from \"./protocol-http/isValidHostname\";\nexport { getHttpHandlerExtensionConfiguration, resolveHttpHandlerRuntimeConfig, } from \"./protocol-http/extensions/httpExtensionConfiguration\";\nexport { contentLengthMiddleware, contentLengthMiddlewareOptions, getContentLengthPlugin, } from \"./middleware-content-length/contentLengthMiddleware\";\nexport { escapeUri } from \"./util-uri-escape/escape-uri\";\nexport { escapeUriPath } from \"./util-uri-escape/escape-uri-path\";\nexport { buildQueryString } from \"./querystring-builder/buildQueryString\";\nexport { parseQueryString } from \"./querystring-parser/parseQueryString\";\nexport { parseUrl } from \"./url-parser/parseUrl\";\n", "export const operation = (namespace, name, traits, input, output) => ({\n name,\n namespace,\n traits,\n input,\n output,\n});\n", "import { getSmithyContext } from \"@smithy/core/client\";\nimport { HttpResponse } from \"@smithy/core/protocols\";\nimport { operation } from \"../schemas/operation\";\nexport const schemaDeserializationMiddleware = (config) => (next, context) => async (args) => {\n const { response } = await next(args);\n const { operationSchema } = getSmithyContext(context);\n const [, ns, n, t, i, o] = operationSchema ?? [];\n try {\n const parsed = await config.protocol.deserializeResponse(operation(ns, n, t, i, o), {\n ...config,\n ...context,\n }, response);\n return {\n response,\n output: parsed,\n };\n }\n catch (error) {\n Object.defineProperty(error, \"$response\", {\n value: response,\n enumerable: false,\n writable: false,\n configurable: false,\n });\n if (!(\"$metadata\" in error)) {\n const hint = `Deserialization error: to see the raw response, inspect the hidden field {error}.$response on this object.`;\n try {\n error.message += \"\\n \" + hint;\n }\n catch (e) {\n if (!context.logger || context.logger?.constructor?.name === \"NoOpLogger\") {\n console.warn(hint);\n }\n else {\n context.logger?.warn?.(hint);\n }\n }\n if (typeof error.$responseBodyText !== \"undefined\") {\n if (error.$response) {\n error.$response.body = error.$responseBodyText;\n }\n }\n try {\n if (HttpResponse.isInstance(response)) {\n const { headers = {} } = response;\n const headerEntries = Object.entries(headers);\n error.$metadata = {\n httpStatusCode: response.statusCode,\n requestId: findHeader(/^x-[\\w-]+-request-?id$/, headerEntries),\n extendedRequestId: findHeader(/^x-[\\w-]+-id-2$/, headerEntries),\n cfId: findHeader(/^x-[\\w-]+-cf-id$/, headerEntries),\n };\n }\n }\n catch (e) {\n }\n }\n throw error;\n }\n};\nconst findHeader = (pattern, headers) => {\n return (headers.find(([k]) => {\n return k.match(pattern);\n }) || [void 0, void 1])[1];\n};\n", "import { getSmithyContext } from \"@smithy/core/client\";\nimport { toEndpointV1 } from \"@smithy/core/endpoints\";\nimport { operation } from \"../schemas/operation\";\nexport const schemaSerializationMiddleware = (config) => (next, context) => async (args) => {\n const { operationSchema } = getSmithyContext(context);\n const [, ns, n, t, i, o] = operationSchema ?? [];\n const endpoint = context.endpointV2\n ? async () => toEndpointV1(context.endpointV2)\n : config.endpoint;\n const request = await config.protocol.serializeRequest(operation(ns, n, t, i, o), args.input, {\n ...config,\n ...context,\n endpoint,\n });\n return next({\n ...args,\n request,\n });\n};\n", "import { schemaDeserializationMiddleware } from \"./schemaDeserializationMiddleware\";\nimport { schemaSerializationMiddleware } from \"./schemaSerializationMiddleware\";\nexport const deserializerMiddlewareOption = {\n name: \"deserializerMiddleware\",\n step: \"deserialize\",\n tags: [\"DESERIALIZER\"],\n override: true,\n};\nexport const serializerMiddlewareOption = {\n name: \"serializerMiddleware\",\n step: \"serialize\",\n tags: [\"SERIALIZER\"],\n override: true,\n};\nexport function getSchemaSerdePlugin(config) {\n return {\n applyToStack: (commandStack) => {\n commandStack.add(schemaSerializationMiddleware(config), serializerMiddlewareOption);\n commandStack.add(schemaDeserializationMiddleware(config), deserializerMiddlewareOption);\n config.protocol.setSerdeContext(config);\n },\n };\n}\n", "export class Schema {\n name;\n namespace;\n traits;\n static assign(instance, values) {\n const schema = Object.assign(instance, values);\n return schema;\n }\n static [Symbol.hasInstance](lhs) {\n const isPrototype = this.prototype.isPrototypeOf(lhs);\n if (!isPrototype && typeof lhs === \"object\" && lhs !== null) {\n const list = lhs;\n return list.symbol === this.symbol;\n }\n return isPrototype;\n }\n getName() {\n return this.namespace + \"#\" + this.name;\n }\n}\n", "import { Schema } from \"./Schema\";\nexport class ListSchema extends Schema {\n static symbol = Symbol.for(\"@smithy/lis\");\n name;\n traits;\n valueSchema;\n symbol = ListSchema.symbol;\n}\nexport const list = (namespace, name, traits, valueSchema) => Schema.assign(new ListSchema(), {\n name,\n namespace,\n traits,\n valueSchema,\n});\n", "import { Schema } from \"./Schema\";\nexport class MapSchema extends Schema {\n static symbol = Symbol.for(\"@smithy/map\");\n name;\n traits;\n keySchema;\n valueSchema;\n symbol = MapSchema.symbol;\n}\nexport const map = (namespace, name, traits, keySchema, valueSchema) => Schema.assign(new MapSchema(), {\n name,\n namespace,\n traits,\n keySchema,\n valueSchema,\n});\n", "import { Schema } from \"./Schema\";\nexport class OperationSchema extends Schema {\n static symbol = Symbol.for(\"@smithy/ope\");\n name;\n traits;\n input;\n output;\n symbol = OperationSchema.symbol;\n}\nexport const op = (namespace, name, traits, input, output) => Schema.assign(new OperationSchema(), {\n name,\n namespace,\n traits,\n input,\n output,\n});\n", "import { Schema } from \"./Schema\";\nexport class StructureSchema extends Schema {\n static symbol = Symbol.for(\"@smithy/str\");\n name;\n traits;\n memberNames;\n memberList;\n symbol = StructureSchema.symbol;\n}\nexport const struct = (namespace, name, traits, memberNames, memberList) => Schema.assign(new StructureSchema(), {\n name,\n namespace,\n traits,\n memberNames,\n memberList,\n});\n", "import { Schema } from \"./Schema\";\nimport { StructureSchema } from \"./StructureSchema\";\nexport class ErrorSchema extends StructureSchema {\n static symbol = Symbol.for(\"@smithy/err\");\n ctor;\n symbol = ErrorSchema.symbol;\n}\nexport const error = (namespace, name, traits, memberNames, memberList, ctor) => Schema.assign(new ErrorSchema(), {\n name,\n namespace,\n traits,\n memberNames,\n memberList,\n ctor: null,\n});\n", "export const traitsCache = [];\nexport function translateTraits(indicator) {\n if (typeof indicator === \"object\") {\n return indicator;\n }\n indicator = indicator | 0;\n if (traitsCache[indicator]) {\n return traitsCache[indicator];\n }\n const traits = {};\n let i = 0;\n for (const trait of [\n \"httpLabel\",\n \"idempotent\",\n \"idempotencyToken\",\n \"sensitive\",\n \"httpPayload\",\n \"httpResponseCode\",\n \"httpQueryParams\",\n ]) {\n if (((indicator >> i++) & 1) === 1) {\n traits[trait] = 1;\n }\n }\n return (traitsCache[indicator] = traits);\n}\n", "import { deref } from \"../deref\";\nimport { translateTraits } from \"./translateTraits\";\nconst anno = {\n it: Symbol.for(\"@smithy/nor-struct-it\"),\n ns: Symbol.for(\"@smithy/ns\"),\n};\nexport const simpleSchemaCacheN = [];\nexport const simpleSchemaCacheS = {};\nexport class NormalizedSchema {\n ref;\n memberName;\n static symbol = Symbol.for(\"@smithy/nor\");\n symbol = NormalizedSchema.symbol;\n name;\n schema;\n _isMemberSchema;\n traits;\n memberTraits;\n normalizedTraits;\n constructor(ref, memberName) {\n this.ref = ref;\n this.memberName = memberName;\n const traitStack = [];\n let _ref = ref;\n let schema = ref;\n this._isMemberSchema = false;\n while (isMemberSchema(_ref)) {\n traitStack.push(_ref[1]);\n _ref = _ref[0];\n schema = deref(_ref);\n this._isMemberSchema = true;\n }\n if (traitStack.length > 0) {\n this.memberTraits = {};\n for (let i = traitStack.length - 1; i >= 0; --i) {\n const traitSet = traitStack[i];\n Object.assign(this.memberTraits, translateTraits(traitSet));\n }\n }\n else {\n this.memberTraits = 0;\n }\n if (schema instanceof NormalizedSchema) {\n const computedMemberTraits = this.memberTraits;\n Object.assign(this, schema);\n this.memberTraits = Object.assign({}, computedMemberTraits, schema.getMemberTraits(), this.getMemberTraits());\n this.normalizedTraits = void 0;\n this.memberName = memberName ?? schema.memberName;\n return;\n }\n this.schema = deref(schema);\n if (isStaticSchema(this.schema)) {\n this.name = `${this.schema[1]}#${this.schema[2]}`;\n this.traits = this.schema[3];\n }\n else {\n this.name = this.memberName ?? String(schema);\n this.traits = 0;\n }\n if (this._isMemberSchema && !memberName) {\n throw new Error(`@smithy/core/schema - NormalizedSchema member init ${this.getName(true)} missing member name.`);\n }\n }\n static [Symbol.hasInstance](lhs) {\n const isPrototype = this.prototype.isPrototypeOf(lhs);\n if (!isPrototype && typeof lhs === \"object\" && lhs !== null) {\n const ns = lhs;\n return ns.symbol === this.symbol;\n }\n return isPrototype;\n }\n static of(ref) {\n const keyAble = typeof ref === \"function\" || (typeof ref === \"object\" && ref !== null);\n if (typeof ref === \"number\") {\n if (simpleSchemaCacheN[ref]) {\n return simpleSchemaCacheN[ref];\n }\n }\n else if (typeof ref === \"string\") {\n if (simpleSchemaCacheS[ref]) {\n return simpleSchemaCacheS[ref];\n }\n }\n else if (keyAble) {\n if (ref[anno.ns]) {\n return ref[anno.ns];\n }\n }\n const sc = deref(ref);\n if (sc instanceof NormalizedSchema) {\n return sc;\n }\n if (isMemberSchema(sc)) {\n const [ns, traits] = sc;\n if (ns instanceof NormalizedSchema) {\n Object.assign(ns.getMergedTraits(), translateTraits(traits));\n return ns;\n }\n throw new Error(`@smithy/core/schema - may not init unwrapped member schema=${JSON.stringify(ref, null, 2)}.`);\n }\n const ns = new NormalizedSchema(sc);\n if (keyAble) {\n return (ref[anno.ns] = ns);\n }\n if (typeof sc === \"string\") {\n return (simpleSchemaCacheS[sc] = ns);\n }\n if (typeof sc === \"number\") {\n return (simpleSchemaCacheN[sc] = ns);\n }\n return ns;\n }\n getSchema() {\n const sc = this.schema;\n if (Array.isArray(sc) && sc[0] === 0) {\n return sc[4];\n }\n return sc;\n }\n getName(withNamespace = false) {\n const { name } = this;\n const short = !withNamespace && name && name.includes(\"#\");\n return short ? name.split(\"#\")[1] : name || undefined;\n }\n getMemberName() {\n return this.memberName;\n }\n isMemberSchema() {\n return this._isMemberSchema;\n }\n isListSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 64 && sc < 128\n : sc[0] === 1;\n }\n isMapSchema() {\n const sc = this.getSchema();\n return typeof sc === \"number\"\n ? sc >= 128 && sc <= 0b1111_1111\n : sc[0] === 2;\n }\n isStructSchema() {\n const sc = this.getSchema();\n if (typeof sc !== \"object\") {\n return false;\n }\n const id = sc[0];\n return (id === 3 ||\n id === -3 ||\n id === 4);\n }\n isUnionSchema() {\n const sc = this.getSchema();\n if (typeof sc !== \"object\") {\n return false;\n }\n return sc[0] === 4;\n }\n isBlobSchema() {\n const sc = this.getSchema();\n return sc === 21 || sc === 42;\n }\n isTimestampSchema() {\n const sc = this.getSchema();\n return (typeof sc === \"number\" &&\n sc >= 4 &&\n sc <= 7);\n }\n isUnitSchema() {\n return this.getSchema() === \"unit\";\n }\n isDocumentSchema() {\n return this.getSchema() === 15;\n }\n isStringSchema() {\n return this.getSchema() === 0;\n }\n isBooleanSchema() {\n return this.getSchema() === 2;\n }\n isNumericSchema() {\n return this.getSchema() === 1;\n }\n isBigIntegerSchema() {\n return this.getSchema() === 17;\n }\n isBigDecimalSchema() {\n return this.getSchema() === 19;\n }\n isStreaming() {\n const { streaming } = this.getMergedTraits();\n return !!streaming || this.getSchema() === 42;\n }\n isIdempotencyToken() {\n return !!this.getMergedTraits().idempotencyToken;\n }\n getMergedTraits() {\n return (this.normalizedTraits ??\n (this.normalizedTraits = {\n ...this.getOwnTraits(),\n ...this.getMemberTraits(),\n }));\n }\n getMemberTraits() {\n return translateTraits(this.memberTraits);\n }\n getOwnTraits() {\n return translateTraits(this.traits);\n }\n getKeySchema() {\n const [isDoc, isMap] = [this.isDocumentSchema(), this.isMapSchema()];\n if (!isDoc && !isMap) {\n throw new Error(`@smithy/core/schema - cannot get key for non-map: ${this.getName(true)}`);\n }\n const schema = this.getSchema();\n const memberSchema = isDoc\n ? 15\n : schema[4] ?? 0;\n return member([memberSchema, 0], \"key\");\n }\n getValueSchema() {\n const sc = this.getSchema();\n const [isDoc, isMap, isList] = [this.isDocumentSchema(), this.isMapSchema(), this.isListSchema()];\n const memberSchema = typeof sc === \"number\"\n ? 0b0011_1111 & sc\n : sc && typeof sc === \"object\" && (isMap || isList)\n ? sc[3 + sc[0]]\n : isDoc\n ? 15\n : void 0;\n if (memberSchema != null) {\n return member([memberSchema, 0], isMap ? \"value\" : \"member\");\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no value member.`);\n }\n getMemberSchema(memberName) {\n const struct = this.getSchema();\n if (this.isStructSchema() && struct[4].includes(memberName)) {\n const i = struct[4].indexOf(memberName);\n const memberSchema = struct[5][i];\n return member(isMemberSchema(memberSchema) ? memberSchema : [memberSchema, 0], memberName);\n }\n if (this.isDocumentSchema()) {\n return member([15, 0], memberName);\n }\n throw new Error(`@smithy/core/schema - ${this.getName(true)} has no member=${memberName}.`);\n }\n getMemberSchemas() {\n const buffer = {};\n try {\n for (const [k, v] of this.structIterator()) {\n buffer[k] = v;\n }\n }\n catch (ignored) { }\n return buffer;\n }\n getEventStreamMember() {\n if (this.isStructSchema()) {\n for (const [memberName, memberSchema] of this.structIterator()) {\n if (memberSchema.isStreaming() && memberSchema.isStructSchema()) {\n return memberName;\n }\n }\n }\n return \"\";\n }\n *structIterator() {\n if (this.isUnitSchema()) {\n return;\n }\n if (!this.isStructSchema()) {\n throw new Error(\"@smithy/core/schema - cannot iterate non-struct schema.\");\n }\n const struct = this.getSchema();\n const z = struct[4].length;\n let it = struct[anno.it];\n if (it && z === it.length) {\n yield* it;\n return;\n }\n it = Array(z);\n for (let i = 0; i < z; ++i) {\n const k = struct[4][i];\n const v = member([struct[5][i], 0], k);\n yield (it[i] = [k, v]);\n }\n struct[anno.it] = it;\n }\n}\nfunction member(memberSchema, memberName) {\n if (memberSchema instanceof NormalizedSchema) {\n return Object.assign(memberSchema, {\n memberName,\n _isMemberSchema: true,\n });\n }\n const internalCtorAccess = NormalizedSchema;\n return new internalCtorAccess(memberSchema, memberName);\n}\nconst isMemberSchema = (sc) => Array.isArray(sc) && sc.length === 2;\nexport const isStaticSchema = (sc) => Array.isArray(sc) && sc.length >= 5;\n", "import { Schema } from \"./Schema\";\nexport class SimpleSchema extends Schema {\n static symbol = Symbol.for(\"@smithy/sim\");\n name;\n schemaRef;\n traits;\n symbol = SimpleSchema.symbol;\n}\nexport const sim = (namespace, name, schemaRef, traits) => Schema.assign(new SimpleSchema(), {\n name,\n namespace,\n traits,\n schemaRef,\n});\nexport const simAdapter = (namespace, name, traits, schemaRef) => Schema.assign(new SimpleSchema(), {\n name,\n namespace,\n traits,\n schemaRef,\n});\n", "export const SCHEMA = {\n BLOB: 0b0001_0101,\n STREAMING_BLOB: 0b0010_1010,\n BOOLEAN: 0b0000_0010,\n STRING: 0b0000_0000,\n NUMERIC: 0b0000_0001,\n BIG_INTEGER: 0b0001_0001,\n BIG_DECIMAL: 0b0001_0011,\n DOCUMENT: 0b0000_1111,\n TIMESTAMP_DEFAULT: 0b0000_0100,\n TIMESTAMP_DATE_TIME: 0b0000_0101,\n TIMESTAMP_HTTP_DATE: 0b0000_0110,\n TIMESTAMP_EPOCH_SECONDS: 0b0000_0111,\n LIST_MODIFIER: 0b0100_0000,\n MAP_MODIFIER: 0b1000_0000,\n};\n", "export class TypeRegistry {\n namespace;\n schemas;\n exceptions;\n static registries = new Map();\n constructor(namespace, schemas = new Map(), exceptions = new Map()) {\n this.namespace = namespace;\n this.schemas = schemas;\n this.exceptions = exceptions;\n }\n static for(namespace) {\n if (!TypeRegistry.registries.has(namespace)) {\n TypeRegistry.registries.set(namespace, new TypeRegistry(namespace));\n }\n return TypeRegistry.registries.get(namespace);\n }\n copyFrom(other) {\n const { schemas, exceptions } = this;\n for (const [k, v] of other.schemas) {\n if (!schemas.has(k)) {\n schemas.set(k, v);\n }\n }\n for (const [k, v] of other.exceptions) {\n if (!exceptions.has(k)) {\n exceptions.set(k, v);\n }\n }\n }\n register(shapeId, schema) {\n const qualifiedName = this.normalizeShapeId(shapeId);\n for (const r of [this, TypeRegistry.for(qualifiedName.split(\"#\")[0])]) {\n r.schemas.set(qualifiedName, schema);\n }\n }\n getSchema(shapeId) {\n const id = this.normalizeShapeId(shapeId);\n if (!this.schemas.has(id)) {\n if (!shapeId.includes(\"#\")) {\n const suffix = \"#\" + shapeId;\n const candidates = [];\n for (const [shapeId, schema] of this.schemas.entries()) {\n if (shapeId.endsWith(suffix)) {\n candidates.push(schema);\n }\n }\n if (candidates.length === 1) {\n return candidates[0];\n }\n }\n throw new Error(`@smithy/core/schema - schema not found for ${id}`);\n }\n return this.schemas.get(id);\n }\n registerError(es, ctor) {\n const $error = es;\n const ns = $error[1];\n for (const r of [this, TypeRegistry.for(ns)]) {\n r.schemas.set(ns + \"#\" + $error[2], $error);\n r.exceptions.set($error, ctor);\n }\n }\n getErrorCtor(es) {\n const $error = es;\n if (this.exceptions.has($error)) {\n return this.exceptions.get($error);\n }\n const registry = TypeRegistry.for($error[1]);\n return registry.exceptions.get($error);\n }\n getBaseException() {\n for (const exceptionKey of this.exceptions.keys()) {\n if (Array.isArray(exceptionKey)) {\n const [, ns, name] = exceptionKey;\n const id = ns + \"#\" + name;\n if (id.startsWith(\"smithy.ts.sdk.synthetic.\") && id.endsWith(\"ServiceException\")) {\n return exceptionKey;\n }\n }\n }\n return undefined;\n }\n find(predicate) {\n for (const schema of this.schemas.values()) {\n if (predicate(schema)) {\n return schema;\n }\n }\n return undefined;\n }\n clear() {\n this.schemas.clear();\n this.exceptions.clear();\n }\n normalizeShapeId(shapeId) {\n if (shapeId.includes(\"#\")) {\n return shapeId;\n }\n return this.namespace + \"#\" + shapeId;\n }\n}\n", "export * from \"./deref\";\nexport * from \"./middleware/getSchemaSerdePlugin\";\nexport * from \"./schemas/ListSchema\";\nexport * from \"./schemas/MapSchema\";\nexport * from \"./schemas/OperationSchema\";\nexport * from \"./schemas/operation\";\nexport * from \"./schemas/ErrorSchema\";\nexport * from \"./schemas/NormalizedSchema\";\nexport * from \"./schemas/Schema\";\nexport * from \"./schemas/SimpleSchema\";\nexport * from \"./schemas/StructureSchema\";\nexport * from \"./schemas/sentinels\";\nexport * from \"./schemas/translateTraits\";\nexport * from \"./TypeRegistry\";\n", "import { NormalizedSchema } from \"@smithy/core/schema\";\nconst SENSITIVE_STRING = \"***SensitiveInformation***\";\nexport function schemaLogFilter(schema, data) {\n if (data == null) {\n return data;\n }\n const ns = NormalizedSchema.of(schema);\n if (ns.getMergedTraits().sensitive) {\n return SENSITIVE_STRING;\n }\n if (ns.isListSchema()) {\n const isSensitive = !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isMapSchema()) {\n const isSensitive = !!ns.getKeySchema().getMergedTraits().sensitive || !!ns.getValueSchema().getMergedTraits().sensitive;\n if (isSensitive) {\n return SENSITIVE_STRING;\n }\n }\n else if (ns.isStructSchema() && typeof data === \"object\") {\n const object = data;\n const newObject = {};\n for (const [member, memberNs] of ns.structIterator()) {\n if (object[member] != null) {\n newObject[member] = schemaLogFilter(memberNs, object[member]);\n }\n }\n return newObject;\n }\n return data;\n}\n", "import { SMITHY_CONTEXT_KEY, } from \"@smithy/types\";\nimport { constructStack } from \"../middleware-stack/MiddlewareStack\";\nimport { schemaLogFilter } from \"./schemaLogFilter\";\nexport class Command {\n middlewareStack = constructStack();\n schema;\n static classBuilder() {\n return new ClassBuilder();\n }\n resolveMiddlewareWithContext(clientStack, configuration, options, { middlewareFn, clientName, commandName, inputFilterSensitiveLog, outputFilterSensitiveLog, smithyContext, additionalContext, CommandCtor, }) {\n for (const mw of middlewareFn.bind(this)(CommandCtor, clientStack, configuration, options)) {\n this.middlewareStack.use(mw);\n }\n const stack = clientStack.concat(this.middlewareStack);\n const { logger } = configuration;\n const handlerExecutionContext = {\n logger,\n clientName,\n commandName,\n inputFilterSensitiveLog,\n outputFilterSensitiveLog,\n [SMITHY_CONTEXT_KEY]: {\n commandInstance: this,\n ...smithyContext,\n },\n ...additionalContext,\n };\n const { requestHandler } = configuration;\n let requestOptions = options ?? {};\n if (smithyContext.eventStream) {\n requestOptions = {\n isEventStream: true,\n ...requestOptions,\n };\n }\n return stack.resolve((request) => requestHandler.handle(request.request, requestOptions), handlerExecutionContext);\n }\n}\nclass ClassBuilder {\n _init = () => { };\n _ep = {};\n _middlewareFn = () => [];\n _commandName = \"\";\n _clientName = \"\";\n _additionalContext = {};\n _smithyContext = {};\n _inputFilterSensitiveLog = undefined;\n _outputFilterSensitiveLog = undefined;\n _serializer = null;\n _deserializer = null;\n _operationSchema;\n init(cb) {\n this._init = cb;\n }\n ep(endpointParameterInstructions) {\n this._ep = endpointParameterInstructions;\n return this;\n }\n m(middlewareSupplier) {\n this._middlewareFn = middlewareSupplier;\n return this;\n }\n s(service, operation, smithyContext = {}) {\n this._smithyContext = {\n service,\n operation,\n ...smithyContext,\n };\n return this;\n }\n c(additionalContext = {}) {\n this._additionalContext = additionalContext;\n return this;\n }\n n(clientName, commandName) {\n this._clientName = clientName;\n this._commandName = commandName;\n return this;\n }\n f(inputFilter = (_) => _, outputFilter = (_) => _) {\n this._inputFilterSensitiveLog = inputFilter;\n this._outputFilterSensitiveLog = outputFilter;\n return this;\n }\n ser(serializer) {\n this._serializer = serializer;\n return this;\n }\n de(deserializer) {\n this._deserializer = deserializer;\n return this;\n }\n sc(operation) {\n this._operationSchema = operation;\n this._smithyContext.operationSchema = operation;\n return this;\n }\n build() {\n const closure = this;\n let CommandRef;\n return (CommandRef = class extends Command {\n input;\n static getEndpointParameterInstructions() {\n return closure._ep;\n }\n constructor(...[input]) {\n super();\n this.input = input ?? {};\n closure._init(this);\n this.schema = closure._operationSchema;\n }\n resolveMiddleware(stack, configuration, options) {\n const op = closure._operationSchema;\n const input = op?.[4] ?? op?.input;\n const output = op?.[5] ?? op?.output;\n return this.resolveMiddlewareWithContext(stack, configuration, options, {\n CommandCtor: CommandRef,\n middlewareFn: closure._middlewareFn,\n clientName: closure._clientName,\n commandName: closure._commandName,\n inputFilterSensitiveLog: closure._inputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, input) : (_) => _),\n outputFilterSensitiveLog: closure._outputFilterSensitiveLog ?? (op ? schemaLogFilter.bind(null, output) : (_) => _),\n smithyContext: closure._smithyContext,\n additionalContext: closure._additionalContext,\n });\n }\n serialize = closure._serializer;\n deserialize = closure._deserializer;\n });\n }\n}\n", "export const SENSITIVE_STRING = \"***SensitiveInformation***\";\n", "export const createAggregatedClient = (commands, Client, options) => {\n for (const [command, CommandCtor] of Object.entries(commands)) {\n const methodImpl = async function (args, optionsOrCb, cb) {\n const command = new CommandCtor(args);\n if (typeof optionsOrCb === \"function\") {\n this.send(command, optionsOrCb);\n }\n else if (typeof cb === \"function\") {\n if (typeof optionsOrCb !== \"object\")\n throw new Error(`Expected http options but got ${typeof optionsOrCb}`);\n this.send(command, optionsOrCb || {}, cb);\n }\n else {\n return this.send(command, optionsOrCb);\n }\n };\n const methodName = (command[0].toLowerCase() + command.slice(1)).replace(/Command$/, \"\");\n Client.prototype[methodName] = methodImpl;\n }\n const { paginators = {}, waiters = {} } = options ?? {};\n for (const [paginatorName, paginatorFn] of Object.entries(paginators)) {\n if (Client.prototype[paginatorName] === void 0) {\n Client.prototype[paginatorName] = function (commandInput = {}, paginationConfiguration, ...rest) {\n return paginatorFn({\n ...paginationConfiguration,\n client: this,\n }, commandInput, ...rest);\n };\n }\n }\n for (const [waiterName, waiterFn] of Object.entries(waiters)) {\n if (Client.prototype[waiterName] === void 0) {\n Client.prototype[waiterName] = async function (commandInput = {}, waiterConfiguration, ...rest) {\n let config = waiterConfiguration;\n if (typeof waiterConfiguration === \"number\") {\n config = {\n maxWaitTime: waiterConfiguration,\n };\n }\n return waiterFn({\n ...config,\n client: this,\n }, commandInput, ...rest);\n };\n }\n }\n};\n", "export class ServiceException extends Error {\n $fault;\n $response;\n $retryable;\n $metadata;\n constructor(options) {\n super(options.message);\n Object.setPrototypeOf(this, Object.getPrototypeOf(this).constructor.prototype);\n this.name = options.name;\n this.$fault = options.$fault;\n this.$metadata = options.$metadata;\n }\n static isInstance(value) {\n if (!value)\n return false;\n const candidate = value;\n return (ServiceException.prototype.isPrototypeOf(candidate) ||\n (Boolean(candidate.$fault) &&\n Boolean(candidate.$metadata) &&\n (candidate.$fault === \"client\" || candidate.$fault === \"server\")));\n }\n static [Symbol.hasInstance](instance) {\n if (!instance)\n return false;\n const candidate = instance;\n if (this === ServiceException) {\n return ServiceException.isInstance(instance);\n }\n if (ServiceException.isInstance(instance)) {\n if (candidate.name && this.name) {\n return this.prototype.isPrototypeOf(instance) || candidate.name === this.name;\n }\n return this.prototype.isPrototypeOf(instance);\n }\n return false;\n }\n}\nexport const decorateServiceException = (exception, additions = {}) => {\n Object.entries(additions)\n .filter(([, v]) => v !== undefined)\n .forEach(([k, v]) => {\n if (exception[k] == undefined || exception[k] === \"\") {\n exception[k] = v;\n }\n });\n const message = exception.message || exception.Message || \"UnknownError\";\n exception.message = message;\n delete exception.Message;\n return exception;\n};\n", "import { decorateServiceException } from \"./exceptions\";\nexport const throwDefaultError = ({ output, parsedBody, exceptionCtor, errorCode }) => {\n const $metadata = deserializeMetadata(output);\n const statusCode = $metadata.httpStatusCode ? $metadata.httpStatusCode + \"\" : undefined;\n const response = new exceptionCtor({\n name: parsedBody?.code || parsedBody?.Code || errorCode || statusCode || \"UnknownError\",\n $fault: \"client\",\n $metadata,\n });\n throw decorateServiceException(response, parsedBody);\n};\nexport const withBaseException = (ExceptionCtor) => {\n return ({ output, parsedBody, errorCode }) => {\n throwDefaultError({ output, parsedBody, exceptionCtor: ExceptionCtor, errorCode });\n };\n};\nconst deserializeMetadata = (output) => ({\n httpStatusCode: output.statusCode,\n requestId: output.headers[\"x-amzn-requestid\"] ?? output.headers[\"x-amzn-request-id\"] ?? output.headers[\"x-amz-request-id\"],\n extendedRequestId: output.headers[\"x-amz-id-2\"],\n cfId: output.headers[\"x-amz-cf-id\"],\n});\n", "export const loadConfigsForDefaultMode = (mode) => {\n switch (mode) {\n case \"standard\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"in-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 1100,\n };\n case \"cross-region\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 3100,\n };\n case \"mobile\":\n return {\n retryMode: \"standard\",\n connectionTimeout: 30000,\n };\n default:\n return {};\n }\n};\n", "let warningEmitted = false;\nexport const emitWarningIfUnsupportedVersion = (version) => {\n if (version && !warningEmitted && parseInt(version.substring(1, version.indexOf(\".\"))) < 16) {\n warningEmitted = true;\n }\n};\n", "import { AlgorithmId, } from \"@smithy/types\";\nexport { AlgorithmId };\nconst knownAlgorithms = Object.values(AlgorithmId);\nexport const getChecksumConfiguration = (runtimeConfig) => {\n const checksumAlgorithms = [];\n for (const id in AlgorithmId) {\n const algorithmId = AlgorithmId[id];\n if (runtimeConfig[algorithmId] === undefined) {\n continue;\n }\n checksumAlgorithms.push({\n algorithmId: () => algorithmId,\n checksumConstructor: () => runtimeConfig[algorithmId],\n });\n }\n for (const [id, ChecksumCtor] of Object.entries(runtimeConfig.checksumAlgorithms ?? {})) {\n checksumAlgorithms.push({\n algorithmId: () => id,\n checksumConstructor: () => ChecksumCtor,\n });\n }\n return {\n addChecksumAlgorithm(algo) {\n runtimeConfig.checksumAlgorithms = runtimeConfig.checksumAlgorithms ?? {};\n const id = algo.algorithmId();\n const ctor = algo.checksumConstructor();\n if (knownAlgorithms.includes(id)) {\n runtimeConfig.checksumAlgorithms[id.toUpperCase()] = ctor;\n }\n else {\n runtimeConfig.checksumAlgorithms[id] = ctor;\n }\n checksumAlgorithms.push(algo);\n },\n checksumAlgorithms() {\n return checksumAlgorithms;\n },\n };\n};\nexport const resolveChecksumRuntimeConfig = (clientConfig) => {\n const runtimeConfig = {};\n clientConfig.checksumAlgorithms().forEach((checksumAlgorithm) => {\n const id = checksumAlgorithm.algorithmId();\n if (knownAlgorithms.includes(id)) {\n runtimeConfig[id] = checksumAlgorithm.checksumConstructor();\n }\n });\n return runtimeConfig;\n};\n", "export const getRetryConfiguration = (runtimeConfig) => {\n return {\n setRetryStrategy(retryStrategy) {\n runtimeConfig.retryStrategy = retryStrategy;\n },\n retryStrategy() {\n return runtimeConfig.retryStrategy;\n },\n };\n};\nexport const resolveRetryRuntimeConfig = (retryStrategyConfiguration) => {\n const runtimeConfig = {};\n runtimeConfig.retryStrategy = retryStrategyConfiguration.retryStrategy();\n return runtimeConfig;\n};\n", "import { getChecksumConfiguration, resolveChecksumRuntimeConfig, } from \"./checksum\";\nimport { getRetryConfiguration, resolveRetryRuntimeConfig } from \"./retry\";\nexport const getDefaultExtensionConfiguration = (runtimeConfig) => {\n return Object.assign(getChecksumConfiguration(runtimeConfig), getRetryConfiguration(runtimeConfig));\n};\nexport const getDefaultClientConfiguration = getDefaultExtensionConfiguration;\nexport const resolveDefaultRuntimeConfig = (config) => {\n return Object.assign(resolveChecksumRuntimeConfig(config), resolveRetryRuntimeConfig(config));\n};\n", "export const getArrayIfSingleItem = (mayBeArray) => Array.isArray(mayBeArray) ? mayBeArray : [mayBeArray];\n", "export const getValueFromTextNode = (obj) => {\n const textNodeName = \"#text\";\n for (const key in obj) {\n if (obj.hasOwnProperty(key) && obj[key][textNodeName] !== undefined) {\n obj[key] = obj[key][textNodeName];\n }\n else if (typeof obj[key] === \"object\" && obj[key] !== null) {\n obj[key] = getValueFromTextNode(obj[key]);\n }\n }\n return obj;\n};\n", "export const isSerializableHeaderValue = (value) => {\n return value != null;\n};\n", "export class NoOpLogger {\n trace() { }\n debug() { }\n info() { }\n warn() { }\n error() { }\n}\n", "export function map(arg0, arg1, arg2) {\n let target;\n let filter;\n let instructions;\n if (typeof arg1 === \"undefined\" && typeof arg2 === \"undefined\") {\n target = {};\n instructions = arg0;\n }\n else {\n target = arg0;\n if (typeof arg1 === \"function\") {\n filter = arg1;\n instructions = arg2;\n return mapWithFilter(target, filter, instructions);\n }\n else {\n instructions = arg1;\n }\n }\n for (const key of Object.keys(instructions)) {\n if (!Array.isArray(instructions[key])) {\n target[key] = instructions[key];\n continue;\n }\n applyInstruction(target, null, instructions, key);\n }\n return target;\n}\nexport const convertMap = (target) => {\n const output = {};\n for (const [k, v] of Object.entries(target || {})) {\n output[k] = [, v];\n }\n return output;\n};\nexport const take = (source, instructions) => {\n const out = {};\n for (const key in instructions) {\n applyInstruction(out, source, instructions, key);\n }\n return out;\n};\nconst mapWithFilter = (target, filter, instructions) => {\n return map(target, Object.entries(instructions).reduce((_instructions, [key, value]) => {\n if (Array.isArray(value)) {\n _instructions[key] = value;\n }\n else {\n if (typeof value === \"function\") {\n _instructions[key] = [filter, value()];\n }\n else {\n _instructions[key] = [filter, value];\n }\n }\n return _instructions;\n }, {}));\n};\nconst applyInstruction = (target, source, instructions, targetKey) => {\n if (source !== null) {\n let instruction = instructions[targetKey];\n if (typeof instruction === \"function\") {\n instruction = [, instruction];\n }\n const [filter = nonNullish, valueFn = pass, sourceKey = targetKey] = instruction;\n if ((typeof filter === \"function\" && filter(source[sourceKey])) || (typeof filter !== \"function\" && !!filter)) {\n target[targetKey] = valueFn(source[sourceKey]);\n }\n return;\n }\n let [filter, value] = instructions[targetKey];\n if (typeof value === \"function\") {\n let _value;\n const defaultFilterPassed = filter === undefined && (_value = value()) != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(void 0)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed) {\n target[targetKey] = _value;\n }\n else if (customFilterPassed) {\n target[targetKey] = value();\n }\n }\n else {\n const defaultFilterPassed = filter === undefined && value != null;\n const customFilterPassed = (typeof filter === \"function\" && !!filter(value)) || (typeof filter !== \"function\" && !!filter);\n if (defaultFilterPassed || customFilterPassed) {\n target[targetKey] = value;\n }\n }\n};\nconst nonNullish = (_) => _ != null;\nconst pass = (_) => _;\n", "export const serializeFloat = (value) => {\n if (value !== value) {\n return \"NaN\";\n }\n switch (value) {\n case Infinity:\n return \"Infinity\";\n case -Infinity:\n return \"-Infinity\";\n default:\n return value;\n }\n};\nexport const serializeDateTime = (date) => date.toISOString().replace(\".000Z\", \"Z\");\n", "export const _json = (obj) => {\n if (obj == null) {\n return {};\n }\n if (Array.isArray(obj)) {\n return obj.filter((_) => _ != null).map(_json);\n }\n if (typeof obj === \"object\") {\n const target = {};\n for (const key of Object.keys(obj)) {\n if (obj[key] == null) {\n continue;\n }\n target[key] = _json(obj[key]);\n }\n return target;\n }\n return obj;\n};\n", "export { constructStack } from \"./middleware-stack/MiddlewareStack\";\nexport { getSmithyContext } from \"./util-middleware/getSmithyContext\";\nexport { normalizeProvider } from \"./util-middleware/normalizeProvider\";\nexport { invalidFunction } from \"./invalid-dependency/invalidFunction\";\nexport { invalidProvider } from \"./invalid-dependency/invalidProvider\";\nexport { createWaiter } from \"./util-waiter/createWaiter\";\nexport { waiterServiceDefaults, WaiterState, checkExceptions, } from \"./util-waiter/waiter\";\nexport { Client } from \"./smithy-client/client\";\nexport { Command } from \"./smithy-client/command\";\nexport { SENSITIVE_STRING } from \"./smithy-client/constants\";\nexport { createAggregatedClient } from \"./smithy-client/create-aggregated-client\";\nexport { throwDefaultError, withBaseException } from \"./smithy-client/default-error-handler\";\nexport { loadConfigsForDefaultMode, } from \"./smithy-client/defaults-mode\";\nexport { emitWarningIfUnsupportedVersion } from \"./smithy-client/emitWarningIfUnsupportedVersion\";\nexport { ServiceException, decorateServiceException, } from \"./smithy-client/exceptions\";\nexport { getDefaultExtensionConfiguration, getDefaultClientConfiguration, resolveDefaultRuntimeConfig, } from \"./smithy-client/extensions/defaultExtensionConfiguration\";\nexport { AlgorithmId, getChecksumConfiguration, resolveChecksumRuntimeConfig, } from \"./smithy-client/extensions/checksum\";\nexport { getRetryConfiguration, resolveRetryRuntimeConfig, } from \"./smithy-client/extensions/retry\";\nexport { getArrayIfSingleItem } from \"./smithy-client/get-array-if-single-item\";\nexport { getValueFromTextNode } from \"./smithy-client/get-value-from-text-node\";\nexport { isSerializableHeaderValue } from \"./smithy-client/is-serializable-header-value\";\nexport { NoOpLogger } from \"./smithy-client/NoOpLogger\";\nexport { map, convertMap, take, } from \"./smithy-client/object-mapping\";\nexport { schemaLogFilter } from \"./smithy-client/schemaLogFilter\";\nexport { serializeFloat, serializeDateTime } from \"./smithy-client/ser-utils\";\nexport { _json } from \"./smithy-client/serde-json\";\n", "export const CLOCK_SKEW_ERROR_CODES = [\n \"AuthFailure\",\n \"InvalidSignatureException\",\n \"RequestExpired\",\n \"RequestInTheFuture\",\n \"RequestTimeTooSkewed\",\n \"SignatureDoesNotMatch\",\n];\nexport const THROTTLING_ERROR_CODES = [\n \"BandwidthLimitExceeded\",\n \"EC2ThrottledException\",\n \"LimitExceededException\",\n \"PriorRequestNotComplete\",\n \"ProvisionedThroughputExceededException\",\n \"RequestLimitExceeded\",\n \"RequestThrottled\",\n \"RequestThrottledException\",\n \"SlowDown\",\n \"ThrottledException\",\n \"Throttling\",\n \"ThrottlingException\",\n \"TooManyRequestsException\",\n \"TransactionInProgressException\",\n];\nexport const TRANSIENT_ERROR_CODES = [\"TimeoutError\", \"RequestTimeout\", \"RequestTimeoutException\"];\nexport const TRANSIENT_ERROR_STATUS_CODES = [500, 502, 503, 504];\nexport const NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"ECONNREFUSED\", \"EPIPE\", \"ETIMEDOUT\"];\nexport const NODEJS_NETWORK_ERROR_CODES = [\"EHOSTUNREACH\", \"ENETUNREACH\", \"ENOTFOUND\"];\n", "import { CLOCK_SKEW_ERROR_CODES, NODEJS_NETWORK_ERROR_CODES, NODEJS_TIMEOUT_ERROR_CODES, THROTTLING_ERROR_CODES, TRANSIENT_ERROR_CODES, TRANSIENT_ERROR_STATUS_CODES, } from \"./constants\";\nexport const isRetryableByTrait = (error) => error?.$retryable !== undefined;\nexport const isClockSkewError = (error) => CLOCK_SKEW_ERROR_CODES.includes(error.name);\nexport const isClockSkewCorrectedError = (error) => error.$metadata?.clockSkewCorrected;\nexport const isBrowserNetworkError = (error) => {\n const errorMessages = new Set([\n \"Failed to fetch\",\n \"NetworkError when attempting to fetch resource\",\n \"The Internet connection appears to be offline\",\n \"Load failed\",\n \"Network request failed\",\n ]);\n const isValid = error && error instanceof TypeError;\n if (!isValid) {\n return false;\n }\n return errorMessages.has(error.message);\n};\nexport const isThrottlingError = (error) => error.$metadata?.httpStatusCode === 429 ||\n THROTTLING_ERROR_CODES.includes(error.name) ||\n error.$retryable?.throttling == true;\nexport const isTransientError = (error, depth = 0) => isRetryableByTrait(error) ||\n isClockSkewCorrectedError(error) ||\n (error.name === \"InvalidSignatureException\" && error.message?.includes(\"Signature expired\")) ||\n TRANSIENT_ERROR_CODES.includes(error.name) ||\n NODEJS_TIMEOUT_ERROR_CODES.includes(error?.code || \"\") ||\n NODEJS_NETWORK_ERROR_CODES.includes(error?.code || \"\") ||\n TRANSIENT_ERROR_STATUS_CODES.includes(error.$metadata?.httpStatusCode || 0) ||\n isBrowserNetworkError(error) ||\n isNodeJsHttp2TransientError(error) ||\n (error.cause !== undefined && depth <= 10 && isTransientError(error.cause, depth + 1));\nexport const isServerError = (error) => {\n if (error.$metadata?.httpStatusCode !== undefined) {\n const statusCode = error.$metadata.httpStatusCode;\n if (500 <= statusCode && statusCode <= 599 && !isTransientError(error)) {\n return true;\n }\n return false;\n }\n return false;\n};\nexport function isNodeJsHttp2TransientError(error) {\n return error.code === \"ERR_HTTP2_STREAM_ERROR\" && error.message.includes(\"NGHTTP2_REFUSED_STREAM\");\n}\n", "export const DEFAULT_RETRY_DELAY_BASE = 100;\nexport const MAXIMUM_RETRY_DELAY = 20 * 1000;\nexport const THROTTLING_RETRY_DELAY_BASE = 500;\nexport const INITIAL_RETRY_TOKENS = 500;\nexport const RETRY_COST = 5;\nexport const TIMEOUT_RETRY_COST = 10;\nexport const NO_RETRY_INCREMENT = 1;\nexport const INVOCATION_ID_HEADER = \"amz-sdk-invocation-id\";\nexport const REQUEST_HEADER = \"amz-sdk-request\";\n", "import { HttpResponse } from \"@smithy/core/protocols\";\nimport { parseRfc7231DateTime } from \"@smithy/core/serde\";\nexport function parseRetryAfterHeader(response, logger) {\n if (!HttpResponse.isInstance(response)) {\n return;\n }\n for (const header of Object.keys(response.headers)) {\n const h = header.toLowerCase();\n if (h === \"retry-after\") {\n const retryAfter = response.headers[header];\n let retryAfterSeconds = NaN;\n if (retryAfter.endsWith(\"GMT\")) {\n try {\n const date = parseRfc7231DateTime(retryAfter);\n retryAfterSeconds = (date.getTime() - Date.now()) / 1000;\n }\n catch (e) {\n logger?.trace?.(\"Failed to parse retry-after header\");\n logger?.trace?.(e);\n }\n }\n else if (retryAfter.match(/ GMT, ((\\d+)|(\\d+\\.\\d+))$/)) {\n retryAfterSeconds = Number(retryAfter.match(/ GMT, ([\\d.]+)$/)?.[1]);\n }\n else if (retryAfter.match(/^((\\d+)|(\\d+\\.\\d+))$/)) {\n retryAfterSeconds = Number(retryAfter);\n }\n else if (Date.parse(retryAfter) >= Date.now()) {\n retryAfterSeconds = (Date.parse(retryAfter) - Date.now()) / 1000;\n }\n if (isNaN(retryAfterSeconds)) {\n return;\n }\n return new Date(Date.now() + retryAfterSeconds * 1000);\n }\n else if (h === \"x-amz-retry-after\") {\n const v = response.headers[header];\n const backoffMilliseconds = Number(v);\n if (isNaN(backoffMilliseconds)) {\n logger?.trace?.(`Failed to parse x-amz-retry-after=${v}`);\n return;\n }\n return new Date(Date.now() + backoffMilliseconds);\n }\n }\n}\nexport function getRetryAfterHint(response, logger) {\n return parseRetryAfterHeader(response, logger);\n}\n", "export const asSdkError = (error) => {\n if (error instanceof Error)\n return error;\n if (error instanceof Object)\n return Object.assign(new Error(), error);\n if (typeof error === \"string\")\n return new Error(error);\n return new Error(`AWS SDK error wrapper for ${error}`);\n};\n", "import { NoOpLogger } from \"@smithy/core/client\";\nimport { HttpRequest } from \"@smithy/core/protocols\";\nimport { v4 } from \"@smithy/core/serde\";\nimport { isServerError, isThrottlingError, isTransientError, } from \"../service-error-classification/service-error-classification\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"../util-retry/constants\";\nimport { parseRetryAfterHeader } from \"./parseRetryAfterHeader\";\nimport { asSdkError } from \"./util\";\nexport function bindRetryMiddleware(isStreamingPayload) {\n return (options) => (next, context) => async (args) => {\n let retryStrategy = await options.retryStrategy();\n const maxAttempts = await options.maxAttempts();\n if (isRetryStrategyV2(retryStrategy)) {\n retryStrategy = retryStrategy;\n let retryToken = await retryStrategy.acquireInitialRetryToken((context[\"partition_id\"] ?? \"\") + (context.__retryLongPoll ? \":longpoll\" : \"\"));\n let lastError = new Error();\n let attempts = 0;\n let totalRetryDelay = 0;\n const { request } = args;\n const isRequest = HttpRequest.isInstance(request);\n if (isRequest) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (isRequest) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n const { response, output } = await next(args);\n retryStrategy.recordSuccess(retryToken);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalRetryDelay;\n return { response, output };\n }\n catch (e) {\n const retryErrorInfo = getRetryErrorInfo(e, options.logger);\n lastError = asSdkError(e);\n if (isRequest && isStreamingPayload(request)) {\n (context.logger instanceof NoOpLogger ? console : context.logger)?.warn(\"An error was encountered in a non-retryable streaming request.\");\n throw lastError;\n }\n try {\n retryToken = await retryStrategy.refreshRetryTokenForRetry(retryToken, retryErrorInfo);\n }\n catch (refreshError) {\n if (typeof refreshError.$backoff === \"number\") {\n await cooldown(refreshError.$backoff);\n }\n if (!lastError.$metadata) {\n lastError.$metadata = {};\n }\n lastError.$metadata.attempts = attempts + 1;\n lastError.$metadata.totalRetryDelay = totalRetryDelay;\n throw lastError;\n }\n attempts = retryToken.getRetryCount();\n const delay = retryToken.getRetryDelay();\n totalRetryDelay += delay;\n await cooldown(delay);\n }\n }\n }\n else {\n retryStrategy = retryStrategy;\n if (retryStrategy?.mode) {\n context.userAgent = [...(context.userAgent || []), [\"cfg/retry-mode\", retryStrategy.mode]];\n }\n return retryStrategy.retry(next, args);\n }\n };\n}\nconst cooldown = (ms) => new Promise((resolve) => setTimeout(resolve, ms));\nconst isRetryStrategyV2 = (retryStrategy) => typeof retryStrategy.acquireInitialRetryToken !== \"undefined\" &&\n typeof retryStrategy.refreshRetryTokenForRetry !== \"undefined\" &&\n typeof retryStrategy.recordSuccess !== \"undefined\";\nconst getRetryErrorInfo = (error, logger) => {\n const errorInfo = {\n error,\n errorType: getRetryErrorType(error),\n };\n const retryAfterHint = parseRetryAfterHeader(error.$response, logger);\n if (retryAfterHint) {\n errorInfo.retryAfterHint = retryAfterHint;\n }\n return errorInfo;\n};\nconst getRetryErrorType = (error) => {\n if (isThrottlingError(error))\n return \"THROTTLING\";\n if (isTransientError(error))\n return \"TRANSIENT\";\n if (isServerError(error))\n return \"SERVER_ERROR\";\n return \"CLIENT_ERROR\";\n};\nexport const retryMiddlewareOptions = {\n name: \"retryMiddleware\",\n tags: [\"RETRY\"],\n step: \"finalizeRequest\",\n priority: \"high\",\n override: true,\n};\nexport function bindGetRetryPlugin(isStreamingPayload) {\n const retryMiddleware = bindRetryMiddleware(isStreamingPayload);\n return (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(retryMiddleware(options), retryMiddlewareOptions);\n },\n });\n}\n", "import { isThrottlingError } from \"../service-error-classification/service-error-classification\";\nexport class DefaultRateLimiter {\n static setTimeoutFn = setTimeout;\n beta;\n minCapacity;\n minFillRate;\n scaleConstant;\n smooth;\n enabled = false;\n availableTokens = 0;\n lastMaxRate = 0;\n measuredTxRate = 0;\n requestCount = 0;\n fillRate;\n lastThrottleTime;\n lastTimestamp = 0;\n lastTxRateBucket;\n maxCapacity;\n timeWindow = 0;\n constructor(options) {\n this.beta = options?.beta ?? 0.7;\n this.minCapacity = options?.minCapacity ?? 1;\n this.minFillRate = options?.minFillRate ?? 0.5;\n this.scaleConstant = options?.scaleConstant ?? 0.4;\n this.smooth = options?.smooth ?? 0.8;\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n this.lastTxRateBucket = Math.floor(this.getCurrentTimeInSeconds());\n this.fillRate = this.minFillRate;\n this.maxCapacity = this.minCapacity;\n }\n async getSendToken() {\n return this.acquireTokenBucket(1);\n }\n updateClientSendingRate(response) {\n let calculatedRate;\n this.updateMeasuredRate();\n const retryErrorInfo = response;\n const isThrottling = retryErrorInfo?.errorType === \"THROTTLING\" || isThrottlingError(retryErrorInfo?.error ?? response);\n if (isThrottling) {\n const rateToUse = !this.enabled ? this.measuredTxRate : Math.min(this.measuredTxRate, this.fillRate);\n this.lastMaxRate = rateToUse;\n this.calculateTimeWindow();\n this.lastThrottleTime = this.getCurrentTimeInSeconds();\n calculatedRate = this.cubicThrottle(rateToUse);\n this.enableTokenBucket();\n }\n else {\n this.calculateTimeWindow();\n calculatedRate = this.cubicSuccess(this.getCurrentTimeInSeconds());\n }\n const newRate = Math.min(calculatedRate, 2 * this.measuredTxRate);\n this.updateTokenBucketRate(newRate);\n }\n getCurrentTimeInSeconds() {\n return Date.now() / 1000;\n }\n async acquireTokenBucket(amount) {\n if (!this.enabled) {\n return;\n }\n this.refillTokenBucket();\n while (amount > this.availableTokens) {\n const delay = ((amount - this.availableTokens) / this.fillRate) * 1000;\n await new Promise((resolve) => DefaultRateLimiter.setTimeoutFn(resolve, delay));\n this.refillTokenBucket();\n }\n this.availableTokens = this.availableTokens - amount;\n }\n refillTokenBucket() {\n const timestamp = this.getCurrentTimeInSeconds();\n if (!this.lastTimestamp) {\n this.lastTimestamp = timestamp;\n return;\n }\n const fillAmount = (timestamp - this.lastTimestamp) * this.fillRate;\n this.availableTokens = Math.min(this.maxCapacity, this.availableTokens + fillAmount);\n this.lastTimestamp = timestamp;\n }\n calculateTimeWindow() {\n this.timeWindow = this.getPrecise(Math.pow((this.lastMaxRate * (1 - this.beta)) / this.scaleConstant, 1 / 3));\n }\n cubicThrottle(rateToUse) {\n return this.getPrecise(rateToUse * this.beta);\n }\n cubicSuccess(timestamp) {\n return this.getPrecise(this.scaleConstant * Math.pow(timestamp - this.lastThrottleTime - this.timeWindow, 3) + this.lastMaxRate);\n }\n enableTokenBucket() {\n this.enabled = true;\n }\n updateTokenBucketRate(newRate) {\n this.refillTokenBucket();\n this.fillRate = Math.max(newRate, this.minFillRate);\n this.maxCapacity = Math.max(newRate, this.minCapacity);\n this.availableTokens = Math.min(this.availableTokens, this.maxCapacity);\n }\n updateMeasuredRate() {\n const t = this.getCurrentTimeInSeconds();\n const timeBucket = Math.floor(t * 2) / 2;\n this.requestCount++;\n if (timeBucket > this.lastTxRateBucket) {\n const currentRate = this.requestCount / (timeBucket - this.lastTxRateBucket);\n this.measuredTxRate = this.getPrecise(currentRate * this.smooth + this.measuredTxRate * (1 - this.smooth));\n this.requestCount = 0;\n this.lastTxRateBucket = timeBucket;\n }\n }\n getPrecise(num) {\n return parseFloat(num.toFixed(8));\n }\n}\n", "export class Retry {\n static v2026 = typeof process !== \"undefined\" && process.env?.SMITHY_NEW_RETRIES_2026 === \"true\";\n static delay() {\n return Retry.v2026 ? 50 : 100;\n }\n static throttlingDelay() {\n return Retry.v2026 ? 1_000 : 500;\n }\n static cost() {\n return Retry.v2026 ? 14 : 5;\n }\n static throttlingCost() {\n return Retry.v2026 ? 5 : 10;\n }\n static modifiedCostType() {\n return Retry.v2026 ? \"THROTTLING\" : \"TRANSIENT\";\n }\n}\n", "import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nimport { Retry } from \"./retries-2026-config\";\nexport class DefaultRetryBackoffStrategy {\n x = Retry.delay();\n computeNextBackoffDelay(i) {\n const b = Math.random();\n const r = 2;\n const t_i = b * Math.min(this.x * r ** i, MAXIMUM_RETRY_DELAY);\n return Math.floor(t_i);\n }\n setDelayBase(delay) {\n this.x = delay;\n }\n}\n", "import { MAXIMUM_RETRY_DELAY } from \"./constants\";\nexport class DefaultRetryToken {\n delay;\n count;\n cost;\n longPoll;\n constructor(delay, count, cost, longPoll) {\n this.delay = delay;\n this.count = count;\n this.cost = cost;\n this.longPoll = longPoll;\n }\n getRetryCount() {\n return this.count;\n }\n getRetryDelay() {\n return Math.min(MAXIMUM_RETRY_DELAY, this.delay);\n }\n getRetryCost() {\n return this.cost;\n }\n isLongPoll() {\n return this.longPoll;\n }\n}\n", "export var RETRY_MODES;\n(function (RETRY_MODES) {\n RETRY_MODES[\"STANDARD\"] = \"standard\";\n RETRY_MODES[\"ADAPTIVE\"] = \"adaptive\";\n})(RETRY_MODES || (RETRY_MODES = {}));\nexport const DEFAULT_MAX_ATTEMPTS = 3;\nexport const DEFAULT_RETRY_MODE = RETRY_MODES.STANDARD;\n", "import { DefaultRetryBackoffStrategy } from \"./DefaultRetryBackoffStrategy\";\nimport { DefaultRetryToken } from \"./DefaultRetryToken\";\nimport { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"./config\";\nimport { INITIAL_RETRY_TOKENS, NO_RETRY_INCREMENT } from \"./constants\";\nimport { Retry } from \"./retries-2026-config\";\nconst refusal = {\n incompatible: 1,\n attempts: 2,\n capacity: 3,\n};\nexport class StandardRetryStrategy {\n mode = RETRY_MODES.STANDARD;\n capacity = INITIAL_RETRY_TOKENS;\n retryBackoffStrategy;\n maxAttemptsProvider;\n baseDelay;\n constructor(arg1) {\n if (typeof arg1 === \"number\") {\n this.maxAttemptsProvider = async () => arg1;\n }\n else if (typeof arg1 === \"function\") {\n this.maxAttemptsProvider = arg1;\n }\n else if (arg1 && typeof arg1 === \"object\") {\n this.maxAttemptsProvider = async () => arg1.maxAttempts;\n this.baseDelay = arg1.baseDelay;\n this.retryBackoffStrategy = arg1.backoff;\n }\n this.maxAttemptsProvider ??= async () => DEFAULT_MAX_ATTEMPTS;\n this.baseDelay ??= Retry.delay();\n this.retryBackoffStrategy ??= new DefaultRetryBackoffStrategy();\n }\n async acquireInitialRetryToken(retryTokenScope) {\n return new DefaultRetryToken(Retry.delay(), 0, undefined, Retry.v2026 && retryTokenScope.includes(\":longpoll\"));\n }\n async refreshRetryTokenForRetry(token, errorInfo) {\n const maxAttempts = await this.getMaxAttempts();\n const retryCode = this.retryCode(token, errorInfo, maxAttempts);\n const shouldRetry = retryCode === 0;\n const isLongPoll = token.isLongPoll?.();\n if (shouldRetry || isLongPoll) {\n const errorType = errorInfo.errorType;\n this.retryBackoffStrategy.setDelayBase(errorType === \"THROTTLING\" ? Retry.throttlingDelay() : this.baseDelay);\n const delayFromErrorType = this.retryBackoffStrategy.computeNextBackoffDelay(token.getRetryCount());\n let retryDelay = delayFromErrorType;\n if (errorInfo.retryAfterHint instanceof Date) {\n retryDelay = Math.max(delayFromErrorType, Math.min(errorInfo.retryAfterHint.getTime() - Date.now(), delayFromErrorType + 5_000));\n }\n if (!shouldRetry) {\n throw Object.assign(new Error(\"No retry token available\"), {\n $backoff: Retry.v2026 && retryCode === refusal.capacity && isLongPoll ? retryDelay : 0,\n });\n }\n else {\n const capacityCost = this.getCapacityCost(errorType);\n this.capacity -= capacityCost;\n return new DefaultRetryToken(retryDelay, token.getRetryCount() + 1, capacityCost, token.isLongPoll?.() ?? false);\n }\n }\n throw new Error(\"No retry token available\");\n }\n recordSuccess(token) {\n this.capacity = Math.min(INITIAL_RETRY_TOKENS, this.capacity + (token.getRetryCost() ?? NO_RETRY_INCREMENT));\n }\n getCapacity() {\n return this.capacity;\n }\n async maxAttempts() {\n return this.maxAttemptsProvider();\n }\n async getMaxAttempts() {\n try {\n return await this.maxAttemptsProvider();\n }\n catch (error) {\n console.warn(`Max attempts provider could not resolve. Using default of ${DEFAULT_MAX_ATTEMPTS}`);\n return DEFAULT_MAX_ATTEMPTS;\n }\n }\n retryCode(tokenToRenew, errorInfo, maxAttempts) {\n const attempts = tokenToRenew.getRetryCount() + 1;\n const retryableStatus = this.isRetryableError(errorInfo.errorType) ? 0 : refusal.incompatible;\n const attemptStatus = attempts < maxAttempts ? 0 : refusal.attempts;\n const capacityStatus = this.capacity >= this.getCapacityCost(errorInfo.errorType) ? 0 : refusal.capacity;\n return retryableStatus || attemptStatus || capacityStatus;\n }\n getCapacityCost(errorType) {\n return errorType === Retry.modifiedCostType() ? Retry.throttlingCost() : Retry.cost();\n }\n isRetryableError(errorType) {\n return errorType === \"THROTTLING\" || errorType === \"TRANSIENT\";\n }\n}\n", "import { DefaultRateLimiter } from \"./DefaultRateLimiter\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nimport { RETRY_MODES } from \"./config\";\nexport class AdaptiveRetryStrategy {\n mode = RETRY_MODES.ADAPTIVE;\n rateLimiter;\n standardRetryStrategy;\n constructor(maxAttemptsProvider, options) {\n const { rateLimiter } = options ?? {};\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.standardRetryStrategy = options\n ? new StandardRetryStrategy({\n maxAttempts: typeof maxAttemptsProvider === \"number\" ? maxAttemptsProvider : 3,\n ...options,\n })\n : new StandardRetryStrategy(maxAttemptsProvider);\n }\n async acquireInitialRetryToken(retryTokenScope) {\n const token = await this.standardRetryStrategy.acquireInitialRetryToken(retryTokenScope);\n await this.rateLimiter.getSendToken();\n return token;\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n this.rateLimiter.updateClientSendingRate(errorInfo);\n const token = await this.standardRetryStrategy.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n await this.rateLimiter.getSendToken();\n return token;\n }\n recordSuccess(token) {\n this.rateLimiter.updateClientSendingRate({});\n this.standardRetryStrategy.recordSuccess(token);\n }\n async maxAttemptsProvider() {\n return this.standardRetryStrategy.maxAttempts();\n }\n}\n", "import { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nimport { Retry } from \"./retries-2026-config\";\nexport class ConfiguredRetryStrategy extends StandardRetryStrategy {\n computeNextBackoffDelay;\n constructor(maxAttempts, computeNextBackoffDelay = Retry.delay()) {\n super(typeof maxAttempts === \"function\" ? maxAttempts : async () => maxAttempts);\n if (typeof computeNextBackoffDelay === \"number\") {\n this.computeNextBackoffDelay = () => computeNextBackoffDelay;\n }\n else {\n this.computeNextBackoffDelay = computeNextBackoffDelay;\n }\n }\n async refreshRetryTokenForRetry(tokenToRenew, errorInfo) {\n const token = await super.refreshRetryTokenForRetry(tokenToRenew, errorInfo);\n token.getRetryDelay = () => this.computeNextBackoffDelay(token.getRetryCount());\n return token;\n }\n}\n", "import { NO_RETRY_INCREMENT, RETRY_COST, TIMEOUT_RETRY_COST } from \"../../util-retry/constants\";\nexport const getDefaultRetryQuota = (initialRetryTokens, options) => {\n const MAX_CAPACITY = initialRetryTokens;\n const noRetryIncrement = options?.noRetryIncrement ?? NO_RETRY_INCREMENT;\n const retryCost = options?.retryCost ?? RETRY_COST;\n const timeoutRetryCost = options?.timeoutRetryCost ?? TIMEOUT_RETRY_COST;\n let availableCapacity = initialRetryTokens;\n const getCapacityAmount = (error) => (error.name === \"TimeoutError\" ? timeoutRetryCost : retryCost);\n const hasRetryTokens = (error) => getCapacityAmount(error) <= availableCapacity;\n const retrieveRetryTokens = (error) => {\n if (!hasRetryTokens(error)) {\n throw new Error(\"No retry token available\");\n }\n const capacityAmount = getCapacityAmount(error);\n availableCapacity -= capacityAmount;\n return capacityAmount;\n };\n const releaseRetryTokens = (capacityReleaseAmount) => {\n availableCapacity += capacityReleaseAmount ?? noRetryIncrement;\n availableCapacity = Math.min(availableCapacity, MAX_CAPACITY);\n };\n return Object.freeze({\n hasRetryTokens,\n retrieveRetryTokens,\n releaseRetryTokens,\n });\n};\n", "import { MAXIMUM_RETRY_DELAY } from \"../../util-retry/constants\";\nexport const defaultDelayDecider = (delayBase, attempts) => Math.floor(Math.min(MAXIMUM_RETRY_DELAY, Math.random() * 2 ** attempts * delayBase));\n", "import { isClockSkewError, isRetryableByTrait, isThrottlingError, isTransientError, } from \"../../service-error-classification/service-error-classification\";\nexport const defaultRetryDecider = (error) => {\n if (!error) {\n return false;\n }\n return isRetryableByTrait(error) || isClockSkewError(error) || isThrottlingError(error) || isTransientError(error);\n};\n", "import { HttpRequest, HttpResponse } from \"@smithy/core/protocols\";\nimport { v4 } from \"@smithy/core/serde\";\nimport { isThrottlingError } from \"../../service-error-classification/service-error-classification\";\nimport { DEFAULT_MAX_ATTEMPTS, RETRY_MODES } from \"../../util-retry/config\";\nimport { DEFAULT_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, INVOCATION_ID_HEADER, REQUEST_HEADER, THROTTLING_RETRY_DELAY_BASE, } from \"../../util-retry/constants\";\nimport { asSdkError } from \"../util\";\nimport { getDefaultRetryQuota } from \"./defaultRetryQuota\";\nimport { defaultDelayDecider } from \"./delayDecider\";\nimport { defaultRetryDecider } from \"./retryDecider\";\nexport class StandardRetryStrategy {\n maxAttemptsProvider;\n retryDecider;\n delayDecider;\n retryQuota;\n mode = RETRY_MODES.STANDARD;\n constructor(maxAttemptsProvider, options) {\n this.maxAttemptsProvider = maxAttemptsProvider;\n this.retryDecider = options?.retryDecider ?? defaultRetryDecider;\n this.delayDecider = options?.delayDecider ?? defaultDelayDecider;\n this.retryQuota = options?.retryQuota ?? getDefaultRetryQuota(INITIAL_RETRY_TOKENS);\n }\n shouldRetry(error, attempts, maxAttempts) {\n return attempts < maxAttempts && this.retryDecider(error) && this.retryQuota.hasRetryTokens(error);\n }\n async getMaxAttempts() {\n let maxAttempts;\n try {\n maxAttempts = await this.maxAttemptsProvider();\n }\n catch (error) {\n maxAttempts = DEFAULT_MAX_ATTEMPTS;\n }\n return maxAttempts;\n }\n async retry(next, args, options) {\n let retryTokenAmount;\n let attempts = 0;\n let totalDelay = 0;\n const maxAttempts = await this.getMaxAttempts();\n const { request } = args;\n if (HttpRequest.isInstance(request)) {\n request.headers[INVOCATION_ID_HEADER] = v4();\n }\n while (true) {\n try {\n if (HttpRequest.isInstance(request)) {\n request.headers[REQUEST_HEADER] = `attempt=${attempts + 1}; max=${maxAttempts}`;\n }\n if (options?.beforeRequest) {\n await options.beforeRequest();\n }\n const { response, output } = await next(args);\n if (options?.afterRequest) {\n options.afterRequest(response);\n }\n this.retryQuota.releaseRetryTokens(retryTokenAmount);\n output.$metadata.attempts = attempts + 1;\n output.$metadata.totalRetryDelay = totalDelay;\n return { response, output };\n }\n catch (e) {\n const err = asSdkError(e);\n attempts++;\n if (this.shouldRetry(err, attempts, maxAttempts)) {\n retryTokenAmount = this.retryQuota.retrieveRetryTokens(err);\n const delayFromDecider = this.delayDecider(isThrottlingError(err) ? THROTTLING_RETRY_DELAY_BASE : DEFAULT_RETRY_DELAY_BASE, attempts);\n const delayFromResponse = getDelayFromRetryAfterHeader(err.$response);\n const delay = Math.max(delayFromResponse || 0, delayFromDecider);\n totalDelay += delay;\n await new Promise((resolve) => setTimeout(resolve, delay));\n continue;\n }\n if (!err.$metadata) {\n err.$metadata = {};\n }\n err.$metadata.attempts = attempts;\n err.$metadata.totalRetryDelay = totalDelay;\n throw err;\n }\n }\n }\n}\nconst getDelayFromRetryAfterHeader = (response) => {\n if (!HttpResponse.isInstance(response))\n return;\n const retryAfterHeaderName = Object.keys(response.headers).find((key) => key.toLowerCase() === \"retry-after\");\n if (!retryAfterHeaderName)\n return;\n const retryAfter = response.headers[retryAfterHeaderName];\n const retryAfterSeconds = Number(retryAfter);\n if (!Number.isNaN(retryAfterSeconds))\n return retryAfterSeconds * 1000;\n const retryAfterDate = new Date(retryAfter);\n return retryAfterDate.getTime() - Date.now();\n};\n", "import { DefaultRateLimiter } from \"../../util-retry/DefaultRateLimiter\";\nimport { RETRY_MODES } from \"../../util-retry/config\";\nimport { StandardRetryStrategy } from \"./StandardRetryStrategy\";\nexport class AdaptiveRetryStrategy extends StandardRetryStrategy {\n rateLimiter;\n constructor(maxAttemptsProvider, options) {\n const { rateLimiter, ...superOptions } = options ?? {};\n super(maxAttemptsProvider, superOptions);\n this.rateLimiter = rateLimiter ?? new DefaultRateLimiter();\n this.mode = RETRY_MODES.ADAPTIVE;\n }\n async retry(next, args) {\n return super.retry(next, args, {\n beforeRequest: async () => {\n return this.rateLimiter.getSendToken();\n },\n afterRequest: (response) => {\n this.rateLimiter.updateClientSendingRate(response);\n },\n });\n }\n}\n", "import { normalizeProvider } from \"@smithy/core/client\";\nimport { AdaptiveRetryStrategy } from \"../util-retry/AdaptiveRetryStrategy\";\nimport { StandardRetryStrategy } from \"../util-retry/StandardRetryStrategy\";\nimport { DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE, RETRY_MODES } from \"../util-retry/config\";\nexport const ENV_MAX_ATTEMPTS = \"AWS_MAX_ATTEMPTS\";\nexport const CONFIG_MAX_ATTEMPTS = \"max_attempts\";\nexport const NODE_MAX_ATTEMPT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => {\n const value = env[ENV_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Environment variable ${ENV_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n configFileSelector: (profile) => {\n const value = profile[CONFIG_MAX_ATTEMPTS];\n if (!value)\n return undefined;\n const maxAttempt = parseInt(value);\n if (Number.isNaN(maxAttempt)) {\n throw new Error(`Shared config file entry ${CONFIG_MAX_ATTEMPTS} mast be a number, got \"${value}\"`);\n }\n return maxAttempt;\n },\n default: DEFAULT_MAX_ATTEMPTS,\n};\nexport const resolveRetryConfig = (input) => {\n const { retryStrategy, retryMode } = input;\n const maxAttempts = normalizeProvider(input.maxAttempts ?? DEFAULT_MAX_ATTEMPTS);\n let controller = retryStrategy\n ? Promise.resolve(retryStrategy)\n : undefined;\n const getDefault = async () => (await normalizeProvider(retryMode)()) === RETRY_MODES.ADAPTIVE\n ? new AdaptiveRetryStrategy(maxAttempts)\n : new StandardRetryStrategy(maxAttempts);\n return Object.assign(input, {\n maxAttempts,\n retryStrategy: () => (controller ??= getDefault()),\n });\n};\nexport const ENV_RETRY_MODE = \"AWS_RETRY_MODE\";\nexport const CONFIG_RETRY_MODE = \"retry_mode\";\nexport const NODE_RETRY_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_RETRY_MODE],\n configFileSelector: (profile) => profile[CONFIG_RETRY_MODE],\n default: DEFAULT_RETRY_MODE,\n};\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nimport { INVOCATION_ID_HEADER, REQUEST_HEADER } from \"../util-retry/constants\";\nexport const omitRetryHeadersMiddleware = () => (next) => async (args) => {\n const { request } = args;\n if (HttpRequest.isInstance(request)) {\n delete request.headers[INVOCATION_ID_HEADER];\n delete request.headers[REQUEST_HEADER];\n }\n return next(args);\n};\nexport const omitRetryHeadersMiddlewareOptions = {\n name: \"omitRetryHeadersMiddleware\",\n tags: [\"RETRY\", \"HEADERS\", \"OMIT_RETRY_HEADERS\"],\n relation: \"before\",\n toMiddleware: \"awsAuthMiddleware\",\n override: true,\n};\nexport const getOmitRetryHeadersPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(omitRetryHeadersMiddleware(), omitRetryHeadersMiddlewareOptions);\n },\n});\n", "import { isStreamingPayload } from \"./middleware-retry/isStreamingPayload/isStreamingPayload\";\nimport { bindGetRetryPlugin, bindRetryMiddleware } from \"./middleware-retry/retryMiddleware\";\nexport { isRetryableByTrait, isClockSkewError, isClockSkewCorrectedError, isBrowserNetworkError, isThrottlingError, isTransientError, isServerError, isNodeJsHttp2TransientError, } from \"./service-error-classification/service-error-classification\";\nexport { AdaptiveRetryStrategy } from \"./util-retry/AdaptiveRetryStrategy\";\nexport { ConfiguredRetryStrategy } from \"./util-retry/ConfiguredRetryStrategy\";\nexport { DefaultRateLimiter } from \"./util-retry/DefaultRateLimiter\";\nexport { StandardRetryStrategy } from \"./util-retry/StandardRetryStrategy\";\nexport { RETRY_MODES, DEFAULT_MAX_ATTEMPTS, DEFAULT_RETRY_MODE } from \"./util-retry/config\";\nexport { DEFAULT_RETRY_DELAY_BASE, MAXIMUM_RETRY_DELAY, THROTTLING_RETRY_DELAY_BASE, INITIAL_RETRY_TOKENS, RETRY_COST, TIMEOUT_RETRY_COST, NO_RETRY_INCREMENT, INVOCATION_ID_HEADER, REQUEST_HEADER, } from \"./util-retry/constants\";\nexport { Retry } from \"./util-retry/retries-2026-config\";\nexport { AdaptiveRetryStrategy as DeprecatedAdaptiveRetryStrategy, } from \"./middleware-retry/retry-pre-sra-deprecated/AdaptiveRetryStrategy\";\nexport { StandardRetryStrategy as DeprecatedStandardRetryStrategy, } from \"./middleware-retry/retry-pre-sra-deprecated/StandardRetryStrategy\";\nexport { defaultDelayDecider } from \"./middleware-retry/retry-pre-sra-deprecated/delayDecider\";\nexport { defaultRetryDecider } from \"./middleware-retry/retry-pre-sra-deprecated/retryDecider\";\nexport { ENV_MAX_ATTEMPTS, CONFIG_MAX_ATTEMPTS, NODE_MAX_ATTEMPT_CONFIG_OPTIONS, ENV_RETRY_MODE, CONFIG_RETRY_MODE, NODE_RETRY_MODE_CONFIG_OPTIONS, resolveRetryConfig, } from \"./middleware-retry/configurations\";\nexport { omitRetryHeadersMiddleware, omitRetryHeadersMiddlewareOptions, getOmitRetryHeadersPlugin, } from \"./middleware-retry/omitRetryHeadersMiddleware\";\nexport { retryMiddlewareOptions } from \"./middleware-retry/retryMiddleware\";\nexport { getRetryAfterHint } from \"./middleware-retry/parseRetryAfterHeader\";\nexport const retryMiddleware = bindRetryMiddleware(isStreamingPayload);\nexport const getRetryPlugin = bindGetRetryPlugin(isStreamingPayload);\n", "import { Retry } from \"@smithy/core/retry\";\nRetry.v2026 ||= typeof process === \"object\" && process.env?.AWS_NEW_RETRIES_2026 === \"true\";\nexport function setFeature(context, feature, value) {\n if (!context.__aws_sdk_context) {\n context.__aws_sdk_context = {\n features: {},\n };\n }\n else if (!context.__aws_sdk_context.features) {\n context.__aws_sdk_context.features = {};\n }\n context.__aws_sdk_context.features[feature] = value;\n}\n", "export function setTokenFeature(token, feature, value) {\n if (!token.$source) {\n token.$source = {};\n }\n token.$source[feature] = value;\n return token;\n}\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nexport function resolveHostHeaderConfig(input) {\n return input;\n}\nexport const hostHeaderMiddleware = (options) => (next) => async (args) => {\n if (!HttpRequest.isInstance(args.request))\n return next(args);\n const { request } = args;\n const { handlerProtocol = \"\" } = options.requestHandler.metadata || {};\n if (handlerProtocol.indexOf(\"h2\") >= 0 && !request.headers[\":authority\"]) {\n delete request.headers[\"host\"];\n request.headers[\":authority\"] = request.hostname + (request.port ? \":\" + request.port : \"\");\n }\n else if (!request.headers[\"host\"]) {\n let host = request.hostname;\n if (request.port != null)\n host += `:${request.port}`;\n request.headers[\"host\"] = host;\n }\n return next(args);\n};\nexport const hostHeaderMiddlewareOptions = {\n name: \"hostHeaderMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"HOST\"],\n override: true,\n};\nexport const getHostHeaderPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(hostHeaderMiddleware(options), hostHeaderMiddlewareOptions);\n },\n});\n", "export const loggerMiddleware = () => (next, context) => async (args) => {\n try {\n const response = await next(args);\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog, overrideOutputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n const outputFilterSensitiveLog = overrideOutputFilterSensitiveLog ?? context.outputFilterSensitiveLog;\n const { $metadata, ...outputWithoutMetadata } = response.output;\n logger?.info?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n output: outputFilterSensitiveLog(outputWithoutMetadata),\n metadata: $metadata,\n });\n return response;\n }\n catch (error) {\n const { clientName, commandName, logger, dynamoDbDocumentClientOptions = {} } = context;\n const { overrideInputFilterSensitiveLog } = dynamoDbDocumentClientOptions;\n const inputFilterSensitiveLog = overrideInputFilterSensitiveLog ?? context.inputFilterSensitiveLog;\n logger?.error?.({\n clientName,\n commandName,\n input: inputFilterSensitiveLog(args.input),\n error,\n metadata: error.$metadata,\n });\n throw error;\n }\n};\nexport const loggerMiddlewareOptions = {\n name: \"loggerMiddleware\",\n tags: [\"LOGGER\"],\n step: \"initialize\",\n override: true,\n};\nexport const getLoggerPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(loggerMiddleware(), loggerMiddlewareOptions);\n },\n});\n", "export const recursionDetectionMiddlewareOptions = {\n step: \"build\",\n tags: [\"RECURSION_DETECTION\"],\n name: \"recursionDetectionMiddleware\",\n override: true,\n priority: \"low\",\n};\n", "const PROTECTED_KEYS = {\n REQUEST_ID: Symbol.for(\"_AWS_LAMBDA_REQUEST_ID\"),\n X_RAY_TRACE_ID: Symbol.for(\"_AWS_LAMBDA_X_RAY_TRACE_ID\"),\n TENANT_ID: Symbol.for(\"_AWS_LAMBDA_TENANT_ID\"),\n};\nconst NO_GLOBAL_AWS_LAMBDA = [\"true\", \"1\"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA ?? \"\");\nif (!NO_GLOBAL_AWS_LAMBDA) {\n globalThis.awslambda = globalThis.awslambda || {};\n}\nclass InvokeStoreBase {\n static PROTECTED_KEYS = PROTECTED_KEYS;\n isProtectedKey(key) {\n return Object.values(PROTECTED_KEYS).includes(key);\n }\n getRequestId() {\n return this.get(PROTECTED_KEYS.REQUEST_ID) ?? \"-\";\n }\n getXRayTraceId() {\n return this.get(PROTECTED_KEYS.X_RAY_TRACE_ID);\n }\n getTenantId() {\n return this.get(PROTECTED_KEYS.TENANT_ID);\n }\n}\nclass InvokeStoreSingle extends InvokeStoreBase {\n currentContext;\n getContext() {\n return this.currentContext;\n }\n hasContext() {\n return this.currentContext !== undefined;\n }\n get(key) {\n return this.currentContext?.[key];\n }\n set(key, value) {\n if (this.isProtectedKey(key)) {\n throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);\n }\n this.currentContext = this.currentContext || {};\n this.currentContext[key] = value;\n }\n run(context, fn) {\n this.currentContext = context;\n return fn();\n }\n}\nclass InvokeStoreMulti extends InvokeStoreBase {\n als;\n static async create() {\n const instance = new InvokeStoreMulti();\n const asyncHooks = await import('node:async_hooks');\n instance.als = new asyncHooks.AsyncLocalStorage();\n return instance;\n }\n getContext() {\n return this.als.getStore();\n }\n hasContext() {\n return this.als.getStore() !== undefined;\n }\n get(key) {\n return this.als.getStore()?.[key];\n }\n set(key, value) {\n if (this.isProtectedKey(key)) {\n throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);\n }\n const store = this.als.getStore();\n if (!store) {\n throw new Error(\"No context available\");\n }\n store[key] = value;\n }\n run(context, fn) {\n return this.als.run(context, fn);\n }\n}\nvar InvokeStore;\n(function (InvokeStore) {\n let instance = null;\n async function getInstanceAsync() {\n if (!instance) {\n instance = (async () => {\n const isMulti = \"AWS_LAMBDA_MAX_CONCURRENCY\" in process.env;\n const newInstance = isMulti\n ? await InvokeStoreMulti.create()\n : new InvokeStoreSingle();\n if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda?.InvokeStore) {\n return globalThis.awslambda.InvokeStore;\n }\n else if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda) {\n globalThis.awslambda.InvokeStore = newInstance;\n return newInstance;\n }\n else {\n return newInstance;\n }\n })();\n }\n return instance;\n }\n InvokeStore.getInstanceAsync = getInstanceAsync;\n InvokeStore._testing = process.env.AWS_LAMBDA_BENCHMARK_MODE === \"1\"\n ? {\n reset: () => {\n instance = null;\n if (globalThis.awslambda?.InvokeStore) {\n delete globalThis.awslambda.InvokeStore;\n }\n globalThis.awslambda = { InvokeStore: undefined };\n },\n }\n : undefined;\n})(InvokeStore || (InvokeStore = {}));\n\nexport { InvokeStore, InvokeStoreBase };\n", "import { InvokeStore } from \"@aws/lambda-invoke-store\";\nimport { HttpRequest } from \"@smithy/core/protocols\";\nconst TRACE_ID_HEADER_NAME = \"X-Amzn-Trace-Id\";\nconst ENV_LAMBDA_FUNCTION_NAME = \"AWS_LAMBDA_FUNCTION_NAME\";\nconst ENV_TRACE_ID = \"_X_AMZN_TRACE_ID\";\nexport const recursionDetectionMiddleware = () => (next) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request)) {\n return next(args);\n }\n const traceIdHeader = Object.keys(request.headers ?? {}).find((h) => h.toLowerCase() === TRACE_ID_HEADER_NAME.toLowerCase()) ??\n TRACE_ID_HEADER_NAME;\n if (request.headers.hasOwnProperty(traceIdHeader)) {\n return next(args);\n }\n const functionName = process.env[ENV_LAMBDA_FUNCTION_NAME];\n const traceIdFromEnv = process.env[ENV_TRACE_ID];\n const invokeStore = await InvokeStore.getInstanceAsync();\n const traceIdFromInvokeStore = invokeStore?.getXRayTraceId();\n const traceId = traceIdFromInvokeStore ?? traceIdFromEnv;\n const nonEmptyString = (str) => typeof str === \"string\" && str.length > 0;\n if (nonEmptyString(functionName) && nonEmptyString(traceId)) {\n request.headers[TRACE_ID_HEADER_NAME] = traceId;\n }\n return next({\n ...args,\n request,\n });\n};\n", "import { recursionDetectionMiddlewareOptions } from \"./configuration\";\nimport { recursionDetectionMiddleware } from \"./recursionDetectionMiddleware\";\nexport const getRecursionDetectionPlugin = (options) => ({\n applyToStack: (clientStack) => {\n clientStack.add(recursionDetectionMiddleware(), recursionDetectionMiddlewareOptions);\n },\n});\n", "import { SMITHY_CONTEXT_KEY } from \"@smithy/types\";\nexport const getSmithyContext = (context) => context[SMITHY_CONTEXT_KEY] || (context[SMITHY_CONTEXT_KEY] = {});\n", "export const resolveAuthOptions = (candidateAuthOptions, authSchemePreference) => {\n if (!authSchemePreference || authSchemePreference.length === 0) {\n return candidateAuthOptions;\n }\n const preferredAuthOptions = [];\n for (const preferredSchemeName of authSchemePreference) {\n for (const candidateAuthOption of candidateAuthOptions) {\n const candidateAuthSchemeName = candidateAuthOption.schemeId.split(\"#\")[1];\n if (candidateAuthSchemeName === preferredSchemeName) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n }\n for (const candidateAuthOption of candidateAuthOptions) {\n if (!preferredAuthOptions.find(({ schemeId }) => schemeId === candidateAuthOption.schemeId)) {\n preferredAuthOptions.push(candidateAuthOption);\n }\n }\n return preferredAuthOptions;\n};\n", "import { getSmithyContext } from \"@smithy/core/client\";\nimport { resolveAuthOptions } from \"./resolveAuthOptions\";\nfunction convertHttpAuthSchemesToMap(httpAuthSchemes) {\n const map = new Map();\n for (const scheme of httpAuthSchemes) {\n map.set(scheme.schemeId, scheme);\n }\n return map;\n}\nexport const httpAuthSchemeMiddleware = (config, mwOptions) => (next, context) => async (args) => {\n const options = config.httpAuthSchemeProvider(await mwOptions.httpAuthSchemeParametersProvider(config, context, args.input));\n const authSchemePreference = config.authSchemePreference ? await config.authSchemePreference() : [];\n const resolvedOptions = resolveAuthOptions(options, authSchemePreference);\n const authSchemes = convertHttpAuthSchemesToMap(config.httpAuthSchemes);\n const smithyContext = getSmithyContext(context);\n const failureReasons = [];\n for (const option of resolvedOptions) {\n const scheme = authSchemes.get(option.schemeId);\n if (!scheme) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` was not enabled for this service.`);\n continue;\n }\n const identityProvider = scheme.identityProvider(await mwOptions.identityProviderConfigProvider(config));\n if (!identityProvider) {\n failureReasons.push(`HttpAuthScheme \\`${option.schemeId}\\` did not have an IdentityProvider configured.`);\n continue;\n }\n const { identityProperties = {}, signingProperties = {} } = option.propertiesExtractor?.(config, context) || {};\n option.identityProperties = Object.assign(option.identityProperties || {}, identityProperties);\n option.signingProperties = Object.assign(option.signingProperties || {}, signingProperties);\n smithyContext.selectedHttpAuthScheme = {\n httpAuthOption: option,\n identity: await identityProvider(option.identityProperties),\n signer: scheme.signer,\n };\n break;\n }\n if (!smithyContext.selectedHttpAuthScheme) {\n throw new Error(failureReasons.join(\"\\n\"));\n }\n return next(args);\n};\n", "import { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeEndpointRuleSetMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: \"endpointV2Middleware\",\n};\nexport const getHttpAuthSchemeEndpointRuleSetPlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeEndpointRuleSetMiddlewareOptions);\n },\n});\n", "import { httpAuthSchemeMiddleware } from \"./httpAuthSchemeMiddleware\";\nexport const httpAuthSchemeMiddlewareOptions = {\n step: \"serialize\",\n tags: [\"HTTP_AUTH_SCHEME\"],\n name: \"httpAuthSchemeMiddleware\",\n override: true,\n relation: \"before\",\n toMiddleware: \"serializerMiddleware\",\n};\nexport const getHttpAuthSchemePlugin = (config, { httpAuthSchemeParametersProvider, identityProviderConfigProvider, }) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpAuthSchemeMiddleware(config, {\n httpAuthSchemeParametersProvider,\n identityProviderConfigProvider,\n }), httpAuthSchemeMiddlewareOptions);\n },\n});\n", "export * from \"./httpAuthSchemeMiddleware\";\nexport * from \"./getHttpAuthSchemeEndpointRuleSetPlugin\";\nexport * from \"./getHttpAuthSchemePlugin\";\n", "import { getSmithyContext } from \"@smithy/core/client\";\nimport { HttpRequest } from \"@smithy/core/protocols\";\nconst defaultErrorHandler = (signingProperties) => (error) => {\n throw error;\n};\nconst defaultSuccessHandler = (httpResponse, signingProperties) => { };\nexport const httpSigningMiddleware = (config) => (next, context) => async (args) => {\n if (!HttpRequest.isInstance(args.request)) {\n return next(args);\n }\n const smithyContext = getSmithyContext(context);\n const scheme = smithyContext.selectedHttpAuthScheme;\n if (!scheme) {\n throw new Error(`No HttpAuthScheme was selected: unable to sign request`);\n }\n const { httpAuthOption: { signingProperties = {} }, identity, signer, } = scheme;\n const output = await next({\n ...args,\n request: await signer.sign(args.request, identity, signingProperties),\n }).catch((signer.errorHandler || defaultErrorHandler)(signingProperties));\n (signer.successHandler || defaultSuccessHandler)(output.response, signingProperties);\n return output;\n};\n", "import { httpSigningMiddleware } from \"./httpSigningMiddleware\";\nexport const httpSigningMiddlewareOptions = {\n step: \"finalizeRequest\",\n tags: [\"HTTP_SIGNING\"],\n name: \"httpSigningMiddleware\",\n aliases: [\"apiKeyMiddleware\", \"tokenMiddleware\", \"awsAuthMiddleware\"],\n override: true,\n relation: \"after\",\n toMiddleware: \"retryMiddleware\",\n};\nexport const getHttpSigningPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.addRelativeTo(httpSigningMiddleware(config), httpSigningMiddlewareOptions);\n },\n});\n", "export * from \"./httpSigningMiddleware\";\nexport * from \"./getHttpSigningMiddleware\";\n", "export const normalizeProvider = (input) => {\n if (typeof input === \"function\")\n return input;\n const promisified = Promise.resolve(input);\n return () => promisified;\n};\n", "const makePagedClientRequest = async (CommandCtor, client, input, withCommand = (_) => _, ...args) => {\n let command = new CommandCtor(input);\n command = withCommand(command) ?? command;\n return await client.send(command, ...args);\n};\nexport function createPaginator(ClientCtor, CommandCtor, inputTokenName, outputTokenName, pageSizeTokenName) {\n return async function* paginateOperation(config, input, ...additionalArguments) {\n const _input = input;\n let token = config.startingToken ?? _input[inputTokenName];\n let hasNext = true;\n let page;\n while (hasNext) {\n _input[inputTokenName] = token;\n if (pageSizeTokenName) {\n _input[pageSizeTokenName] = _input[pageSizeTokenName] ?? config.pageSize;\n }\n if (config.client instanceof ClientCtor) {\n page = await makePagedClientRequest(CommandCtor, config.client, input, config.withCommand, ...additionalArguments);\n }\n else {\n throw new Error(`Invalid client, expected instance of ${ClientCtor.name}`);\n }\n yield page;\n const prevToken = token;\n token = get(page, outputTokenName);\n hasNext = !!(token && (!config.stopOnSameToken || token !== prevToken));\n }\n return undefined;\n };\n}\nconst get = (fromObject, path) => {\n let cursor = fromObject;\n const pathComponents = path.split(\".\");\n for (const step of pathComponents) {\n if (!cursor || typeof cursor !== \"object\") {\n return undefined;\n }\n cursor = cursor[step];\n }\n return cursor;\n};\n", "export { requestBuilder } from \"@smithy/core/protocols\";\n", "export function setFeature(context, feature, value) {\n if (!context.__smithy_context) {\n context.__smithy_context = {\n features: {},\n };\n }\n else if (!context.__smithy_context.features) {\n context.__smithy_context.features = {};\n }\n context.__smithy_context.features[feature] = value;\n}\n", "export class DefaultIdentityProviderConfig {\n authSchemes = new Map();\n constructor(config) {\n for (const key in config) {\n const value = config[key];\n if (value !== undefined) {\n this.authSchemes.set(key, value);\n }\n }\n }\n getIdentityProvider(schemeId) {\n return this.authSchemes.get(schemeId);\n }\n}\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nimport { HttpApiKeyAuthLocation, } from \"@smithy/types\";\nexport class HttpApiKeyAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n if (!signingProperties) {\n throw new Error(\"request could not be signed with `apiKey` since the `name` and `in` signer properties are missing\");\n }\n if (!signingProperties.name) {\n throw new Error(\"request could not be signed with `apiKey` since the `name` signer property is missing\");\n }\n if (!signingProperties.in) {\n throw new Error(\"request could not be signed with `apiKey` since the `in` signer property is missing\");\n }\n if (!identity.apiKey) {\n throw new Error(\"request could not be signed with `apiKey` since the `apiKey` is not defined\");\n }\n const clonedRequest = HttpRequest.clone(httpRequest);\n if (signingProperties.in === HttpApiKeyAuthLocation.QUERY) {\n clonedRequest.query[signingProperties.name] = identity.apiKey;\n }\n else if (signingProperties.in === HttpApiKeyAuthLocation.HEADER) {\n clonedRequest.headers[signingProperties.name] = signingProperties.scheme\n ? `${signingProperties.scheme} ${identity.apiKey}`\n : identity.apiKey;\n }\n else {\n throw new Error(\"request can only be signed with `apiKey` locations `query` or `header`, \" +\n \"but found: `\" +\n signingProperties.in +\n \"`\");\n }\n return clonedRequest;\n }\n}\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nexport class HttpBearerAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n const clonedRequest = HttpRequest.clone(httpRequest);\n if (!identity.token) {\n throw new Error(\"request could not be signed with `token` since the `token` is not defined\");\n }\n clonedRequest.headers[\"Authorization\"] = `Bearer ${identity.token}`;\n return clonedRequest;\n }\n}\n", "export class NoAuthSigner {\n async sign(httpRequest, identity, signingProperties) {\n return httpRequest;\n }\n}\n", "export * from \"./httpApiKeyAuth\";\nexport * from \"./httpBearerAuth\";\nexport * from \"./noAuth\";\n", "export const createIsIdentityExpiredFunction = (expirationMs) => function isIdentityExpired(identity) {\n return doesIdentityRequireRefresh(identity) && identity.expiration.getTime() - Date.now() < expirationMs;\n};\nexport const EXPIRATION_MS = 300_000;\nexport const isIdentityExpired = createIsIdentityExpiredFunction(EXPIRATION_MS);\nexport const doesIdentityRequireRefresh = (identity) => identity.expiration !== undefined;\nexport const memoizeIdentityProvider = (provider, isExpired, requiresRefresh) => {\n if (provider === undefined) {\n return undefined;\n }\n const normalizedProvider = typeof provider !== \"function\" ? async () => Promise.resolve(provider) : provider;\n let resolved;\n let pending;\n let hasResult;\n let isConstant = false;\n const coalesceProvider = async (options) => {\n if (!pending) {\n pending = normalizedProvider(options);\n }\n try {\n resolved = await pending;\n hasResult = true;\n isConstant = false;\n }\n finally {\n pending = undefined;\n }\n return resolved;\n };\n if (isExpired === undefined) {\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n return resolved;\n };\n }\n return async (options) => {\n if (!hasResult || options?.forceRefresh) {\n resolved = await coalesceProvider(options);\n }\n if (isConstant) {\n return resolved;\n }\n if (!requiresRefresh(resolved)) {\n isConstant = true;\n return resolved;\n }\n if (isExpired(resolved)) {\n await coalesceProvider(options);\n return resolved;\n }\n return resolved;\n };\n};\n", "export * from \"./DefaultIdentityProviderConfig\";\nexport * from \"./httpAuthSchemes\";\nexport * from \"./memoizeIdentityProvider\";\n", "export * from \"./getSmithyContext\";\nexport * from \"./middleware-http-auth-scheme\";\nexport * from \"./middleware-http-signing\";\nexport * from \"./normalizeProvider\";\nexport { createPaginator } from \"./pagination/createPaginator\";\nexport * from \"./request-builder/requestBuilder\";\nexport * from \"./setFeature\";\nexport * from \"./util-identity-and-auth\";\n", "import { normalizeProvider } from \"@smithy/core\";\nexport const DEFAULT_UA_APP_ID = undefined;\nfunction isValidUserAgentAppId(appId) {\n if (appId === undefined) {\n return true;\n }\n return typeof appId === \"string\" && appId.length <= 50;\n}\nexport function resolveUserAgentConfig(input) {\n const normalizedAppIdProvider = normalizeProvider(input.userAgentAppId ?? DEFAULT_UA_APP_ID);\n const { customUserAgent } = input;\n return Object.assign(input, {\n customUserAgent: typeof customUserAgent === \"string\" ? [[customUserAgent]] : customUserAgent,\n userAgentAppId: async () => {\n const appId = await normalizedAppIdProvider();\n if (!isValidUserAgentAppId(appId)) {\n const logger = input.logger?.constructor?.name === \"NoOpLogger\" || !input.logger ? console : input.logger;\n if (typeof appId !== \"string\") {\n logger?.warn(\"userAgentAppId must be a string or undefined.\");\n }\n else if (appId.length > 50) {\n logger?.warn(\"The provided userAgentAppId exceeds the maximum length of 50 characters.\");\n }\n }\n return appId;\n },\n });\n}\n", "export const partitionsInfo = { \"partitions\": [{ \"id\": \"aws\", \"outputs\": { \"dnsSuffix\": \"amazonaws.com\", \"dualStackDnsSuffix\": \"api.aws\", \"implicitGlobalRegion\": \"us-east-1\", \"name\": \"aws\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^(us|eu|ap|sa|ca|me|af|il|mx)\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"af-south-1\": { \"description\": \"Africa (Cape Town)\" }, \"ap-east-1\": { \"description\": \"Asia Pacific (Hong Kong)\" }, \"ap-east-2\": { \"description\": \"Asia Pacific (Taipei)\" }, \"ap-northeast-1\": { \"description\": \"Asia Pacific (Tokyo)\" }, \"ap-northeast-2\": { \"description\": \"Asia Pacific (Seoul)\" }, \"ap-northeast-3\": { \"description\": \"Asia Pacific (Osaka)\" }, \"ap-south-1\": { \"description\": \"Asia Pacific (Mumbai)\" }, \"ap-south-2\": { \"description\": \"Asia Pacific (Hyderabad)\" }, \"ap-southeast-1\": { \"description\": \"Asia Pacific (Singapore)\" }, \"ap-southeast-2\": { \"description\": \"Asia Pacific (Sydney)\" }, \"ap-southeast-3\": { \"description\": \"Asia Pacific (Jakarta)\" }, \"ap-southeast-4\": { \"description\": \"Asia Pacific (Melbourne)\" }, \"ap-southeast-5\": { \"description\": \"Asia Pacific (Malaysia)\" }, \"ap-southeast-6\": { \"description\": \"Asia Pacific (New Zealand)\" }, \"ap-southeast-7\": { \"description\": \"Asia Pacific (Thailand)\" }, \"aws-global\": { \"description\": \"aws global region\" }, \"ca-central-1\": { \"description\": \"Canada (Central)\" }, \"ca-west-1\": { \"description\": \"Canada West (Calgary)\" }, \"eu-central-1\": { \"description\": \"Europe (Frankfurt)\" }, \"eu-central-2\": { \"description\": \"Europe (Zurich)\" }, \"eu-north-1\": { \"description\": \"Europe (Stockholm)\" }, \"eu-south-1\": { \"description\": \"Europe (Milan)\" }, \"eu-south-2\": { \"description\": \"Europe (Spain)\" }, \"eu-west-1\": { \"description\": \"Europe (Ireland)\" }, \"eu-west-2\": { \"description\": \"Europe (London)\" }, \"eu-west-3\": { \"description\": \"Europe (Paris)\" }, \"il-central-1\": { \"description\": \"Israel (Tel Aviv)\" }, \"me-central-1\": { \"description\": \"Middle East (UAE)\" }, \"me-south-1\": { \"description\": \"Middle East (Bahrain)\" }, \"mx-central-1\": { \"description\": \"Mexico (Central)\" }, \"sa-east-1\": { \"description\": \"South America (Sao Paulo)\" }, \"us-east-1\": { \"description\": \"US East (N. Virginia)\" }, \"us-east-2\": { \"description\": \"US East (Ohio)\" }, \"us-west-1\": { \"description\": \"US West (N. California)\" }, \"us-west-2\": { \"description\": \"US West (Oregon)\" } } }, { \"id\": \"aws-cn\", \"outputs\": { \"dnsSuffix\": \"amazonaws.com.cn\", \"dualStackDnsSuffix\": \"api.amazonwebservices.com.cn\", \"implicitGlobalRegion\": \"cn-northwest-1\", \"name\": \"aws-cn\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^cn\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-cn-global\": { \"description\": \"aws-cn global region\" }, \"cn-north-1\": { \"description\": \"China (Beijing)\" }, \"cn-northwest-1\": { \"description\": \"China (Ningxia)\" } } }, { \"id\": \"aws-eusc\", \"outputs\": { \"dnsSuffix\": \"amazonaws.eu\", \"dualStackDnsSuffix\": \"api.amazonwebservices.eu\", \"implicitGlobalRegion\": \"eusc-de-east-1\", \"name\": \"aws-eusc\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^eusc\\\\-(de)\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"eusc-de-east-1\": { \"description\": \"AWS European Sovereign Cloud (Germany)\" } } }, { \"id\": \"aws-iso\", \"outputs\": { \"dnsSuffix\": \"c2s.ic.gov\", \"dualStackDnsSuffix\": \"api.aws.ic.gov\", \"implicitGlobalRegion\": \"us-iso-east-1\", \"name\": \"aws-iso\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^us\\\\-iso\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-iso-global\": { \"description\": \"aws-iso global region\" }, \"us-iso-east-1\": { \"description\": \"US ISO East\" }, \"us-iso-west-1\": { \"description\": \"US ISO WEST\" } } }, { \"id\": \"aws-iso-b\", \"outputs\": { \"dnsSuffix\": \"sc2s.sgov.gov\", \"dualStackDnsSuffix\": \"api.aws.scloud\", \"implicitGlobalRegion\": \"us-isob-east-1\", \"name\": \"aws-iso-b\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^us\\\\-isob\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-iso-b-global\": { \"description\": \"aws-iso-b global region\" }, \"us-isob-east-1\": { \"description\": \"US ISOB East (Ohio)\" }, \"us-isob-west-1\": { \"description\": \"US ISOB West\" } } }, { \"id\": \"aws-iso-e\", \"outputs\": { \"dnsSuffix\": \"cloud.adc-e.uk\", \"dualStackDnsSuffix\": \"api.cloud-aws.adc-e.uk\", \"implicitGlobalRegion\": \"eu-isoe-west-1\", \"name\": \"aws-iso-e\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^eu\\\\-isoe\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-iso-e-global\": { \"description\": \"aws-iso-e global region\" }, \"eu-isoe-west-1\": { \"description\": \"EU ISOE West\" } } }, { \"id\": \"aws-iso-f\", \"outputs\": { \"dnsSuffix\": \"csp.hci.ic.gov\", \"dualStackDnsSuffix\": \"api.aws.hci.ic.gov\", \"implicitGlobalRegion\": \"us-isof-south-1\", \"name\": \"aws-iso-f\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^us\\\\-isof\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-iso-f-global\": { \"description\": \"aws-iso-f global region\" }, \"us-isof-east-1\": { \"description\": \"US ISOF EAST\" }, \"us-isof-south-1\": { \"description\": \"US ISOF SOUTH\" } } }, { \"id\": \"aws-us-gov\", \"outputs\": { \"dnsSuffix\": \"amazonaws.com\", \"dualStackDnsSuffix\": \"api.aws\", \"implicitGlobalRegion\": \"us-gov-west-1\", \"name\": \"aws-us-gov\", \"supportsDualStack\": true, \"supportsFIPS\": true }, \"regionRegex\": \"^us\\\\-gov\\\\-\\\\w+\\\\-\\\\d+$\", \"regions\": { \"aws-us-gov-global\": { \"description\": \"aws-us-gov global region\" }, \"us-gov-east-1\": { \"description\": \"AWS GovCloud (US-East)\" }, \"us-gov-west-1\": { \"description\": \"AWS GovCloud (US-West)\" } } }], \"version\": \"1.1\" };\n", "import { partitionsInfo } from \"./partitions\";\nlet selectedPartitionsInfo = partitionsInfo;\nlet selectedUserAgentPrefix = \"\";\nexport const partition = (value) => {\n const { partitions } = selectedPartitionsInfo;\n for (const partition of partitions) {\n const { regions, outputs } = partition;\n for (const [region, regionData] of Object.entries(regions)) {\n if (region === value) {\n return {\n ...outputs,\n ...regionData,\n };\n }\n }\n }\n for (const partition of partitions) {\n const { regionRegex, outputs } = partition;\n if (new RegExp(regionRegex).test(value)) {\n return {\n ...outputs,\n };\n }\n }\n const DEFAULT_PARTITION = partitions.find((partition) => partition.id === \"aws\");\n if (!DEFAULT_PARTITION) {\n throw new Error(\"Provided region was not found in the partition array or regex,\" +\n \" and default partition with id 'aws' doesn't exist.\");\n }\n return {\n ...DEFAULT_PARTITION.outputs,\n };\n};\nexport const setPartitionInfo = (partitionsInfo, userAgentPrefix = \"\") => {\n selectedPartitionsInfo = partitionsInfo;\n selectedUserAgentPrefix = userAgentPrefix;\n};\nexport const useDefaultPartitionInfo = () => {\n setPartitionInfo(partitionsInfo, \"\");\n};\nexport const getUserAgentPrefix = () => selectedUserAgentPrefix;\n", "import { RETRY_MODES } from \"@smithy/core/retry\";\nimport { setFeature } from \"../setFeature\";\nconst ACCOUNT_ID_ENDPOINT_REGEX = /\\d{12}\\.ddb/;\nexport async function checkFeatures(context, config, args) {\n const request = args.request;\n if (request?.headers?.[\"smithy-protocol\"] === \"rpc-v2-cbor\") {\n setFeature(context, \"PROTOCOL_RPC_V2_CBOR\", \"M\");\n }\n if (typeof config.retryStrategy === \"function\") {\n const retryStrategy = await config.retryStrategy();\n if (typeof retryStrategy.mode === \"string\") {\n switch (retryStrategy.mode) {\n case RETRY_MODES.ADAPTIVE:\n setFeature(context, \"RETRY_MODE_ADAPTIVE\", \"F\");\n break;\n case RETRY_MODES.STANDARD:\n setFeature(context, \"RETRY_MODE_STANDARD\", \"E\");\n break;\n }\n }\n }\n if (typeof config.accountIdEndpointMode === \"function\") {\n const endpointV2 = context.endpointV2;\n if (String(endpointV2?.url?.hostname).match(ACCOUNT_ID_ENDPOINT_REGEX)) {\n setFeature(context, \"ACCOUNT_ID_ENDPOINT\", \"O\");\n }\n switch (await config.accountIdEndpointMode?.()) {\n case \"disabled\":\n setFeature(context, \"ACCOUNT_ID_MODE_DISABLED\", \"Q\");\n break;\n case \"preferred\":\n setFeature(context, \"ACCOUNT_ID_MODE_PREFERRED\", \"P\");\n break;\n case \"required\":\n setFeature(context, \"ACCOUNT_ID_MODE_REQUIRED\", \"R\");\n break;\n }\n }\n const identity = context.__smithy_context?.selectedHttpAuthScheme?.identity;\n if (identity?.$source) {\n const credentials = identity;\n if (credentials.accountId) {\n setFeature(context, \"RESOLVED_ACCOUNT_ID\", \"T\");\n }\n for (const [key, value] of Object.entries(credentials.$source ?? {})) {\n setFeature(context, key, value);\n }\n }\n}\n", "export const USER_AGENT = \"user-agent\";\nexport const X_AMZ_USER_AGENT = \"x-amz-user-agent\";\nexport const SPACE = \" \";\nexport const UA_NAME_SEPARATOR = \"/\";\nexport const UA_NAME_ESCAPE_REGEX = /[^!$%&'*+\\-.^_`|~\\w]/g;\nexport const UA_VALUE_ESCAPE_REGEX = /[^!$%&'*+\\-.^_`|~\\w#]/g;\nexport const UA_ESCAPE_CHAR = \"-\";\n", "const BYTE_LIMIT = 1024;\nexport function encodeFeatures(features) {\n let buffer = \"\";\n for (const key in features) {\n const val = features[key];\n if (buffer.length + val.length + 1 <= BYTE_LIMIT) {\n if (buffer.length) {\n buffer += \",\" + val;\n }\n else {\n buffer += val;\n }\n continue;\n }\n break;\n }\n return buffer;\n}\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nimport { getUserAgentPrefix } from \"../util-endpoints/lib/aws/partition\";\nimport { checkFeatures } from \"./check-features\";\nimport { SPACE, UA_ESCAPE_CHAR, UA_NAME_ESCAPE_REGEX, UA_NAME_SEPARATOR, UA_VALUE_ESCAPE_REGEX, USER_AGENT, X_AMZ_USER_AGENT, } from \"./constants\";\nimport { encodeFeatures } from \"./encode-features\";\nexport const userAgentMiddleware = (options) => (next, context) => async (args) => {\n const { request } = args;\n if (!HttpRequest.isInstance(request)) {\n return next(args);\n }\n const { headers } = request;\n const userAgent = context?.userAgent?.map(escapeUserAgent) || [];\n const defaultUserAgent = (await options.defaultUserAgentProvider()).map(escapeUserAgent);\n await checkFeatures(context, options, args);\n const awsContext = context;\n defaultUserAgent.push(`m/${encodeFeatures(Object.assign({}, context.__smithy_context?.features, awsContext.__aws_sdk_context?.features))}`);\n const customUserAgent = options?.customUserAgent?.map(escapeUserAgent) || [];\n const appId = await options.userAgentAppId();\n if (appId) {\n defaultUserAgent.push(escapeUserAgent([`app`, `${appId}`]));\n }\n const prefix = getUserAgentPrefix();\n const sdkUserAgentValue = (prefix ? [prefix] : [])\n .concat([...defaultUserAgent, ...userAgent, ...customUserAgent])\n .join(SPACE);\n const normalUAValue = [\n ...defaultUserAgent.filter((section) => section.startsWith(\"aws-sdk-\")),\n ...customUserAgent,\n ].join(SPACE);\n if (options.runtime !== \"browser\") {\n if (normalUAValue) {\n headers[X_AMZ_USER_AGENT] = headers[X_AMZ_USER_AGENT]\n ? `${headers[USER_AGENT]} ${normalUAValue}`\n : normalUAValue;\n }\n headers[USER_AGENT] = sdkUserAgentValue;\n }\n else {\n headers[X_AMZ_USER_AGENT] = sdkUserAgentValue;\n }\n return next({\n ...args,\n request,\n });\n};\nconst escapeUserAgent = (userAgentPair) => {\n const name = userAgentPair[0]\n .split(UA_NAME_SEPARATOR)\n .map((part) => part.replace(UA_NAME_ESCAPE_REGEX, UA_ESCAPE_CHAR))\n .join(UA_NAME_SEPARATOR);\n const version = userAgentPair[1]?.replace(UA_VALUE_ESCAPE_REGEX, UA_ESCAPE_CHAR);\n const prefixSeparatorIndex = name.indexOf(UA_NAME_SEPARATOR);\n const prefix = name.substring(0, prefixSeparatorIndex);\n let uaName = name.substring(prefixSeparatorIndex + 1);\n if (prefix === \"api\") {\n uaName = uaName.toLowerCase();\n }\n return [prefix, uaName, version]\n .filter((item) => item && item.length > 0)\n .reduce((acc, item, index) => {\n switch (index) {\n case 0:\n return item;\n case 1:\n return `${acc}/${item}`;\n default:\n return `${acc}#${item}`;\n }\n }, \"\");\n};\nexport const getUserAgentMiddlewareOptions = {\n name: \"getUserAgentMiddleware\",\n step: \"build\",\n priority: \"low\",\n tags: [\"SET_USER_AGENT\", \"USER_AGENT\"],\n override: true,\n};\nexport const getUserAgentPlugin = (config) => ({\n applyToStack: (clientStack) => {\n clientStack.add(userAgentMiddleware(config), getUserAgentMiddlewareOptions);\n },\n});\n", "import { versions } from \"node:process\";\nexport const getRuntimeUserAgentPair = () => {\n const runtimesToCheck = [\"deno\", \"bun\", \"llrt\"];\n for (const runtime of runtimesToCheck) {\n if (versions[runtime]) {\n return [`md/${runtime}`, versions[runtime]];\n }\n }\n return [\"md/nodejs\", versions.node];\n};\n", "import { normalize, sep } from \"node:path\";\nexport const getNodeModulesParentDirs = (dirname) => {\n const cwd = process.cwd();\n if (!dirname) {\n return [cwd];\n }\n const normalizedPath = normalize(dirname);\n const parts = normalizedPath.split(sep);\n const nodeModulesIndex = parts.indexOf(\"node_modules\");\n const parentDir = nodeModulesIndex !== -1 ? parts.slice(0, nodeModulesIndex).join(sep) : normalizedPath;\n if (cwd === parentDir) {\n return [cwd];\n }\n return [parentDir, cwd];\n};\n", "const SEMVER_REGEX = /^(0|[1-9]\\d*)\\.(0|[1-9]\\d*)\\.(0|[1-9]\\d*)(?:-((?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\\.(?:0|[1-9]\\d*|\\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\\+[0-9a-zA-Z-]+(?:\\.[0-9a-zA-Z-]+)*)?$/;\nexport const getSanitizedTypeScriptVersion = (version = \"\") => {\n const match = version.match(SEMVER_REGEX);\n if (!match) {\n return undefined;\n }\n const [major, minor, patch, prerelease] = [match[1], match[2], match[3], match[4]];\n return prerelease ? `${major}.${minor}.${patch}-${prerelease}` : `${major}.${minor}.${patch}`;\n};\n", "import { getSanitizedTypeScriptVersion } from \"./getSanitizedTypeScriptVersion\";\nconst ALLOWED_PREFIXES = [\"^\", \"~\", \">=\", \"<=\", \">\", \"<\"];\nconst ALLOWED_DIST_TAGS = [\"latest\", \"beta\", \"dev\", \"rc\", \"insiders\", \"next\"];\nexport const getSanitizedDevTypeScriptVersion = (version = \"\") => {\n if (ALLOWED_DIST_TAGS.includes(version)) {\n return version;\n }\n const prefix = ALLOWED_PREFIXES.find((p) => version.startsWith(p)) ?? \"\";\n const sanitizedTypeScriptVersion = getSanitizedTypeScriptVersion(version.slice(prefix.length));\n if (!sanitizedTypeScriptVersion) {\n return undefined;\n }\n return `${prefix}${sanitizedTypeScriptVersion}`;\n};\n", "import { booleanSelector, SelectorType } from \"@smithy/core/config\";\nimport { readFile } from \"node:fs/promises\";\nimport { join } from \"node:path\";\nimport { getNodeModulesParentDirs } from \"./getNodeModulesParentDirs\";\nimport { getSanitizedDevTypeScriptVersion } from \"./getSanitizedDevTypeScriptVersion\";\nimport { getSanitizedTypeScriptVersion } from \"./getSanitizedTypeScriptVersion\";\nlet tscVersion;\nconst TS_PACKAGE_JSON = join(\"node_modules\", \"typescript\", \"package.json\");\nexport const getTypeScriptUserAgentPair = async () => {\n if (tscVersion === null) {\n return undefined;\n }\n else if (typeof tscVersion === \"string\") {\n return [\"md/tsc\", tscVersion];\n }\n let isTypeScriptDetectionDisabled = false;\n try {\n isTypeScriptDetectionDisabled =\n booleanSelector(process.env, \"AWS_SDK_JS_TYPESCRIPT_DETECTION_DISABLED\", SelectorType.ENV) || false;\n }\n catch { }\n if (isTypeScriptDetectionDisabled) {\n tscVersion = null;\n return undefined;\n }\n const dirname = typeof __dirname !== \"undefined\" ? __dirname : undefined;\n const nodeModulesParentDirs = getNodeModulesParentDirs(dirname);\n let versionFromApp;\n for (const nodeModulesParentDir of nodeModulesParentDirs) {\n try {\n const appPackageJsonPath = join(nodeModulesParentDir, \"package.json\");\n const packageJson = await readFile(appPackageJsonPath, \"utf-8\");\n const { dependencies, devDependencies } = JSON.parse(packageJson);\n const version = devDependencies?.typescript ?? dependencies?.typescript;\n if (typeof version !== \"string\") {\n continue;\n }\n versionFromApp = version;\n break;\n }\n catch {\n }\n }\n if (!versionFromApp) {\n tscVersion = null;\n return undefined;\n }\n let versionFromNodeModules;\n for (const nodeModulesParentDir of nodeModulesParentDirs) {\n try {\n const tsPackageJsonPath = join(nodeModulesParentDir, TS_PACKAGE_JSON);\n const packageJson = await readFile(tsPackageJsonPath, \"utf-8\");\n const { version } = JSON.parse(packageJson);\n const sanitizedVersion = getSanitizedTypeScriptVersion(version);\n if (typeof sanitizedVersion !== \"string\") {\n continue;\n }\n versionFromNodeModules = sanitizedVersion;\n break;\n }\n catch {\n }\n }\n if (versionFromNodeModules) {\n tscVersion = versionFromNodeModules;\n return [\"md/tsc\", tscVersion];\n }\n const sanitizedVersion = getSanitizedDevTypeScriptVersion(versionFromApp);\n if (typeof sanitizedVersion !== \"string\") {\n tscVersion = null;\n return undefined;\n }\n tscVersion = `dev_${sanitizedVersion}`;\n return [\"md/tsc\", tscVersion];\n};\n", "export const crtAvailability = {\n isCrtAvailable: false,\n};\n", "import { crtAvailability } from \"./crt-availability\";\nexport const isCrtAvailable = () => {\n if (crtAvailability.isCrtAvailable) {\n return [\"md/crt-avail\"];\n }\n return null;\n};\n", "import { platform, release } from \"node:os\";\nimport { env } from \"node:process\";\nimport { getRuntimeUserAgentPair } from \"./getRuntimeUserAgentPair\";\nimport { getTypeScriptUserAgentPair } from \"./getTypeScriptUserAgentPair\";\nimport { isCrtAvailable } from \"./is-crt-available\";\nexport { crtAvailability } from \"./crt-availability\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => {\n const runtimeUserAgentPair = getRuntimeUserAgentPair();\n return async (config) => {\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${platform()}`, release()],\n [\"lang/js\"],\n runtimeUserAgentPair,\n ];\n const typescriptUserAgentPair = await getTypeScriptUserAgentPair();\n if (typescriptUserAgentPair) {\n sections.push(typescriptUserAgentPair);\n }\n const crtAvailable = isCrtAvailable();\n if (crtAvailable) {\n sections.push(crtAvailable);\n }\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n if (env.AWS_EXECUTION_ENV) {\n sections.push([`exec-env/${env.AWS_EXECUTION_ENV}`]);\n }\n const appId = await config?.userAgentAppId?.();\n const resolvedUserAgent = appId ? [...sections, [`app/${appId}`]] : [...sections];\n return resolvedUserAgent;\n };\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n", "import { DEFAULT_UA_APP_ID } from \"../middleware-user-agent/configurations\";\nexport const UA_APP_ID_ENV_NAME = \"AWS_SDK_UA_APP_ID\";\nexport const UA_APP_ID_INI_NAME = \"sdk_ua_app_id\";\nconst UA_APP_ID_INI_NAME_DEPRECATED = \"sdk-ua-app-id\";\nexport const NODE_APP_ID_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[UA_APP_ID_ENV_NAME],\n configFileSelector: (profile) => profile[UA_APP_ID_INI_NAME] ?? profile[UA_APP_ID_INI_NAME_DEPRECATED],\n default: DEFAULT_UA_APP_ID,\n};\n", "!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));", "export const createUserAgentStringParsingProvider = ({ serviceId, clientVersion }) => async (config) => {\n const module = await import(\"bowser\");\n const parse = module.parse ?? module.default.parse ?? (() => \"\");\n const parsedUA = typeof window !== \"undefined\" && window?.navigator?.userAgent ? parse(window.navigator.userAgent) : undefined;\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${parsedUA?.os?.name || \"other\"}`, parsedUA?.os?.version],\n [\"lang/js\"],\n [\"md/browser\", `${parsedUA?.browser?.name ?? \"unknown\"}_${parsedUA?.browser?.version ?? \"unknown\"}`],\n ];\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n const appId = await config?.userAgentAppId?.();\n if (appId) {\n sections.push([`app/${appId}`]);\n }\n return sections;\n};\n", "export { createUserAgentStringParsingProvider } from \"./createUserAgentStringParsingProvider\";\nexport const createDefaultUserAgentProvider = ({ serviceId, clientVersion }) => async (config) => {\n const navigator = typeof window !== \"undefined\" ? window.navigator : undefined;\n const uaString = navigator?.userAgent ?? \"\";\n const osName = navigator?.userAgentData?.platform ?? fallback.os(uaString) ?? \"other\";\n const osVersion = undefined;\n const brands = navigator?.userAgentData?.brands ?? [];\n const brand = brands[brands.length - 1];\n const browserName = brand?.brand ?? fallback.browser(uaString) ?? \"unknown\";\n const browserVersion = brand?.version ?? \"unknown\";\n const sections = [\n [\"aws-sdk-js\", clientVersion],\n [\"ua\", \"2.1\"],\n [`os/${osName}`, osVersion],\n [\"lang/js\"],\n [\"md/browser\", `${browserName}_${browserVersion}`],\n ];\n if (serviceId) {\n sections.push([`api/${serviceId}`, clientVersion]);\n }\n const appId = await config?.userAgentAppId?.();\n if (appId) {\n sections.push([`app/${appId}`]);\n }\n return sections;\n};\nexport const fallback = {\n os(ua) {\n if (/iPhone|iPad|iPod/.test(ua))\n return \"iOS\";\n if (/Macintosh|Mac OS X/.test(ua))\n return \"macOS\";\n if (/Windows NT/.test(ua))\n return \"Windows\";\n if (/Android/.test(ua))\n return \"Android\";\n if (/Linux/.test(ua))\n return \"Linux\";\n return undefined;\n },\n browser(ua) {\n if (/EdgiOS|EdgA|Edg\\//.test(ua))\n return \"Microsoft Edge\";\n if (/Firefox\\//.test(ua))\n return \"Firefox\";\n if (/Chrome\\//.test(ua))\n return \"Chrome\";\n if (/Safari\\//.test(ua))\n return \"Safari\";\n return undefined;\n },\n};\nexport const defaultUserAgent = createDefaultUserAgentProvider;\n", "export { isIpAddress } from \"@smithy/core/endpoints\";\n", "import { isValidHostLabel } from \"@smithy/core/endpoints\";\nimport { isIpAddress } from \"../isIpAddress\";\nexport const isVirtualHostableS3Bucket = (value, allowSubDomains = false) => {\n if (allowSubDomains) {\n for (const label of value.split(\".\")) {\n if (!isVirtualHostableS3Bucket(label)) {\n return false;\n }\n }\n return true;\n }\n if (!isValidHostLabel(value)) {\n return false;\n }\n if (value.length < 3 || value.length > 63) {\n return false;\n }\n if (value !== value.toLowerCase()) {\n return false;\n }\n if (isIpAddress(value)) {\n return false;\n }\n return true;\n};\n", "const ARN_DELIMITER = \":\";\nconst RESOURCE_DELIMITER = \"/\";\nexport const parseArn = (value) => {\n const segments = value.split(ARN_DELIMITER);\n if (segments.length < 6)\n return null;\n const [arn, partition, service, region, accountId, ...resourcePath] = segments;\n if (arn !== \"arn\" || partition === \"\" || service === \"\" || resourcePath.join(ARN_DELIMITER) === \"\")\n return null;\n const resourceId = resourcePath.map((resource) => resource.split(RESOURCE_DELIMITER)).flat();\n return {\n partition,\n service,\n region,\n accountId,\n resourceId,\n };\n};\n", "import { customEndpointFunctions } from \"@smithy/core/endpoints\";\nimport { isVirtualHostableS3Bucket } from \"./lib/aws/isVirtualHostableS3Bucket\";\nimport { parseArn } from \"./lib/aws/parseArn\";\nimport { partition } from \"./lib/aws/partition\";\nexport const awsEndpointFunctions = {\n isVirtualHostableS3Bucket: isVirtualHostableS3Bucket,\n parseArn: parseArn,\n partition: partition,\n};\ncustomEndpointFunctions.aws = awsEndpointFunctions;\n", "export { resolveEndpoint } from \"@smithy/core/endpoints\";\n", "import { parseUrl } from \"@smithy/core/protocols\";\nexport const resolveDefaultAwsRegionalEndpointsConfig = (input) => {\n if (typeof input.endpointProvider !== \"function\") {\n throw new Error(\"@aws-sdk/util-endpoint - endpointProvider and endpoint missing in config for this client.\");\n }\n const { endpoint } = input;\n if (endpoint === undefined) {\n input.endpoint = async () => {\n return toEndpointV1(input.endpointProvider({\n Region: typeof input.region === \"function\" ? await input.region() : input.region,\n UseDualStack: typeof input.useDualstackEndpoint === \"function\"\n ? await input.useDualstackEndpoint()\n : input.useDualstackEndpoint,\n UseFIPS: typeof input.useFipsEndpoint === \"function\" ? await input.useFipsEndpoint() : input.useFipsEndpoint,\n Endpoint: undefined,\n }, { logger: input.logger }));\n };\n }\n return input;\n};\nexport const toEndpointV1 = (endpoint) => parseUrl(endpoint.url);\n", "export { EndpointError } from \"@smithy/core/endpoints\";\n", "export { REGION_ENV_NAME, REGION_INI_NAME, NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS, } from \"@smithy/core/config\";\nexport { resolveRegionConfig } from \"@smithy/core/config\";\n", "import { loadConfig, NODE_REGION_CONFIG_FILE_OPTIONS, NODE_REGION_CONFIG_OPTIONS, } from \"@smithy/core/config\";\nexport function stsRegionDefaultResolver(loaderConfig = {}) {\n return loadConfig({\n ...NODE_REGION_CONFIG_OPTIONS,\n async default() {\n if (!warning.silence) {\n console.warn(\"@aws-sdk - WARN - default STS region of us-east-1 used. See @aws-sdk/credential-providers README and set a region explicitly.\");\n }\n return \"us-east-1\";\n },\n }, { ...NODE_REGION_CONFIG_FILE_OPTIONS, ...loaderConfig });\n}\nexport const warning = {\n silence: false,\n};\n", "export const getAwsRegionExtensionConfiguration = (runtimeConfig) => {\n return {\n setRegion(region) {\n runtimeConfig.region = region;\n },\n region() {\n return runtimeConfig.region;\n },\n };\n};\nexport const resolveAwsRegionExtensionConfiguration = (awsRegionExtensionConfiguration) => {\n return {\n region: awsRegionExtensionConfiguration.region(),\n };\n};\n", "export { emitWarningIfUnsupportedVersion, state } from \"./emitWarningIfUnsupportedVersion\";\nexport { getLongPollPlugin } from \"./longPollMiddleware\";\nexport { setCredentialFeature } from \"./setCredentialFeature\";\nexport { setFeature } from \"./setFeature\";\nexport { setTokenFeature } from \"./setTokenFeature\";\nexport { hostHeaderMiddleware, hostHeaderMiddlewareOptions, getHostHeaderPlugin, resolveHostHeaderConfig, } from \"./middleware-host-header/hostHeaderMiddleware\";\nexport { loggerMiddleware, loggerMiddlewareOptions, getLoggerPlugin } from \"./middleware-logger/loggerMiddleware\";\nexport { recursionDetectionMiddlewareOptions } from \"./middleware-recursion-detection/configuration\";\nexport { getRecursionDetectionPlugin } from \"./middleware-recursion-detection/getRecursionDetectionPlugin\";\nexport { recursionDetectionMiddleware } from \"./middleware-recursion-detection/recursionDetectionMiddleware\";\nexport { DEFAULT_UA_APP_ID, resolveUserAgentConfig } from \"./middleware-user-agent/configurations\";\nexport { userAgentMiddleware, getUserAgentMiddlewareOptions, getUserAgentPlugin, } from \"./middleware-user-agent/user-agent-middleware\";\nexport { createDefaultUserAgentProvider, defaultUserAgent, crtAvailability, } from \"./util-user-agent-node/defaultUserAgent\";\nexport { NODE_APP_ID_CONFIG_OPTIONS, UA_APP_ID_ENV_NAME, UA_APP_ID_INI_NAME, } from \"./util-user-agent-node/nodeAppIdConfigOptions\";\nexport { fallback } from \"./util-user-agent-browser/defaultUserAgent\";\nexport { createUserAgentStringParsingProvider } from \"./util-user-agent-browser/createUserAgentStringParsingProvider\";\nexport { awsEndpointFunctions } from \"./util-endpoints/aws\";\nexport { resolveEndpoint } from \"./util-endpoints/resolveEndpoint\";\nexport { resolveDefaultAwsRegionalEndpointsConfig, toEndpointV1, } from \"./util-endpoints/resolveDefaultAwsRegionalEndpointsConfig\";\nexport { isIpAddress } from \"./util-endpoints/lib/isIpAddress\";\nexport { isVirtualHostableS3Bucket } from \"./util-endpoints/lib/aws/isVirtualHostableS3Bucket\";\nexport { parseArn } from \"./util-endpoints/lib/aws/parseArn\";\nexport { partition, setPartitionInfo, useDefaultPartitionInfo, getUserAgentPrefix, } from \"./util-endpoints/lib/aws/partition\";\nexport { EndpointError } from \"./util-endpoints/types/EndpointError\";\nexport { REGION_ENV_NAME, REGION_INI_NAME, NODE_REGION_CONFIG_OPTIONS, NODE_REGION_CONFIG_FILE_OPTIONS, resolveRegionConfig, } from \"./region-config-resolver/awsRegionConfig\";\nexport { stsRegionDefaultResolver, warning as stsRegionWarning, } from \"./region-config-resolver/stsRegionDefaultResolver\";\nexport { getAwsRegionExtensionConfiguration, resolveAwsRegionExtensionConfiguration, } from \"./region-config-resolver/extensions\";\n", "import { HttpResponse } from \"@smithy/core/protocols\";\nexport const getDateHeader = (response) => HttpResponse.isInstance(response) ? response.headers?.date ?? response.headers?.Date : undefined;\n", "export const getSkewCorrectedDate = (systemClockOffset) => new Date(Date.now() + systemClockOffset);\n", "import { getSkewCorrectedDate } from \"./getSkewCorrectedDate\";\nexport const isClockSkewed = (clockTime, systemClockOffset) => Math.abs(getSkewCorrectedDate(systemClockOffset).getTime() - clockTime) >= 300000;\n", "import { isClockSkewed } from \"./isClockSkewed\";\nexport const getUpdatedSystemClockOffset = (clockTime, currentSystemClockOffset) => {\n const clockTimeInMs = Date.parse(clockTime);\n if (isClockSkewed(clockTimeInMs, currentSystemClockOffset)) {\n return clockTimeInMs - Date.now();\n }\n return currentSystemClockOffset;\n};\n", "export * from \"./getDateHeader\";\nexport * from \"./getSkewCorrectedDate\";\nexport * from \"./getUpdatedSystemClockOffset\";\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nimport { getDateHeader, getSkewCorrectedDate, getUpdatedSystemClockOffset } from \"../utils\";\nconst throwSigningPropertyError = (name, property) => {\n if (!property) {\n throw new Error(`Property \\`${name}\\` is not resolved for AWS SDK SigV4Auth`);\n }\n return property;\n};\nexport const validateSigningProperties = async (signingProperties) => {\n const context = throwSigningPropertyError(\"context\", signingProperties.context);\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const authScheme = context.endpointV2?.properties?.authSchemes?.[0];\n const signerFunction = throwSigningPropertyError(\"signer\", config.signer);\n const signer = await signerFunction(authScheme);\n const signingRegion = signingProperties?.signingRegion;\n const signingRegionSet = signingProperties?.signingRegionSet;\n const signingName = signingProperties?.signingName;\n return {\n config,\n signer,\n signingRegion,\n signingRegionSet,\n signingName,\n };\n};\nexport class AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const validatedProps = await validateSigningProperties(signingProperties);\n const { config, signer } = validatedProps;\n let { signingRegion, signingName } = validatedProps;\n const handlerExecutionContext = signingProperties.context;\n if (handlerExecutionContext?.authSchemes?.length ?? 0 > 1) {\n const [first, second] = handlerExecutionContext.authSchemes;\n if (first?.name === \"sigv4a\" && second?.name === \"sigv4\") {\n signingRegion = second?.signingRegion ?? signingRegion;\n signingName = second?.signingName ?? signingName;\n }\n }\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: signingRegion,\n signingService: signingName,\n });\n return signedRequest;\n }\n errorHandler(signingProperties) {\n return (error) => {\n const serverTime = error.ServerTime ?? getDateHeader(error.$response);\n if (serverTime) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n const initialSystemClockOffset = config.systemClockOffset;\n config.systemClockOffset = getUpdatedSystemClockOffset(serverTime, config.systemClockOffset);\n const clockSkewCorrected = config.systemClockOffset !== initialSystemClockOffset;\n if (clockSkewCorrected && error.$metadata) {\n error.$metadata.clockSkewCorrected = true;\n }\n }\n throw error;\n };\n }\n successHandler(httpResponse, signingProperties) {\n const dateHeader = getDateHeader(httpResponse);\n if (dateHeader) {\n const config = throwSigningPropertyError(\"config\", signingProperties.config);\n config.systemClockOffset = getUpdatedSystemClockOffset(dateHeader, config.systemClockOffset);\n }\n }\n}\nexport const AWSSDKSigV4Signer = AwsSdkSigV4Signer;\n", "import { HttpRequest } from \"@smithy/core/protocols\";\nimport { getSkewCorrectedDate } from \"../utils\";\nimport { AwsSdkSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport class AwsSdkSigV4ASigner extends AwsSdkSigV4Signer {\n async sign(httpRequest, identity, signingProperties) {\n if (!HttpRequest.isInstance(httpRequest)) {\n throw new Error(\"The request is not an instance of `HttpRequest` and cannot be signed\");\n }\n const { config, signer, signingRegion, signingRegionSet, signingName } = await validateSigningProperties(signingProperties);\n const configResolvedSigningRegionSet = await config.sigv4aSigningRegionSet?.();\n const multiRegionOverride = (configResolvedSigningRegionSet ??\n signingRegionSet ?? [signingRegion]).join(\",\");\n const signedRequest = await signer.sign(httpRequest, {\n signingDate: getSkewCorrectedDate(config.systemClockOffset),\n signingRegion: multiRegionOverride,\n signingService: signingName,\n });\n return signedRequest;\n }\n}\n", "export const getArrayForCommaSeparatedString = (str) => typeof str === \"string\" && str.length > 0 ? str.split(\",\").map((item) => item.trim()) : [];\n", "export const getBearerTokenEnvKey = (signingName) => `AWS_BEARER_TOKEN_${signingName.replace(/[\\s-]/g, \"_\").toUpperCase()}`;\n", "import { getArrayForCommaSeparatedString } from \"../utils/getArrayForCommaSeparatedString\";\nimport { getBearerTokenEnvKey } from \"../utils/getBearerTokenEnvKey\";\nconst NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY = \"AWS_AUTH_SCHEME_PREFERENCE\";\nconst NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY = \"auth_scheme_preference\";\nexport const NODE_AUTH_SCHEME_PREFERENCE_OPTIONS = {\n environmentVariableSelector: (env, options) => {\n if (options?.signingName) {\n const bearerTokenKey = getBearerTokenEnvKey(options.signingName);\n if (bearerTokenKey in env)\n return [\"httpBearerAuth\"];\n }\n if (!(NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY in env))\n return undefined;\n return getArrayForCommaSeparatedString(env[NODE_AUTH_SCHEME_PREFERENCE_ENV_KEY]);\n },\n configFileSelector: (profile) => {\n if (!(NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY in profile))\n return undefined;\n return getArrayForCommaSeparatedString(profile[NODE_AUTH_SCHEME_PREFERENCE_CONFIG_KEY]);\n },\n default: [],\n};\n", "import { normalizeProvider } from \"@smithy/core\";\nimport { ProviderError } from \"@smithy/core/config\";\nexport const resolveAwsSdkSigV4AConfig = (config) => {\n config.sigv4aSigningRegionSet = normalizeProvider(config.sigv4aSigningRegionSet);\n return config;\n};\nexport const NODE_SIGV4A_CONFIG_OPTIONS = {\n environmentVariableSelector(env) {\n if (env.AWS_SIGV4A_SIGNING_REGION_SET) {\n return env.AWS_SIGV4A_SIGNING_REGION_SET.split(\",\").map((_) => _.trim());\n }\n throw new ProviderError(\"AWS_SIGV4A_SIGNING_REGION_SET not set in env.\", {\n tryNextLink: true,\n });\n },\n configFileSelector(profile) {\n if (profile.sigv4a_signing_region_set) {\n return (profile.sigv4a_signing_region_set ?? \"\").split(\",\").map((_) => _.trim());\n }\n throw new ProviderError(\"sigv4a_signing_region_set not set in profile.\", {\n tryNextLink: true,\n });\n },\n default: undefined,\n};\n", "'use strict';\n\nvar serde = require('@smithy/core/serde');\nvar client = require('@smithy/core/client');\nvar protocols = require('@smithy/core/protocols');\n\nclass HeaderFormatter {\n format(headers) {\n const chunks = [];\n for (const headerName of Object.keys(headers)) {\n const bytes = serde.fromUtf8(headerName);\n chunks.push(Uint8Array.from([bytes.byteLength]), bytes, this.formatHeaderValue(headers[headerName]));\n }\n const out = new Uint8Array(chunks.reduce((carry, bytes) => carry + bytes.byteLength, 0));\n let position = 0;\n for (const chunk of chunks) {\n out.set(chunk, position);\n position += chunk.byteLength;\n }\n return out;\n }\n formatHeaderValue(header) {\n switch (header.type) {\n case \"boolean\":\n return Uint8Array.from([header.value ? 0 : 1]);\n case \"byte\":\n return Uint8Array.from([2, header.value]);\n case \"short\":\n const shortView = new DataView(new ArrayBuffer(3));\n shortView.setUint8(0, 3);\n shortView.setInt16(1, header.value, false);\n return new Uint8Array(shortView.buffer);\n case \"integer\":\n const intView = new DataView(new ArrayBuffer(5));\n intView.setUint8(0, 4);\n intView.setInt32(1, header.value, false);\n return new Uint8Array(intView.buffer);\n case \"long\":\n const longBytes = new Uint8Array(9);\n longBytes[0] = 5;\n longBytes.set(header.value.bytes, 1);\n return longBytes;\n case \"binary\":\n const binView = new DataView(new ArrayBuffer(3 + header.value.byteLength));\n binView.setUint8(0, 6);\n binView.setUint16(1, header.value.byteLength, false);\n const binBytes = new Uint8Array(binView.buffer);\n binBytes.set(header.value, 3);\n return binBytes;\n case \"string\":\n const utf8Bytes = serde.fromUtf8(header.value);\n const strView = new DataView(new ArrayBuffer(3 + utf8Bytes.byteLength));\n strView.setUint8(0, 7);\n strView.setUint16(1, utf8Bytes.byteLength, false);\n const strBytes = new Uint8Array(strView.buffer);\n strBytes.set(utf8Bytes, 3);\n return strBytes;\n case \"timestamp\":\n const tsBytes = new Uint8Array(9);\n tsBytes[0] = 8;\n tsBytes.set(Int64.fromNumber(header.value.valueOf()).bytes, 1);\n return tsBytes;\n case \"uuid\":\n if (!UUID_PATTERN.test(header.value)) {\n throw new Error(`Invalid UUID received: ${header.value}`);\n }\n const uuidBytes = new Uint8Array(17);\n uuidBytes[0] = 9;\n uuidBytes.set(serde.fromHex(header.value.replace(/\\-/g, \"\")), 1);\n return uuidBytes;\n }\n }\n}\nvar HEADER_VALUE_TYPE;\n(function (HEADER_VALUE_TYPE) {\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolTrue\"] = 0] = \"boolTrue\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"boolFalse\"] = 1] = \"boolFalse\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byte\"] = 2] = \"byte\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"short\"] = 3] = \"short\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"integer\"] = 4] = \"integer\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"long\"] = 5] = \"long\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"byteArray\"] = 6] = \"byteArray\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"string\"] = 7] = \"string\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"timestamp\"] = 8] = \"timestamp\";\n HEADER_VALUE_TYPE[HEADER_VALUE_TYPE[\"uuid\"] = 9] = \"uuid\";\n})(HEADER_VALUE_TYPE || (HEADER_VALUE_TYPE = {}));\nconst UUID_PATTERN = /^[a-f0-9]{8}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{4}-[a-f0-9]{12}$/;\nclass Int64 {\n bytes;\n constructor(bytes) {\n this.bytes = bytes;\n if (bytes.byteLength !== 8) {\n throw new Error(\"Int64 buffers must be exactly 8 bytes\");\n }\n }\n static fromNumber(number) {\n if (number > 9_223_372_036_854_775_807 || number < -9223372036854776e3) {\n throw new Error(`${number} is too large (or, if negative, too small) to represent as an Int64`);\n }\n const bytes = new Uint8Array(8);\n for (let i = 7, remaining = Math.abs(Math.round(number)); i > -1 && remaining > 0; i--, remaining /= 256) {\n bytes[i] = remaining;\n }\n if (number < 0) {\n negate(bytes);\n }\n return new Int64(bytes);\n }\n valueOf() {\n const bytes = this.bytes.slice(0);\n const negative = bytes[0] & 0b10000000;\n if (negative) {\n negate(bytes);\n }\n return parseInt(serde.toHex(bytes), 16) * (negative ? -1 : 1);\n }\n toString() {\n return String(this.valueOf());\n }\n}\nfunction negate(bytes) {\n for (let i = 0; i < 8; i++) {\n bytes[i] ^= 0xff;\n }\n for (let i = 7; i > -1; i--) {\n bytes[i]++;\n if (bytes[i] !== 0)\n break;\n }\n}\n\nconst ALGORITHM_QUERY_PARAM = \"X-Amz-Algorithm\";\nconst CREDENTIAL_QUERY_PARAM = \"X-Amz-Credential\";\nconst AMZ_DATE_QUERY_PARAM = \"X-Amz-Date\";\nconst SIGNED_HEADERS_QUERY_PARAM = \"X-Amz-SignedHeaders\";\nconst EXPIRES_QUERY_PARAM = \"X-Amz-Expires\";\nconst SIGNATURE_QUERY_PARAM = \"X-Amz-Signature\";\nconst TOKEN_QUERY_PARAM = \"X-Amz-Security-Token\";\nconst REGION_SET_PARAM = \"X-Amz-Region-Set\";\nconst AUTH_HEADER = \"authorization\";\nconst AMZ_DATE_HEADER = AMZ_DATE_QUERY_PARAM.toLowerCase();\nconst DATE_HEADER = \"date\";\nconst GENERATED_HEADERS = [AUTH_HEADER, AMZ_DATE_HEADER, DATE_HEADER];\nconst SIGNATURE_HEADER = SIGNATURE_QUERY_PARAM.toLowerCase();\nconst SHA256_HEADER = \"x-amz-content-sha256\";\nconst TOKEN_HEADER = TOKEN_QUERY_PARAM.toLowerCase();\nconst HOST_HEADER = \"host\";\nconst ALWAYS_UNSIGNABLE_HEADERS = {\n authorization: true,\n \"cache-control\": true,\n connection: true,\n expect: true,\n from: true,\n \"keep-alive\": true,\n \"max-forwards\": true,\n pragma: true,\n referer: true,\n te: true,\n trailer: true,\n \"transfer-encoding\": true,\n upgrade: true,\n \"user-agent\": true,\n \"x-amzn-trace-id\": true,\n};\nconst PROXY_HEADER_PATTERN = /^proxy-/;\nconst SEC_HEADER_PATTERN = /^sec-/;\nconst UNSIGNABLE_PATTERNS = [/^proxy-/i, /^sec-/i];\nconst ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256\";\nconst ALGORITHM_IDENTIFIER_V4A = \"AWS4-ECDSA-P256-SHA256\";\nconst EVENT_ALGORITHM_IDENTIFIER = \"AWS4-HMAC-SHA256-PAYLOAD\";\nconst UNSIGNED_PAYLOAD = \"UNSIGNED-PAYLOAD\";\nconst MAX_CACHE_SIZE = 50;\nconst KEY_TYPE_IDENTIFIER = \"aws4_request\";\nconst MAX_PRESIGNED_TTL = 60 * 60 * 24 * 7;\n\nconst getCanonicalQuery = ({ query = {} }) => {\n const keys = [];\n const serialized = {};\n for (const key of Object.keys(query)) {\n if (key.toLowerCase() === SIGNATURE_HEADER) {\n continue;\n }\n const encodedKey = protocols.escapeUri(key);\n keys.push(encodedKey);\n const value = query[key];\n if (typeof value === \"string\") {\n serialized[encodedKey] = `${encodedKey}=${protocols.escapeUri(value)}`;\n }\n else if (Array.isArray(value)) {\n serialized[encodedKey] = value\n .slice(0)\n .reduce((encoded, value) => encoded.concat([`${encodedKey}=${protocols.escapeUri(value)}`]), [])\n .sort()\n .join(\"&\");\n }\n }\n return keys\n .sort()\n .map((key) => serialized[key])\n .filter((serialized) => serialized)\n .join(\"&\");\n};\n\nconst iso8601 = (time) => toDate(time)\n .toISOString()\n .replace(/\\.\\d{3}Z$/, \"Z\");\nconst toDate = (time) => {\n if (typeof time === \"number\") {\n return new Date(time * 1000);\n }\n if (typeof time === \"string\") {\n if (Number(time)) {\n return new Date(Number(time) * 1000);\n }\n return new Date(time);\n }\n return time;\n};\n\nclass SignatureV4Base {\n service;\n regionProvider;\n credentialProvider;\n sha256;\n uriEscapePath;\n applyChecksum;\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n this.service = service;\n this.sha256 = sha256;\n this.uriEscapePath = uriEscapePath;\n this.applyChecksum = typeof applyChecksum === \"boolean\" ? applyChecksum : true;\n this.regionProvider = client.normalizeProvider(region);\n this.credentialProvider = client.normalizeProvider(credentials);\n }\n createCanonicalRequest(request, canonicalHeaders, payloadHash) {\n const sortedHeaders = Object.keys(canonicalHeaders).sort();\n return `${request.method}\n${this.getCanonicalPath(request)}\n${getCanonicalQuery(request)}\n${sortedHeaders.map((name) => `${name}:${canonicalHeaders[name]}`).join(\"\\n\")}\n\n${sortedHeaders.join(\";\")}\n${payloadHash}`;\n }\n async createStringToSign(longDate, credentialScope, canonicalRequest, algorithmIdentifier) {\n const hash = new this.sha256();\n hash.update(serde.toUint8Array(canonicalRequest));\n const hashedRequest = await hash.digest();\n return `${algorithmIdentifier}\n${longDate}\n${credentialScope}\n${serde.toHex(hashedRequest)}`;\n }\n getCanonicalPath({ path }) {\n if (this.uriEscapePath) {\n const normalizedPathSegments = [];\n for (const pathSegment of path.split(\"/\")) {\n if (pathSegment?.length === 0)\n continue;\n if (pathSegment === \".\")\n continue;\n if (pathSegment === \"..\") {\n normalizedPathSegments.pop();\n }\n else {\n normalizedPathSegments.push(pathSegment);\n }\n }\n const normalizedPath = `${path?.startsWith(\"/\") ? \"/\" : \"\"}${normalizedPathSegments.join(\"/\")}${normalizedPathSegments.length > 0 && path?.endsWith(\"/\") ? \"/\" : \"\"}`;\n const doubleEncoded = protocols.escapeUri(normalizedPath);\n return doubleEncoded.replace(/%2F/g, \"/\");\n }\n return path;\n }\n validateResolvedCredentials(credentials) {\n if (typeof credentials !== \"object\" ||\n typeof credentials.accessKeyId !== \"string\" ||\n typeof credentials.secretAccessKey !== \"string\") {\n throw new Error(\"Resolved credential object is not valid\");\n }\n }\n formatDate(now) {\n const longDate = iso8601(now).replace(/[\\-:]/g, \"\");\n return {\n longDate,\n shortDate: longDate.slice(0, 8),\n };\n }\n getCanonicalHeaderList(headers) {\n return Object.keys(headers).sort().join(\";\");\n }\n}\n\nconst signingKeyCache = {};\nconst cacheQueue = [];\nconst createScope = (shortDate, region, service) => `${shortDate}/${region}/${service}/${KEY_TYPE_IDENTIFIER}`;\nconst getSigningKey = async (sha256Constructor, credentials, shortDate, region, service) => {\n const credsHash = await hmac(sha256Constructor, credentials.secretAccessKey, credentials.accessKeyId);\n const cacheKey = `${shortDate}:${region}:${service}:${serde.toHex(credsHash)}:${credentials.sessionToken}`;\n if (cacheKey in signingKeyCache) {\n return signingKeyCache[cacheKey];\n }\n cacheQueue.push(cacheKey);\n while (cacheQueue.length > MAX_CACHE_SIZE) {\n delete signingKeyCache[cacheQueue.shift()];\n }\n let key = `AWS4${credentials.secretAccessKey}`;\n for (const signable of [shortDate, region, service, KEY_TYPE_IDENTIFIER]) {\n key = await hmac(sha256Constructor, key, signable);\n }\n return (signingKeyCache[cacheKey] = key);\n};\nconst clearCredentialCache = () => {\n cacheQueue.length = 0;\n Object.keys(signingKeyCache).forEach((cacheKey) => {\n delete signingKeyCache[cacheKey];\n });\n};\nconst hmac = (ctor, secret, data) => {\n const hash = new ctor(secret);\n hash.update(serde.toUint8Array(data));\n return hash.digest();\n};\n\nconst getCanonicalHeaders = ({ headers }, unsignableHeaders, signableHeaders) => {\n const canonical = {};\n for (const headerName of Object.keys(headers).sort()) {\n if (headers[headerName] == undefined) {\n continue;\n }\n const canonicalHeaderName = headerName.toLowerCase();\n if (canonicalHeaderName in ALWAYS_UNSIGNABLE_HEADERS ||\n unsignableHeaders?.has(canonicalHeaderName) ||\n PROXY_HEADER_PATTERN.test(canonicalHeaderName) ||\n SEC_HEADER_PATTERN.test(canonicalHeaderName)) {\n if (!signableHeaders || (signableHeaders && !signableHeaders.has(canonicalHeaderName))) {\n continue;\n }\n }\n canonical[canonicalHeaderName] = headers[headerName].trim().replace(/\\s+/g, \" \");\n }\n return canonical;\n};\n\nconst getPayloadHash = async ({ headers, body }, hashConstructor) => {\n for (const headerName of Object.keys(headers)) {\n if (headerName.toLowerCase() === SHA256_HEADER) {\n return headers[headerName];\n }\n }\n if (body == undefined) {\n return \"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855\";\n }\n else if (typeof body === \"string\" || ArrayBuffer.isView(body) || serde.isArrayBuffer(body)) {\n const hashCtor = new hashConstructor();\n hashCtor.update(serde.toUint8Array(body));\n return serde.toHex(await hashCtor.digest());\n }\n return UNSIGNED_PAYLOAD;\n};\n\nconst hasHeader = (soughtHeader, headers) => {\n soughtHeader = soughtHeader.toLowerCase();\n for (const headerName of Object.keys(headers)) {\n if (soughtHeader === headerName.toLowerCase()) {\n return true;\n }\n }\n return false;\n};\n\nconst moveHeadersToQuery = (request, options = {}) => {\n const { headers, query = {} } = protocols.HttpRequest.clone(request);\n for (const name of Object.keys(headers)) {\n const lname = name.toLowerCase();\n if ((lname.slice(0, 6) === \"x-amz-\" && !options.unhoistableHeaders?.has(lname)) ||\n options.hoistableHeaders?.has(lname)) {\n query[name] = headers[name];\n delete headers[name];\n }\n }\n return {\n ...request,\n headers,\n query,\n };\n};\n\nconst prepareRequest = (request) => {\n request = protocols.HttpRequest.clone(request);\n for (const headerName of Object.keys(request.headers)) {\n if (GENERATED_HEADERS.indexOf(headerName.toLowerCase()) > -1) {\n delete request.headers[headerName];\n }\n }\n return request;\n};\n\nclass SignatureV4 extends SignatureV4Base {\n headerFormatter = new HeaderFormatter();\n constructor({ applyChecksum, credentials, region, service, sha256, uriEscapePath = true, }) {\n super({\n applyChecksum,\n credentials,\n region,\n service,\n sha256,\n uriEscapePath,\n });\n }\n async presign(originalRequest, options = {}) {\n const { signingDate = new Date(), expiresIn = 3600, unsignableHeaders, unhoistableHeaders, signableHeaders, hoistableHeaders, signingRegion, signingService, } = options;\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { longDate, shortDate } = this.formatDate(signingDate);\n if (expiresIn > MAX_PRESIGNED_TTL) {\n return Promise.reject(\"Signature version 4 presigned URLs\" + \" must have an expiration date less than one week in\" + \" the future\");\n }\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const request = moveHeadersToQuery(prepareRequest(originalRequest), { unhoistableHeaders, hoistableHeaders });\n if (credentials.sessionToken) {\n request.query[TOKEN_QUERY_PARAM] = credentials.sessionToken;\n }\n request.query[ALGORITHM_QUERY_PARAM] = ALGORITHM_IDENTIFIER;\n request.query[CREDENTIAL_QUERY_PARAM] = `${credentials.accessKeyId}/${scope}`;\n request.query[AMZ_DATE_QUERY_PARAM] = longDate;\n request.query[EXPIRES_QUERY_PARAM] = expiresIn.toString(10);\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n request.query[SIGNED_HEADERS_QUERY_PARAM] = this.getCanonicalHeaderList(canonicalHeaders);\n request.query[SIGNATURE_QUERY_PARAM] = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, await getPayloadHash(originalRequest, this.sha256)));\n return request;\n }\n async sign(toSign, options) {\n if (typeof toSign === \"string\") {\n return this.signString(toSign, options);\n }\n else if (toSign.headers && toSign.payload) {\n return this.signEvent(toSign, options);\n }\n else if (toSign.message) {\n return this.signMessage(toSign, options);\n }\n else {\n return this.signRequest(toSign, options);\n }\n }\n async signEvent({ headers, payload }, { signingDate = new Date(), priorSignature, signingRegion, signingService, eventStreamCredentials, }) {\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate, longDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n const hashedPayload = await getPayloadHash({ headers: {}, body: payload }, this.sha256);\n const hash = new this.sha256();\n hash.update(headers);\n const hashedHeaders = serde.toHex(await hash.digest());\n const stringToSign = [\n EVENT_ALGORITHM_IDENTIFIER,\n longDate,\n scope,\n priorSignature,\n hashedHeaders,\n hashedPayload,\n ].join(\"\\n\");\n return this.signString(stringToSign, {\n signingDate,\n signingRegion: region,\n signingService,\n eventStreamCredentials,\n });\n }\n async signMessage(signableMessage, { signingDate = new Date(), signingRegion, signingService, eventStreamCredentials }) {\n const promise = this.signEvent({\n headers: this.headerFormatter.format(signableMessage.message.headers),\n payload: signableMessage.message.body,\n }, {\n signingDate,\n signingRegion,\n signingService,\n priorSignature: signableMessage.priorSignature,\n eventStreamCredentials,\n });\n return promise.then((signature) => {\n return { message: signableMessage.message, signature };\n });\n }\n async signString(stringToSign, { signingDate = new Date(), signingRegion, signingService, eventStreamCredentials, } = {}) {\n const credentials = eventStreamCredentials ?? (await this.credentialProvider());\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const { shortDate } = this.formatDate(signingDate);\n const hash = new this.sha256(await this.getSigningKey(credentials, region, shortDate, signingService));\n hash.update(serde.toUint8Array(stringToSign));\n return serde.toHex(await hash.digest());\n }\n async signRequest(requestToSign, { signingDate = new Date(), signableHeaders, unsignableHeaders, signingRegion, signingService, } = {}) {\n const credentials = await this.credentialProvider();\n this.validateResolvedCredentials(credentials);\n const region = signingRegion ?? (await this.regionProvider());\n const request = prepareRequest(requestToSign);\n const { longDate, shortDate } = this.formatDate(signingDate);\n const scope = createScope(shortDate, region, signingService ?? this.service);\n request.headers[AMZ_DATE_HEADER] = longDate;\n if (credentials.sessionToken) {\n request.headers[TOKEN_HEADER] = credentials.sessionToken;\n }\n const payloadHash = await getPayloadHash(request, this.sha256);\n if (!hasHeader(SHA256_HEADER, request.headers) && this.applyChecksum) {\n request.headers[SHA256_HEADER] = payloadHash;\n }\n const canonicalHeaders = getCanonicalHeaders(request, unsignableHeaders, signableHeaders);\n const signature = await this.getSignature(longDate, scope, this.getSigningKey(credentials, region, shortDate, signingService), this.createCanonicalRequest(request, canonicalHeaders, payloadHash));\n request.headers[AUTH_HEADER] =\n `${ALGORITHM_IDENTIFIER} ` +\n `Credential=${credentials.accessKeyId}/${scope}, ` +\n `SignedHeaders=${this.getCanonicalHeaderList(canonicalHeaders)}, ` +\n `Signature=${signature}`;\n return request;\n }\n async getSignature(longDate, credentialScope, keyPromise, canonicalRequest) {\n const stringToSign = await this.createStringToSign(longDate, credentialScope, canonicalRequest, ALGORITHM_IDENTIFIER);\n const hash = new this.sha256(await keyPromise);\n hash.update(serde.toUint8Array(stringToSign));\n return serde.toHex(await hash.digest());\n }\n getSigningKey(credentials, region, shortDate, service) {\n return getSigningKey(this.sha256, credentials, shortDate, region, service || this.service);\n }\n}\n\nconst signatureV4aContainer = {\n SignatureV4a: null,\n};\n\nexports.ALGORITHM_IDENTIFIER = ALGORITHM_IDENTIFIER;\nexports.ALGORITHM_IDENTIFIER_V4A = ALGORITHM_IDENTIFIER_V4A;\nexports.ALGORITHM_QUERY_PARAM = ALGORITHM_QUERY_PARAM;\nexports.ALWAYS_UNSIGNABLE_HEADERS = ALWAYS_UNSIGNABLE_HEADERS;\nexports.AMZ_DATE_HEADER = AMZ_DATE_HEADER;\nexports.AMZ_DATE_QUERY_PARAM = AMZ_DATE_QUERY_PARAM;\nexports.AUTH_HEADER = AUTH_HEADER;\nexports.CREDENTIAL_QUERY_PARAM = CREDENTIAL_QUERY_PARAM;\nexports.DATE_HEADER = DATE_HEADER;\nexports.EVENT_ALGORITHM_IDENTIFIER = EVENT_ALGORITHM_IDENTIFIER;\nexports.EXPIRES_QUERY_PARAM = EXPIRES_QUERY_PARAM;\nexports.GENERATED_HEADERS = GENERATED_HEADERS;\nexports.HOST_HEADER = HOST_HEADER;\nexports.KEY_TYPE_IDENTIFIER = KEY_TYPE_IDENTIFIER;\nexports.MAX_CACHE_SIZE = MAX_CACHE_SIZE;\nexports.MAX_PRESIGNED_TTL = MAX_PRESIGNED_TTL;\nexports.PROXY_HEADER_PATTERN = PROXY_HEADER_PATTERN;\nexports.REGION_SET_PARAM = REGION_SET_PARAM;\nexports.SEC_HEADER_PATTERN = SEC_HEADER_PATTERN;\nexports.SHA256_HEADER = SHA256_HEADER;\nexports.SIGNATURE_HEADER = SIGNATURE_HEADER;\nexports.SIGNATURE_QUERY_PARAM = SIGNATURE_QUERY_PARAM;\nexports.SIGNED_HEADERS_QUERY_PARAM = SIGNED_HEADERS_QUERY_PARAM;\nexports.SignatureV4 = SignatureV4;\nexports.SignatureV4Base = SignatureV4Base;\nexports.TOKEN_HEADER = TOKEN_HEADER;\nexports.TOKEN_QUERY_PARAM = TOKEN_QUERY_PARAM;\nexports.UNSIGNABLE_PATTERNS = UNSIGNABLE_PATTERNS;\nexports.UNSIGNED_PAYLOAD = UNSIGNED_PAYLOAD;\nexports.clearCredentialCache = clearCredentialCache;\nexports.createScope = createScope;\nexports.getCanonicalHeaders = getCanonicalHeaders;\nexports.getCanonicalQuery = getCanonicalQuery;\nexports.getPayloadHash = getPayloadHash;\nexports.getSigningKey = getSigningKey;\nexports.hasHeader = hasHeader;\nexports.moveHeadersToQuery = moveHeadersToQuery;\nexports.prepareRequest = prepareRequest;\nexports.signatureV4aContainer = signatureV4aContainer;\n", "import { setCredentialFeature } from \"@aws-sdk/core/client\";\nimport { doesIdentityRequireRefresh, isIdentityExpired, memoizeIdentityProvider, normalizeProvider, } from \"@smithy/core\";\nimport { SignatureV4 } from \"@smithy/signature-v4\";\nexport const resolveAwsSdkSigV4Config = (config) => {\n let inputCredentials = config.credentials;\n let isUserSupplied = !!config.credentials;\n let resolvedCredentials = undefined;\n Object.defineProperty(config, \"credentials\", {\n set(credentials) {\n if (credentials && credentials !== inputCredentials && credentials !== resolvedCredentials) {\n isUserSupplied = true;\n }\n inputCredentials = credentials;\n const memoizedProvider = normalizeCredentialProvider(config, {\n credentials: inputCredentials,\n credentialDefaultProvider: config.credentialDefaultProvider,\n });\n const boundProvider = bindCallerConfig(config, memoizedProvider);\n if (isUserSupplied && !boundProvider.attributed) {\n const isCredentialObject = typeof inputCredentials === \"object\" && inputCredentials !== null;\n resolvedCredentials = async (options) => {\n const creds = await boundProvider(options);\n const attributedCreds = creds;\n if (isCredentialObject && (!attributedCreds.$source || Object.keys(attributedCreds.$source).length === 0)) {\n return setCredentialFeature(attributedCreds, \"CREDENTIALS_CODE\", \"e\");\n }\n return attributedCreds;\n };\n resolvedCredentials.memoized = boundProvider.memoized;\n resolvedCredentials.configBound = boundProvider.configBound;\n resolvedCredentials.attributed = true;\n }\n else {\n resolvedCredentials = boundProvider;\n }\n },\n get() {\n return resolvedCredentials;\n },\n enumerable: true,\n configurable: true,\n });\n config.credentials = inputCredentials;\n const { signingEscapePath = true, systemClockOffset = config.systemClockOffset || 0, sha256, } = config;\n let signer;\n if (config.signer) {\n signer = normalizeProvider(config.signer);\n }\n else if (config.regionInfoProvider) {\n signer = () => normalizeProvider(config.region)()\n .then(async (region) => [\n (await config.regionInfoProvider(region, {\n useFipsEndpoint: await config.useFipsEndpoint(),\n useDualstackEndpoint: await config.useDualstackEndpoint(),\n })) || {},\n region,\n ])\n .then(([regionInfo, region]) => {\n const { signingRegion, signingService } = regionInfo;\n config.signingRegion = config.signingRegion || signingRegion || region;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n });\n }\n else {\n signer = async (authScheme) => {\n authScheme = Object.assign({}, {\n name: \"sigv4\",\n signingName: config.signingName || config.defaultSigningName,\n signingRegion: await normalizeProvider(config.region)(),\n properties: {},\n }, authScheme);\n const signingRegion = authScheme.signingRegion;\n const signingService = authScheme.signingName;\n config.signingRegion = config.signingRegion || signingRegion;\n config.signingName = config.signingName || signingService || config.serviceId;\n const params = {\n ...config,\n credentials: config.credentials,\n region: config.signingRegion,\n service: config.signingName,\n sha256,\n uriEscapePath: signingEscapePath,\n };\n const SignerCtor = config.signerConstructor || SignatureV4;\n return new SignerCtor(params);\n };\n }\n const resolvedConfig = Object.assign(config, {\n systemClockOffset,\n signingEscapePath,\n signer,\n });\n return resolvedConfig;\n};\nexport const resolveAWSSDKSigV4Config = resolveAwsSdkSigV4Config;\nfunction normalizeCredentialProvider(config, { credentials, credentialDefaultProvider, }) {\n let credentialsProvider;\n if (credentials) {\n if (!credentials?.memoized) {\n credentialsProvider = memoizeIdentityProvider(credentials, isIdentityExpired, doesIdentityRequireRefresh);\n }\n else {\n credentialsProvider = credentials;\n }\n }\n else {\n if (credentialDefaultProvider) {\n credentialsProvider = normalizeProvider(credentialDefaultProvider(Object.assign({}, config, {\n parentClientConfig: config,\n })));\n }\n else {\n credentialsProvider = async () => {\n throw new Error(\"@aws-sdk/core::resolveAwsSdkSigV4Config - `credentials` not provided and no credentialDefaultProvider was configured.\");\n };\n }\n }\n credentialsProvider.memoized = true;\n return credentialsProvider;\n}\nfunction bindCallerConfig(config, credentialsProvider) {\n if (credentialsProvider.configBound) {\n return credentialsProvider;\n }\n const fn = async (options) => credentialsProvider({ ...options, callerClientConfig: config });\n fn.memoized = credentialsProvider.memoized;\n fn.configBound = true;\n return fn;\n}\n", "export { AwsSdkSigV4Signer, AWSSDKSigV4Signer, validateSigningProperties } from \"./AwsSdkSigV4Signer\";\nexport { AwsSdkSigV4ASigner } from \"./AwsSdkSigV4ASigner\";\nexport * from \"./NODE_AUTH_SCHEME_PREFERENCE_OPTIONS\";\nexport * from \"./resolveAwsSdkSigV4AConfig\";\nexport * from \"./resolveAwsSdkSigV4Config\";\n", "export * from \"./aws_sdk\";\nexport * from \"./utils/getBearerTokenEnvKey\";\n", "\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.resolveHttpAuthSchemeConfig = exports.defaultECRHttpAuthSchemeProvider = exports.defaultECRHttpAuthSchemeParametersProvider = void 0;\nconst httpAuthSchemes_1 = require(\"@aws-sdk/core/httpAuthSchemes\");\nconst client_1 = require(\"@smithy/core/client\");\nconst defaultECRHttpAuthSchemeParametersProvider = async (config, context, input) => {\n return {\n operation: (0, client_1.getSmithyContext)(context).operation,\n region: await (0, client_1.normalizeProvider)(config.region)() || (() => {\n throw new Error(\"expected `region` to be configured for `aws.auth#sigv4`\");\n })(),\n };\n};\nexports.defaultECRHttpAuthSchemeParametersProvider = defaultECRHttpAuthSchemeParametersProvider;\nfunction createAwsAuthSigv4HttpAuthOption(authParameters) {\n return {\n schemeId: \"aws.auth#sigv4\",\n signingProperties: {\n name: \"ecr\",\n region: authParameters.region,\n },\n propertiesExtractor: (config, context) => ({\n signingProperties: {\n config,\n context,\n },\n }),\n };\n}\nconst defaultECRHttpAuthSchemeProvider = (authParameters) => {\n const options = [];\n switch (authParameters.operation) {\n default: {\n options.push(createAwsAuthSigv4HttpAuthOption(authParameters));\n }\n }\n return options;\n};\nexports.defaultECRHttpAuthSchemeProvider = defaultECRHttpAuthSchemeProvider;\nconst resolveHttpAuthSchemeConfig = (config) => {\n const config_0 = (0, httpAuthSchemes_1.resolveAwsSdkSigV4Config)(config);\n return Object.assign(config_0, {\n authSchemePreference: (0, client_1.normalizeProvider)(config.authSchemePreference ?? []),\n });\n};\nexports.resolveHttpAuthSchemeConfig = resolveHttpAuthSchemeConfig;\n", "{\n \"name\": \"@aws-sdk/client-ecr\",\n \"description\": \"AWS SDK for JavaScript Ecr Client for Node.js, Browser and React Native\",\n \"version\": \"3.1052.0\",\n \"scripts\": {\n \"build\": \"concurrently 'yarn:build:types' 'yarn:build:es' && yarn build:cjs\",\n \"build:cjs\": \"node ../../scripts/compilation/inline client-ecr\",\n \"build:es\": \"tsc -p tsconfig.es.json\",\n \"build:include:deps\": \"yarn g:turbo run build -F=\\\"$npm_package_name\\\"\",\n \"build:types\": \"tsc -p tsconfig.types.json\",\n \"build:types:downlevel\": \"downlevel-dts dist-types dist-types/ts3.4\",\n \"clean\": \"premove dist-cjs dist-es dist-types tsconfig.cjs.tsbuildinfo tsconfig.es.tsbuildinfo tsconfig.types.tsbuildinfo\",\n \"extract:docs\": \"api-extractor run --local\",\n \"generate:client\": \"node ../../scripts/generate-clients/single-service --solo ecr\",\n \"test:e2e\": \"yarn g:vitest run -c vitest.config.e2e.mts --mode development\",\n \"test:e2e:watch\": \"yarn g:vitest watch -c vitest.config.e2e.mts\",\n \"test:index\": \"tsc --noEmit ./test/index-types.ts && node ./test/index-objects.spec.mjs\"\n },\n \"main\": \"./dist-cjs/index.js\",\n \"types\": \"./dist-types/index.d.ts\",\n \"module\": \"./dist-es/index.js\",\n \"sideEffects\": false,\n \"dependencies\": {\n \"@aws-crypto/sha256-browser\": \"5.2.0\",\n \"@aws-crypto/sha256-js\": \"5.2.0\",\n \"@aws-sdk/core\": \"^3.974.13\",\n \"@aws-sdk/credential-provider-node\": \"^3.972.44\",\n \"@aws-sdk/types\": \"^3.973.9\",\n \"@smithy/core\": \"^3.24.3\",\n \"@smithy/fetch-http-handler\": \"^5.4.3\",\n \"@smithy/node-http-handler\": \"^4.7.3\",\n \"@smithy/types\": \"^4.14.2\",\n \"tslib\": \"^2.6.2\"\n },\n \"devDependencies\": {\n \"@tsconfig/node20\": \"20.1.8\",\n \"@types/node\": \"^20.14.8\",\n \"concurrently\": \"7.0.0\",\n \"downlevel-dts\": \"0.10.1\",\n \"premove\": \"4.0.0\",\n \"typescript\": \"~5.8.3\"\n },\n \"engines\": {\n \"node\": \">=20.0.0\"\n },\n \"typesVersions\": {\n \"<4.5\": {\n \"dist-types/*\": [\n \"dist-types/ts3.4/*\"\n ]\n }\n },\n \"files\": [\n \"dist-*/**\"\n ],\n \"author\": {\n \"name\": \"AWS SDK for JavaScript Team\",\n \"url\": \"https://aws.amazon.com/javascript/\"\n },\n \"license\": \"Apache-2.0\",\n \"browser\": {\n \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.browser\"\n },\n \"react-native\": {\n \"./dist-es/runtimeConfig\": \"./dist-es/runtimeConfig.native\"\n },\n \"homepage\": \"https://github.com/aws/aws-sdk-js-v3/tree/main/clients/client-ecr\",\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/aws/aws-sdk-js-v3.git\",\n \"directory\": \"clients/client-ecr\"\n }\n}\n", "'use strict';\n\nvar client = require('@aws-sdk/core/client');\nvar config = require('@smithy/core/config');\n\nconst ENV_KEY = \"AWS_ACCESS_KEY_ID\";\nconst ENV_SECRET = \"AWS_SECRET_ACCESS_KEY\";\nconst ENV_SESSION = \"AWS_SESSION_TOKEN\";\nconst ENV_EXPIRATION = \"AWS_CREDENTIAL_EXPIRATION\";\nconst ENV_CREDENTIAL_SCOPE = \"AWS_CREDENTIAL_SCOPE\";\nconst ENV_ACCOUNT_ID = \"AWS_ACCOUNT_ID\";\nconst fromEnv = (init) => async () => {\n init?.logger?.debug(\"@aws-sdk/credential-provider-env - fromEnv\");\n const accessKeyId = process.env[ENV_KEY];\n const secretAccessKey = process.env[ENV_SECRET];\n const sessionToken = process.env[ENV_SESSION];\n const expiry = process.env[ENV_EXPIRATION];\n const credentialScope = process.env[ENV_CREDENTIAL_SCOPE];\n const accountId = process.env[ENV_ACCOUNT_ID];\n if (accessKeyId && secretAccessKey) {\n const credentials = {\n accessKeyId,\n secretAccessKey,\n ...(sessionToken && { sessionToken }),\n ...(expiry && { expiration: new Date(expiry) }),\n ...(credentialScope && { credentialScope }),\n ...(accountId && { accountId }),\n };\n client.setCredentialFeature(credentials, \"CREDENTIALS_ENV_VARS\", \"g\");\n return credentials;\n }\n throw new config.CredentialsProviderError(\"Unable to find environment variable credentials.\", { logger: init?.logger });\n};\n\nexports.ENV_ACCOUNT_ID = ENV_ACCOUNT_ID;\nexports.ENV_CREDENTIAL_SCOPE = ENV_CREDENTIAL_SCOPE;\nexports.ENV_EXPIRATION = ENV_EXPIRATION;\nexports.ENV_KEY = ENV_KEY;\nexports.ENV_SECRET = ENV_SECRET;\nexports.ENV_SESSION = ENV_SESSION;\nexports.fromEnv = fromEnv;\n", "'use strict';\n\nvar node_url = require('node:url');\nvar config = require('@smithy/core/config');\nvar node_http = require('node:http');\nvar protocols = require('@smithy/core/protocols');\n\nconst isImdsCredentials = (arg) => Boolean(arg) &&\n typeof arg === \"object\" &&\n typeof arg.AccessKeyId === \"string\" &&\n typeof arg.SecretAccessKey === \"string\" &&\n typeof arg.Token === \"string\" &&\n typeof arg.Expiration === \"string\";\nconst fromImdsCredentials = (creds) => ({\n accessKeyId: creds.AccessKeyId,\n secretAccessKey: creds.SecretAccessKey,\n sessionToken: creds.Token,\n expiration: new Date(creds.Expiration),\n ...(creds.AccountId && { accountId: creds.AccountId }),\n});\n\nconst DEFAULT_TIMEOUT = 1000;\nconst DEFAULT_MAX_RETRIES = 0;\nconst providerConfigFromInit = ({ maxRetries = DEFAULT_MAX_RETRIES, timeout = DEFAULT_TIMEOUT, }) => ({ maxRetries, timeout });\n\nfunction httpRequest(options) {\n return new Promise((resolve, reject) => {\n const req = node_http.request({\n method: \"GET\",\n ...options,\n hostname: options.hostname?.replace(/^\\[(.+)\\]$/, \"$1\"),\n });\n req.on(\"error\", (err) => {\n reject(Object.assign(new config.ProviderError(\"Unable to connect to instance metadata service\"), err));\n req.destroy();\n });\n req.on(\"timeout\", () => {\n reject(new config.ProviderError(\"TimeoutError from instance metadata service\"));\n req.destroy();\n });\n req.on(\"response\", (res) => {\n const { statusCode = 400 } = res;\n if (statusCode < 200 || 300 <= statusCode) {\n reject(Object.assign(new config.ProviderError(\"Error response received from instance metadata service\"), { statusCode }));\n req.destroy();\n }\n const chunks = [];\n res.on(\"data\", (chunk) => {\n chunks.push(chunk);\n });\n res.on(\"end\", () => {\n resolve(Buffer.concat(chunks));\n req.destroy();\n });\n });\n req.end();\n });\n}\n\nconst retry = (toRetry, maxRetries) => {\n let promise = toRetry();\n for (let i = 0; i < maxRetries; i++) {\n promise = promise.catch(toRetry);\n }\n return promise;\n};\n\nconst ENV_CMDS_FULL_URI = \"AWS_CONTAINER_CREDENTIALS_FULL_URI\";\nconst ENV_CMDS_RELATIVE_URI = \"AWS_CONTAINER_CREDENTIALS_RELATIVE_URI\";\nconst ENV_CMDS_AUTH_TOKEN = \"AWS_CONTAINER_AUTHORIZATION_TOKEN\";\nconst fromContainerMetadata = (init = {}) => {\n const { timeout, maxRetries } = providerConfigFromInit(init);\n return () => retry(async () => {\n const requestOptions = await getCmdsUri({ logger: init.logger });\n const credsResponse = JSON.parse(await requestFromEcsImds(timeout, requestOptions));\n if (!isImdsCredentials(credsResponse)) {\n throw new config.CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n logger: init.logger,\n });\n }\n return fromImdsCredentials(credsResponse);\n }, maxRetries);\n};\nconst requestFromEcsImds = async (timeout, options) => {\n if (process.env[ENV_CMDS_AUTH_TOKEN]) {\n options.headers = {\n ...options.headers,\n Authorization: process.env[ENV_CMDS_AUTH_TOKEN],\n };\n }\n const buffer = await httpRequest({\n ...options,\n timeout,\n });\n return buffer.toString();\n};\nconst CMDS_IP = \"169.254.170.2\";\nconst GREENGRASS_HOSTS = {\n localhost: true,\n \"127.0.0.1\": true,\n};\nconst GREENGRASS_PROTOCOLS = {\n \"http:\": true,\n \"https:\": true,\n};\nconst getCmdsUri = async ({ logger }) => {\n if (process.env[ENV_CMDS_RELATIVE_URI]) {\n return {\n hostname: CMDS_IP,\n path: process.env[ENV_CMDS_RELATIVE_URI],\n };\n }\n if (process.env[ENV_CMDS_FULL_URI]) {\n const parsed = node_url.parse(process.env[ENV_CMDS_FULL_URI]);\n if (!parsed.hostname || !(parsed.hostname in GREENGRASS_HOSTS)) {\n throw new config.CredentialsProviderError(`${parsed.hostname} is not a valid container metadata service hostname`, {\n tryNextLink: false,\n logger,\n });\n }\n if (!parsed.protocol || !(parsed.protocol in GREENGRASS_PROTOCOLS)) {\n throw new config.CredentialsProviderError(`${parsed.protocol} is not a valid container metadata service protocol`, {\n tryNextLink: false,\n logger,\n });\n }\n return {\n ...parsed,\n port: parsed.port ? parseInt(parsed.port, 10) : undefined,\n };\n }\n throw new config.CredentialsProviderError(\"The container metadata credential provider cannot be used unless\" +\n ` the ${ENV_CMDS_RELATIVE_URI} or ${ENV_CMDS_FULL_URI} environment` +\n \" variable is set\", {\n tryNextLink: false,\n logger,\n });\n};\n\nclass InstanceMetadataV1FallbackError extends config.CredentialsProviderError {\n tryNextLink;\n name = \"InstanceMetadataV1FallbackError\";\n constructor(message, tryNextLink = true) {\n super(message, tryNextLink);\n this.tryNextLink = tryNextLink;\n Object.setPrototypeOf(this, InstanceMetadataV1FallbackError.prototype);\n }\n}\n\nexports.Endpoint = void 0;\n(function (Endpoint) {\n Endpoint[\"IPv4\"] = \"http://169.254.169.254\";\n Endpoint[\"IPv6\"] = \"http://[fd00:ec2::254]\";\n})(exports.Endpoint || (exports.Endpoint = {}));\n\nconst ENV_ENDPOINT_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT\";\nconst CONFIG_ENDPOINT_NAME = \"ec2_metadata_service_endpoint\";\nconst ENDPOINT_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_ENDPOINT_NAME],\n configFileSelector: (profile) => profile[CONFIG_ENDPOINT_NAME],\n default: undefined,\n};\n\nvar EndpointMode;\n(function (EndpointMode) {\n EndpointMode[\"IPv4\"] = \"IPv4\";\n EndpointMode[\"IPv6\"] = \"IPv6\";\n})(EndpointMode || (EndpointMode = {}));\n\nconst ENV_ENDPOINT_MODE_NAME = \"AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE\";\nconst CONFIG_ENDPOINT_MODE_NAME = \"ec2_metadata_service_endpoint_mode\";\nconst ENDPOINT_MODE_CONFIG_OPTIONS = {\n environmentVariableSelector: (env) => env[ENV_ENDPOINT_MODE_NAME],\n configFileSelector: (profile) => profile[CONFIG_ENDPOINT_MODE_NAME],\n default: EndpointMode.IPv4,\n};\n\nconst getInstanceMetadataEndpoint = async () => protocols.parseUrl((await getFromEndpointConfig()) || (await getFromEndpointModeConfig()));\nconst getFromEndpointConfig = async () => config.loadConfig(ENDPOINT_CONFIG_OPTIONS)();\nconst getFromEndpointModeConfig = async () => {\n const endpointMode = await config.loadConfig(ENDPOINT_MODE_CONFIG_OPTIONS)();\n switch (endpointMode) {\n case EndpointMode.IPv4:\n return exports.Endpoint.IPv4;\n case EndpointMode.IPv6:\n return exports.Endpoint.IPv6;\n default:\n throw new Error(`Unsupported endpoint mode: ${endpointMode}.` + ` Select from ${Object.values(EndpointMode)}`);\n }\n};\n\nconst STATIC_STABILITY_REFRESH_INTERVAL_SECONDS = 5 * 60;\nconst STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS = 5 * 60;\nconst STATIC_STABILITY_DOC_URL = \"https://docs.aws.amazon.com/sdkref/latest/guide/feature-static-credentials.html\";\nconst getExtendedInstanceMetadataCredentials = (credentials, logger) => {\n const refreshInterval = STATIC_STABILITY_REFRESH_INTERVAL_SECONDS +\n Math.floor(Math.random() * STATIC_STABILITY_REFRESH_INTERVAL_JITTER_WINDOW_SECONDS);\n const newExpiration = new Date(Date.now() + refreshInterval * 1000);\n logger.warn(\"Attempting credential expiration extension due to a credential service availability issue. A refresh of these \" +\n `credentials will be attempted after ${new Date(newExpiration)}.\\nFor more information, please visit: ` +\n STATIC_STABILITY_DOC_URL);\n const originalExpiration = credentials.originalExpiration ?? credentials.expiration;\n return {\n ...credentials,\n ...(originalExpiration ? { originalExpiration } : {}),\n expiration: newExpiration,\n };\n};\n\nconst staticStabilityProvider = (provider, options = {}) => {\n const logger = options?.logger || console;\n let pastCredentials;\n return async () => {\n let credentials;\n try {\n credentials = await provider();\n if (credentials.expiration && credentials.expiration.getTime() < Date.now()) {\n credentials = getExtendedInstanceMetadataCredentials(credentials, logger);\n }\n }\n catch (e) {\n if (pastCredentials) {\n logger.warn(\"Credential renew failed: \", e);\n credentials = getExtendedInstanceMetadataCredentials(pastCredentials, logger);\n }\n else {\n throw e;\n }\n }\n pastCredentials = credentials;\n return credentials;\n };\n};\n\nconst IMDS_PATH = \"/latest/meta-data/iam/security-credentials/\";\nconst IMDS_TOKEN_PATH = \"/latest/api/token\";\nconst AWS_EC2_METADATA_V1_DISABLED = \"AWS_EC2_METADATA_V1_DISABLED\";\nconst PROFILE_AWS_EC2_METADATA_V1_DISABLED = \"ec2_metadata_v1_disabled\";\nconst X_AWS_EC2_METADATA_TOKEN = \"x-aws-ec2-metadata-token\";\nconst fromInstanceMetadata = (init = {}) => staticStabilityProvider(getInstanceMetadataProvider(init), { logger: init.logger });\nconst getInstanceMetadataProvider = (init = {}) => {\n let disableFetchToken = false;\n const { logger, profile } = init;\n const { timeout, maxRetries } = providerConfigFromInit(init);\n const getCredentials = async (maxRetries, options) => {\n const isImdsV1Fallback = disableFetchToken || options.headers?.[X_AWS_EC2_METADATA_TOKEN] == null;\n if (isImdsV1Fallback) {\n let fallbackBlockedFromProfile = false;\n let fallbackBlockedFromProcessEnv = false;\n const configValue = await config.loadConfig({\n environmentVariableSelector: (env) => {\n const envValue = env[AWS_EC2_METADATA_V1_DISABLED];\n fallbackBlockedFromProcessEnv = !!envValue && envValue !== \"false\";\n if (envValue === undefined) {\n throw new config.CredentialsProviderError(`${AWS_EC2_METADATA_V1_DISABLED} not set in env, checking config file next.`, { logger: init.logger });\n }\n return fallbackBlockedFromProcessEnv;\n },\n configFileSelector: (profile) => {\n const profileValue = profile[PROFILE_AWS_EC2_METADATA_V1_DISABLED];\n fallbackBlockedFromProfile = !!profileValue && profileValue !== \"false\";\n return fallbackBlockedFromProfile;\n },\n default: false,\n }, {\n profile,\n })();\n if (init.ec2MetadataV1Disabled || configValue) {\n const causes = [];\n if (init.ec2MetadataV1Disabled)\n causes.push(\"credential provider initialization (runtime option ec2MetadataV1Disabled)\");\n if (fallbackBlockedFromProfile)\n causes.push(`config file profile (${PROFILE_AWS_EC2_METADATA_V1_DISABLED})`);\n if (fallbackBlockedFromProcessEnv)\n causes.push(`process environment variable (${AWS_EC2_METADATA_V1_DISABLED})`);\n throw new InstanceMetadataV1FallbackError(`AWS EC2 Metadata v1 fallback has been blocked by AWS SDK configuration in the following: [${causes.join(\", \")}].`);\n }\n }\n const imdsProfile = (await retry(async () => {\n let profile;\n try {\n profile = await getProfile(options);\n }\n catch (err) {\n if (err.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err;\n }\n return profile;\n }, maxRetries)).trim();\n return retry(async () => {\n let creds;\n try {\n creds = await getCredentialsFromProfile(imdsProfile, options, init);\n }\n catch (err) {\n if (err.statusCode === 401) {\n disableFetchToken = false;\n }\n throw err;\n }\n return creds;\n }, maxRetries);\n };\n return async () => {\n const endpoint = await getInstanceMetadataEndpoint();\n if (disableFetchToken) {\n logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (no token fetch)\");\n return getCredentials(maxRetries, { ...endpoint, timeout });\n }\n else {\n let token;\n try {\n token = (await getMetadataToken({ ...endpoint, timeout })).toString();\n }\n catch (error) {\n if (error?.statusCode === 400) {\n throw Object.assign(error, {\n message: \"EC2 Metadata token request returned error\",\n });\n }\n else if (error.message === \"TimeoutError\" || [403, 404, 405].includes(error.statusCode)) {\n disableFetchToken = true;\n }\n logger?.debug(\"AWS SDK Instance Metadata\", \"using v1 fallback (initial)\");\n return getCredentials(maxRetries, { ...endpoint, timeout });\n }\n return getCredentials(maxRetries, {\n ...endpoint,\n headers: {\n [X_AWS_EC2_METADATA_TOKEN]: token,\n },\n timeout,\n });\n }\n };\n};\nconst getMetadataToken = async (options) => httpRequest({\n ...options,\n path: IMDS_TOKEN_PATH,\n method: \"PUT\",\n headers: {\n \"x-aws-ec2-metadata-token-ttl-seconds\": \"21600\",\n },\n});\nconst getProfile = async (options) => (await httpRequest({ ...options, path: IMDS_PATH })).toString();\nconst getCredentialsFromProfile = async (profile, options, init) => {\n const credentialsResponse = JSON.parse((await httpRequest({\n ...options,\n path: IMDS_PATH + profile,\n })).toString());\n if (!isImdsCredentials(credentialsResponse)) {\n throw new config.CredentialsProviderError(\"Invalid response received from instance metadata service.\", {\n logger: init.logger,\n });\n }\n return fromImdsCredentials(credentialsResponse);\n};\n\nexports.DEFAULT_MAX_RETRIES = DEFAULT_MAX_RETRIES;\nexports.DEFAULT_TIMEOUT = DEFAULT_TIMEOUT;\nexports.ENV_CMDS_AUTH_TOKEN = ENV_CMDS_AUTH_TOKEN;\nexports.ENV_CMDS_FULL_URI = ENV_CMDS_FULL_URI;\nexports.ENV_CMDS_RELATIVE_URI = ENV_CMDS_RELATIVE_URI;\nexports.fromContainerMetadata = fromContainerMetadata;\nexports.fromInstanceMetadata = fromInstanceMetadata;\nexports.getInstanceMetadataEndpoint = getInstanceMetadataEndpoint;\nexports.httpRequest = httpRequest;\nexports.providerConfigFromInit = providerConfigFromInit;\n", "'use strict';\n\nvar node_https = require('node:https');\nvar protocols = require('@smithy/core/protocols');\nvar node_stream = require('node:stream');\nvar http2 = require('node:http2');\n\nfunction buildAbortError(abortSignal) {\n const reason = abortSignal && typeof abortSignal === \"object\" && \"reason\" in abortSignal\n ? abortSignal.reason\n : undefined;\n if (reason) {\n if (reason instanceof Error) {\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n abortError.cause = reason;\n return abortError;\n }\n const abortError = new Error(String(reason));\n abortError.name = \"AbortError\";\n return abortError;\n }\n const abortError = new Error(\"Request aborted\");\n abortError.name = \"AbortError\";\n return abortError;\n}\n\nconst NODEJS_TIMEOUT_ERROR_CODES = [\"ECONNRESET\", \"EPIPE\", \"ETIMEDOUT\"];\n\nconst getTransformedHeaders = (headers) => {\n const transformedHeaders = {};\n for (const name in headers) {\n const headerValues = headers[name];\n transformedHeaders[name] = Array.isArray(headerValues) ? headerValues.join(\",\") : headerValues;\n }\n return transformedHeaders;\n};\n\nconst timing = {\n setTimeout: (cb, ms) => setTimeout(cb, ms),\n clearTimeout: (timeoutId) => clearTimeout(timeoutId),\n};\n\nconst DEFER_EVENT_LISTENER_TIME$2 = 1000;\nconst setConnectionTimeout = (request, reject, timeoutInMs = 0) => {\n if (!timeoutInMs) {\n return -1;\n }\n const registerTimeout = (offset) => {\n const timeoutId = timing.setTimeout(() => {\n request.destroy();\n reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket did not establish a connection with the server within the configured timeout of ${timeoutInMs} ms.`), {\n name: \"TimeoutError\",\n }));\n }, timeoutInMs - offset);\n const doWithSocket = (socket) => {\n if (socket?.connecting) {\n socket.on(\"connect\", () => {\n timing.clearTimeout(timeoutId);\n });\n }\n else {\n timing.clearTimeout(timeoutId);\n }\n };\n if (request.socket) {\n doWithSocket(request.socket);\n }\n else {\n request.on(\"socket\", doWithSocket);\n }\n };\n if (timeoutInMs < 2000) {\n registerTimeout(0);\n return 0;\n }\n return timing.setTimeout(registerTimeout.bind(null, DEFER_EVENT_LISTENER_TIME$2), DEFER_EVENT_LISTENER_TIME$2);\n};\n\nconst setRequestTimeout = (req, reject, timeoutInMs = 0, throwOnRequestTimeout, logger) => {\n if (timeoutInMs) {\n return timing.setTimeout(() => {\n let msg = `@smithy/node-http-handler - [${throwOnRequestTimeout ? \"ERROR\" : \"WARN\"}] a request has exceeded the configured ${timeoutInMs} ms requestTimeout.`;\n if (throwOnRequestTimeout) {\n const error = Object.assign(new Error(msg), {\n name: \"TimeoutError\",\n code: \"ETIMEDOUT\",\n });\n req.destroy(error);\n reject(error);\n }\n else {\n msg += ` Init client requestHandler with throwOnRequestTimeout=true to turn this into an error.`;\n logger?.warn?.(msg);\n }\n }, timeoutInMs);\n }\n return -1;\n};\n\nconst DEFER_EVENT_LISTENER_TIME$1 = 3000;\nconst setSocketKeepAlive = (request, { keepAlive, keepAliveMsecs }, deferTimeMs = DEFER_EVENT_LISTENER_TIME$1) => {\n if (keepAlive !== true) {\n return -1;\n }\n const registerListener = () => {\n if (request.socket) {\n request.socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n }\n else {\n request.on(\"socket\", (socket) => {\n socket.setKeepAlive(keepAlive, keepAliveMsecs || 0);\n });\n }\n };\n if (deferTimeMs === 0) {\n registerListener();\n return 0;\n }\n return timing.setTimeout(registerListener, deferTimeMs);\n};\n\nconst DEFER_EVENT_LISTENER_TIME = 3000;\nconst setSocketTimeout = (request, reject, timeoutInMs = 0) => {\n const registerTimeout = (offset) => {\n const timeout = timeoutInMs - offset;\n const onTimeout = () => {\n request.destroy();\n reject(Object.assign(new Error(`@smithy/node-http-handler - the request socket timed out after ${timeoutInMs} ms of inactivity (configured by client requestHandler).`), { name: \"TimeoutError\" }));\n };\n if (request.socket) {\n request.socket.setTimeout(timeout, onTimeout);\n request.on(\"close\", () => request.socket?.removeListener(\"timeout\", onTimeout));\n }\n else {\n request.setTimeout(timeout, onTimeout);\n }\n };\n if (0 < timeoutInMs && timeoutInMs < 6000) {\n registerTimeout(0);\n return 0;\n }\n return timing.setTimeout(registerTimeout.bind(null, timeoutInMs === 0 ? 0 : DEFER_EVENT_LISTENER_TIME), DEFER_EVENT_LISTENER_TIME);\n};\n\nconst MIN_WAIT_TIME = 6_000;\nasync function writeRequestBody(httpRequest, request, maxContinueTimeoutMs = MIN_WAIT_TIME, externalAgent = false) {\n const headers = request.headers;\n const expect = headers ? headers.Expect || headers.expect : undefined;\n let timeoutId = -1;\n let sendBody = true;\n if (!externalAgent && expect === \"100-continue\") {\n sendBody = await Promise.race([\n new Promise((resolve) => {\n timeoutId = Number(timing.setTimeout(() => resolve(true), Math.max(MIN_WAIT_TIME, maxContinueTimeoutMs)));\n }),\n new Promise((resolve) => {\n httpRequest.on(\"continue\", () => {\n timing.clearTimeout(timeoutId);\n resolve(true);\n });\n httpRequest.on(\"response\", () => {\n timing.clearTimeout(timeoutId);\n resolve(false);\n });\n httpRequest.on(\"error\", () => {\n timing.clearTimeout(timeoutId);\n resolve(false);\n });\n }),\n ]);\n }\n if (sendBody) {\n writeBody(httpRequest, request.body);\n }\n}\nfunction writeBody(httpRequest, body) {\n if (body instanceof node_stream.Readable) {\n body.pipe(httpRequest);\n return;\n }\n if (body) {\n const isBuffer = Buffer.isBuffer(body);\n const isString = typeof body === \"string\";\n if (isBuffer || isString) {\n if (isBuffer && body.byteLength === 0) {\n httpRequest.end();\n }\n else {\n httpRequest.end(body);\n }\n return;\n }\n const uint8 = body;\n if (typeof uint8 === \"object\" &&\n uint8.buffer &&\n typeof uint8.byteOffset === \"number\" &&\n typeof uint8.byteLength === \"number\") {\n httpRequest.end(Buffer.from(uint8.buffer, uint8.byteOffset, uint8.byteLength));\n return;\n }\n httpRequest.end(Buffer.from(body));\n return;\n }\n httpRequest.end();\n}\n\nconst DEFAULT_REQUEST_TIMEOUT = 0;\nlet hAgent = undefined;\nlet hRequest = undefined;\nclass NodeHttpHandler {\n config;\n configProvider;\n socketWarningTimestamp = 0;\n externalAgent = false;\n metadata = { handlerProtocol: \"http/1.1\" };\n static create(instanceOrOptions) {\n if (typeof instanceOrOptions?.handle === \"function\") {\n return instanceOrOptions;\n }\n return new NodeHttpHandler(instanceOrOptions);\n }\n static checkSocketUsage(agent, socketWarningTimestamp, logger = console) {\n const { sockets, requests, maxSockets } = agent;\n if (typeof maxSockets !== \"number\" || maxSockets === Infinity) {\n return socketWarningTimestamp;\n }\n const interval = 15_000;\n if (Date.now() - interval < socketWarningTimestamp) {\n return socketWarningTimestamp;\n }\n if (sockets && requests) {\n for (const origin in sockets) {\n const socketsInUse = sockets[origin]?.length ?? 0;\n const requestsEnqueued = requests[origin]?.length ?? 0;\n if (socketsInUse >= maxSockets && requestsEnqueued >= 2 * maxSockets) {\n logger?.warn?.(`@smithy/node-http-handler:WARN - socket usage at capacity=${socketsInUse} and ${requestsEnqueued} additional requests are enqueued.\nSee https://docs.aws.amazon.com/sdk-for-javascript/v3/developer-guide/node-configuring-maxsockets.html\nor increase socketAcquisitionWarningTimeout=(millis) in the NodeHttpHandler config.`);\n return Date.now();\n }\n }\n }\n return socketWarningTimestamp;\n }\n constructor(options) {\n this.configProvider = new Promise((resolve, reject) => {\n if (typeof options === \"function\") {\n options()\n .then((_options) => {\n resolve(this.resolveDefaultConfig(_options));\n })\n .catch(reject);\n }\n else {\n resolve(this.resolveDefaultConfig(options));\n }\n });\n }\n destroy(